
Syncthing is everything I used to love about computers - mrzool
https://tonsky.me/blog/syncthing/
======
yogthos
I've come to realize that open source is the only type of software worth
investing into. No matter how great a commercial piece of software might be,
sooner or later it's going to either disappear or change in a way that doesn't
suit you. Commercial software has to constantly chase profit for the company
to stick around. This necessarily means that the product has to continue
evolving to chase what's currently in vogue. And if a company fails to do
that, then it will die and the software will stopped being developed.

This is a bad situation to be in as a user since you have little control over
the evolution of a product that you rely on. Instead of the product being
adapted to your needs, it's you who has to adapt to the way the product
evolves, or spend the time investing in a different product.

On the other hand, open source has a very different dynamic. Projects can
survive with little or no commercial incentive because they're often developed
by the users who themselves benefit from these projects. Projects can also be
easily forked and taken in different directions by different groups of users.
Even when projects become abandoned, they can be picked up again by new teams.

Evolution of GNOME is a great example of this. There are now many flavors of
GNOME all catering to different workflows, and users don't have to compromise
their preferred way of doing things to chase how GNOME is evolving. Meanwhile,
users of Windows or MacOS have very little choice but to continue adjusting to
the ways Apple and Microsoft choose to evolve the desktop. Microsoft even uses
DMCA to prevent users from doing customization. [1]

[1] [https://torrentfreak.com/removing-annoying-
windows-10-featur...](https://torrentfreak.com/removing-annoying-
windows-10-features-is-a-dmca-violation-microsoft-says-200611/)

~~~
woah
I would argue that the opposite is the case for most people. Commercial
software is adapted to the needs of the greatest number of people who will pay
for it. If you are an average user, this is you.

Open source, on the other hand, is generally adapted to the needs of whoever
wants to do some unpaid work on it. This is why open source text editors are
great. The users are the developers. This is also why open source applications
(graphics, office, etc) are so horrible. Most developers don't use that stuff,
or don't use it enough to put in some free work fixing GIMP. Desktop OS's are
somewhere in the middle. Developers use them, but the things that would make
an open source OS easy for the common user aren't fixed. As a result, they are
generally only used by those who get enjoyment out of fixing their desktop,
sort of like a classic car enthusiast who loves to spend a Sunday afternoon in
the garage with a wrench.

~~~
yogthos
My whole point is that what people pay for changes over time. So, if you
invest in a piece of software, then it's very likely going to continue
evolving to stay profitable and chase whatever new fads happen to be.

This has been the case with literally every piece of commercial software I've
ever used. And a lot of the time the changes either have absolutely no value
for me, or they're actually detrimental to my workflow.

And clearly I'm not alone, because every time a major version change happens
with popular commercial products a lot of users will complain about it.
However, they have no power to do anything since they just have to follow
whatever the current trend is, or find a new piece of software to use.

It's also a false dichotomy to claim that software is either commercial or
open source. There are plenty of companies making money from open source
products. This is a good combination since it provides commercial funding for
the project, but also ensures that the users can always fork it if it and move
it in a different direction from the original developers.

I also disagree that open source applications are in any ways horrible. GIMP
and Libre Office are both excellent piece of software that work perfectly
fine. I use GIMP all the time, and I have much easier time getting around it
than Photoshop.

Also, would like to hear more about what specifically needs to be fixed on
Linux. For example, what deficiencies does Elementary OS have compared to
Windows?

~~~
elagost
> what deficiencies does Elementary OS have compared to Windows?

From a regular user's perspective, every answer you'll get boils down to "the
bugs aren't in the same places as Windows". Most Open Source/Free software
these days is as good or better than its proprietary equivalent.

------
jwr
I've been using syncthing for several months now, syncing lots of files (code
under active development) between a total of five computers, Linux and MacOS.

It's been fantastic.

