
Why Johnny Won't Upgrade - janvdberg
https://jacquesmattheij.com/why-johnny-wont-upgrade/
======
jiggawatts
Don't forget: "Never slow down the user interface".

I have a 4K Sony television that was their _flagship_ model when it was new,
but a couple of years ago they "updated" it with a new version of its OS that
looks identical but is incredibly sluggish. Not _technically_ broken, but
frustrating to use. Moving around between menu items is a good 2-3 seconds, up
to 10 in some cases.

There is literally nothing I can do about this. The display panel is perfectly
fine. The tuner works. The streaming works. It's not broken. It's out of
warrant, so I can't evne return it.

But it _feels_ like I've been downgraded from "flagship" to "off-brand budget
TV" without any physical component ever changing.

I didn't consent to this. I didn't expect the automatic upgrade to nearly, but
not quite, break my TV.

~~~
pmontra
I own a LG smart TV. Wary of those and other problems I never connected it to
the net. I bought it because it cost only 50 Euros more than the dumb model
and the display looked much better, which should be the main point of a TV.

If I really want to do smart things with my TV I attach something I control to
one of its HDMI ports (phone, tablet, laptop, Raspberry.)

I'm not thrilled about the idea of TV sets with an embedded 5G SIM that I
can't disable. Worse if they'll only work if online.

