Live data from Hacker News

Life is too short to depend on unstable software

blog.sidebits.tech

151–160 of 175 posts

Re: Life is too short to depend on unstable software

#151
post #141

Earlier quoted context omitted.

Fair. Re: bleeding edge, my point was that you could keep the rest of your system stable -- building one component yourself lets you make that tradeoff.

Yup. Both of those options were bad enough that I found a really janky [0] workaround to buy me the time in which to rewrite the entire image generation stack. I ended up writing it in Rust, and it's worked beautifully ever since. My implementation was approx 4x faster than the ImageMagick version, and afforded me flexibility and features not implemented in ImageMagick, so it's been great. [0] https://legacy.imagemag…

That janky (but clever!) hack sounds like something I'd do... and then leave running in production for 10 years. :)

Well done for writing your own solution!

Re: Life is too short to depend on unstable software

#152
post #74

Honestly, I've had better luck on the bleeding edge. Newer Linux kernels almost always are better (and when they're not, it gets fixed quickly). Wayland is definitely better than X. Newer Gnome is better than old Gnome. Ruby 3 and 3.1 is definitely better than 2.7. Rails 7 is way better than 6, even in alpha state. Deno is nicer than Node (although the ecosystem needs to catch up). Hell, V8 and then Node led to a boo…

While I agree with you I sincerely see no real advantage in Wayland over X. Steam does not work properly with Wayland, client side decorations are stupid and broke the decorations of Kitty and Alacritty (requiring me to workaround it).

Re: Life is too short to depend on unstable software

#153
post #146
post #74

Honestly, I've had better luck on the bleeding edge. Newer Linux kernels almost always are better (and when they're not, it gets fixed quickly). Wayland is definitely better than X. Newer Gnome is better than old Gnome. Ruby 3 and 3.1 is definitely better than 2.7. Rails 7 is way better than 6, even in alpha state. Deno is nicer than Node (although the ecosystem needs to catch up). Hell, V8 and then Node led to a boo…

However keeping up with the bleeding edge is expensive, it requires continuous maintenance and a lot of effort to sift out fads. Python is a great example of where the beeling edge is stable, and Python projects decay really quickly. I've seen 2-year-old python projects in machine learning fields environment that just can't be run any more as a practical matter because the dependencies have changed too much.

Changing too quickly might be bad but a certain level of decay is good.

Re: Life is too short to depend on unstable software

#154
post #37

Earlier quoted context omitted.

The only one I'm aware of that does a good job of this is the Go language project, but it's not really your typical FOSS project; it's a Google project, and Google relies on it internally, so the incentive to make it stable and high quality is as high as it will ever get. They don't sell it to others, but they themselves rely on it as a core part of their own business.

When was the last time the Linux kernel or the gnu utils broke for you? For me? Can't remember.

Yea, Linux is another good example, but that's really mostly because of Linus' adament commitement to never break user space. A lot of other people would be happy to break user space programs. As in this famous rant https://lkml.org/lkml/2012/12/23/75

For the "gnu" user space programs, I don't use much of them so I can't comment, but for the desktop environment? It's a huge mess. Even with stable/sane environments like xfce, somethings are confusing and brittle, such as getting things setup properly for Kanji/Chinese character input. I've tried it several times, and everytime it takes a lot of effort to get it right, and I always forget what the right steps were. It's not even worth remembering because in a few years it will change.

Re: Life is too short to depend on unstable software

#155
post #73

Earlier quoted context omitted.

The first time? Sure, nothing ever gets it right the first time, but over time software should converge on being bug free and not requiring any support at all. Free-with-paid-support has a perverse incentive against this.

"over time software should converge on being bug free" Yeah, and the way that's done is by refactoring things, removing buggy/deprecated things, and not adding any more new features/requirements... So, pick your poison, I guess? I'd love to go move on to the next job as much as the next person, but somebody still has to be paid to do those things. I don't see what the significant difference is there with free-with-pa…

All I hear is excuses. I'm not interestd in hearing excuses.

Re: Life is too short to depend on unstable software

#156

Earlier quoted context omitted.

Without fullstack knowledge, in this case, if you don't care how the frontend will fetch data, how can you optimize the backend (just curious). Fullstack knowledge is nessessary for optimized backend code, seriously. Ruby has elegant syntax and structure for functional programming as well as OOP, not like broken Python (1-line lambda and broken OOP).

Your bias against Python is full of prejudices, I wonder where you got the idea that all Python devs lack knowledge about FE?

It's real. I know about 3 people doing Python, and all of them hate JS for no reason.

