Upgrade or die: Apple's re-invention of the version ratchet
blog.rongarret.info
blog.rongarret.info
In fact, Microsoft released updates for older versions of Office (back to Word 2000, apparently!) which allowed them to read the new formats [1].
[1] https://support.office.com/en-us/article/Open-a-Word-2007-do...
I'm frequently bothered by the shockingly anti-competitive nature of software today. Walled gardens and lock-in are pretty terrifying. If you want to continue to control your data, you can't trade control of it away to a software company for convenience and a shiny user interface.
My collection of music managed by beets[1] (and properly id3 tagged) will never be inaccessible to me because all of the data formats are open and standard. If I were using iTunes, perhaps that would someday be untrue.
I'm not a big photos person - do any awesome FOSS photo management programs exist?
[1] https://beets.readthedocs.org/en/latest/guides/main.html
That's simply not true. The iTunes store sells DRM-free AAC, a documented format. You can transcode it into literally any other format, if you don't like AAC. Ripped CDs are ripped to the format of your choice.
Only the Apple Music streaming service uses DRM - and buying a DRM-free version of any track is literally one click away.
I can think of many things to criticise Apple for, but lock-in of your music is not one of them.
You can download all of your iCloud data from the web client, and Apple Pay doesn't involve the cloud at all. It's all stored and encrypted locally and you have to re-add your cards with every new device. (I don't even think they persist over backups?)
>Even if Apple doesn't implement this strategy, they could, and that to me is cause for concern. Personally, I don't want the only thing standing in the way of being coerced in this way to buy things I don't want to be the continued benevolence of the largest corporation in the world. I want an escape hatch to keep Apple in check. And right now, I don't see one.
Yes, and Microsoft could do the same. Will either of them actually do so? I doubt it, but I suppose it's possible on an infinite timeline. Keep in mind that Apple needs a platform for their own developers to use, and for app developers, and closing the Mac would make that very difficult. Apple also knows how many of its customers are developers and they wouldn't just throw that away for questionable gains. Lock-in is fragile because eventually you get users using your stuff because they have to instead of because they want to, which is never a good situation.
>And the tools are set up so that you can only build for supported version of the OS.
Near as I can tell, this is false. I can set my deployment target all the way back to OS X 10.4. Will this not work?
Tech journalism can be so dramatic sometimes.
If you switch to android and want to still receive group mms from friends, every member of the group mms that has an iPhone has to delete the entire thread and start a new thread. Not only that, they each need to add you or another non ios member as the first person in their new mms.
Pretty ridiculous and irresponsible if you ask me.
I never had any issues like you are describing with group messaging to my knowledge but for that sort of thing I am primarily a groupme user so even if I did it wouldn't affect me.
Exactly. iMessage exists because SMS sucks, not just because they don't want you leaving. Same reason for the green bubbles. They know you'll berate your Android friends into switching because of them.
Ideally something like Signal would take off. Its free, cross-platform, encrypted, and supports more or less everything that SMS/MMS does without actually using those protocols.
That being said, aside from encryption, I think SMS really doesn't suck. What messaging system exists on virtually every phone manufactured in the past 15 years, is a built in feature, isn't tied to a country, carrier, or platform, doesn't require data service, and costs nothing or next to it?
Signal is great. It would be awesome if more people used Signal. But iMessage is the next best thing IMO and it has what really matters: users.
Nothing dirty about it. If you "don't want to" just use an OS vendor that doesn't force you. Or you can continue using your old OS on your old Mac. It's not like it will stop working altogether -- people use Amiga computers still with 1990-era OS/WorkbenchS from what I hear.
The alternative to what Apple does is slower OS upgrade cycles and/or devoting resources to 5 and 10 year old OSes. Which we had with MS -- 15+ years of XP (and a decade of IE6 dominance), holding IT back.
No, that's the whole point. That used to be possible, but it isn't any more (or soon won't be).
No. What I'm asking for is to not have arbitrary restrictions imposed on me if I try to maintain old software beyond its service life.
For example: I have a legally licensed copy of Snow Leopard. I would like to be able to run it on a VM, but I can't because the license doesn't allow it. (Yes, I know I can run Snow Leopard Server on a VM -- and I do -- but Snow Leopard Server is not quite the same as Snow Leopard.)
I also have a legally licensed copy of Mavericks, but I have no way of doing a clean install of Mavericks since it has been pulled from the App Store. (Yes, I am told that some people have Mavericks in their purchased tab in the App Store. But I don't, probably because I bought a machine that had it already installed.) Likewise for iPhoto.
I would also like to be able to install a new version of an application while keeping the old version. Or at the very least I would like to be able to roll back to an old version if I don't like the new version for some reason. With the App Store, I can't do any of these things.
Same for the app rollback scenario. That seems less an intention to push upgrades and more of a lack of investment in exposing older versions. I suspect that many app authors are happy with this one, though, because it reduces their support costs because the number of old installs can only decrease over time.
However, for software bought at substantial cost, where the nature of the defect is such that the software doesn't do what it's supposed to, it seems reasonable to me that someone in the supply chain might be on the hook for all or part of the original purchase price if the defect happens within the reasonably expected working lifetime of the software (which might need defining explicitly somewhere for licences that are in principle indefinite, but could certainly run to many years in some cases).
Similarly, if the defect causes other damage through negligence, or results in other losses as a consequence of using the software but then not being able to use it any more, it seems reasonable that someone in the supply chain might be on the hook for paying compensation, possibly exceeding the original purchase price in serious cases if that's what it takes to make good the damage.
I'm wary of unrealistic laws that assume bug-free software is something we know how to create, and I'm wary of laws that restrict new business models such as rental/SaaS schemes. But right now the system is so heavily one-sided that it's silly, with the big businesses making the big name software products generating huge profits while their users sometimes suffer real damage because of defects in those products.
You can't buy a car and then expect that the manufacturer will be on the hook for an engine failure after the warranty period unless the failure is caused by major negligence or malicious design. Perpetual support is not something any other industry provides. I don't understand why software manufacturers should attempt that either.
Unfortunately that is far from universal. We have several software products with permanent licences that had 4+ figure costs, and none of them gave any specific indication of support at all. Often you only get these things set out in writing with an expensive support contract on top of your original purchase. However, if you're spending literally thousands on a piece of software and that software proves to be fundamentally defective within a reasonable period, I think you should be (and in many cases, you probably legally are) entitled to fair compensation if the defect isn't fixed and any significant resulting damage made good.
If you continue using the software after support has ended, you are by definition unsupported and I'd say absent any malicious damage or major negligence on the part of the manufacturer, any issues are on you.
Perhaps, but I'd argue that artificially nerfing the product so despite its permanent licence it can't actually be used after a certain period of time does constitute "malicious damage or major negligence".
You can't buy a car and then expect that the manufacturer will be on the hook for an engine failure after the warranty period unless the failure is caused by major negligence or malicious design. Perpetual support is not something any other industry provides.
You've chosen an unfortunate example there. Safety recalls are pretty much an indefinite obligation in the auto industry, at least in my country. I have recent first-hand experience of this, and someone who apparently didn't ensure the appropriate remedial work was carried out on some vehicles and so left a potentially fatal design problem unfixed is about to get formally investigated by the relevant government department.
It seems to me that software developers can't reasonably be expected to provide indefinite, free of charge support in areas like compatibility with new hardware/OS/protocols that evolve over time. That compatibility probably wasn't part of the original deal, unless this kind of support was explicitly included probably for some fixed time period.
However, for issues that are clearly fundamental defects in the product, such as serious security vulnerabilities, privacy leaks, data corruption bugs, or complete inability to use the product because something like an activation server is no longer available, it seems reasonable to me that we should treat these closer to the way we handle safety recalls on cars. Want to turn off your activation server after a couple of years? No problem, but you're on the hook for either patching out the activation mechanism for all your customers or compensating them for the functionality they're about to lose after they already paid for it.
I can't imagine spending 4 figures on critical software and not getting a clear answer on how long the support life is. That sounds like a screwup on both sides of that transaction.
But yes, if you buy a thousand-dollar piece of software, you are undoubtedly entitled to some reasonable support. A permanent license doesn't imply permanent support, but some support is reasonable.
> Perhaps, but I'd argue that artificially nerfing the product so despite its permanent licence it can't actually be used after a certain period of time does constitute "malicious damage or major negligence".
What "artifical nerfing" are you talking about? What perpetually-licensed software are you buying that is "nerfed" after a certain time period?
> You've chosen an unfortunate example there. Safety recalls are pretty much an indefinite obligation in the auto industry, at least in my country. I have recent first-hand experience of this, and someone who apparently didn't ensure the appropriate remedial work was carried out on some vehicles and so left a potentially fatal design problem unfixed is about to get formally investigated by the relevant government department.
No, I picked that example very intentionally. A safety recall in a vehicle is not done for minor bugs. It's not done for unexpected wear-and-tear. It's done for major safety issues only. A recall instituted, say, 10 years after the sale would be done only for something egregious, likely for something that would constitute gross negligence.
> However, for issues that are clearly fundamental defects in the product, such as serious security vulnerabilities, privacy leaks, data corruption bugs...
You want perpetual bug support. I can't agree here. Software is not sold under the pretense of being bug free. There will never be a time when a manufacturer can declare support for a product complete in this model. Is Microsoft obliged to keep around a stash of Altairs so it can fix bugs in BASIC? If not, then you must agree that there is some time frame after which support cannot reasonably be expected. It's just a question of how long that time frame is.
> or complete inability to use the product because something like an activation server is no longer available, it seems reasonable to me that we should treat these closer to the way we handle safety recalls on cars. Want to turn off your activation server after a couple of years? No problem, but you're on the hook for either patching out the activation mechanism for all your customers or compensating them for the functionality they're about to lose after they already paid for it.
This is a terrible decision on the part of the purchaser to buy a license to software that requires an external license server and no guaranteed support timeframe. Yes, this is crappy on the part of the software manufacturer, but it also shows a lack of foresight on the part of whoever agreed to this. You should have gotten a guaranteed service time or else the rights to run an internal activation server.
That reseller will offer you the standard licensing terms or you're welcome to shop elsewhere. You can ask about support, and if you're lucky you'll get an answer that is somewhat related to your original question, but I have never seen more than platitudes in response to even direct, explicit questions about some of the issues we're talking about. Any requests for actual support are also just directed to the reseller if you do manage to make contact with the actual developers, and you'll be subject to some of the strictest licence control and activation procedures in the industry.
You aren't going to be individually negotiating your licensing and support terms with the developers. The developers aren't even going to talk to you at any point in the proceedings. And pretty much everyone making software in this league works the same way, so your "terrible decision" is to buy the software you need to do your job, as opposed to your only other choice, which is not to use software to do your job at all.
A concrete example, perhaps familiar to more people: Adobe's Creative Suite had some pretty aggressive activation technology built into it in later versions before they went to Creative Cloud, and unsurprisingly quite a few businesses haven't migrated to their new rental model. If you have a permanent licence with, say, CS5, you're still as entitled to use it as you always were, and you can also use Adobe's tools to deactivate it on one PC and reactivate it afterwards if you need to reinstall your OS or upgrade to new hardware. But there are two stings in the tail: firstly, any new installation requires access to those servers to activate, and secondly, the initial releases were very buggy and some updates are needed to stabilise them.
As of today, to the best of my knowledge, the activation server still works for installation, as long as Adobe's people haven't got wildly inaccurate information in their database, which from personal experience can certainly happen. However, once you've installed you get prompted to update but then told the updates aren't available when you try to do so. The update installation tool is, apparently, no longer supported. Of course, if you'd like to trade in your otherwise perfectly useful software, they'll be happy to have you on their new locked-in, rental plan instead. This is the kind of artificial nerfing I'm talking about.
As a final point, just to be clear: I am not advocating for permanent, free of charge support under all circumstances. We haven't figured out how to reliably build software with no bugs yet, and it's unrealistic to aim for that. However, in most fields, if you pay a significant amount of money for something, you are legally entitled to get what you paid for or to receive compensations. The software industry collectively takes a lot of liberties with providing something that isn't even close to what the customer was actually paying for, and often tries to weasel out of meeting the same obligations anyone else would have to in terms of quality and fitness for purpose via legalese and funny licensing agreements, all the while making billions in revenues from customers who are getting substandard products. I don't think it's unreasonable to question whether the current balance of power is appropriate or whether some software developers could do a considerably better job of providing working software that does what their customers are paying for.
As for the big name CAD software, I would assume you're referring to AutoCAD. They do offer offline activations according to their site. They also offer on-premises license servers. I don't even see an external server option except for the initial registration (which can be done manually). So maybe you're referring to some other CAD software? Regardless, I don't think your claim that "everyone making software in this league works the same way" can be accurate, given that I can buy seats directly from Autodesk.com and they explicitly state that a network connection is not required for continued use. (Though it looks like they are going subscription-only starting today)
As for Adobe, that does sound frustrating. Was/is it not possible to download the updates and save them offline for later use? I do agree this is customer hostile, regardless. At the same time, I wonder how long they need to keep the update servers going. CS5 is nearly 6 years old. Certainly they should be able to continue to support their older products for longer than this. But it's not free for them to do so, assuming that the reason support ended is because they actually replaced the underlying update infrastructure. As an industry, we should really come to an agreement for how long software must be supported. If we think 10 years is reasonable, we should commit to that. If it's 5, then we should commit to that. In either case, we should make it clear to our customers what the support life is, because modern unsupported software is basically dead, even if you have a license (as the broken Adobe updater demonstrates). I feel like this is going to get resolved eventually, but whether by the courts or by the move to subscriptions, I'm not sure.
As for the Adobe issue, as I see it the point is that the original product was known to be faulty, and a means of correcting the defect was already made. Given the cost and expected useful lifetime of the original software, and given the relatively small and presumably diminishing-over-time cost of maintaining an update server relative to that, I have no problem in this sort of case with literally requiring perpetual availability of the existing updates for as long as the developer is around and it is commercially viable to do so. I don't think this is a universally appropriate solution, but for the kind of software we're talking about that makes many millions or billions in revenues, it doesn't seem at all unreasonable to me. If the software developer doesn't like it, they are free not to incorporate artificially limited technology in their product in the first place, for example by distributing updates in a freely downloadable form instead of via a proprietary system with limited availability.
Incidentally, if a software product really has no remaining value after just 6 years, the developers are welcome to relinquish the relevant copyright as well since clearly it also has no remaining value at that point, and then anyone else who is willing and able to solve any future problems with that software can lawfully do so. Perhaps the law should no longer give the developers a choice, by including a specific exemption to copyright for actions reasonably necessary to allow the continued effective operation of the software according to the original deal. In this case, that might extend up to and including installing a cracked pirate version instead, provided that the use would otherwise have been lawful.
As you say, I suspect in the near future a lot of these big software developers are going to try to bypass these issues entirely by moving everyone onto subscription models anyway. I don't expect that strategy to remain a viable exclusive proposition in the longer term, though, because it's too hostile to users. In most cases, it will naturally create opportunities for less hostile alternatives in the market, as we're already seeing with the increasing competition faced by Adobe Creative Cloud from smaller, cheaper, but still professional-quality and well-regarded alternatives in various niches.
"but then my old Macbook Pro died..."
Well, it's hardly different. It's Snow Leopard, same kernel and userland and everything, PLUS a number of extra packages.
If it's the last of the three, then that's just a decision on Apple's part to not waste resources trying to support every possible combination of OS X version and iOS version. Yes, that leaves people like you unhappy, but leaves the majority of users happy, with better software.
Yes, the upgrade was free (monetarily). It was not free timewise, and it took a few weeks to sort out as it completely broke my workflow (it broke the running version of Synergy http://synergy-project.org/ and to upgrade that would have required an upgrade of my Linux system (yes, it's an older system---again, it ain't broke so I'm not fixing it and lose even more time and effort).
I was able to fix the Synergy issue (http://boston.conman.org/2015/10/15.2) but the point remains---Apple forcing updates. I know most here just live with the constant upgrade treadmill ("OH MY GOD! YOU HAVEN'T UPDATED IN 20 MINUTES? HERETIC!") but having been burned oh so many times in the past thirty years I've grown to dread it. It gets tiresome relearning how to use something I've already learned how to use yet again. For the tenth time. Because we in the industry have deemed that if a program hasn't been changed in the past twenty minutes, it therefore must be unmaintained and a piece of garbage (with the sole exception of zlib I think).
Me, bitter?
It seems like this "if it ain't broke not fix it" strategy doesn't work out that great for you.
It only postpones problems for the future, when inevitably something will be broke (software rots too, not just food, especially in 2016, where it depends on tons of staff that can change/be deprecated/obsolete/hard to replace/taken down etc over time, from the hardware to the network to web services).
"If it ain't broken don't fix it" is only short term advice. It doesn't eliminate the need to keep software systems reasonably up to date (and a 5 years old OS is like a 20 year old car in IT years).
In any case, one thing that jumped out at me reading your blog post is how interdependent software has become — everything depends on everything else, the apps on the OS, the OS on one device with the OS on another (iPhone sync), and so on. Many decisions may have been individually right, but it sets off a domino effect of upgrades and disruptions to your workflow.
I agree with you that if you bothered to read the iOS release notes, it should have warned you that it will require an OS X upgrade. But again the larger lesson is not to get your software into such a fragile state where one update causes a domino effect.
My solution is to always say yes when I'm prompted for an upgrade. That way, a single upgrade causes little trouble. When I use a product or service, I'm buying into the developer's vision, not making a decision as to whether to use version 3.5.638 of an app. And if that developer's vision no longer works for me, I switch to another developer, rather than micromanaging every version of every app.
And if an app doesn't work with an updated OS, that's the app developer's fault as far as I'm concerned. Or if one app doesn't work with an upgraded version of another app, then the first app developer is at fault. I'll stop using the defective app if I have to.
Now? Maximizing the screen causes the window to cover the entire screen, hiding the menu bar, and giving that window its own desktop (or space, or screen or whatever it's called these days) and preventing Mission Control from showing that window (or other windows, depending on which desktop/place/screen you're on). That breaks a workflow I've developed over the past few years, just because some engineers at Apple thought this behavior is what we needed.
THAT'S what I'm ranting against. Arbitrary (to me) changes that break things (work flows, other programs, whatever).
As far as cars go, about the only controls that tend to move about the cabin are the gear shift (either right side of steering column, or just right of the driver), head light controls and wind shield wipers, but there's generally only a few places they'll migrate to. You will never find the break and gas pedals swapped though.
As for the analogy with the car, that actually is a downside of my car — it doesn't improve over time the way OS X does. And I'm happy OS X is improving, as opposed to giving in to change-averse users.
So clearly an outlier who shouldn't suppose mass market OSs (and their update/release philosophy) targeted at regular users would work well for them?
No. If you’ve previously purchased OS X Lion, you can still download it via the App Store, but it won’t be included in your list of purchased items by default.
To fix this, choose the “View My Account” command from the “Store” menu, and click the “Manage” link next to the “Hidden Purchases” field. You’ll now be able to unhide each hidden item by clicking the appropriate “Unhide” button.
There are several other variations that are starting to become widespread as well. A lot of professional software, the kind of stuff that costs 4+ figures for a permanent licence, is seriously defective when first shipped and then receives updates, perhaps via some proprietary tool. What happens if you need to reinstall it but the updates are no longer available, or the update files are available but the tool no longer functions to install them as you could before?
A lot of professional software also requires some form of activation, and may provide a related tool to migrate a licence from one PC to another. Again, what happens if you have a properly purchased copy and want to use it according to your agreement but the developers have turned off the lights on the activation server?
I suspect laws are going to have to change before too long to keep up with the real relationships involved in modern software. Normal commercial agreements between a purchaser and a vendor don't really cut it in 2016, because the third party -- the software developer -- has a much bigger role in the ongoing nature of how the software works. Turning a blind eye to defective software has worked reasonably well in practice as long as we had the gentleman's agreement that developers would provide free updates to correct the serious flaws anyway, but increasingly that is no longer the case or the updates come with strings attached.
In an age of DRM, activation, automatic updates, dependence on remote systems, and the like, it might be necessary to start imposing statutory requirements on vendors and original developers responsible for software, to ensure that users can continue to enjoy what they were actually agreeing to pay for in the first place or receive suitable compensation. It might also be necessary to enforce minimum periods of support for permanent licences, and to limit the kinds of lock-in that can be applied with temporary licences or online components, in order to follow the same basic principles of consumer protection and fair competition as other fields.
This got us Chinese bot nets on outdated XP machines...
Thanks! I was actually surprised to find that I apparently invented the term. It just seemed so obvious that I figured someone must have thought of it, but when I did a search to find some place to link to, nothing came up.
Anyway, glad you liked it :-)
The app store is such a clusterfuck anyway, I hardly ever open it except by accident.
https://support.apple.com/en-us/HT201372
Save it for however long you'd like. I actually used my Mountain Lion thumb drive to boot my Mac to fix the problem with my Yosemite thumb drive when it failed to install a bootable Yosemite.
Sigh. That makes me very happy.
It also makes me very happy that I saved, into cold storage, every single .iso and .pkg and ... everything ... that I ever downloaded from the apple developers site. The old apple dev resources/download site was too good to be true - you knew it was going to go away.
https://developer.apple.com/downloads/
(Edit: You can download Xcode all the way back to Xcode 2.3 from 2006)
Like them or not, they have a lot to learn from Microsoft. I can't remember many instances of having your entire computing existence obsoleted. MS has always been very aware of maintaining compatibility, which is a sign of respect towards their userbase.
Also, this is why I invest my free time into pushing open source forward, so it can displace the few closed source things I still use/depend on.
The direct Microsoft criticism and definition of 'ancient hardware' seems entirely... Apple reality distortion filter
That's funny, because that's pretty much what I've been experiencing with Ubuntu during the last decade.
Not only do I really OWN my hardware and get to decide WHEN and IF I want to spend money for a new machine or not, but the hardware support gets even more complete with every passing month.
To sum it up, time is on YOUR side, not on some company's side.