13 votes

Turn on auto-updates everywhere you can

16 comments

  1. [14]
    Algernon_Asimov
    Link
    The Apple computer I have to use at work is continually hassling me to update it - and, whenever I finally give in, it takes ages to update, thus making me unable to work for that period of time....

    The MacOS prompts never leave you alone.

    The Apple computer I have to use at work is continually hassling me to update it - and, whenever I finally give in, it takes ages to update, thus making me unable to work for that period of time. I've given up.

    But for your average smartphone or laptop owner? Go auto-update all the way.

    This brings to mind the time a developer updated his "task list" app and made it totally different to how it used to be. We users had installed it because it looked and behaved a certain way, which we liked. Then he changed it and totally redesigned it: operations, functions, interface, aesthetics, everything. It was an entirely different app after the update. If I had seen the app after the update, I would not have bought it - and nor would many other people. The user feedback about the change was so vocal and so negative that he had to re-release the legacy version of the app for people to use.

    As a result of that incident, I've turned off auto-updating for all apps on my phone, so I know the apps will stay the way they were when I installed them, rather than becoming an ever-changing moving target. I know there has been at least one other case where an app I like was reinvented by its developer into something I don't like, but I avoided the unlikable version because I had auto-update switched off.

    All the more reason to make the whole process as invisible—and painless—as possible.

    Exactly. But they don't. Developers ensure that their updates will inconvenience users - either by making the device unusable for an inappropriate length of time, or by altering their application inappropriately - which is why users won't install the updates. If developers want us to install their updates, they have to make the process and the result as painless as possible.

    7 votes
    1. [14]
      Comment deleted by author
      Link Parent
      1. [12]
        Deimos
        Link Parent
        I think one of the main problems is that we've ended up inextricably lumping security updates in with all other types (functional, design, etc.). It's absolutely important for users to keep their...
        • Exemplary

        I think one of the main problems is that we've ended up inextricably lumping security updates in with all other types (functional, design, etc.). It's absolutely important for users to keep their apps updated because of security issues, but a lot of the time people would explicitly like to avoid functionality changes, and those two goals work against each other. It's almost never possible to get only security updates and avoid other ones, that's just not how software is built.

        I don't know if there's really a solution to it other than a massive change in software architecture, and that seems really unlikely.

        22 votes
        1. [6]
          onyxleopard
          Link Parent
          This is one thing I really like about macOS. macOS security updates are separate from major version updates, and if you skip one (for whatever reason) they release multiple updates bundled...

          I think one of the main problems is that we've ended up inextricably lumping security updates in with all other types (functional, design, etc.).

          This is one thing I really like about macOS. macOS security updates are separate from major version updates, and if you skip one (for whatever reason) they release multiple updates bundled together so you don’t have to go through a chain of updates one by one. I imagine that is a lot of extra work for Apple to test, but I appreciate it.

          Also, I really think that more software should adopt semantic versioning, and that semantic versioning for true apps (not SDKs, frameworks, etc.), should be about breaking changes to the human-interface (not APIs). In such a way, it would be clear when updating from version 6.5 to 7.0 that the app may change in fundamental ways that I need to investigate first before blindly auto-updating. There are some apps I’ve used that are distributed with major versions as totally separate app bundles. That is to say, Fantastical (version 1) and Fantastical 2 (version 2), are totally separate. Fantastical (1) may still be supported as legacy, but nobody would expect it to be feature compatible because it is, fundamentally, a totally different application—you could even run Fantastical and Fantastical 2 side by side. I like this model because it is intuitive to users, you can’t accidentally update to a new major version, and it is sustainable for developers of paid apps without a subscription model—a major version with significant new features is something people can pay to upgrade to, if the value proposition is there.

          4 votes
          1. [5]
            Algernon_Asimov
            Link Parent
            What happens if Version 7.0 contains an absolutely essential security patch, but I don't like the new user interface in this version? What do I do? I see three options: Install the upgrade, get...

            In such a way, it would be clear when updating from version 6.5 to 7.0 that the app may change in fundamental ways that I need to investigate first before blindly auto-updating.

            What happens if Version 7.0 contains an absolutely essential security patch, but I don't like the new user interface in this version? What do I do? I see three options:

            1. Install the upgrade, get the security, but be unhappy with the software I'm using.

            2. Don't install the upgrade, be happy with the software I'm using, but be at risk of a security breach.

            3. Find another piece of software elsewhere that does the same job, with both the security patch and the interface I like.

            I'm more likely to choose options 2 or 3 than 1.

            2 votes
            1. [4]
              onyxleopard
              Link Parent
              I agree that if the dev gives the users this choice, it’s a shitty thing to do. That said, I think most reasonable devs, if they plan to support 6.5 for some pre-announced product life cycle,...

              I agree that if the dev gives the users this choice, it’s a shitty thing to do. That said, I think most reasonable devs, if they plan to support 6.5 for some pre-announced product life cycle, would be on the hook to back port the security fix. If there was no expectation of 6.5 seeing support after a new major version, though, then yes, I see options 1 and 3 being the only security conscious choices (3 being most preferable to me, because if the dev demonstrates this kind of disdain for users once, they’re likely to continue).

              1. [3]
                Algernon_Asimov
                Link Parent
                So you and I agree that finding a different piece of software is the least-bad option if a developer updates their software in a way we don't like. In that case, it would be kind of self-defeating...

                (3 being most preferable to me, because if the dev demonstrates this kind of disdain for users once, they’re likely to continue)

                So you and I agree that finding a different piece of software is the least-bad option if a developer updates their software in a way we don't like. In that case, it would be kind of self-defeating for a developer to update their software in that way.

                A pragmatic developer should therefore not update their software in such a way as to alienate their existing users paying customers.

                1. [2]
                  onyxleopard
                  Link Parent
                  In the case of paid software, I totally agree. There are many other situations, such as free-as-in-beer software where the dev makes it available as a courtesy, and if you decide to use it, you’re...

                  A pragmatic developer should therefore not update their software in such a way as to alienate their existing paying customers.

                  In the case of paid software, I totally agree. There are many other situations, such as free-as-in-beer software where the dev makes it available as a courtesy, and if you decide to use it, you’re at their whim (this is the case with most web-apps, where the software can be updated server-side with no action or control on the part of the user whatsoever). And for open-source-projects, if you decide not to update, you may be forced to fork the project at some point as it will become infeasible to stay up to date with continued development on the original.

                  1 vote
                  1. Algernon_Asimov
                    Link Parent
                    I get that. If I didn't buy it, I don't get to complain if the developer changes it or even deletes it. But, if I buy it, I expect it to stay on my device, and to stay in the condition it was when...

                    There are many other situations, such as free-as-in-beer software where the dev makes it available as a courtesy, and if you decide to use it, you’re at their whim

                    I get that. If I didn't buy it, I don't get to complain if the developer changes it or even deletes it. But, if I buy it, I expect it to stay on my device, and to stay in the condition it was when I bought it. (And the "task list" app I referred to upthread was one that I bought.)

                    1 vote
        2. [4]
          Octofox
          Link Parent
          Its super hard to do that though. As soon as you release a feature update and then a security update comes out what do you do now? You either force the user to install the feature update and the...

          Its super hard to do that though. As soon as you release a feature update and then a security update comes out what do you do now? You either force the user to install the feature update and the security update or you fix the security issue on both versions of the app.

          OSs typically do this. They have a support length so you might be able to stay on the same release for a few years while the latest version gets feature updates you only get security updates. This is useful to reduce work for system admins because they have to test major updates less often but it still does nothing for people trying to avoid change because you still have to use the new version eventually.

          This also puts a huge load of extra work on developers and is only worth it when you have large enterprise customers who don't want feature changes every month.

          2 votes
          1. [3]
            Algernon_Asimov
            Link Parent
            Why? There's no law of nature that requires humans to use the latest version of a software program. Some of the apps I use on my smartphone are no longer available, as I learned recently when I...

            it still does nothing for people trying to avoid change because you still have to use the new version eventually.

            Why? There's no law of nature that requires humans to use the latest version of a software program.

            Some of the apps I use on my smartphone are no longer available, as I learned recently when I bought a new phone and tried to install all my existing apps on the new device - but I keep using them (I accidentally stumbled across a way to port them across to the new device). They're not broken or failing in any way, even though the developer has abandoned them. They still work.

            I'm also using Windows 7 on my desktop computer, and have been happily using Windows 7 for years. And, if I'm able to, I'll continue using Windows 7 until the day I die. Even though Microsoft has issued an edict that they will stop distributing security updates for Windows 7 next year, I'll keep using it (I'm a fairly low-risk user), and I'll keep using it for as long as I can. The only thing I'm aware of that will stop me using it is if my computer physically fails, and I have to buy a new one - which will come with Windows 10 pre-installed. But, even then, I can use my discs to re-install Windows 7 if I want.

            Why do I have to use the new version eventually?

            1 vote
            1. [2]
              Octofox
              Link Parent
              Sure, there is nothing forcing you if you don't care about your data being secure or your computer actually working. Try using windows XP in 2019 with an internet connection and you will soon find...

              Why? There's no law of nature that requires humans to use the latest version of a software program.

              Sure, there is nothing forcing you if you don't care about your data being secure or your computer actually working. Try using windows XP in 2019 with an internet connection and you will soon find your data encrypted and some popup asking for money. There is no such thing as a low risk user. Bots scan the entire internet looking for outdated computers and will automatically fill them with malware, cryptominers and all kinds of crap when they find them.

              3 votes
              1. Algernon_Asimov
                Link Parent
                Okay. I'll concede your point that my Windows 7 computer will be less secure after Microsoft stops distributing security patches for it. But why should I be subjected to a feature update when it's...

                Okay. I'll concede your point that my Windows 7 computer will be less secure after Microsoft stops distributing security patches for it.

                But why should I be subjected to a feature update when it's only security that's the issue?

        3. Algernon_Asimov
          Link Parent
          Exactly. Thank you for explaining that.

          It's absolutely important for users to keep their apps updated because of security issues, but a lot of the time people would explicitly like to avoid functionality changes, and those two goals work against each other. It's almost never possible to get only security updates and avoid other ones

          Exactly. Thank you for explaining that.

          1 vote
      2. Algernon_Asimov
        Link Parent
        Exactly. So don't change it! Simple. Leave it the way it was when people bought it. Noone comes into my home and changes my blue couch into a red couch after I bought it and took it home and...

        No matter what feature, function, color, menu, filetype, etc... you alter for any reason someone will want it be other than how it is.

        Exactly. So don't change it! Simple. Leave it the way it was when people bought it. Noone comes into my home and changes my blue couch into a red couch after I bought it and took it home and installed it in my lounge room. Why am I supposed to accept the same behaviour in software?

        If a developer absolutely must update some security code in the background of their software, fine. But do I need to get a whole new user interface as well? I like the user interface in the original version - that's why I bought that software. Why can't I keep that while still getting the necessary security updates?

        1 vote
  2. [2]
    crdpa
    (edited )
    Link
    I'm just glad i use Linux. I don't have auto updates for anything. Even my smartphone only searches for updates when i want to. Almost every day one or two coworkers gets locked out of their...

    I'm just glad i use Linux. I don't have auto updates for anything. Even my smartphone only searches for updates when i want to.

    Almost every day one or two coworkers gets locked out of their computers waiting for endless updates.

    Security updates should be handled separately.

    5 votes
    1. Octofox
      Link Parent
      On linux auto updates would be fine. They never lock you out because the system is advanced enough to do in place updates. When you have an open program it keeps using the existing one and as soon...

      On linux auto updates would be fine. They never lock you out because the system is advanced enough to do in place updates. When you have an open program it keeps using the existing one and as soon as it restarts it will be on the new version.

      4 votes