Free Republic
Browse · Search
General/Chat
Topics · Post Article

To: JohnnyP

As an app developer, I assure you it becomes increasingly difficult to support aging platforms as time passes: the effort required to maintain that backwards compatibility suffers diminishing returns.

Space, speed, & toolset requirements progress; accommodating relatively smaller, slower, & less-developed configurations means spending more development time isolating & backfilling progress, reinventing the wheel for want of older off-the-shelf wheels, tagging numerous newer features as “sorry, not available on your 7-year-old system”, keeping old hardware around & viable for testing to identify whether features will run intolerably slow, irritating users with bloated installation packages providing support for features which can’t run on your system, and fixing aging bugs which aren’t an issue on newer platforms. Such support means more ways the software can break, more hardware to test on, more test cases to benefit fewer users.

Take music streaming for example.
A new protocol is implemented in the updated operating system which supports a more robust/efficient method for transferring music data (say, it tolerates network problems better, uses better security, and is much easier to implement). Developers want to update the streaming music module accordingly ... but you with a 7-year-old computer & operating system don’t have the OS capability to use that new protocol & technique, so I as a developer have to add code for the new preferred way, but also have to mark out, preserve, & support the old code that still works on your system with a flurry of “do this, unless running on a 5-year-old OS in which case do that instead”; over time, I end up with a whole lot of such confusing, fragile, and bloating “but if running on XYZ do this instead” code.

Eventually, the number of users running on old platforms becomes a minuscule percentage of total users (most of which upgrade hardware & software on a regular basis), and it’s just not financially worth my time to continue maintaining backwards compatibility. While I’d _like_ to support my app running on iOS 5, so many of our new features are built on operating system capabilities that don’t exist there that my choice is either write voluminous code to do in an old OS what the new OS provides in just a couple of lines, or tell users “sorry, I can’t viably support any version of iOS before 7, and yes that means you’ll have to buy a newer iPad.”

It’s an integrated system. The hardware and operating system and software all have to work together in tight & precise harmony, and if something lags too much or something demands too much then some stuff just isn’t going to work anymore. We do try to maintain backwards compatibility, but that’s a lot harder than you may think.


16 posted on 05/18/2015 9:47:04 AM PDT by ctdonath2 (Hillary:polarizing/calculating/disingenuous/insincere/ambitious/inevitable/entitled/overconfident/se)
[ Post Reply | Private Reply | To 6 | View Replies ]


To: ctdonath2
If developers would just continue to make the "iOS6 and older" version of their software available as a no-support free download, I'd be fine with that and never complain about the upgrade treadmill.

But I suspect they don't do that precisely because there are a lot of users who would decide they can do just fine with the last generation of hardware and software.....

24 posted on 05/18/2015 10:14:14 AM PDT by Eric Pode of Croydon (I wish someone would tell me what "diddy wah diddy" means.....)
[ Post Reply | Private Reply | To 16 | View Replies ]

To: ctdonath2

Apple won’t update their OS for working systems.

Linux is the solutio


37 posted on 05/18/2015 5:24:29 PM PDT by rmlew ("Mosques are our barracks, minarets our bayonets, domes our helmets, the believers our soldiers.")
[ Post Reply | Private Reply | To 16 | View Replies ]

Free Republic
Browse · Search
General/Chat
Topics · Post Article


FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson