Live data from Hacker News

Never update anything

blog.kronis.dev

41–50 of 288 posts

Re: Never update anything

#41

I upgraded my Ubuntu distribution last week and my old Xerox Phaser laser printer stopped working over the network. Something like this should never happen. I hate spending my weekends troubleshooting the Samba configuration. Maybe I will connect the printer to a Windows VM.

I ran “brew upgrade coreutils” on Wednesday and my dog has had diarrhea ever since. This definitely should not happen.

Re: Never update anything

#43
I run a very successful SaaS on Angular 1.8. No need for shiny Angular v659, or React, or Svelte, Vue, whatever. Angular 1.x, Python, and Flask is all you need to build a business with 7 figure ARR.

Re: Never update anything

#44

I upgraded my Ubuntu distribution last week and my old Xerox Phaser laser printer stopped working over the network. Something like this should never happen. I hate spending my weekends troubleshooting the Samba configuration. Maybe I will connect the printer to a Windows VM.

This is why I badly want all updates and rollbacks to be as declarative and simple as Git commands.

"Be on this version. Now."

Re: Never update anything

#45
post #4

DOS 5.2 ftw

Do what my Tandy 1000 did, and burn DOS 3.3 right to ROM. None of this wimpy flash-but-with-a-read-only-bit, no fancy UV-erasable EEPROM...just honest-to-goodness-blown-fuse ROM. Boots immediately too.

My Tandy 1000 (TL/2) had a EEPROM you could configure for booting from rom (dos 3.3) or the hard drive (originally also dos 3.3, but IIRC dos 6 ran fine too.

Re: Never update anything

#46
post #35
post #23

There’s something to be said for being on the oldest minor version that still receives patch releases (usually the LTS if there is such a thing). Unfortunately most FOSS libraries don’t have the luxury/resources to support parallel releases. So to get security fixes you need to keep somewhat up to date with other changes. The worst place to be is having to fix a CVE in a hurry, but first having to upgrade your framew…

I guess enterprise Linux subscriptions are such a tax, right ? It pays for Red Hat/SUSE/Canonical to maintain and old stable version CVE free for you, so you don't have to update so often.

Sure, or if you prefer: the price of Debian Stable is that you only get security updates and bug fixes until the next Stable release.

It's wonderful.

Re: Never update anything

#47
post #5

Semantic versioning is a curse. It makes perfect logical sense until you are a few iterations in and quickly run into dependency hell as shown in the diagrams in the article. My solution to this isn't "never update anything", but rather "never version anything". People can choose to stick to the bits they originally got, which is perfectly fine, or they can switch to the current "live" one. As a developer I'm only ev…

> As a developer I'm only ever building and maintaining the latest source.

That's valid under semver.

The crazy diagrams show what happens when you want to support lots of old versions.

I have semver stuff at work where I only maintain the latest version. Bugfixes bump the patch version, adding a feature bumps minor, removing a feature bumps major.

I don't make any special effort to bump or avoid bumping anything. It gives me a rough idea of whether a given version has new stuff in it (x.1.0 or x.2.0) or is just a bugfix (x.0.1 or x.1.1)

Dependency hell has nothing to do with how you label your versions and everything to do with how much you want to annoy users by breaking whatever you like vs annoy yourself by taking the time to set stable APIs and hold compatibility backwards and forwards.

Semver vs. Git commit hashes vs. "just one number" vs. web browser versioning vs. "just timestamp" is all just different labels on the same soupcans.

Re: Never update anything

#48
post #46
post #35

Earlier quoted context omitted.

I guess enterprise Linux subscriptions are such a tax, right ? It pays for Red Hat/SUSE/Canonical to maintain and old stable version CVE free for you, so you don't have to update so often.

Sure, or if you prefer: the price of Debian Stable is that you only get security updates and bug fixes until the next Stable release. It's wonderful.

Oh right, yeah, that should also work fine. :)

Re: Never update anything

#49
post #46
post #35

Earlier quoted context omitted.

I guess enterprise Linux subscriptions are such a tax, right ? It pays for Red Hat/SUSE/Canonical to maintain and old stable version CVE free for you, so you don't have to update so often.

Sure, or if you prefer: the price of Debian Stable is that you only get security updates and bug fixes until the next Stable release. It's wonderful.

Except for chromium.

Re: Never update anything

#50

Earlier quoted context omitted.

You don't need semantic versioning for that. "Oh, this was introduced in build 22456" works just as well.

Except that using a build number in the way you're describing is just a worse semantic version. You now have no way to indicate if your changes are breaking. Separation of your pipelines also just got a lot more hectic because you could have a situation where you don't know what happened when you're missing "versions" (builds) because it's failing but still incrementing... Using build numbers for versioning doesn't r…

I think the concept of a breaking change is part of the mistake. If you want to change something you should introduce the new way and support it side by side with the old for a while while going through a depreciation cycle.

I'm with the GP on this. Pinning to a specific version is a code smell. You should have enough confidence in your regression suite to always use the latest version. And hopefully enough confidence in your vendors that they're not going to break a bunch of stuff.

Post reply on HN