16 votes

General-purpose OS, special-purpose OS, and now: vendor-purpose OS

29 comments

  1. [5]
    Bauke
    Link
    As much as I can see the argument being made, and I do agree with some of it. I don't see the point of making this distinction whatsoever. This is like being pedantic over using "a murder" instead...

    As much as I can see the argument being made, and I do agree with some of it. I don't see the point of making this distinction whatsoever. This is like being pedantic over using "a murder" instead of "a group of crows".

    And if you really want to make this distinction, you should make it as on the nose as possible. Like "for-profit OS" or something, when I read the title and saw "vender-purpose OS" I did not expect it to be about Windows and the others.

    13 votes
    1. [4]
      tindall
      Link Parent
      I think the larger point that's being made is that these operating systems are moving away from user-focused - whether for a specific purpose or for general-purpose computing - and towards being...

      I think the larger point that's being made is that these operating systems are moving away from user-focused - whether for a specific purpose or for general-purpose computing - and towards being platforms for vendors to extract money, directly or indirectly, from consumers.

      11 votes
      1. Bauke
        Link Parent
        And I totally get that, my remarks were more that nobody reading this article doesn't already know that. And more importantly, the term "vendor-purpose" does not convey this exploitative behaviour.

        And I totally get that, my remarks were more that nobody reading this article doesn't already know that. And more importantly, the term "vendor-purpose" does not convey this exploitative behaviour.

        3 votes
      2. [2]
        onyxleopard
        Link Parent
        I think in this context, user-focus/orientation is being confused for developer-focus/orientation. I think Apple, Microsoft, and Google probably have a much better understanding of the users of...

        I think in this context, user-focus/orientation is being confused for developer-focus/orientation. I think Apple, Microsoft, and Google probably have a much better understanding of the users of their platforms than the software developers targeting those platforms. Now, I can agree that things like Windows displaying ads that are baked into the OS is one thing. But something like Apple warning users when they install software from developers who don’t sign their apps is user-focused. It’s just not developer-focused if you are a developer who believes they are entitled to distribute their software at the expense of users’ security/privacy/system stability etc.

        Basically, I think macOS is far more user-focused than it is developer-focused, but among the platforms called out, it’s actually still very developer-focused, comparatively. Platforms have to balance users’ safety with developers’ convenience, and it’s pretty clear how that’s trending. I have no major dispute there. I just don’t think this trend is entirely explainable as the platforms being self-serving. They want to make sure the user-experience hits a minimum level of quality, and if that means sacrificing quality of life for developers in certain respects where developers have historically been given pretty much free reign, that’s no longer the case. It’s no longer the Wild West for developers. For users who want that freedom, platforms like macOS still offer a great amount of such freedom at the expense of disabling a bunch of the assurances Apple provides by default, like System Integrity Protection etc. But, if Apple were really solely focused on being self-serving, they wouldn’t allow users to disable SIP or install unsigned apps at all—much less allow things like Bootcamp or virtualizing other OSes on the Mac.

        2 votes
        1. tindall
          Link Parent
          I basically don't disagree - all I'm saying is that they could give users both security and freedom, but choose not to do so, and I think that's pretty despicable.

          I basically don't disagree - all I'm saying is that they could give users both security and freedom, but choose not to do so, and I think that's pretty despicable.

          4 votes
  2. [18]
    NaraVara
    Link
    The Apple section is kind of lolworthy: So we're going to be mad at Apple over Metal but not say anything about DirectX, which is still the predominant graphics API for most of the situations...

    The Apple section is kind of lolworthy:

    Apple is more subtle from the end-user’s perspective. They eschew standards to build walled gardens, opting for Metal rather than Vulkan, for example. They use cryptographic signatures to enforce a racket against developers who just want to ship their programs. They bully vendors in the app store into adding things like microtransactions to increase their revenue. They’ve also long been making similar moves in their hardware design, adding anti-features which are explicitly designed to increase their profit — adding false costs which are ultimately passed onto the consumer.

    So we're going to be mad at Apple over Metal but not say anything about DirectX, which is still the predominant graphics API for most of the situations people who care about these things complain about it? OK.

    And the rest of it is all vendor/developer complaints rather than end-user complaints, and even in that light they don't make sense. Yeah a developer might "just" want to ship their programs, but a user wants to be able to install programs without worrying if this weird thing off Sourceforge might be malware. How is it not user-focused to introduce a modicum of security there? And in MacOS you can still install whatever you want, you just need to know your way around the OS well enough to open the gate.

    I don't even know how they decide Apple "bullys vendors to adding microtransactions." If anything, their revenue sharing policies are hard disincentives for microtransactions.

    6 votes
    1. [5]
      hungariantoast
      (edited )
      Link Parent
      Apple didn't just push Metal out as some new thing, they also deprecated on their platform the current, open standard that everyone was using: OpenGL. Then, they completely ignored the new open...

      So we're going to be mad at Apple over Metal but not say anything about DirectX

      Apple didn't just push Metal out as some new thing, they also deprecated on their platform the current, open standard that everyone was using: OpenGL.

      Then, they completely ignored the new open standard that replaces OpenGL, that everyone else is also using: Vulkan.

      Windows on the other hand does not give a hoot. You can use OpenGL, Vulkan, or DirectX on Windows and the operating system gets out of your way.

      So Apple not only pushed out their own proprietary API, but they also deprecated and ignored the only two alternatives. This has made developing cross-platform programs that use a graphics API more difficult.

      It's only thanks to open-source translation layers that cross-platform graphics compatibility can continue.

      15 votes
      1. joplin
        Link Parent
        While Apple did deprecate OpenGL, it's now in the same category as on Windows, I believe. You need a third-party-supplied framework to use it, such as MoltenGL. This is the same as how you can use...

        While Apple did deprecate OpenGL, it's now in the same category as on Windows, I believe. You need a third-party-supplied framework to use it, such as MoltenGL. This is the same as how you can use Vulkan on Apple platforms using MoltenVK. It's there if you want it, but Apple isn't going to maintain it.

        3 votes
      2. [3]
        NaraVara
        Link Parent
        OpenGL has always been a clusterfuck on MacOS because of Nvidia's crappy driver support. It's not unilaterally an Apple thing. Things would be technically compatible but riddled with bugs and issues.

        Apple didn't just ignore Vulkan, they also deprecated OpenGL.

        OpenGL has always been a clusterfuck on MacOS because of Nvidia's crappy driver support. It's not unilaterally an Apple thing. Things would be technically compatible but riddled with bugs and issues.

        2 votes
        1. [2]
          teaearlgraycold
          Link Parent
          Do any Apple computers ship with Nvidia GPUs?

          Do any Apple computers ship with Nvidia GPUs?

          1 vote
          1. onyxleopard
            Link Parent
            Apple has historically, but they stopped sourcing GPUs from Nvidia and it seems that past history has soured relations between Apple and Nvidia. Here’s an article that gives some color on the...

            Apple has historically, but they stopped sourcing GPUs from Nvidia and it seems that past history has soured relations between Apple and Nvidia. Here’s an article that gives some color on the history.

            Edit: FWIW, I recall needing to get replacements for 2 consecutive generations of MacBook Pros with discrete Nvidia mobile GPUs due to GPU hardware failures circa 2005-2008, so there were clearly some issues with quality from Nvidia’s side—Apple had to eat the cost of replacing both my laptops for me due to Nvidia’s poor quality control.

            4 votes
    2. [11]
      tindall
      Link Parent
      He did include Windows in the vendor-purpose OS category. I think most people (at least, most people in Drew's target audience) are aware of Microsoft's awful policies in this department. On the...

      So we're going to be mad at Apple over Metal but not say anything about DirectX, which is still the predominant graphics API for most of the situations people who care about these things complain about it? OK.

      He did include Windows in the vendor-purpose OS category. I think most people (at least, most people in Drew's target audience) are aware of Microsoft's awful policies in this department. On the other hand, Vulkan actually is available on Windows, whereas it's necessary to use a non-transparent (and performance-impacting) compatibility layer to use it on Mac OS.

      Yeah a developer might "just" want to ship their programs, but a user wants to be able to install programs without worrying if this weird thing off Sourceforge might be malware. How is it not user-focused to introduce a modicum of security there? And in MacOS you can still install whatever you want, you just need to know your way around the OS well enough to open the gate.

      The problem here is not that Apple is doing application whitelisting or signing requirements. The problem is that, whenever they encounter a decision point on the topic, they consistently choose their own interests over those of their users - making it more difficult for small developers who don't pay Apple for signing certs, for instance, or (as has previously been mentioned) essentially extorting money from people who develop apps for their platforms that connect to subscription services.

      An example nobody's brought up is something that commonly impacts open source and/or distributed services. Without some kind of Apple-recognized entity to register for push notifications, of which there can be only one per app, you just can't do them, meaning that iOS XMPP and Matrix apps can't have notifications that work nearly as well as those from other apps. That's a completely solvable problem, but it's in Apple's interest to help keep proprietary apps more convenient and more widely used, because they get money from developers of proprietary apps.

      And the rest of it is all vendor/developer complaints rather than end-user complaints, and even in that light they don't make sense.

      This is true iff you think that low-user-count software, or software created by independent developers, is inherently less important than high-user-count software, or software created by companies with enough resources to work with Apple the way they want to be worked with. I don't agree.

      10 votes
      1. [10]
        NaraVara
        (edited )
        Link Parent
        The thing is, developers are not "the users." Most of Apple's restrictions are designed to protect their users from the bad actions of developers. Those actions could be malicious, but more often...

        they consistently choose their own interests over those of their users

        The thing is, developers are not "the users." Most of Apple's restrictions are designed to protect their users from the bad actions of developers. Those actions could be malicious, but more often they're well-intentioned but overzealous and/or ill considered. A big part of the Mac user experience, even historically, was Apple's taking an active role in exercising control or providing guidance to developers about how to accomplish certain tasks. This was a big reason why the Mac traditionally had such a cohesive culture in its development community and why "Mac apps" all had such a trademark look and feel, even among third parties.

        That's a completely solvable problem, but it's in Apple's interest to help keep proprietary apps more convenient and more widely used, because they get money from developers of proprietary apps.

        No this is in my interests to make it hard for you to send me push notifications. I don't need you spamming me with low-value notifications. I definitely don't need 30 developers who all have no respect for my time or attention each deciding to spam me with more push notifications. How does anyone not see that?

        This is true iff you think that low-user-count software, or software created by independent developers, is inherently less important than high-user-count software, or software created by companies with enough resources to work with Apple the way they want to be worked with.

        It really isn't about low-user-count or high-user-count. It's about developers who are properly acculturated into good development hygiene and practices and those who aren't. A lot of people seem to not think they're obligated to be respectful of how they fit into the broader ecosystem that the end user has to deal with.

        4 votes
        1. [5]
          tindall
          Link Parent
          I think you may be misunderstanding - if I install an XMPP app, that app which I installed is not allowed to send me, the user who installed the app, notifications on my own device. How does that...

          No this is in my interests to make it hard for you to send me push notifications. I don't need you spamming me with low-value notifications. I definitely don't need 30 developers who all have no respect for my time or attention each deciding to spam me with more push notifications. How does anyone not see that?

          I think you may be misunderstanding - if I install an XMPP app, that app which I installed is not allowed to send me, the user who installed the app, notifications on my own device. How does that help the user?

          I definitely don't need 30 developers who all have no respect for my time or attention each deciding to spam me with more push notifications.

          With respect: what on earth are you talking about? This policy doesn't prevent developers of proprietary apps from spamming you with push notifications (though they do have other guidelines about that, which I have zero problems with), it just prevents people who develop apps that interact with decentralized or federated systems from having an easy way to implement notifications - something a lot of users want. Anecdotally, this is a big part of why my friends who use Apple devices prefer to communicate with me over Facebook Messenger vs XMPP.

          It's about developers who are properly acculturated into good development hygiene and practices and those who aren't.

          Are you arguing that not wanting to pay Apple a bunch of money so that people can use my free software on their platform means that I'm not "properly acculturated into good development hygiene"?

          To be totally frank, I think you're missing the point of both the article and my comment. Few people are complaining about the Apple development guidelines in general; the problem is that they use those guidelines to make it harder for people who want to build and distribute software in a way that doesn't fit into the corporate model.

          For instance, if I were to port one of my small desktop apps - most of which don't even access the filesystem, or do so only directly at the behest of the user - I'd have to pay one hundred dollars per year just to have my app listed on the App Store, despite it being a free app.

          Furthermore, it's problematic that larger companies, notably Facebook on iOS and Adobe on Mac OS, can simply sidestep these restrictions (and do so without major consequences), while smaller developers are bound by them - and generally get no feedback when their apps are rejected. Mike Dominick from The Mad Botter has talked extensively on his own podcast and various other tech industry shows about how frustrating it is to pay Apple's fees, attempt to abide by their (often kind of vague) rules, submit an app, get rejected several times without any feedback, and be beaten to market by a competitor. How does that protect users?

          9 votes
          1. [4]
            joplin
            Link Parent
            If I'm not mistaken, isn't the issue that Apple doesn't allow apps to run whatever they want in the background because it affects battery life pretty negatively? If so, then it helps the user by...

            I think you may be misunderstanding - if I install an XMPP app, that app which I installed is not allowed to send me, the user who installed the app, notifications on my own device. How does that help the user?

            If I'm not mistaken, isn't the issue that Apple doesn't allow apps to run whatever they want in the background because it affects battery life pretty negatively? If so, then it helps the user by not allowing any app to just run down your battery mining bitcoins or whatever under the guise of sending you messages.

            1 vote
            1. [3]
              tindall
              Link Parent
              Yes. This is what I mean when I say that when Apple reaches a fork in the road, they head towards profit and away from user convenience. There are good engineering solutions to this problem that...

              Yes. This is what I mean when I say that when Apple reaches a fork in the road, they head towards profit and away from user convenience. There are good engineering solutions to this problem that permit apps to work without requiring that developers have a single URL notification source. For example, allowing notification callbacks to be registered with the operating system, so that they are polled on a regular schedule fully controlled by the operating system, or even just allowing apps to register a custom notification URL. Either one would work fine for both use cases. Legit apps get to pull notifications from wherever they want, and iOS still has tight control over the code being run in the background.

              6 votes
              1. [2]
                zlsa
                Link Parent
                That’s a thing in iOS. The only difference is that you need to pipe all notifications through Apple’s servers, so devices don’t need to keep connections open to dozens of servers for push...

                That’s a thing in iOS. The only difference is that you need to pipe all notifications through Apple’s servers, so devices don’t need to keep connections open to dozens of servers for push notifications. If apps could specify notification URLs, your phone would need to either poll these endpoints (using up bandwidth) or keep the connections alive (which would also use bandwidth.)

                I don’t think any app code runs when push notifications are received, but I might be wrong as I haven’t ever implemented them.

                1. tindall
                  Link Parent
                  It would be a very small amount of bandwidth. TCP Keep-Alive is absolutely miniscule, as are HEAD requests, even more so over HTTP/2.

                  If apps could specify notification URLs, your phone would need to either poll these endpoints (using up bandwidth) or keep the connections alive (which would also use bandwidth.)

                  It would be a very small amount of bandwidth. TCP Keep-Alive is absolutely miniscule, as are HEAD requests, even more so over HTTP/2.

        2. [4]
          Akir
          Link Parent
          It feels like you are arguing against the points you wish that @tindall was making rather than what he actually wrote. Those messenger applications sending notifications for new messages is a...

          It feels like you are arguing against the points you wish that @tindall was making rather than what he actually wrote. Those messenger applications sending notifications for new messages is a perfect example. Those are absolutely not spam - they are a vital function of the app!

          From a wider point of view, the fact that the App Store is a walled garden where you have to play by Apple's rules is not a huge issue by itself. The problem is that there are effectively no alternatives to it. And from an even broader perspective the fact that Apple regularly removes the element of choice throughout various aspects of their hardware and software is in itself anti-consumer. There are many people who actively avoid Apple products simply because they lack the choices they would like to make.

          3 votes
          1. [3]
            tindall
            Link Parent
            I actually use she/her pronouns :) This is absolutely correct - and furthermore, this may actually turn out to be illegal in Europe. There's currently an antitrust inquiry in progress.

            It feels like you are arguing against the points you wish that @tindall was making rather than what he actually wrote.

            I actually use she/her pronouns :)

            From a wider point of view, the fact that the App Store is a walled garden where you have to play by Apple's rules is not a huge issue by itself. The problem is that there are effectively no alternatives to it. And from an even broader perspective the fact that Apple regularly removes the element of choice throughout various aspects of their hardware and software is in itself anti-consumer.

            This is absolutely correct - and furthermore, this may actually turn out to be illegal in Europe. There's currently an antitrust inquiry in progress.

            4 votes
            1. [2]
              Akir
              Link Parent
              Sorry about that. I try to stay gender neutral when possible but sometimes it just slips out.

              Sorry about that. I try to stay gender neutral when possible but sometimes it just slips out.

              2 votes
              1. tindall
                Link Parent
                No worries, just a minor correction!

                No worries, just a minor correction!

                2 votes
    3. Bauke
      Link Parent
      I think he's talking about the recent situation regarding Hey.

      I don't even know how they decide Apple "bullys vendors to adding microtransactions." If anything, their revenue sharing policies are hard disincentives for microtransactions.

      I think he's talking about the recent situation regarding Hey.

      6 votes
  3. [2]
    freddy
    Link
    I think Linux distributions such as Qubes, Tails and Kali are pretty specialised. Who uses Kali as their default OS? Probably no-one because it is designed for pen testing. Great article though.

    I think Linux distributions such as Qubes, Tails and Kali are pretty specialised. Who uses Kali as their default OS? Probably no-one because it is designed for pen testing. Great article though.

    3 votes
    1. tindall
      Link Parent
      I don't think the author would disagree with you there.

      I don't think the author would disagree with you there.

      3 votes
  4. [4]
    ThiccPad
    Link
    That is not true, you can make a local login account. Even if windows frames local account as Limited Experience"

    For example: Windows has ads and excessive spyware, prevents you from making a local login without a Microsoft account

    That is not true, you can make a local login account.

    Even if windows frames local account as Limited Experience"

    1 vote
    1. [3]
      Diff
      Link Parent
      Unfortunately, like so many things with Windows 10, Microsoft is not consistent which makes it incredibly hard to get good information. Idk if it's A/B testing or what it is, but. Few months back...

      Unfortunately, like so many things with Windows 10, Microsoft is not consistent which makes it incredibly hard to get good information. Idk if it's A/B testing or what it is, but.

      Few months back when all the college classes went online, I had to install Windows and there was no such button. I did still manage to make a local account, but I had to enter an invalid phone number when it asked for one (a trick I had heard about from someone else a few months earlier when it first started appearing), only then did the option appear to allow a local-only account.

      1 vote
      1. lionirdeadman
        Link Parent
        The trick I used was simply not connecting to the internet which meant unplugging the internet cable in the computer class. It was annoying.

        The trick I used was simply not connecting to the internet which meant unplugging the internet cable in the computer class. It was annoying.

        3 votes
      2. crdpa
        Link Parent
        And when you have to jump to so many hoops and fool the installer to be able to do this, it's not exactly allowing you to make a local account. I would consider it's allowing me by giving me the...

        And when you have to jump to so many hoops and fool the installer to be able to do this, it's not exactly allowing you to make a local account.

        I would consider it's allowing me by giving me the choice. it needs to be clearly on the screen: make a Microsoft account or local account.

        3 votes