Edit: example of 5G and TV
[https://5g.co.uk/guides/5g-tv/](https://5g.co.uk/guides/5g-tv/)

~~~
Fnoord
I needed an all-in-one solution for streaming (Netflix, Prime, Spotify,
Jellyfin, ...) so I went with an Nvidia Shield Pro on the HDMI port. Any smart
TV is a dumb TV for me. I'll make it "smart" myself, the old fashioned way, as
you described. One downside of HDMI is max 60 FPS, so its limited for gaming
and OKish for interactive (such as navigation through menu or simple browsing)
yet should be adequate for any viewing.

~~~
Retr0spectrum
60fps is not a limitation of HDMI.

I have an LG OLED that has HDMI 2.1, which can do 4k120fps (at least).
Unfortunately current-gen GPUs only support HDMI 2.0, so I am limited to
1440p120fps or 4k60fps for the time being.

~~~
Fnoord
OK, it _was_ a limitation of HDMI, and most devices still use that old HDMI
standard, so practically it still is a limitation until the new HDMI versions
are more common. On my monitors, I use DP whenever I can.

~~~
mnw21cam
The main disadvantage of DP over HDMI is that if you switch off a monitor that
is connected to the computer via DP, then the computer thinks the monitor has
been disconnected, and rearranges all your windows for you, so when you come
back to the computer and switch the monitor back on it's all messed up. With
HDMI, that doesn't happen.

~~~
wolrah
This has nothing to do with DisplayPort itself and everything to do with a bad
implementation in the monitor.

The DisplayPort spec actually explicitly says to not do what these defective
monitors are doing.

------
orev
I had been using a great app that’s been around since before the iPhone came
out (PocketMoney on Palm). They rewrote it for IOS, and it was able to import
the database from the Palm version. Really great.

Then sadly the author died, and it languished for a while until it was sold to
someone else. The new owner seemed to try to keep it going, but then finally
gave up last year and crammed an absolutely awful “update” that was actually a
totally different software via the automatic update process. Everyone’s
financial data got locked up in this new version that is almost useless. ~20
years of financial tracking just gone. To make it worse, they did it in
December, just before people would need to pull reports for tax season.

I like to swing by it on the App Store every once in a while just to drop a
one star rating. That’s about the only recourse you have.

~~~
MaxBarraclough
This is a real 'Stallman moment'. The issue there is less about updates, than
about non-Free software (the thing the FSF talk about), and data silos (the
thing the IndieWeb folks talk about).

You committed to a non-Free software solution, the maintainers of which held
all the power over the software, denying you the freedom to have the software
do as you wish. When they make a decision, it's to maximise their benefit, not
yours. (They might also do so incompetently.) When they make a decision
against your interests, unfortunately you have little recourse.

~~~
segfaultbuserr
The standard story in the computer folklore was Movable Type [0], a blogging
platform. In the early 2000s when blogosphere was at its height, Movable Type
was used by numerous authors. It was freeware, source code available, and had
a big collection of plugins and extensions. It was not Free and Open Source,
with restrictions on use and redistribution, but most thought it was good
enough.

As time went by, its shortcomings and limitations became obvious and a new
version was needed. But the development has already stagnated because the
publisher's interests shifted. And finally when the new version was released,
it contained numerous bugs, and many bloggers suddenly found they needed to
pay several hundreds dollars of licensing fee under the new license.

Matthew Thomas, a blogosphere personality, wrote an outline for anyone who
wants to create an ultimate blogging platform [2] that can stand the test of
time and prevent similar incidents from happening again. Requirements included
free database backend, open archive formats, and free software.

His article was also the source of a famous remark,

> _In the long run, the utility of all non-Free software approaches zero._

\---

[0] [https://www.gwern.net/docs/technology/2004-pilgrim-
freedom0....](https://www.gwern.net/docs/technology/2004-pilgrim-
freedom0.html)

[1]
[http://web.archive.org/web/20051107103030/http://mpt.phrasew...](http://web.archive.org/web/20051107103030/http://mpt.phrasewise.com/2003/05/02)

[2] The Movable Type Incident was a major event responsible for the rise of
WordPress, which was a new project at that time. Even the name "WordPress"
refers to the printing press, in analogue to Movable Type.

~~~
hutzlibu
"In the long run, the utility of all non-Free software approaches zero."

But to be fair, that is allmost true of any software, with changing
archtectures programming languages etc. but a thousands times yes! With free
software you have at least the option of doing the work of migrating.

~~~
einpoklum
Well, depends on what you mean by "long term".

BSD-licensed low-level unix programs are still quite useful today and are
likely to continue to be very useful in coming decades.

~~~
MaxBarraclough
If they're BSD-licensed, that means they're Free Software.

~~~
segfaultbuserr
Nobody said it isn't. You misunderstood the discussion here.

I quoted "In the long run, the utility of all non-Free software approaches
zero."

hutzlibu said the same problem affects all software, not just non-Free
software. In a constantly changing computing environment, even free software
is affected. Nevertheless, hutzlibu was in agreement with the "spirit" of the
quote, because at least the user still controls the software, and it's
possible to migrate.

einpoklum disagreed, using BSD utilities as an example - showing how free
software can be unaffected.

Disclaimer: I didn't downvote the parent post - Why is my parent post
downvoted? There's really no disagreement here.

~~~
MaxBarraclough
Right, gotcha.

> Why is my parent post downvoted? There's really no disagreement here.

I appreciate it, but even if I'd disagreed, that's no reason to downvote.

------
cs702
As a user of software, I couldn't agree more with the OP that automatic
updates:

 _> should always keep the user centric

> should be incremental and security or bug fixes only

> should never update a user interface without allowing the previous one to be
> used as the default

> should never be used to install telemetry or spyware or to re-enable it if
> it was previously switched off

> should never be used to install other software packages without the users
> explicit consent and knowledge

> should never change the format of data already stored on the system

> should never cause a system to become unusable or unstable

> must allow a revert to the previous situation

> must be disablable, in an easy and consistent manner for instance on mobile
> devices

> should never cause the system to become inaccessible or restarted without
> user consent

> should always be signed by the vendor to ensure that the update mechanism
> does not become a malware vector

> should never cause commercial messages or other fluff to be included

> should never cause configuration details to be lost

> should always be backwards compatible with previous plug-ins or other third
> party add ons_

I agree: Software vendors "should" and "must" do all these things when
updating software on my computer without my permission.

But often they will NOT, because their economic incentives are frequently
stacked AGAINST it.

For them, it's often cheaper or more profitable in the short run not to do any
of these things.

~~~
taneq
So to sum that up, Johnny Won't Upgrade because like as not, the writers of
the updates are The Enemy.

~~~
Akronymus
I literally only update apps on my phone when the old version becomes unusable
[1] or when the new version actually provides something of worth.

For desktop software, most seem to, sadly, be self updating or a website.

For example, youtube now has a miniplayer when playing a playlist on desktop.
I find that "feature" to be absolutely atrocious and would rather do without
it. But due to it being a website they changed it to make it impossible to
turn it off.

[1] Whatsapp

~~~
de_watcher
Btw, desktop youtube redesign is atrocious: it's slow and wastes a lot of
screen space. People have to work on browser plugins that use hacks to
redirect to the old page. The old design page is thankfully still served, but
it can't be accessed without magic and constant breakage.

~~~
Akronymus
Also: reddit redesign is godawful. I HATE that designers think that unifying
the look and feel of a website for desktop(horizontal screen) and phones
(vertical acreen) is a good idea. For example: twitter has practically no
difference between mobile and desktop view. And it wastes so much screenspace.

Altough, the reddit redesign sucks on mobile too.

------
stubish
Taring everything with the same brush. There was a time, not so long ago, when
it was impossible to install Windows over the Internet because _so many_ other
machines were compromised and your machine would, with certainty, also end up
compromised before it had gotten as far as applying the latest service pack.
Then we got automatic updates, and we all breathed a sigh of relief because
things got _better_. We had empirical evidence that other people do not keep
their systems secure. And now apparently all automatic updates are bad,
because people think I should trust them to be competent and proactive, when I
know for a fact that other people are not competent and proactive. Or because
people think it is the vendors problem, yet don't want vendors to push the
necessary fixes.

Yes, some vendors suck. But the solution isn't to demand they stop making
fixes. And the solution isn't to demand they stop pushing fixes, since we know
in most cases the fixes won't be voluntarily applied _until it 's too late_. I
say it is a requirement for a competent vendor to push the best version of
their software. The _problem_ I see is a disagreement between consumers and
vendors on what that best version should be. And not all vendors are like
that.

~~~
mattnewton
It’s funny you mention Microsoft, because I have a windows machine to play
games on. It regularly updates itself and re-enables telemetry I had disabled,
shows spammy news in the start menu and ads for Microsoft products in my
toolbar, and reinstalls skype every time I try to get rid of it.

~~~
bentcorner
It sounds like many of you would appreciate the LTSC version of Windows:
[https://techcommunity.microsoft.com/t5/windows-it-pro-
blog/l...](https://techcommunity.microsoft.com/t5/windows-it-pro-blog/ltsc-
what-is-it-and-when-should-it-be-used/ba-p/293181)

~~~
__MatrixMan__
Wow, a version of Windows without all the stuff I hate about Windows. Will
investigate, thanks.

------
wvenable
Some automatic updates should really just be different products. The most
obvious one at the moment is Android Firefox is getting a big automatic update
that, for a lot of people, will be a very big downgrade and an unfriendly UI
change.

But Mozilla doesn't want to maintain security patches for X different
products. And that's true of most vendors. This model of computing where all
users are always on the latest version makes security patching and bug fixing
a lot more straight forward.

If you use a web application, this is the model you've always had.

~~~
userbinator
_But Mozilla doesn 't want to maintain security patches for X different
products._

Are they really different products (versions), or are they just branches off a
common tree and share so much code in common that it would be close to trivial
to apply the fix to them all? My experience with security-related patches is
that they're almost all extremely localised --- a missing check, an off-by-
one, etc.

It seems like far less effort to do that than a massive rewrite of the UI, in
any case...

~~~
mook
Fennec (the old Firefox for Android) was, as far as I'm aware, a different
codebase compared to Fenix (the new one). As in, Fennec was hosted on
hg.mozilla.org using the same source tree as desktop Firefox, and Fenix is
hosted on GitHub, if I understand things correctly.

~~~
dblohm7
Fenix embeds Gecko via GeckoView, which resides in mozilla-central.

------
AnonHP
This is an area where iOS sucks. Having faced some undesirable consequences in
the past from greedy and/or downright malicious developers, I don’t have
automatic updates turned on for apps.

But what makes things worse is that iOS doesn’t provide a way for a user to
downgrade an app to a previous version. Since syncing app binaries to
computers was also long removed (from iOS 9), the only special version of
iTunes (12.6) to support the management of app sync not being updated, and
Apple Configurator being messy for long, even users with a computer are left
with no way to deal with these problems.

What Apple should do for iOS (and also Mac App Store), which I doubt it won’t
until there’s an alternative store, is allow users to downgrade apps at least
one or two versions right from the App Store. Put it in a place that’s not an
“accidentally downgrade and shoot yourself in the foot”. Make a backup of the
app data before any upgrade to facilitate a smoother downgrade.

~~~
Legogris
I don't want to defend Apple or iOS here, but Android (talking OS upgrades,
not apps) is even worse, by far. Depends on the manufacturer and I imagine
Google is one of the less horrible ones, but pretty much every update for
Samsung Galaxy:

* Changes the UI in some way I don't like

* Re-enables intrusive, annoying and concerning background services and their permissions and notifications that are painful and time-consuming to disable

* Occasionally adds new ones of the above to the pile

* Contains important security fixes that all users should receive as soon as possible

* Doesn't provide detailed information on what the update actually includes ("The security of your device has been updated" is the ONLY information for the past four updates despite other obvious changes being co-bundled.)

It's a mess.

~~~
imhoguy
Thankfully almost anyone can side-load APK with older version - unless a
developer blocks the API. But agreed it is a mess. That is why I think auto-
updating mobile devices or "the cloud" will never fully replace computers with
a local software for a serious work.

~~~
Legogris
My gripe here is with system updates, not apps from the Play Store.

~~~
omnifischer
I for one stopped updating after nougat. At least you can flash safe lineageos
<zip>. Search for TWRP/backup. Even you can clone phone to identical model.

~~~
b3lvedere
A couple of months ago i flashed a ye olde Samsung Galaxy 5 with the LineageOS
16 version. I was very surprised it even notified me of updates on the latest
build! I was even more surprised it updated without losing any app or data.

I was not surprised the phone also performed way faster than the original
Samsung OS. I kinda expected that. I think that is because LineageOS was more
designed with the (power)user in mind than getting money from companies who
want uninstallable apps tracking people forever.

------
viraptor
I like the main idea here, but the points listed are a bit extreme.
Specifically this one:

> should never update a user interface without allowing the previous one to be
> used as the default

Are you ready to pay for the ongoing support of all legacy interfaces,
including the ones you're not using and which are possibly not used by anyone
in the world (no telemetry)? Are you ready for all the bugs and security
issues this will cause?

Same goes for support of old file formats.

~~~
dt3ft
It took a while to find a comment that points out the cost of maintaining
legacy UI.

It is highly likely that no customer is willing to pay for support of legacy
anything, let alone UI.

"Jonny" sounds like the kind of person that wants to purchase software at a
one-time cost, and then expect free lifetime upgrades (which include all the
outrageous demands such as supporting legacy UI).

Make your own software Jonny, see how that works out for ya.

~~~
Silhouette
_" Jonny" sounds like the kind of person that wants to purchase software at a
one-time cost, and then expect free lifetime upgrades (which include all the
outrageous demands such as supporting legacy UI)._

I think Johnny sounds like the kind of person who wants to buy software once,
then simply have it keep working the same way indefinitely unless he chooses
to buy a newer version. The only updates Johnny wants for free are the ones
that fix defects in the original product that should never have been there in
the first place like security vulnerabilities.

I don't see how Johnny's position is unreasonable. If you bought a fridge or
washing machine and it turned out after some years that a design flaw created
a dangerous situation, you would expect (and in some places, the law would
require) the original manufacturer and/or vendor to recall the product and
make it right. Software developers have enjoyed a free ride on this issue for
many years, which was OK when the culture was that they would issue free bug
fix updates from time to time voluntarily. If that is no longer the case and
they're not going to fix important problems without also forcing other changes
that the user might not want, maybe it's time software developers stopped
getting a free ride on shipping poor quality products in the first place.

~~~
rapht
^ This, exactly.

------
Aerroon
I wholeheartedly agree with the article. Software companies have created a
culture, where (some) users deliberately do _not_ want to update their
software.

For the last few major Windows updates I've had to reconfigure my sound setup,
because the update breaks it by changing default sound devices and what feeds
into what. Recently, a Chrome update (silently) broke an add-on that allowed
me to easily switch audio devices for a tab. There are tons of other problems
like that that I've run into.

I dread every software update for software that I use frequently.

~~~
hkmurakami
Updated Instagram on a whim. Instantly regretted having Reels shoved in my
face with no way to remove it.

~~~
gfxgirl
I agree with the upgrade hate on this page but ...

There are lots exceptions. Instagram is a hosted image service not an app.
There is an app, that app is just a front end for the service. Being a service
it's no different than any other service. You go into a restaurant, you like
the ambiance. You go back and they've remodeled and you no longer like it. You
go to the bakery and enjoy the friendly person behind the counter. They quit
and you don't like their replacement. etc...

~~~
hkmurakami
The distinction (imo) is that had I stayed on the old version I could have
enjoyed the previous friendly person behind the counter whom I really liked
for a few more months, and now I have no way of going back to that person :(

------
1vuio0pswjnm7
Everyone is entitled to an opinion and has the right to share it. Even in the
case it may be unpopular amongst certain groups.

As an end user, I do not like automatic updates (which may or may not be
"upgrades"). I try to avoid software that relies on this approach wherever I
can. I consciously choose software that is not in constant flux, unless
something is broken.

There is not a single software author that I trust enough that I just want to
blindly allow them to install new software at their leisure without any input
from me. To allow such practice is not my preference. I prefer to evaluate
software before I install it. "Automatic upgrades" assumes there is not to be
any evaluation by the user. Every update is assumed to be "all good". Of
course, that may perfectly suit some users. However, other users have every
right to be more discerning in their choices. No software author can naively
guess exactly what it is I personally need or want from a piece of software.
(The growing trend of using "telemetry" in place of actual user feedback is
another topic worthy of discussion.)

The trend of automatic updates seems to encourage a form of software
development where the software can be released "unfinished", in a soon-to-be
broken condition (to later be fixed, or not) or in a state of flux where the
number of knobs and dials can increase, the UI can change, etc. At worst, the
quality of the software may change fundamentally over time, not always for the
better. Essentially the user never gets to see the final product before
deciding whether to use it. She is signing up for a work-in-progress.

This is an honest opinion from a bona fide computer user and I fully respect
and appreciate differing persepectives, including the "mainstream" ones. Thank
you to the HN forum for letting me share my thoughts on this matter.

~~~
cortesoft
> I prefer to evaluate software before I install it.

How do you do this?

~~~
gsich
VM?

------
kl4m
> should never be used to install telemetry or spyware or to re-enable it if
> it was previously switched off

I lost track of the number of times a friendly Windows 10 (and 7) update has
re-enabled telemetry. Either that or there is yet _another_ , completely
different post-update Wizard for advertisement, telemetry, default
applications, and other privacy stuff (There sure is a lot of effort put in
moving settings around each update!)

As usual in Microsoft wizards, you have to check/uncheck the exact opposite of
all the defaults for a good experience.

~~~
gruez
>I lost track of the number of times a friendly Windows 10 (and 7) update has
re-enabled telemetry. Either that or there is yet another, completely
different post-update Wizard for advertisement, telemetry, default
applications, and other privacy stuff (There sure is a lot of effort put in
moving settings around each update!)

...and that's why I'm using LTSC, because it's limited to security updates and
supported for 10 years, rather than regular windows which gets "feature"
updates every 6 months. For office, the equivalent would be perpetual (2016 or
2019) instead of 365.

~~~
bilegeek
I've read[1] that it's possible to legally obtain LTSC without volume
licensing by purchasing a few other Microsoft thingies. Is such a method how
you did this, or did you unfurl your sails?

Btw (rant incoming), this isn't a spiel against piracy. If Microsoft complains
that people pirate LTSC without providing an easy legal way to obtain it, they
can cry me a river. I just switched over to Linux from Win7 early this year;
between spying on you, stability and data loss issues from firing their QA
department, the auto-installation of Candy Crush, and the intentional
difficulty in getting LTSC which doesn't have these problems, they lost me
from ever switching to Windows 10. Which is an absolute shame, because if it
weren't for those dealbreakers, it would actually be a good OS, and I would be
using it on my desktop. Maybe someday I'll spin up a QEMU gaming VM, but if
they ever make LTSC impossible to obtain, I'll just try to forget Windows 10
exists entirely.

[1][https://community.spiceworks.com/topic/2167558-explicit-
inst...](https://community.spiceworks.com/topic/2167558-explicit-instructions-
for-purchasing-a-windows-10-ltsc-license)

~~~
gruez
>Is such a method how you did this, or did you unfurl your sails?

Neither. Ended up using a msdn key.

~~~
bilegeek
If it's safe to say so - I don't wanna jeopardize your methods here - how did
you obtain it? As far as I can tell, normal consumers can't buy them "legit",
but they are "illegitimately" resold anyways, which makes rejection of their
"validity" during activation a possibility (assuming Microsoft finds out, of
course).

~~~
gruez
>which makes rejection of their "validity" during activation a possibility
(assuming Microsoft finds out, of course).

AFAIK Microsoft doesn't revoke existing activations, so you should be fine
unless you need to reinstall. If you dont want that risk, a locally hosted kms
server (running in a VM for maximum security) achives the same thing.

~~~
bilegeek
Good to know. Also, I never knew about kms servers; TIL.

------
n1vz3r
> So, software vendors, automatic updates:

> should always keep the user centric\

> should be incremental and security or bug fixes only

> should never update a user interface without allowing the previous one to be
> used as the default

> should never be used to install telemetry or spyware or to re-enable it if
> it was previously switched off

> ...

That's exactly how it's done in conservative Linux distributions like Debian
or Centos. By installing Debian stable, you receive 7 years of security
updates only, and nothing changes without your permission. And quality of
being user-centric is common to the entire FOSS ecosystem.

------
ancarda
If I open the Play Store on my Android, I see 28 updates pending. Why haven't
I hit Update All? Well, lets see what the release notes say (i.e. why should I
update):

    
    
        New features added and bug fixes.
    
        Information not provided by developer.
    
        Bug fixes and enhancements.
    
        Information not provided by developer.
    
        (Description makes it clear it will break something for me).
    
        We're always making changes and improvements :)
    
        Information not provided by developer.
    
        (App adds some bullshit AR stuff I don't want or need).
    

I did update Firefox and Telegram though.

~~~
pitay
An interesting contrast is that some early access games have very detailed
feature and bug fix notes for their releases. As an example here are the
release notes for the build versions of 7 Days to Die (Alpha 19).

[https://7daystodie.com/a19-official-release-
notes](https://7daystodie.com/a19-official-release-notes)

They change notes are very detailed, and voluminous. If you had an issue with
a previous build, you can, just by looking at the release notes, see if your
issue has been fixed.

------
dugite-code
This is actually why I've moved the bulk of my ancillary programs over to FOSS
alternatives because the majority do Semantic Versioning.

I know when a major upgrade is happening and I know when a minor patch is
happening.

I still have proprietary software that is core to my work but I and my boss
have gone out of our way to avoid "cloud" software and continuous release
software.

------
jpadkins
Software version control by users is going the way of ham radio and people who
repair their own cars. Not completely extinct, but such a small set of
technically capable people that in practice it doesn't matter.

Real users don't know and don't care about software versions. They want
computing experiences that "just work". They don't care or know about where
the software runs, if there is telemetry, what the underlying format of the
data is, etc. The article starts off with nice goals around automatic updates
being user centric. But the list of requirements becomes absurd and only
important to 1% of tech savvy users (formats, reverts, plugins, commercial
messages, other software, telemetry, and multiple versions of UI are great if
your users are software developers or IT, otherwise they are a waste of time &
effort).

~~~
a_imho
Disagree that people don't care. Maybe not all the time, but sooner or later
everybody experiences a bad update (bad timing, crashing app, consuming a
mobile plan costing $$$).

Agree that most are powerless to fight it but the worst offenders are working
hard to keep the status quo.

~~~
jpadkins
I didn't say people don't care. Issues like crashing app is exactly what
people care about and where you should focus your time (or the data plan
example). My point was people don't know or care about underlying data
formats, so don't worry about that unless it affects the real user workflow.

------
dredmorbius
This essay almost perfectly describes Debian's commitment and policy toward
its users, specified through the Debian Social Contract, "We will be guided by
the needs of our users and the free software community. We will place their
interests first in our priorities
([https://www.debian.org/social_contract](https://www.debian.org/social_contract)),
in the structures defined by the Debian Constitution
([https://www.debian.org/devel/constitution](https://www.debian.org/devel/constitution)),
following the practices defined in the Debian Policy Manual
([https://www.debian.org/doc/debian-
policy/](https://www.debian.org/doc/debian-policy/)), via the mechanisms of
Debian's packaging infrastructure and package management system.

This is much misunderstood (and misunderestimated). It's not perfect or
automatic. But it's worked remarkably well for over a quarter century.

Ian, you made a damned good thing and you are missed.

------
causality0
I keep a large folder full of installers. More often than not software gets
worse over time. New methods of monetization creep in. Features that were in
the free version move to the paid version. Licensing problems result in
function crippling. The damned marketers and their unending push for change
for only the sake of change so they have something different to show people.
Developers seeing they have a sizable userbase for their simple app and
deciding to mutilate it by tacking on "social features".

------
xg15
> _They are abused to the point where many users - me included - would rather
> forego all updates (let alone automatic ones) simply because we apparently
> can not trust the party on the other side of this transaction to have our,
> the users, interests at heart._

I would say this is putting it lightly. We're at a point where the ability to
produce updates for a popular software is an asset that is traded on markets.
A popular life-cycle for apps or browser extensions is basically:

\- Some person makes an app or extension that is genuinely useful and
available for free (often with the best intentions).

\- At some point the developer cannot maintain the software anymore: They have
lost interest or don't have enough time available, etc.

\- Some company offers to buy the software and take over maintenance duties.

\- As soon as the company owns the keys, they will push an update that
includes ads/trackers/malware/etc into the formerly useful app, instantly
compromising the machines iof the app's whole userbase.

\- After some time, the community might notice and gradually the app will be
communicated as harmful. The community mourns the loss of a useful program and
users will move on until the cycle repeats...

> _So, software vendors, automatic updates:

\- should always keep the user centric

[... should do this, should not do that...]_

This list is well-intentioned but I feel ultimately fruitless. Yes, updates
_should_ be centered around the interests of the users, but as the articel
itself states, companies _don 't_ have the interests of their users in mind
when pushing updates.

So I don't see a lot of incentive to follow that list, honestly.

------
FraKtus
One example is Parallels Desktop, they constantly mail me to upgrade but there
is no information what system version they run on. So I downloaded the
installer and just launched it. The installer did delete my previous version
without asking any question and I was just left with the option to buy the
upgrade...

I had to restore a backup to find back my working version. Not sure sure if
there are as many extreme examples: an installer that deletes the previous
version, remove a valid perpetual license, without asking!

------
cgrealy
Look, I get that you want your article to have a respectable looking length,
but please don’t make me wade through 3 paragraphs pointlessly recapping the
history of software distribution from circuit boards.

The internet. We get it. We’re on the damn internet and anyone reading an
article about upgrading software knows what the internet is.

------
paultopia
Thank you! So often, I've credulously consented to an 'upgrade' only to find
that the new software refuses to work without malware-level access to my
system (looking at you, Palo Alto Networks globalprotect[1]) or turns around
and demands that all kinds of other software be updated for no reason (looking
at you, homebrew), or just randomly perturb the user interface, seemingly only
for the purpose of forcing users to pay for training to learn how to use the
new one (looking at you, Microsoft and adobe), or being a bug-ridden half-
baked mess (looking at you, Apple). DEVS, STOP IT.

This happens with hardware too. My building upgraded its (collectively paid
for) cable internet from 100mbps to 250mbps. The cable company showed up and
replaced the perfectly functional old modem/router with a "new" one
theoretically capable of faster speeds, except that it runs blazingly hot and
drops the wifi connection constantly; I suspect because 5mhz is actually
overheating. I actually regret accepting free extra speed, and will probably
end up ponying up 400 bucks for an eero mesh setup to fix the free upgrade
that screwed over my whole network.

[1] this VPN software _is_ malware. It demands the right to snoop on every
system folder it can get its hands on and all kinds of admin details, for the
privilege of... accessing university libraries.
[https://twitter.com/paulgowder/status/1296932684707631109?s=...](https://twitter.com/paulgowder/status/1296932684707631109?s=21)

------
smallstepforman
Upgrades when shutting down prevent me from catching the train on time.
Upgrades on startup prevent me from checking the train schedule. Insanity.
Thats why I run an OS that I control.

~~~
dt3ft
Works for an OS that is not connected to the internet.

You're probably doing this:

1\. disable automatic updates

2\. hope that no vulnerability is discovered for a month

3\. apply all available patches

4\. goto 2

------
habosa
This is all so true.

Updates are a crutch for the software developer (us). If you want to ship on a
certain date you can punt your feature/bug backlog to v2. As a user if you
download a Day 0 release of something you pretty much don't expect it to work
well anymore. Oh and it's _impossible_ to own software these days. Everything
is a subscription.

I miss the days when video games came with all the levels in the box and when
I could buy software for a one-time fee and then master the version I
downloaded. I used Photoshop CS3 for years and years, I wasn't interested in
what the new version could do I had barely scratched the surface.

As someone who ships updates to software weekly I am definitely part of the
problem though...

------
ChrisMarshallNY
My wife is a photographer; an excellent one.

She has thousands of digital images that have been manipulated by a certain
unique, proprietary software package. There are no modern equivalent
applications, and the original one stopped being updated almost a decade ago.

Miraculously, it still works, but she is terrified at every upgrade prompt.

There aren’t really any acceptable substitutions for the original app. She
could run it on her images, to “bake” them into TIFFs, but that would be a
“once you are a pickle; you’ll never be a cucumber again” thing. The format is
a reversible one that relies on a specific application to render it in a
scripted, linear fashion.

So this is yet another issue of modern software. Format and rendering
obsolescence. It can’t really be fixed. The original app was discontinued,
because it was too expensive to maintain, and the customer base was too small
to reward maintenance. The driving technology was patented and proprietary.

This is not unique to photography. I think pretty much every art or industry
has this problem.

As long as she maintains her operating system at a certain level, the
application will continue to work, but the day is coming (probably quite
soon), where it can’t work. She has already refused to upgrade to the current
version of the OS, and it is only a matter of time before she can’t get a
computer that will run the older version; not to mention the security issues
inherent in running out-of-date systems.

It’s a huge problem. Open-source is helpful in some cases, but not all (it
wouldn’t help here, because no one would bother to pick up the app; even if
the proprietary parts were published, unless a skilled software engineer was
also a photographer and expert at that software, and would be willing to do
the heavy lifting required to publish and distribute the software).

It’s also not a new issue. I am glad to see a lot of open-source and standard
formats, but they don’t solve every problem.

Open standards tend to suffer from the “all things to all men” problem, where
the needs of the few are subsumed by the needs of the many. They are also
often quite painful to implement. Anyone that has written a general-purpose
TIFF reader will know exactly what I mean.

~~~
monadic2
VMs might work. It's hard (impossible?) for most versions of osx.

~~~
saagarjha
I think people have gotten pretty much every version of macOS virtualized.
It’s a bit of work, yes, but not a huge amount.

~~~
ChrisMarshallNY
I think Parallels has directly supported this for a while.

That may change, soon...

------
dusted
"then the internet came around and things changed overnight" except it came
around while software was still distributed on floppies and it took a decade
or more before online distribution was the norm.

That said, I agree with the article! I'd much rather not have updates, unless
they bring fixes to bugs that I actually experience, which happens somewhere
between seldom and never.

------
joe_the_user
Funny this post should come now.

I've been dealing with a weird upgrade problem.

I noticed a problem with various software on my Android phone about a month
ago - some software had stopped because it couldn't upgrade and I wasn't able
to download anything from the Play Store. It seemed the phone was waiting for
wifi to do anything. The only problem was Wifi would come never 'cause of
Covid. Moreover, changing Play Store options failed to solved things and box
in Android meant to change this had simply vanished ... several upgrade ago
(hah, ha). Oh, and looked far and wide on the net for solutions.

That would only be the sad story of one more phone crufted to death ... except
I did solve the problem. Accidentally. Yesterday. Trying to upload stuff by
Google Drive, I found a wifi-only option disabled it ... magically, the Play
Store worked now and everything I had order appeared. Apps worked again. Etc.

I'm not sure if I can think of a moral to this story but I'm glad of a context
to share it in.

~~~
asicsp
I have this issue. I don't use whatsapp much, but I wasn't able to update it,
so I removed it rather than leaving my few friends wondering why I'm not
replying to messages.

I just checked drive to try your workaround - and it says old version, needs
update, which of course I cannot do. Oh well. One of these days I will take
the plunge and see if a factory reset will work.

~~~
joe_the_user
Yeah, the crazy thing is that this issue isn't one issue but bunch issues and
gets worse over time. Once something restricts downloads, you wind-up in a
weird position where things stop working 'cause you can't update them and you
can't download any fixes for the same reason.

Removing auto-update in the Play Store is another step that apparently helps.

My guess is that Settings and Google Drive are each accessing a key in
something akin to the registry in Android. The problem is there seems no guide
to this registry-equivalent thing. Otherwise a program to fix these
configuration problems could be side-loaded.

------
spicybright
I think in an ideal world, updates would be either optional major updates (UI
changes, workflow changes, etc.) and minor updates (bug fixes, tweaks, etc.).

Then a company can maintain those multiple major versions until they phase out
support.

CD software had this down pretty great. You could actually rely on a program
not being pulled out from under you with an update.

~~~
chrisseaton
> Then a company can maintain those multiple major versions

That sounds completely unrealistic and inefficient for everyone involved.

~~~
stan_rogers
No, that sounds inefficient for one of the parties - the provider. The
provider isn't using the software to get work done, and doesn't incur training
costs, etc. The provider's pet efficiencies cost the users _real_ money (in
the "a million here, a million there, and pretty soon you're talking real
money" sense).

~~~
chrisseaton
I can’t imagine any software update so drastic as to require ‘training costs’.
Most reasonable people can figure out where a menu item has moved to.

~~~
nordsieck
> I can’t imagine any software update so drastic as to require ‘training
> costs’.

Both Windows and Office were notorious for this.

> Most reasonable people can figure out where a menu item has moved to.

As it turns out, many people who do low skill computer work do not adapt to
change well.

------
Animats
Don't get uppity, user scum. You'll upgrade when we tell you to. And we'll
take away a feature whenever we want. So there.

------
mianos
One of the most incredible examples of this I have experienced was the update
to the Android 'Pocket Casts' app. It worked great, had useful functionality
and was easy to use and navigate. I had a paid version I thought was great
value

Then, out of the blue, they replaced it with a re-write. The new app was slow,
missing most of the functionality in the previous app (not esoteric stuff, but
things like play lists). The new UI was incomprehensible (even to me, a
developer) and the had a massive number of serious bugs, like deleting your
podcasts, missing episodes, never downloading episode and marking things you
never listened to as played. Over the last year or so they have been
continually fixing things so now it's almost as good as the application it
replaced.

~~~
kl4m
I had to replace the default Apple Podcasts app (went with overcast). An
update made it completely unusable for me, particularly when I had one hand
available to hold the phone and press buttons.

------
fauigerzigerk
That's fine as far as wish lists go. But depending on the kind of software
we're talking about, meeting those demands could become expensive and
confusing pretty quickly.

What about users running different versions of the software on different
devices while expecting everything sync correctly?

What about communicating with versions run by other users?

What about the server side of the app? How many different client versions are
you going to support for how long, and what does that mean for database
schemas, etc?

Over time, there will be an enormous combinatorial explosion of possible
system states and state transitions that will inevitably cause bugs and
confusing situations for users.

You'd have to architect everything for forward and backward compatibility -
protocols, schemas and all the rest of it. How do you deal with all the
complexity without quickly accumulating unmanagable technical debt?

I agree that there are a lot of gratuitous and sloppy automatic upgrades that
ignore user interests. I also agree that there are types of software where
letting users keep old versions is not a problem at all.

But I don't think this debate is complete without also talking about the
issues that remain after accounting for bad faith, incompetence, greed and
negligence.

------
mcv
I have a happy story about an automatic software update that completely broke
the software. Happy, because it was easy to switch back to a previous version.

It's about a game, Europe Universalis 4, which, 7 years after its release,
still regularly gets major feature updates, sometimes dramatically changing
how the game works. Years ago, one such update that added a lot of tactical
depth to the game, ended up hogging so many resources on my aging PC that the
game ground to a halt and became unplayable.

Fortunately, Steam allows you to easily revert back to a previous version of
the game. Also useful when an update breaks save-game compatibility when
you're in the middle of a game.

Sadly, a lot of software does not have that option. It should be standard, or
our OS should enable us to easily revert back to a previous state of an
installation.

------
prawn
My App Store updates badge is triple-digits. I resist updates as long as
possible because they are almost always riskier than the rewards they bring.
They introduce ads, or cloud features I never wanted, they force
subscriptions, they add tracking.

At one point, I used my ancient text editor for 10+ years without updating it.
I've used Sublime Text 2 for many years with no interest in updating it
(though I'm sure it's better, it just does everything I need already). I used
a version of non-monthly-payment Adobe Creative Suite for around 10 years
without upgrading - I was still using the same file formats and didn't need
anything new.

Almost every time I've updated an app, I've been burnt. Cruft I don't need,
ads I don't want, phoning home on start up - ugh.

~~~
OkGoDoIt
Same here, I’ve had automatic updates disabled for years and I turned off the
notification badge for the App Store. Unfortunately some apps phone home and
determine they are not the latest version and then refuse to let you use them
until you upgrade. Mostly banking apps, which I guess maybe I can excuse, but
also Facebook messenger. Once FB messenger pops up with that notification that
I need to “upgrade in order to access my chats again“, I usually go a week or
two of just quitting it before I finally give in and upgrade and then things
are subtlety worse, or shuffled around, or just inexplicably different. But I
have friends who message me on there so I eventually have to give in and
capitulate. My lack of control is utterly frustrating...

~~~
donpott
WhatsApp too. My version of it "expired" yesterday and wouldn't work until I
updated it.

------
makecheck
It’s interesting he mentioned media such as ROMs because I often wish I could
force the system to pretend that certain things really are in ROM: “I don’t
want you to touch them, even if you otherwise would”.

Of course, ridiculous bundling of software features makes any partitioning
difficult.

A recent macOS update is a good example of ridiculous bundling: _half_ the
release notes (and the first notes listed) for this “OS update” were for
“Apple News+”, and the other actual OS update notes — that looked infinitely
more important — were left to scroll out of view. To hell with Apple News+!!
Features of an _application_ (that I _do not even subscribe to_ ) should
_never_ have become part of the OS, much less updated through first-class
bundling with fixes to the OS itself!

------
rurp
Man this article really echos my thoughts, which is surprising because I
almost always feel like an outsider in Techland for hating updates that change
perfectly good tools.

"But it's new!" is my most hated justification for changing software. If a
tool works I almost always want it left alone. I don't care about the new
layout or some new features. I'm using the software because it already suits
my needs and I don't want to waste time and mental energy figuring out some
changes that are useless to me.

I wish far more companies followed the approach laid out here. I think it
would be far more respectful of users in almost all cases.

------
bfrog
Yeah I mean, nothing like the automated android updates that make the phone
invevitably slower, less usable, and break previously ingrained interaction
flows.

See the gmail app for endless pointless tweaking. It solved email perfectly
fine, now it includes meets and some asanine button panel on the bottom taking
up a massive amount of space.

My phone hasn't changed, but android has, and thus my phone is almost
uselessly slow at this point compared to when I bought it a mere two years
ago. Remember the feature phone that worked the same the day you bought it
years later? What a blissfully simple device.

~~~
d10r
Disabling automatic updates is always one of the first things I do on a new
Android phone. I would happily enable it selectively for a few Apps of my
choice (e.g. the browser), but unfortunately the Play store doesn't allow that
- unlike F-Droid. So I occasionally do update Apps I want to be up to date
manually instead. Also reduces unpleasant surprises like randomly being logged
out or randomly becoming incompatible with backend servers (seen e.g. with
Mattermost).

------
enriquto
There are many different reasons for not upgrading a program.

Mine is a bit ridiculous. I never upgrade the Firefox browser, as a matter of
principle. The reason is that last time I did, Firefox would refuse to open
new tabs unless it was restarted. I did not want to restart it, since i'm
running a few windows in private mode, using different 2FA logins, and that
would entail to fill-in a lot of passwords and type a lot of numbers received
from several SMS. That was very annoying, and I vowed to never upgrade Firefox
again. Does anybody know a workaround for this stupid problem of mine?

~~~
wolf550e
Did you try separate profiles?

~~~
enriquto
Yes, I use separate profiles. The problem is that tabs opened in a private
mode are not recovered when restarting. Of course, that's the whole point of
private mode, but it's very annoying to re-login all these sessions via SMS
messages just for a random firefox upgrade.

------
pmiller2
Yeah, I'm regretting upgrading Google Maps on iOS recently. For some reason
now, whenever I bump the phone, the map view changes. I need my map view to
show me going left when I turn left and right when I go right in order to make
sense of things, but it will usually end up in a static "north = top of
screen" orientation, no matter what I do. It's turned a good piece of software
into something almost unusable.

Edit: Well, what do you know, I just upgraded again (because it can't get a
whole lot worse), and it's back to expected behavior.

~~~
zingermc
I think you can click the compass to switch between these modes.

~~~
pmiller2
I know that. The problem was it would switch when the phone switched
orientations.

------
oramit
Automatic updates have been an enormous boon to security and when done
correctly are really helpful. I don't look back with fondness on the wild west
of Windows XP where out of the box merely connecting to the internet
guaranteed a virus infection and service pack updates were an enormous pain.

What I think has been lost in the past decade or so is the distinction between
Major and Minor releases. I'm all for regular minor updates whose only goal is
security and stability improvements. When a Major update comes around I know
that i'm in for things being changed, possible breakage, etc, but at least I
know ahead of time and have the ability to opt out. But with the rise of
always connected software, software as a service, what have you, there are no
"versions" to settle on.

I needed to do some art work recently so just got back into the Adobe world
and there is no Photoshop CS3 or Photoshop CS6 you can buy and use. Instead,
you can only buy a subscription to "Photoshop" \- which is always the most
recent version. This story is playing out everywhere with software houses
abandoning Major versions you can buy and going for subscriptions. They don't
ever want to have you able to buy a version you like and stick with it because
there is no recurring revenue in it.

------
donio
Emacs is the only major piece of software that I look forward to upgrading.
With everything else it's a worry about what functionality will I lose this
time.

------
dcminter
I'm still angry about a Windows 10 "upgrade" that overrode my late father's
repeated declines. It rendered his previously working and familiar PC
completely unusable and with his failing health he couldn't face getting to
know a new OS and reinstalling it.

It prevented him from having the tools to book a last holiday in the sun, and
in my view Microsoft stole that from him.

------
johnminter
Manufacturers need to distinguish between critical updates that fix a
significant error in the results or fix a security hole that could make the
users system vulnerable. By contrast, feature updates should be labeled as
such. This makes it easier for the user to make an informed choice to install
the update.

~~~
jacquesm
Manufacturers seem to be hip to this which is why they bundle critical
security updates with UI changes and other trash that you don't need. If not
for that nobody would upgrade... it's totally backwards.

------
aethertron
That list of commandments for software updates is pretty good. But we'll be
disappointed if we rely on each software vendor to voluntarily conform to
them. Some of these could be enforced at the operating system level, I think.
And I don't mean a centralised App Store with policy enforcement. I mean OS
architecture.

> must allow a revert to the previous situation

So each app on my system would have the base 1.0 version code, plus any number
of patches. I could choose to run it with zero or any number of patches up to
the current version. And I'd be able to stop subscribing to patches from the
vendor if they are taking the software in a nonpreferred direction, and switch
to someone else who's forked it. The UI for this would be standardised in the
OS, not controlled by the particular app developer.

------
sn41
Amen to the article. High Sierra was the high point of my romance with Apple.
Dictation used to work decently until that point, just as a small example.
Catalina has pretty much ruined a lot of my favorite features. I had to update
the OS because Office updates no longer worked.

~~~
xenonite
Oh macOS... I am still on El Capitan where PDFs are rendered with subpixels.
Yes, I can see the difference even on retina displays.

------
sdfjkl
You forgot: "Should be as small as technically possible".

Xcode is the fat, bloated bastard I'm looking at, but there's plenty more. And
on mobile, where bandwidth is often metered it's even worse.

------
apricot
TL;DR: "More often than not automatic updates are not done with the interest
of the user in mind."

Exhibit A being the fact that automatic updates often silently re-enable
privacy violating settings. When a company is caught doing this, it's always
an unfortunate mistake. But strangely I've never seen this error go the other
way, towards more privacy for the user.

------
the_hoser
All but the last requirement are completely reasonable, but software vendors
are more afraid of being left behind or exploited than screwing up their
user's workflow. They're not usually updating to keep their current users.
They're updating to gain new users.

And if it's free software? Forget it. You're not the customer.

The last one is unreasonable because it's impossible to know what third
parties are going to do. If they use the plugin API in an undocumented way,
then they're the ones being irresponsible.

------
grumple
Updating Mac OSX invariably breaks things for my workflow. If I’m lucky, I
just have to reinstall Xcode and agree to terms (annoying). If I’m unlucky, an
app stops working, or there’s a critical security vulnerability (like free
admin access for anyone as in ~2018), or worse, mysterious video/audio
failures like I’ve had since the most recent update (some compatibility with
my setup of hub to usb switcher was broken).

So the lesson is, never upgrade unless you need to.

------
throwaway_pdp09
It took me 3 days to initally install visual studio first time. The next
install only took a day. These days it's down to a couple of hours (I know
what not to do). Visual studio tells me there's an upgrade available. Am I
going to risk it? Am I hell, I've got work to do. It's supposed to be a
business tool not a toy, why doesnt' MS treat it as one?

------
aib
I do software development in bursts (think productive weekdays + long
weekends) and do all my updates in the downtimes. One day Snap decided to
update Slack right before an important meeting. To a, yes, broken version.

Another angle to this is that had Slack not been a proprietary platform, I
would've taken time to find or help develop a sane client that is -e-a-s-y-
possible to fix.

------
rocqua
Notably, the list of SHOULDs at the end only applies to _automatic updates_.
For voluntary updates, many of these things are acceptable. Moreover, a user
should accept that at some point a certain version of software will lose
support and, unless you take the voluntary update, will stop getting security
updates and bug-fixes.

This contract cuts both ways. That is important to realize.

------
aj7
Early versions of Excel perfectly scaled the axes of scatter plots, even going
so far as to use round numbers on the gridlines. The same versions had an
auto-record macro language that was easy to learn and implement. Both have
been lost for two decades now, replaced by the complicated garbage we have
now.

~~~
Narishma
They're not lost, you can still run them.

------
neonihil
I went as far a building my own router out of an ARM box and denying all
traffic going to known update servers. I’m now adding auto-detection of
update-looking DNS lookups and denying those too.

Ironically, I’m keeping the router’s software up to date though. Security is
important. But it’s linux, I can always roll back.

~~~
jacquesm
That's a product.

------
ximm
Sounds like the author wants to use debian

------
gwbas1c
> should never update a user interface without allowing the previous one to be
> used as the default

Careful: Many UI changes are just branding refreshes. (How frequently do Coke
cans change?)

But, moving around the buttons because someone felt like it is just dumb.

> should never change the format of data already stored on the system

Careful: Internal databases change schemas. It's impossible to keep a database
schema through upgrades when new functionality requires an updated schema.

This particular request really depends on what the application is doing. For
example, if an upgrade decided to automatically convert .doc files to .docx,
that's a problem. But applications that maintain internal state need to be
able to fix bugs or make general improvements to that internal state.

> must allow a revert to the previous situation

Software doesn't know the future; it can't handle schemas that didn't exist
when written. More specifically, if an upgrade alters an application's
internal state to match what's needed for a new version, there's no easy way
to go back to the old internal state.

------
javier10e6
Hey MS I am scheduling an upgrade for some of your cloud services sometimes
next week. Expect some slow down in your data centers throughput across
several regions in the US and whatever happens, dont reboot the servers. How
that feels eh?

------
known
Why Johnny won't learn new technologies ?

"Anyone who stops learning is old, whether twenty or eighty. Anyone who keeps
learning stays young. The greatest thing you can do is keep your mind young."
\--Mark Twain

------
fogetti
I wish this problem would be more 'forefront' in legislation, because TBH this
is already at the point of being ridiculous, completely out of touch and also
FINANCIALLY DAMAGING to the customers and/or users.

------
scott_meyer
Upgrade aversion is the natural consequence of the automatic upgrade
subscription business model. If developers don't have to sell the next version
and the customer can't easily leave, ...

------
EricE
Even more fun than software updates is when digital services go back and
retroactively edit TVs, Movies, books, etc. Never thought I would go back to
purchasing physical media but here we are.

------
thinkloop
How do you solve the problem of having a thousand versions to support

~~~
toast0
A) commit to a timeline of support for the new branch whenever you make a
change requiring branching (your existing branch should already have a
commited timeline)

B) don't _mess_ everything up all the time so you have to support a lot of
branches

Look at the OS support plans for guidelines.

------
omaranto
Perfect timing. Chrome OS just had an update that makes bold fonts look very
fuzzy. As far as I can tell that update contains no other changes, just
severely fuzzy bold fonts.

~~~
omaranto
And a second update made the fonts crisp again. Madness!

------
samtuke
Open Source and Open Standards have always been the solutions to these
problems, and remain so. Necessary rather than sufficient requirements though,
I suppose.

------
effingwewt
Ugh the worst is when a game/app changes from paid to freemium. It's happened
to me several times and always long after the initial purchase so I was left
with no recourse.

------
jiehong
NixOS just provides that: you don't need to upgrade, but even if you do, you
can go back to any previous versions that are guaranteed to work.

Imagine a phone with updates like that…

------
quickthrower2
I remember the oxymoron: "Electrically Erasable Programmable Read Only
Memory". Ah, the luxury of not needing UV light to erase your ROM!

------
ThatGeoGuy
> should be incremental and security or bug fixes only

> should never update a user interface without allowing the previous one to be
> used as the default

> should always be backwards compatible with previous plug-ins or other third
> party add ons

Even as a longtime user of Firefox, who lost access to a number of XUL addons
once-upon-a-time, I have to disagree.

Some software upgrades cannot be "incremental or bug-fixes only." Sometimes
you get handed a pile of hot garbage, and your best chance is to just refactor
it. Certainly, you're not aiming to remove features or break workflows, but
there exists a world in which some percentage N of users who are affected
negatively by a change are not worth the effort of maintaining something. I
think this viewpoint ignores that often as software gets more use and grows,
our understanding of the problem-space and relevant abstraction grows as well.
Black & white statements about what is or isn't allowed by developers in their
products regarding updates completely ignores this aspect of development.
Granted, if you can choose when to upgrade and to what version to upgrade this
is less of an issue. Modern app stores do not function for the user in this
respect.

As for the interface being updated: it happens. Sometimes it is worse, but
then many times people only complain about things being "worse" because of
assimilation bias. There's some fantastic reading about not necessarily
catering to power users:
[https://pdfs.semanticscholar.org/c011/4ca106ff22cf53aaed57d9...](https://pdfs.semanticscholar.org/c011/4ca106ff22cf53aaed57d95adcb7ef306378.pdf).
I don't think I would 100% agree with that full article, but a lot of the
central premises hold up.

As for killing compatibility with plug-ins or third party add-ons, I am upset
by this as anyone but sometimes it needs to happen. Sometimes a breaking bug
is abused by a third party for bad reasons as much as they can be for good
reasons (e.g. banning add-ons that use exploits to mine bitcoin or data from
users, even if the add-on was offering up a useful feature as well).

Now, relating to Firefox's recent Android update that breaks a lot of things,
and even their behaviour for deprecating XUL in the past (I'm not referring to
how long they gave people to upgrade, which was fair, but rather that some XUL
features were never duplicated in webextensions thereby rendering some
extensions impossible to reproduce), I would argue that yeah, maybe there is
some sense of truth or some imperative that we need heed in the article.
However, I think most of this would be mitigated by being able to pin
versions, ask for a specific version from a specific date, or rollback. So
maybe it's a wash.

------
awinter-py
I mean agreeing that software should reveal and config-gate telemetry feels
like a prereq to these points

------
Multicomp
TL;DR: I agree with the article and add some rants of my own.

Users will go to extremes to take back control of their magic rocks.

Source: I finally bought my next-ten-year upgrade PC (old PC was sandy-bridge
mobile era), and I installed, not the OS that I've known since the day my
father explained to me that this is called a computer and that is called a
start button and oh look this is clippit, ignore him, but the fussy, free OS
that computer supernerds use called Linux, specifically KDE-flavored Fedora.

I don't have a Windows VM (it'll be W7 SP1 RTM), since my old main machine now
sits to the side 'in case I need it' which so far I've been able to escape (ok
I used Windows for balena etcher since it was already installed there)
_needing_ to use Windows.

Why all this pain and trouble and new system? Because I read way too much
Hacker News? Probably? But mostly because Windows 95, 98 SE, 2000, XP, Vista
(it meant well, even if terrible), 7, all had one thing in common - they
reported to the user.

Read the Windows UX Experience guidelines book (I have bought a hard copy),
they cover the same things listed in the article, no surprises, if you change
stuff, users better be able to wave away your changes until they are ready to
change.

Windows 10 does not report to the user. It reports ON the user to Microsoft.
And updates when it wants to. And unsets settings in hopes you're too stupid
to notice. What are you Windows, Luigi from the Cars movie? "You don't know
what you want, _I_ know what you want...white-wall tires!" (which is not what
we want)

This is not just me being a burnt out anti-Microsoftie either. I still defend
Office 2010, Windows 7-era products, I love the idea of the courier device,
and I'm so enamored with that better era of user-owned-devices, I will
probably buy a MS Surface Neo (so I too am imperfect / complicit in enabling
Microsoft's bad behavior).

I don't use SaaS that I don't pay for, and if I do pay for it, I have local
copies. That's why I avoid the likes of Roam/Notion/whatever-newest-
notetaking-app-of-the-week-on-HN like the plague. I put data in, one day it's
all gone. Nope.

Users may be seen as / actually be ignorant, unwashed masses who don't know
the difference between forward slash and backslash, or Firefox and IE, but
eventually, even they learn that updates = pain, annoyance for no benefit _to
them_, only to benefit the management and product owners of the software shop.

When they turn off / block updates, they've spoken, and I agree with them,
that the way you / we are doing updates today is wrong and needs to be
changed.

------
WesolyKubeczek
How do you pronounce the word "disablable"?

------
Cthulhu_
There are ways and means, but it's down to app developers; they should not
push major updates over the auto update channel, instead just push a "v2" with
an upgrade path from the previous version(s). In theory.

But that's one app model. Does Apple still allow for models like that?

The model currently used by a number of apps - webapps, Electron apps,
browsers, operating systems - is that of the "evergreen" model, where they
continuously update. But this is where Firefox is dropping a bollock; they do
BIG updates, rebrand it with things like Quantum, and push MAJOR UI updates.

Contrast this with Chrome which, from a user (i.e. my) perspective has only
done incremental updates. UI changes have been small and subtle. This page [1]
has a number of screenshots from the old version of Chrome. I have a dark
theme going on now but it's not changed that much at all. Chrome has never
been a brand, hardly a product, as opposed to Firefox which is still stuck in
the 90's / 2000's where they only get interest if they do a new version.

That was the old model for Windows, Office, Adobe products, etc for a long
time as well - they HAD to make a new "big" version to keep sales going. But
customers did not HAVE to update, so they would often stick with older
versions - things that worked - and e.g. Adobe HAD to come up with new
features to convince people to upgrade.

But it's all gone to subscription services now, which come with "evergreen"
updates.

One more anecdote I'd like to do: I've been using 1password for years now,
because for me it worked best as a crossplatform password manager (Windows,
Mac & iOS, synchronization via Dropbox). They switched to a subscription model
a while ago, but the versions I have were all paid for in single purchases. On
Windows I'm still on 1password 4 while on Mac it's 1password 7, and thankfully
the two are still fully compatible when it comes to their data. I'm sure this
won't last, but as long as I don't HAVE to update (and as long as their
encryption is solid), it'll be fine to just keep the version I have now - That
is one company / product that cannot afford to be flippant about their
customer data, data format. I've got hundreds of accounts in there, if I were
to lose it it would be... pretty bad. At the very least I should write down my
gmail password and double check my recovery codes because everything is linked
to that one account. Anyway I ramble / digress. Stuff.

[1] [https://www.techrepublic.com/pictures/photos-10-years-of-
goo...](https://www.techrepublic.com/pictures/photos-10-years-of-google-
chrome/2/)

------
neonihil
I could not agree more!

------
kanox
The whole point of software is that it "soft" and thus easy to change.
Upgrades are whole point and not optional.

The logical conclusion is that any and all software should follow and
evergreen/rolling release model in order to take maximum advantage of the
flexibility built into the medium.

Commercial software should all be subscription-based. Even software which is
packaged as fixed releases has to support routing updates in order to deal
with security issue.

The problem of "excessive involuntary updates" is much smaller than the
problem of devices which are not kept up to date by their manufacturers. Cheap
mobile phones are among the worst offenders.

------
chrisseaton
> should never update a user interface without allowing the previous one to be
> used as the default

I don’t understand why people are so precious about their UI and workflow.
They obviously managed to learn and adapt to the current UI. Why can’t they
adapt to a new one?

If you’re super sensitive to something as trivial as a change to a menu
location maybe that’s a sign you should be automating whatever your workflow
is.

~~~
egypturnash
I don't understand why programmers are so precious about their choice of text
editor. They obviously managed to learn and adapt to their current choice. Why
can't they adapt to a new one?

~~~
hyperman1
Funny. I'm trying to adapt my Java workflow from eclipse to idea. Again. And I
know that almost everyone agrees idea is better than eclipse. And some of
eclipse's major features are broken enough to actually hamper me
professionally - looking at you, maven integration. And both tools seem at
least equally capable, just everything is named different and placed somewhere
else. But eclipse is now about 20 years ingrained in me.

So every 1-2 years I try to live with idea for a month or so. Sometimes even
compromising by switching to the eclipse keybindings. And I know my
productivity will drop while adapting. So I sweat on that bloody superior idea
interface for 2 weeks, then some super hot emergency drops in, and I do 'only
this one' in eclipse. Then switch back to idea. After 2 of 3 emergency's, I
give up and go back to eclipse. See you next year, idea.

I know this is stupid. I'm happy using emacs, vscode, notepad++, even vi, for
almost every other programming language, except Java. This can't be healthy.
And yet...

~~~
saagarjha
For me InyelliJ just can’t get it quite like how I have Eclipse set up, and
it’s somehow uglier than Eclipse…

