Comment by SuperSandro2000

4 days ago

LTS is harming the industry and holding everything back! IMO it is the wrong direction.

Why do you think that? That seems like a pretty extreme viewpoint to me.

Stability is a great thing for busy professionals that want stuff to just work.

How many apps have you upgraded that have crashed and burned from the update? Me, a lot. both commercial and OSS. With OSS at least you get all the pieces so you can figure out how to put it back together again. With Commercial, you rollback, file a bug report and hope someone somewhere in the company will be incentivized enough to fix it for you.

  • To mitigate breakages we should be aiming for better test coverage, at various build levels: class, package, program, system.

    Our industry's story for system-level testing, for Linux distributions, is poor. NixOS tests are decent, but need more coverage, and something similar needs to be available to upstream so issues are caught during development.

    Meanwhile, LTS releases have downsides:

    * Alienating you from upstream: why contribute upstream if you'll only benefit from them in 2 years.

    * Having to support stable versions makes refactoring harder. Developers don't want stable to be too different, lest backporting becomes too tricky.

    * Maintenance costs is sunk, compared to if we can make rolling release reliable (see above re tests, and easy rollbacks).

    https://abseil.io/about/philosophy#we-recommend-that-you-cho... is the same idea but from Google C++ team.

    • If your software is in such heavy development that you need changes all the time, it should never be in a stable distro to begin with, it's not stable code.

      Overall(last I checked), the testing is roughly equal between the stable distro's(Debian/Ubuntu/etc) and NixOS. The difference is stable distro's back-port bug-fixes. NixOS rarely does, since their release cycle is only 6 months long.

      > * Alienating you from upstream: why contribute upstream if you'll only benefit from them in 2 years.

      I contribute upstream, regardless of if I'm running NixOS, Debian Stable or Windows. It makes no difference to me which OS I'm running when a bug shows up. If I find a bug in X package, I go fix X package. Sure I also fix it locally in my running instance(s), but that's my problem, regardless of which OS I'm running.

      > To mitigate breakages we should be aiming for better test coverage, at various build levels: class, package, program, system.

      Yes, yes we should. Most software has a terrible testing story. There are very few pieces of software with robust testing. SQLite is one such. One could probably name a handful of others, but after that the list gets really hard to add to.

      4 replies →