It works well, it gets the job done, it doesn't pester you with notifications
and upsells. It also doesn't eat all of your CPU/battery by watching changes
everywhere, like Dropbox does. And it doesn't try to get at your photos. And
other stuff.

I have not run into a single problem with it over the course of several months
now, which is impressive.

I am about to sign up and start sponsoring it on a monthly basis — I started
doing this recently with open-source software that I rely on. If everybody
chipped in, we'd be in a world of great sustainable software, with people able
to make a living on developing solutions like this.

BTW, a plug for another similarly impressive piece of software:
[https://vpncloud.ddswd.de](https://vpncloud.ddswd.de) — if you need to set up
an encrypted VPN between a bunch of servers.

~~~
smichel17
> If everybody chipped in, we'd be in a world of great sustainable software,
> with people able to make a living on developing solutions like this.

This is exactly the goal of Snowdrift.coop. (Disclaimer: I am a volunteer
contributor and "replacement cofounder").

Unfortunately, not many people currently do donate. We posit that there's
order(s) of magnitude more people who are willing to donate, but not willing
to be the "sucker" who donates while others free-ride. (The game theory term
for what they're after is _mutual assurance_ ). Fundamentally it's a
coordination problem. To solve it, we need a mechanism that allows those folks
to say, "I'm willing to do my bit, but only if others do theirs."

Snowdrift.coop is a crowdfunding platform (in development) that aims to
provide such a mechanism. We call it crowdmatching. To support a project,
patrons pledge to give a monthly donation of $1 per 1000 patrons of that same
project. By pledging to match others, you invite them to join you, so we can
reach that world of great sustainable software. And if they don't, you're left
with a tiny bill, so it's safe to pledge to all the projects you'd like to
support, without worrying that your lone $10/month is going to a project where
it won't really move the needle.

There are two "safety measures" that are not part of crowdmatching, but I have
to mention (opinions tend to be split on whether they are too obvious to be
worth mentioning or too important not to say up front):

\- You can set a monthly limit so you're not on the hook for more than you can
afford.

\- At low levels, donations are sometimes delayed and pooled (charged in
arrears) to minimize processing fees.

I'll stop here to keep this a reasonable length, but will check back later and
follow-up with replies. If you don't want to wait, I'd suggest reading down
the list at [https://wiki.snowdrift.coop](https://wiki.snowdrift.coop) until
you get as far down the rabbit hole you want to go. Finally, we can use help
getting all the way launched, especially if you're experienced with css or
haskell (or, on the off chance, are a layer interested in doing pro bono work
and/or serving on our board).

~~~
jwr
> This is exactly the goal of Snowdrift.coop.

There are many ways to sponsor sustainable open-source. I currently donate
through GitHub Sponsors, Clojurists Together, OpenCollective (CIDER) and
directly to developers via PayPal subscriptions.

~~~
smichel17
There _are_ many [existing mechanisms] to sponsor open-source, but
unfortunately none of them appreciably move the needle much. Collectively,
they produce many orders of magnitude less funding than is enjoyed their
proprietary counterparts.

When Aaron and David (the original two cofounders) were deciding whether they
wanted to pursue this project, they were very concerned about whether they'd
be recreating the wheel. So, they did an _Exhaustive_ review of [other
crowdfunding platforms], which we've done our best to keep up to date
(although Clojurists Together is new to me, so thank you for sharing; it's on
my list to make sure it gets added).

In short, nobody has combined mutual assurance with sustainable, ongoing
funding. As a nonprofit cooperative run almost exclusively by volunteers
(myself included; I have no financial ties to the project), we're in this to
hopefully make an impact on the world. If another platform adopted
crowdmatching, and succeed in funding open source to the decree we hope, we'd
cheer as we put down our (metaphorical) shovels. That is, we're not in
competition with other platforms. We all want the same thing.

[existing mechanisms]: [https://wiki.snowdrift.coop/about/existing-
mechanisms](https://wiki.snowdrift.coop/about/existing-mechanisms)

[other crowdfunding platforms]: [https://wiki.snowdrift.coop/market-
research/other-crowdfundi...](https://wiki.snowdrift.coop/market-
research/other-crowdfunding)

------
athorax
Title might be better as: Syncthing is everything I used to love about
computers.

~~~
jonpurdy
Title sucks, but I did enjoy reading the review.

I'm a Dropbox user since 2009 who recently switched to iCloud Drive. I miss
the old Dropbox that just worked and stayed out of the way. Once Dropbox
rebranded (2017?) I knew it was the beginning of the end. I cancelled my
subscription a couple of years ago and just kept it around for syncing
preferences, which I ditched a couple of months ago.

iCloud Drive works well enough, but it doesn't indicate whether files are
synced (with a checkmark like Dropbox used to do). I typically avoid Apple
software because in trying to simplify it they end up making it vastly
overcomplicated.

I've heard good things about NextCloud but didn't want to self-host. I've
tried SpiderOak and Google Drive before and both were just too slow (and
Google Drive was very flakey).

~~~
UnpossibleJim
So, if I might ask, what people are looking for (in simplest terms):

a cloud synching platform that is cross platform, with a decent (or better) UI
and a good indicator, that has end to end encryption.

To be honest, given the proper team, that doesn't seem like the hardest bill
to fill. I will admit, though, finding a tech company that is willing to spend
money decent interface and graphic designers is sometimes difficult, but not
impossible.

~~~
njharman
> with a decent (or better) UI

I want no UI. It should transparently work like any other filesystem.

~~~
jonpurdy
Either no UI, or using system standard frameworks and APIs (no custom UI
stuff, and absolutely no Electron garbage).

If Dropbox had remained the same as it did back in the early days and focused
on continuing to only update the product to be faster and more reliable and
not adding additional features, it would have still been great. (Unrealistic
considering that the investors need to get their ROI.)

~~~
coffeeling
I mean, they used to be about the only game in town. Now you have monsters
like MS and Google and Apple in the game. Cloud storage used to be value in
and of itself, that's less so the case now, especially when there isn't system
integration the way there is with OneDrive, GDrive or iCloud.

Google's offer of free 15GB is also pretty ridiculously generous compared to
the competition (Dropbox 2GB, OneDrive/iCloud 5GB). MS and Apple have some
ecosystem stuff to drive sales, but Dropbox, eh...

------
dreamcompiler
I applaud everything in this article except this:

> Calendar sync? Why on Earth would FILE SYNCHRONIZATION application wants to
> access my calendar?

It's very handy to have shared calendars across multiple devices. Dropbox's
advertised solution for this is garbage because I have no interest in letting
Google or Outlook manage my calendars.

But there's another solution that used to work with Dropbox that doesn't any
more. And the breakage is Apple's fault, not Dropbox's. Say you have two Macs
and you want their Calendar apps to be in sync. Further, you don't want to use
iCloud because you know from painful experience that Apple has no idea how to
sync anything properly. It used to be possible to move ~/Library/Calendars to
Dropbox and put a folder symlink in its place. If you do this on both
machines, Dropbox automagically syncs your calendars. But in later versions of
MacOS when you replace Library folders with symlinks the apps in question stop
working. Thanks Apple. Looks like Syncthing might fix this problem for me
again, and I won't even need Dropbox any more.

~~~
flyx86
> It's very handy to have shared calendars across multiple devices.

CalDAV should have you covered there. While the need for a server may be a bit
inconvenient, I doubt that usability would be on par with it when you just
copy the files instead (think of alerts, sharing calendars with others, etc).
Also, there is no iOS Syncthing client when your phone probably is the most
important device to have your calendars on.

------
anderspitman
> Commercial solutions are interested in keeping users locked in and
> constantly upselling more features to them. As a result of that, you get
> notifications, features, popups.

At this point I'm pretty convinced that non open source software simply isn't
viable for end-user applications and tools. The incentives don't work. You
always end up with upsells/ads, insane missing features, bad UX, etc.

Closed source seems to work fairly well for some things like OSes, games, and
perhaps some big-contract B2B, but not for apps.

~~~
iak8god
> At this point I'm pretty convinced that non open source software simply
> isn't viable for end-user applications and tools.

I would agree it's not ideal, or maybe even not desirable, but not _viable_ is
a very strong claim when the reality is that 99+% of end-users are using
almost exclusively close source proprietary applications and tools.

~~~
anderspitman
Yeah, you're right. Viable is obviously the wrong word.

------
anderspitman
syncthing is an incredible piece of software.

It should be noted that:

* "Security" changes in recent versions of Android seem designed to kill use cases like syncthing. See links below.

* There is no iOS version, as near as I can tell because iOS is already where Android is headed.

The crux of the problem is syncthing is a single golang binary, but the only
way to manage filesystem permissions on iOS (and now Android) is through
tightly controlled OS dialogs, and there is no way to do this from golang.
There aren't even NDK APIs for it. The closest thing Android is providing to
an escape hatch is "all files access" [5], for which your app has to go
through an approval process in order to be put on the play store. If you watch
[2], GOOG makes it very clear that they want to minimize the number of apps
that obtain this permission. It's unclear to me whether apps installed through
FDroid or side-loaded will be able to use that permission at all, or if the
APKs must be signed.

I'm all for improved security, but never at the cost of controlling what I am
ABLE to do with my computer.

It's sad that our operating systems are turning into gatekeepers between
developers/users and the hardware they "own".

[0]: [https://github.com/syncthing/syncthing-
android/issues/29](https://github.com/syncthing/syncthing-android/issues/29)

[1]: [https://www.xda-developers.com/android-q-storage-access-
fram...](https://www.xda-developers.com/android-q-storage-access-framework-
scoped-storage/)

[2]:
[https://www.youtube.com/watch?v=UnJ3amzJM94&](https://www.youtube.com/watch?v=UnJ3amzJM94&)

[3]:
[https://news.ycombinator.com/item?id=19506544](https://news.ycombinator.com/item?id=19506544)

[4]: [https://commonsware.com/blog/2019/03/25/death-external-
stora...](https://commonsware.com/blog/2019/03/25/death-external-storage-what-
now.html)

[5]: [https://developer.android.com/preview/privacy/storage#all-
fi...](https://developer.android.com/preview/privacy/storage#all-files-access)

~~~
necrotic_comp
This is my main issue with using something like Syncthing. I have several
computers that I use daily - a Windows machine for some work and most of my
music, a Linux box as my daily driver, and my Andriod phone/tablets for
watching videos and interacting with the physical world.

All of these are synced through Dropbox, and I have the confidence that 1) my
files are backed up on a server that I _don 't_ own 2) the software will be
updated and continue to work across all the disparate machines I currently own
and will own in the future.

I don't doubt that Syncthing will work on Linux super-well, but Windows,
Android, and IOS can be picky and not play well with open source. It scares me
off a bit from using it.

~~~
grey_earthling
> but Windows, Android, and IOS can be picky and not play well with open
> source. It scares me off a bit from using it.

This is what scares me off from using Windows, Android or iOS :)

~~~
cesarb
For phones, unfortunately there's not much of an option. I went the Maemo
route, and then it became a dead end; I went the Openmoko route, and then it
became a dead end too; Windows was obviously going to become a dead end (and
unsurprisingly it did). There's now Pine64 and Purism, but given how many
failed before, I'm not too hopeful they'll last. So the only real options are
Android and Apple, and of these Android is the least closed (and also the one
which doesn't require buying a whole new laptop, plus a paid registration,
just to develop for it).

~~~
grey_earthling
Pine64 and Purism don't need to last. As long as the phone can run without
proprietary software and there are enough geeks to maintain a port, I can
probably run Debian on it.

------
_bxg1
I've been thinking about switching to a self-hosted solution over the last
couple years as Dropbox has gotten increasingly annoying. But I always assumed
that would mean spending a weekend fighting with config files and trawling
forums, and unlike iCloud, the core product of Dropbox has continued to work
well enough for my needs. But after seeing how incredibly simple it is to set
up Syncthing, I may go ahead and take the plunge.

~~~
yogthos
I highly recommend NextCloud. It's trivial to set up with Digital Ocean, and
I've been using it for a couple of years now without a hiccup. I use it as a
file server, calendar, and a media streaming solution.

~~~
indigodaddy
But then you’re back to client/server model no? I like the idea of syncthing
and the p2p/node aspect.

~~~
yogthos
yeah that's a trade off, but having your own server has some advantages as
well since it's always available. Also provides an easy way to share stuff
with friends.

Syncthing is definitely nice if you just need p2p sync between devices though.

------
LeoPanthera
I agree with all of this - except for the part about the iCloud Drive path
containing a space being a problem.

That should _not_ be a problem, and if it is, it's a huge flaw in the software
you are using, and you should file a bug. (Or if it's your software, fix it.)

Seriously, UNIX has supported spaces in filenames since the 70s.

~~~
Lammy
It’s not really possible to give a citation for the “feel” of something but I
find it very satisfying to limit my frequently-referenced “trunk” path
directories to single words.

~~~
floren
Yes, I also make it a policy that paths should not need any escaping to type.

------
dylan-m
I set up Syncthing with an extra always-connected node on a NUC and it has
been glorious :) Added Nextcloud on there for an easy way to share files with
other people, and for more polished photo upload from my phone, contacts and
calendar sync. The two work together great.

The fact that it's so transparent is an interesting point. I'm very used to
Dropbox reminding me it exists all the time, whereas Syncthing just quietly
works. (I wouldn't mind if syncthing-gtk provided a bit more information in
its dashboard, though, like the number of changes sent / received in the past
hour. Sometimes I feel like I'm just trusting that it's doing the right
thing).

------
rcarmo
For the record, since nobody mentioned it in the past three days or so,
SyncThing does not sync extended attributes, which makes it lose data (mostly
metadata, but _useful_ metadata like file tags, and other info that
traditional apps store alongside the data fork) when syncing some macOS files.

YMMV, but right now it find it more useful for source code trees than media
projects (or any kind of macOS bundle).

------
butz
Is there any way to sync encrypted data to non-trusted server with Syncthing?
I would like to have encrypted off-site backup.

~~~
LeoPanthera
"borg" is the tool for one-way encrypted backup, not syncthing.

~~~
rsync
I think you should look into the 'borg' backup tool - it has become the de
facto standard for remote backups because it does everything that rsync does
(efficient, changes only backups) but also produces strongly encrypted remote
backup sets that only you have a key to ... the provider has no access to the
data.

The borg website is here:

[https://borgbackup.readthedocs.io/en/stable/](https://borgbackup.readthedocs.io/en/stable/)

and a good description of how it works and why you should use it is here:

[https://www.stavros.io/posts/holy-grail-
backups/](https://www.stavros.io/posts/holy-grail-backups/)

~~~
catherd
When somebody uses borgbackup with you guys, is there any way you can include
"hey you have a stale lock file" (that's probably keeping your backup from
working) in the automated email that gets sent when disk usage doesn't change?

------
coffeeling
This honestly sounds like "FOSS advocate yells at cloud".

Many things the article paints as bad are pretty much "I like vanilla ice
cream" level arguments, not actual faults.

eg. log in vs. generate and exchange codes.

"Sharing is so easy, just exchange public keys". Yes, and sharing with a
serverside cloud storage solution is as easy as giving someone the link or
typing their email into a share dialog, _and I don 't have to do jack
anymore_. It's completely onesided to share files is wanted and need be.

Not liking a default share folder is, again, personal preference. Having a
dedicated cloud storage folder is nice and clear to most people.

Being able to pick and choose is a legit advantage, though.

> How do you connect two devices, if there’s no registration, accounts, email,
> etc? Simple! > Each device has a unique id, generated automatically when you
> first run the program. > Share this id with another device, let them share
> their, and you are good to go.

Totally easier than typing your account info, right?

Also means you have to install an app while with traditional storage services
you can just log into a webpage and grab what you need.

> More “features”: > > Desktop sync, > Photos sync, > Screenshots sync. > >
> These are at least file-like? I don’t understand why they have to be
> “special features”, though, > if you already have an app whose primary task
> is to sync files. It already does that. Why are some files more special than
> others? > > The answer is simple: the only way Dropbox can survive is by
> building and selling more features. You’ll never have peace of mind with
> them.

Highly tech-savvy FOSS advocate is oblivious to the existence of non-UNIX
operating systems.

Most of these are summarizable as "Dropbox sucks" more than "cloud storage
services suck."

~~~
mrzool
Dropbox does suck though.

------
pwenzel
I love tools like this, but one of the reasons I use Dropbox is that storage
and transfer costs are a constant. I also don't have to worry about
maintaining a publicly-accessible server in my home. Are there any cloud
services that syncthing can connect to that are comparable in cost to that of
Dropbox?

~~~
catherd
It's quite easy to let a VPS act as a central hub as long as your use case
exactly matches "I want everyone to have full read-write access to everything
and they understand things like being careful about simultaneous editing and
not moving the shared folder wherever they please."

I found trying to manage anything like restricted access to be impossible from
a practical standpoint.

Debugging what's going on when it doesn't want to sync is not fun. The logs
are full of info that seems irrelevant and just finding the config file on
Windows is a new adventure on each machine. Not sure why they can't at least
show the path in the web UI somewhere.

I would have gone with Dropbox, but it's blocked in the country most of us
work in. Syncthing mostly gets the job done, but I'd probably pay for Dropbox
if I could eliminate the frequent inexplicable 15-30 minute delays from
Syncthing. In it's defense, though, the network quality it has to work with is
pretty terrible.

------
canistel
This strikes a chord, as we too made the switch from Dropbox to Syncthing
recently. We also ended up using Syncthing-GTK, which is a cross-platform UI
front-end for Syncthing. (For us the process does not get killed in Windows
platforms when Syncthing-GTK exits, but we can live with us for the time
being.)

------
pyrophane
The amount of up-selling is showing me as a paying customer is pretty
egregious. Multiple prompts to upgrade to a more expensive plan. Multiple
disabled checkboxes and additional prompts about features I can't use because
I am only giving ~$120/year.

------
AnIdiotOnTheNet
> You download a single binary executable. You run it. There’s no step three.

Indeed. I'd like to personally thank probonopd for AppImage making
applications on Linux sane, if only for the relatively few projects
distributing that way.

------
tjchear
I thought about the kinds of system I would like that is no longer the norm
today, and that would be low latency UIs, like those text-mode UIs.

If I were building a user-oriented web app today, this is what I'd do. Store
data locally (using PouchDB or plain localStorage, optionally syncs to remote
CouchDB that user owns), with optional MS-DOS era UI (using Bootstrap 386) for
clarity and minimal distraction, keyboard shortcuts for all major operations
(like Windows' Alt+Letter shortcuts for easy discovery), and avoid
implementing user authentication where possible.

------
GeeDeezy
1) I agree with what you shared mostly, and I love SyncThing! 2) I think you
over exaggerated how difficult DropBox is. For typical users, just selecting
the defaults is good enough, and let's be honest DP is pretty rock solid. 3) I
think you WAY under exaggerated how technical setting up SyncThing is .. for
non-technical users. It was a stretch for me, it would be a nightmare for most
of my users. 4) If ST is reliable (I am testing now), I can see some place I
would like to use it.

Take care! Gary

------
jason0597
What the author doesn't realise is that Dropbox is not aimed at programmers or
people who know how to work a computer. For example, when he says "And
Dropbox? Well… I still have nightmares about this Dropbox UI <picture>", he
doesn't realise that to a "normal" person, the UI looks absolutely fine and
easy to use, much easier than "that horrible looking terminal! it must contain
viruses and be dangerous!"

~~~
cocoa19
With all due respect, I think you missed the point.

This is not a terminal vs GUI problem. He's discussing a 1 step process
(terminal) vs 10-15 step process (GUI). If Dropbox allowed you to install in 1
single step, I'm sure the author wouldn't be as vocal.

~~~
ketzu
The ignorance about the reasons for those steps and the way they count feels
disingenuous to me.

Examples:

At the end of the installation of both pieces of software, you did not
accomplish the same things. Complications of ST (device id's for example) are
presented as good solutions to a problem, glossing over the fact that the
others wouldn't need them or they were counted towards the setup.

------
mileusna1
About .stignore ... Dropbox actually offers tool for power user to exclude
files from syncing, and no, it is not the tool in UI from you post. As a
developer I use it a lot to exclude folders bloated with compiler/linker temp
files from syncing.

[https://help.dropbox.com/files-folders/restore-
delete/ignore...](https://help.dropbox.com/files-folders/restore-
delete/ignored-files)

------
elagost
Been using syncthing as a dropbox replacement since 2017 - It scales from a
raspberry pi with a USB disk, to a docker container on my NAS. It even works
if the devices aren't on the same network via relays.

It has very low system load, there are basically zero dependencies, and you
can run it on your android phone too.

------
dddw
I've tried switching to syncthing, but it consumed so many CPU cycles that I
deed it unusable eventually

------
seaghost
Synching but with cloud storage support like B2 or S3 compatibility is what I
need.

~~~
leipert
I sync my files to a Synology NAS with syncthing and have another app
uploading to B2 for Backups. Works wonderfully.

------
Epskampie
Does syncthing still use filesystem polling to detect changes? That's what
turned me off it last time I tried it. Now I'm using Resilio Sync, but would
prefer an open source solution.

~~~
karlicoss
it's had inotify support for several years now

------
jftuga
ST works great with my Android phone and syncing to my Windows 10 PC. What is
a good solution to sync photos, music, contacts, etc from an iPhone to a PC?
There is not a ST app for iPhones.

------
magwa101
The computer has become a commercial ad delivery device. No doubt. These days
work on my computers makes me feel like I'm in AdOps optimizing their ad
delivery to me.

------
nordicdyno
«I can’t run bazel, etc. Useless.»

Can't agree more on bazel's usefulness :troll:

------
Syzygies
I am a long-term user of Unison
([https://www.cis.upenn.edu/~bcpierce/unison/](https://www.cis.upenn.edu/~bcpierce/unison/))
from the command line, to synchronize directories between my machines. If
Unison weren't available, from studying the Syncthing documentation it would
be my next choice.

You wouldn't think that writing synchronization software would be rocket
science, but apparently it is: Unison's author is Benjamin C. Pierce, a
prominent computer scientist and author of "Types and Programming Languages".
Together with an active user community, he makes the correct call on some key
design decisions.

I have tested many alternatives to expose these issues. I have not tested
Syncthing, as this HN post is so poorly titled that it would sync into
oblivion before I could complete the tests. I recommend writing your favorite
sync software author if you find their handling of these issues problematic,
though expect defensive replies.

[1] Symbolic links. They should be copied as is, not considered for their
semantic content. Would you want sync software taking a half hour break if it
found porn on your computer? Why should it think about symbolic links, either?
It is your responsibility that they have some meaning on the target machine.
Unison and Syncthing copy Unix symbolic links. All other programs wreck them
or follow them. It confuses matters that some users beg for such behavior, in
hopes of extending the capabilities of sync software beyond their original
design.

On MacOS an application bundle, not meant to be examined by casual users, can
contain internal symbolic links, for example from "latest" to a versioned
directory. Software that mangles this will claim that it isn't meant for
"system files" as if that is some dangerous art. It is not; they are simply
handling symbolic links wrong.

[2] "Atomic" directories. If one has for example a MacOS sparse disk image
open on two machines, and makes conflicting changes, one cannot simply merge
the pieces, deciding arbitrarily on conflicting index files. Think of the
movie "The Fly". A sparse disk image is again a directory of many files. This
has many advantages, including ease of incremental backup. However, one needs
to decide which copy to keep in case of conflict, at the directory level.

Unison has a way to declare this. I've never seen other software with this
capability. This also applies for example to .git directories.

[3] Interactive conflict management. Using Unison, one chooses interactively
how to resolve conflicts before committing to the sync. I sync many gigabytes
of data, and I have no interest in dealing later with scattered renamed copies
of files, many of which matter to automated tools and will never see my manual
attention. I either choose a preferred copy at the time of sync, or I abort
and fix the problem before the sync.

I prefer Unison's handling here to Syncthing.

~~~
LeoPanthera
I used to use Unison. It has a huge flaw. Like rsync, the Unison binary must
be installed at both ends of the sync. Unlike rsync, _they must be exactly the
same version, compiled with exactly the same version of various libraries_.

I was bitten by this so many times, because the path of least resistance is
just to install unison from the repo of whatever OS you are using, but if you
want to sync between different OSs, may God have mercy on your soul.
Sometimes, it works. Sometimes, it explodes.

I switched to Syncthing. Your points here are valid, but so far, have not been
a problem in the real world.

~~~
tome
> Like rsync, the Unison binary must be installed at both ends of the sync.
> Unlike rsync, they must be exactly the same version, compiled with exactly
> the same version of various libraries.

Wow, I've been using rsync for years and never knew this. I hope I haven't
silently corrupted anything.

~~~
dllthomas
I read the above as saying Unison versions must agree, but rsync is more
flexible.

~~~
tome
Ah yes, thanks! Phew.

------
m4rc3lv
Nice program. Too bad it can not sync with a phone.

~~~
antepodius
It can! At least, there are android apps for it. I don't know about ios.

------
meroje
Good time to remind everyone that the password prompt from Dropbox (in the
screenshots, located right below the "Turn on notifications" from the OS) is
fake. They pretend to use the password only to turn on accessibility
permissions.

[https://forums.macrumors.com/threads/dropbox-responds-to-
mac...](https://forums.macrumors.com/threads/dropbox-responds-to-mac-security-
risk-accusations-updated.1994702/)

~~~
pixxel
Gah. That is shitty. I deleted dropbox when Condoleezza Rice joined the board
back in 2014ish.

~~~
ypcx
I've quit Dropbox when they capped the free account to (I think) 3 devices
only. I'm now using Mega.nz which has end-to-end encryption and works well. I
actually have a paid account with them to backup photos from my phones. My
local cloud directory is still named Dropbox.

------
betimsl
upspin from Go people is also a good one.

------
AtlasBarfed
"Control it by editing XML config"

NOOOOOOOOOOO! So close! Ack! The example is blinding my eyes!

The example even shows arbitrary attribute-heavy vs tag-heavy mixing. Truly a
blast from the past.

------
RcouF1uZ4gsC
> Syncthing has reminded me how great computers can be if they are not made by
> corporations. It’s simple, predictable, sane, acts no-nonsense.

Says someone running MacOS.

~~~
tonsky
macOS becomes more and more crap, but does it mean I can’t express my opinion
about other programs anymore?

