Hacker News new | ask | show | jobs
by Joeri 1924 days ago
A linux fanboy would argue that your problem wasn’t linux, it was proprietary software that vendors won’t port to linux. They might also argue that your team should not choose software which is so restrictive.

For me though it boils down to two things: (1) linux does not go out of its way to provide stable ABI’s, which makes porting proprietary software to linux and maintaining it there expensive and (2) if you are serious about doing productive work the best productivity software is often proprietary. Add those together and there is a sort of gradient over time where if you work together with non-linux users there are always things pulling you over to windows or macOS.

5 comments

> They might also argue that your team should not choose software which is so restrictive.

Which in the end is a valid point.

I've seen offices fighting with their own MS Word templates because neither current MS Word versions nor alternatives like LibreOffice can correctly display and format them anymore. Meanwhile Microsoft Team's online Word is not 100% consistent with the offline package, and when you need your PDF export to just work it's not fun when suddenly PowerPoint decides to always invert the colors for no reason.

Then there are cases like the subscription-based Adobe tools which are nice until you happen to be in a country targeted by a US trade embargo and overnight your subscription is cancelled with no way to even access your own files in cloud storage. Oops.

Is Gimp inferior to a billion dollar corporation's top-seller? Sure. But I know tomorrow I'll still be able to open all my files on almost any device running a desktop OS. If you earn your salary with this kind of software that's still not very convincing of course and I get that, however on the other hand when you depend on this kind of software to be working reliably it's worth considering how much you really want to depend on some corporation's servers being online when you need to rely on it.

> Is Gimp inferior to a billion dollar corporation's top-seller? Sure. But I know tomorrow I'll still be able to open all my files on almost any device running a desktop OS

Not only that, skills you learn on an open platforms don't really expire. I spent a while getting pretty good at using both Photoshop and GIMP, but these days I'm not using Photoshop enough to warrant paying a subscription fee to use it when I do need it. Those skills and time invested in using it essentially go to waste without a license. GIMP, on the other hand? I've been benefiting from the time I've invested in it for over 15+ years now without a hitch.

    > (1) linux does not go out of its way to provide stable ABI's, which makes porting proprietary software to linux and maintaining it there expensive
My impression is that the opposite is true for user space - https://yarchive.net/comp/linux/gcc_vs_kernel_stability.html Maybe you're referring to GNU or kernel modules? There are more than a few anecdotes of people running 20+ year old binaries that still work with X11.
Linux keeps the userspace<->kernel ABI stable, sure. But that's largely an implementation detail; what matters is the ABI presented to applications - at the library level, not underneath libc. And this varies between libraries and distributions.
About (1), Linux itself actually does go out of its way to provide stable ABIs as do some very common infrastructure-level libraries like the GNU C libraries. X11 itself is also very stable and both code and the protocol has been compatible going back to the early 90s.

However everything built on top of those is not and does not care about ABI or even API stability and now several desktop projects are actively undermining X11's stability with Wayland. Gtk+ breaks its API and ABI every major version as does Qt - and IMO even if Qt wanted to remain stable, as a C++ library it is very hard to do. Also Qt is really middleware and its developers have very different priorities than what you'd need for an actual platform (not to mention how intentionally misleading they have been towards users of their library).

There is a stable desktop API on Linux, Motif, but that is ugly and nothing targets it anymore and the company behind it nowadays actively promotes Qt instead.

Regarding Gtk's frequent breakages, I really can't understand the thought process of whoever is making these decisions.

Gtk is pretty much only relevant on Linux, the Linux desktop is itself a tiny fraction of the desktop market, and the amount of developers who're willing to write GUI apps for Linux, to write documentation or tutorials on the subject, etc. is already extremely low. So you'd think it makes sense to keep things as stable as possible, to make sure that no unnecessary effort is wasted and to encourage people to improve their apps or write new ones.

But apparently the Gtk people don't care. So much effort has been wasted due to stability issues, not even talking about the multitude of good-willing people who got burned in the process and just stopped caring about Gtk altogether. It's really a sad state of affair.

It's unfortunate about the ABIs - I think this probably adversely affects linux stability even when you have the source and allow a recompile.
Couldn't they trivially use QT and bundle the libraries needed with the software?

This doesn't seem dissimilar to how one could ship software for windows.