Re: Life is too short to depend on unstable software

#157
post #74

Honestly, I've had better luck on the bleeding edge. Newer Linux kernels almost always are better (and when they're not, it gets fixed quickly). Wayland is definitely better than X. Newer Gnome is better than old Gnome. Ruby 3 and 3.1 is definitely better than 2.7. Rails 7 is way better than 6, even in alpha state. Deno is nicer than Node (although the ecosystem needs to catch up). Hell, V8 and then Node led to a boo…

Tbh, this dichotomy is kind of Linux's fault. Consider the issues Linux of today is facing, or were just were recently resolved.

With no attempt at being exhaustive (as I'm not a huge Linux user nowadays):

- Wayland is just becoming production ready, imo, it's still years away from being trouble-free

- Gnome is still a resource hog, Gtk is not in a good place, KDE is still prone to crashes

- Installing software/Dependency management is still a headache - the distro agnostic package management solutions (Snap/Flatpak/AppImage) are ironically anything but - apt and it's ilk have known issues as well - the final solution in this domain is still unclear

- Imo it was proven that PulseAudio won't work - it's replacement, PipeWire is still just becoming mainstream

All these issues - software installs, accelerated desktop, audio that just works, stable desktop libs - are things that both Windows and macOs have had for literally more than a DECADE (some for almost two), allowing people to be able to be extremely conservative and stay on Win7 to this day. State of art desktop Linux is still ways behind from having all of this stuff working.

Re: Life is too short to depend on unstable software

#158
post #74

Honestly, I've had better luck on the bleeding edge. Newer Linux kernels almost always are better (and when they're not, it gets fixed quickly). Wayland is definitely better than X. Newer Gnome is better than old Gnome. Ruby 3 and 3.1 is definitely better than 2.7. Rails 7 is way better than 6, even in alpha state. Deno is nicer than Node (although the ecosystem needs to catch up). Hell, V8 and then Node led to a boo…

Tbh, this dichotomy is kind of Linux's fault. Consider the issues Linux of today is facing, or were just were recently resolved. With no attempt at being exhaustive (as I'm not a huge Linux user nowadays): - Wayland is just becoming production ready, imo, it's still years away from being trouble-free - Gnome is still a resource hog, Gtk is not in a good place, KDE is still prone to crashes - Installing software/Depen…

I wish someone would try to refute what I wrote instead of just downvoting it.

Re: Life is too short to depend on unstable software

#159
post #137

Earlier quoted context omitted.

If you build IM yourself, then you are no longer using the old, stable IM version and you've hit the problem: you're on the cutting edge, and also running nonstandard software!

You can choose what version of IM you want to build. There may be several releases more recent than Debian Stable! I'm not sure what your objection to "nonstandard" software is. I write software for a living -- all of my work is "nonstandard" by definition, but it runs just fine. :)

It's not an objection. It's an explanation of why people install unstable or newer versions of software; a counterpoint to the article.

Applying your own patch to a piece of software makes it nonstandard and unstable (because it may introduce new bugs, like any change), the very thing the author of the article fears.

See my initial comment here.

Re: Life is too short to depend on unstable software

#160

Earlier quoted context omitted.

I agree with this mostly, but the new GNOME releases are almost universally a design regression IMO. Pretty much everything that they added was doable with extensions in 3.38 (most of which are now broken with GNOME 40), and the only substantial changes that I can discern is the shift to libadwaita and forcing people away from things like custom stylesheets and shell extentions, which were the only things that made G…

I still see GNOME as the most practical DE to run - but it's telling that absolutely nobody uses it as shipped: at minimum they install dash to dock or dash to panel, re-enable minimise buttons, and install a system tray extension. The project seems to usually come around in the end, and it reminds me of some quote critical of the US's foreign policy I think, that "You can always count on the Americans to do the righ…

"I've also infuriatingly gotten a 'patches welcome' response before, and then simply faced the 'that's not in our vision' response upon providing a patch."

That has been my experience on quite a few FOSS projects. I had to learn that the hard way (on other projects, not GNOME). Some are more conservative than others, some may delay making a decision until after they get a patch, etc. Ultimately, since it's your time, you have to do your research before you decide to spend months working on a patch or however much time you plan.

Since GNOME is a large umbrella project then it can vary between sub-projects, I have noticed the ones that are popular and user-facing tend to have a much higher bar for contribution and are much more "cathedral-like" in their design approach, and they kind of have to be if they want to have any kind of semblance of stability. So I don't think it really helps much to blame any project for this or call them "bad eggs", it's their choice of how they want to do things.

Post reply on HN