Comment by donatj
12 hours ago
Syncthing is the most confounding user-unfriendly software I have ever had the displeasure of using. It makes a process that should be pretty easy, pick some folders and share some keys remarkably painful and convoluted.
Syncthing is software where i think reading the manual is recommended. it is a fine manual and clears up a lot of the confusion. There's a lot of complexity "under the hood" and trying to just intuit it from the settings is... as you know... confusing.
I have more mixed feelings about Syncthing than you.
I personally think it’s a power user tool rather than an easy to use tool. The UI can feel intimidating but is actually pretty coherent once you understand how Syncthing works.
I would compare it with Git in terms of ergonomics : a powerful tool with its own jargon that you must understand to be able to use it.
Like git, Syncthing chose to expose its internals to the user rather than hiding it behind something magic. But like git, I don’t feel like there are unnecessary complexity. Once you understand it, it’s easy to make it work because it makes sense.
resilio sync (formerly bittorrent sync) has a nicer UI and its probably easier to use. ive been using syncthing for 5+ years now though and can't think of the last time i had any issues with it. its probably just a bit more confusing if youre coming from something more polished and centralised like dropbox or those types
Oh no. What makes it so hard? I was happy with the syncthing and syncthingtray setup process.
Has any open-source project done it better? Serious question, I've been looking.
I used Unison many years ago, and it worked perfectly for all my use cases. Not sure how it stacks up these days. CLI only IIRC.
I still use Unison as it is simpler than Syncthing.
It does have GUI, which I use. I wouldn't call it pretty or polished, but it works and I understand how it works and the way it works is exactly how I think syncing should work.
I've also configured it to run a GUI diff tool diffuse to easily combine changes in case of conflicts (when a file was changed on both sides since the last sync).
I wish it was a bit more modern and re-written in a modern language, but that's secondary qualities for a program.
to be fair, syncing is something that appears simple on the surface but which is a mess of complexity under the hood.
+1000 times this