iPhone Why does Apple have software development issues?

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033
iOS 13, Catalina... Thos year has not been a good year for software quality at Apple.

Can anyone more qualified then I shed some light on what's happening at Apple with their software development and why they seem to have the issues that they do?

As an outsider looking in, much of their problems seem to stem from when they decide to have ‘Big Bang’ software releases tied to hardware releases for September.

Although I’m not a software developer I am a project manager & the above scenario is a classic recipe for a huge crunch/‘death march’ with core features unable to be dropped where quality then will usually be the sacrifice that needs to be made in order to ship.

It feels like Apple needs to be (and use) Agile, but they’re hooked to all of the free marketing and PR that these Big Bang releases give them.
 

chrono1081

macrumors 604
Jan 26, 2008
7,675
1,823
Isla Nublar
Agile is already used there and isn’t any kind of silver bullet. Many times agile actually contributes to the problem of buggy software because project management doesn’t understand software development and thinks changes to software are just like changes to a spreadsheet or word document.

Software is very complex and usually project management is unwilling to compromise on timelines so instead of devs being able to fix and adjust as needed they often have to get what they can done in their sprints and push it out the door to make project management happy.
 

MacBH928

macrumors 601
May 17, 2008
4,042
1,475
Its because what made Apple shine, Jobs, is no longer there. Jobs high standards produced superior products. Tim cares about the money not the user experience, he is a business man, Jobs was visionary.

To be fair though, Apple software is still pleasing in comparison. You only have to use Windows or Linux and feel the horror. Apple is the most solid+easiest to use between the 2. So is iOS.

Another thing to consider is that as software gets more complex and tied to more services, it becomes more prone to failure.
 
  • Love
Reactions: compwiz1202

Bazza1

macrumors regular
May 16, 2017
147
112
Toronto, Canada
For a company that produces an OS (and the limited included apps that come with that) for a - comparatively speaking - very small range of hardware that they also are responsible for designing and have built - and then go thru a range of beta testing that now often begins before the next Gold release is released, the hiccups, bugs and downright failures of the products are pretty hard to understand.

And so determined are they to produce the next OS with yet another bit of something sparkly to wow their rabid Macolytes, that they often completely fail to fix issues already well-reported. But in that regard, it has always been thus with Apple - significant issues only repaired when it it hits the mainstream Media. Complaints posted to their Support channels and Forums Apple traditionally leaves to - and are 'dealt with' - with those users who believe that Apple can do no wrong - the 'Your holding it wrong" crowd. Blame the user, not the device or software.

And what features they do include (and / or) fix? They leave to Tech Media to explain these 'hidden' features to users. I mean....really?
 
Last edited:

Timothy Leo Crowley

macrumors regular
Dec 5, 2016
196
255
I'm thrilled with both OS 13 and Catalina on multiple devices. All software development has bugs. Apple is no different than anyone who provides complex systems software. Microsoft Notes stopped working today because someone forgot to update a certificate.
 
  • Like
Reactions: wlisik

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033

556fmjoe

macrumors 68000
Apr 19, 2014
1,913
1,605
Because it's hard.

The less flippant answer is that they do it inefficiently. Releases should be snapshots in time of a development codebase, and features not ready for a certain date should just be left out and added when they're ready.
 

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033
Thank you!
Thanks again for this.

I have a theory that the company culture that drove the company to dizzying heights can stick around too long and be destructive when it gets far bigger.

With Apple, I suspect that they have a hard driving culture that drives people to do more than they thought that that could.

I’m sure that that worked with simpler products and software.

Now things are way more complex, I suspect that this bravado is simply foolhardy and is leading Apple to (repeatedly) shoot itself in the foot. See also: butterfly keyboard.
- - Post merged: - -

Because it's hard.

The less flippant answer is that they do it inefficiently. Releases should be snapshots in time of a development codebase, and features not ready for a certain date should just be left out and added when they're ready.
I’ve no doubt that it’s really hard.

My point is that Apple could stand up at WWDC and announce that the various features of the next iOS release will ship in the first 6 months of its life and the world would keep on turning and we’d all probably have a better iOS / macOS.
 

Dave-Z

macrumors 6502a
Jun 26, 2012
808
1,322
You only have to use Windows or Linux and feel the horror.
As someone who uses these two every day, I disagree.

Linux is solid. Rock solid. But it's also a bit of an ambiguous term. There are many distros, some suck and others are great. I use Debian on servers and Desktops and pretty much have no issues. The software is stable and works well. My only complaint about Linux (again, Debian) is the default look (in Debian's case, GNOME but many distros also use that desktop environment). GNOME is ugly. Lots of beige everywhere.. just really unpleasant to look at (you can change themes, etc. but I've never found any of them to be that great because there's always little details that get overlooked and make things look wrong).

Windows 10 is substantially better than any previous version of Windows. It's packed with features for developers (Linux Subsystem, OpenSSH, Hyper-V, etc.) that really improve productivity. I know it's got a bad reputation for being spyware, but as I've mentioned elsewhere Microsoft thoroughly details what it collects and how to disable the analytics. I took some time to familarize myself with the details from their site and have simply turned everything off (sometimes in the UI, sometimes in the Registry or via Group Policy). (And as I've mentioned else where as well, it's pretty clear Apple collects vastly more analytics on my iOS devices than Microsoft does on my Windows devices.)

macOS I really don't like. I used it for years and rarely enjoyed it. As new versions came out I found them to be buggier than the previous and the overall experience kept diminishing. After a decade I still hated the mouse acceleration! I've moved away from it entirely now.

iOS/iPadOS is nice. I really like using these, but only up till iOS 12. iOS 13 is a nightmare of things not working. But even when using an iPad I found I became frustrated by the lack of background support (apps would get killed so quickly I couldn't switch from a terminal app to Safari for more than a minute or two otherwise my terminal session would be closed and I'd have to reconnect)... Keeping my VoIP app running was an on-going effort throughout the day. Copy/pasting and cursor movement was frustrating. But I still enjoyed it, at least until my iPad stopped responding to touch and the display started showing LED spotlighting.

Can anyone more qualified then I shed some light on what's happening at Apple with their software development and why they seem to have the issues that they do?
Only Apple can explain because they're pretty secretive about how things go. It is my opinion that Apple likes a lot of pomp and circumstance, so having a bunch of marquee features for their annual operating system releases is good publicity. The problem is the coders don't get to decide the release schedule. Apple has a fairly fixed schedule of developer conference in the summer with release in the Fall. Software development doesn't really work under those constraints. The result is that features are either dropped or ship with tons of bugs. I'm of the opinion that Apple's operating systems are well developed already and therefore don't require a yearly grand release. I think it would be better if Apple just had macOS, iPadOS, etc. and simply rolled out new features when they're ready instead of trying to rush everything out the door. They could adopt multiple release channels: developers get bleeding edge (nightly releases), end users can opt-in to beta releases (early preview of new features but may contain bugs), and finally the default, end users get the final release (properly vetted and generally bug free). Features can be released whenever they're ready throughout the year, just a constant stream of new features. Just my opinion though.
 

tarsins

macrumors 6502a
Sep 15, 2009
947
650
Wales
Because they have to keep up with the competition and give people what they want (Animojis, Slofies, etc.) and they employ humans. EVERY software company has software development issues and, IMHO, I believe Microsoft to have the worst.
 

retta283

macrumors 68000
Jun 8, 2018
1,764
1,560
Kingman, AZ
I believe that the problem with macOS is the yearly release. It's not needed, look at how many features have been added since Yosemite. Not many. Not many that actually impact workflows or productivity. I think they need to abolish it entirely and give us large releases every few years like Leopard or Tiger were.
 

MacBH928

macrumors 601
May 17, 2008
4,042
1,475
As someone who uses these two every day, I disagree.

Linux is solid. Rock solid. But it's also a bit of an ambiguous term. There are many distros, some suck and others are great. I use Debian on servers and Desktops and pretty much have no issues. The software is stable and works well. My only complaint about Linux (again, Debian) is the default look (in Debian's case, GNOME but many distros also use that desktop environment). GNOME is ugly. Lots of beige everywhere.. just really unpleasant to look at (you can change themes, etc. but I've never found any of them to be that great because there's always little details that get overlooked and make things look wrong).

Windows 10 is substantially better than any previous version of Windows. It's packed with features for developers (Linux Subsystem, OpenSSH, Hyper-V, etc.) that really improve productivity. I know it's got a bad reputation for being spyware, but as I've mentioned elsewhere Microsoft thoroughly details what it collects and how to disable the analytics. I took some time to familarize myself with the details from their site and have simply turned everything off (sometimes in the UI, sometimes in the Registry or via Group Policy). (And as I've mentioned else where as well, it's pretty clear Apple collects vastly more analytics on my iOS devices than Microsoft does on my Windows devices.)

macOS I really don't like. I used it for years and rarely enjoyed it. As new versions came out I found them to be buggier than the previous and the overall experience kept diminishing. After a decade I still hated the mouse acceleration! I've moved away from it entirely now.

iOS/iPadOS is nice. I really like using these, but only up till iOS 12. iOS 13 is a nightmare of things not working. But even when using an iPad I found I became frustrated by the lack of background support (apps would get killed so quickly I couldn't switch from a terminal app to Safari for more than a minute or two otherwise my terminal session would be closed and I'd have to reconnect)... Keeping my VoIP app running was an on-going effort throughout the day. Copy/pasting and cursor movement was frustrating. But I still enjoyed it, at least until my iPad stopped responding to touch and the display started showing LED spotlighting.



Only Apple can explain because they're pretty secretive about how things go. It is my opinion that Apple likes a lot of pomp and circumstance, so having a bunch of marquee features for their annual operating system releases is good publicity. The problem is the coders don't get to decide the release schedule. Apple has a fairly fixed schedule of developer conference in the summer with release in the Fall. Software development doesn't really work under those constraints. The result is that features are either dropped or ship with tons of bugs. I'm of the opinion that Apple's operating systems are well developed already and therefore don't require a yearly grand release. I think it would be better if Apple just had macOS, iPadOS, etc. and simply rolled out new features when they're ready instead of trying to rush everything out the door. They could adopt multiple release channels: developers get bleeding edge (nightly releases), end users can opt-in to beta releases (early preview of new features but may contain bugs), and finally the default, end users get the final release (properly vetted and generally bug free). Features can be released whenever they're ready throughout the year, just a constant stream of new features. Just my opinion though.
I beg to differ, everytime I use Windows I have to face the control panel and try to figure things out. One of the more recent issues is that it won't keep a connection to a bluetooth speaker and sometimes it will not play sound over HDMI for no obvious reason.

While Linux is stable for some specific use cases, like servers, and using the LTS version remember that its near impossible to be a linux user without launching the terminal and fiddling in the background to make things work. Also Linux does not have technologies built in like AirDrop, iCloud Sync, I am guessing Time Machine, Preivew, Sidecar,ScreenTime, VoiceOver, AirPlay, Siri... My point is that the more technologies that gets shipped with an OS the more its is prone to bugs and failures. Linux ships bare bones especially in Debian case which does not carry any propriety software like H.264 codec AFAIK.

MacOS/iOS might be buggy on earlier releases but by 6-12 months in its lifetime its very stable. I had pleasant experience with Tiger, Snow Leopard, Mavericks, and Sierra. The same goes with iOS except with iOS 7 and 11 which I remember was a bit sluggish and buggy IIRC.

Note I mention Mac OS is best in combination of being solid and easy. For being most most stable-only- I am not sure who wins but MacOS is based on FreeBSD and Linux is Linux.
 

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033
I believe that the problem with macOS is the yearly release. It's not needed, look at how many features have been added since Yosemite. Not many. Not many that actually impact workflows or productivity. I think they need to abolish it entirely and give us large releases every few years like Leopard or Tiger were.
Agreed. Unless they are including profound changes to the OS (like Catalonia’s security model), I’m not sure why a major 10.x point release is needed. It feels like a slightly pointless Marketing exercise.

I think that Microsoft have a better approach where Win 10 has been called that since 2015.

just let macOS helps called just macOS but talk about the features that are coming for it in the next 6 months. And ditto iOS.
 
  • Like
Reactions: retta283

Dave-Z

macrumors 6502a
Jun 26, 2012
808
1,322
I beg to differ, everytime I use Windows I have to face the control panel and try to figure things out. One of the more recent issues is that it won't keep a connection to a bluetooth speaker and sometimes it will not play sound over HDMI for no obvious reason.
Yeah... I've heard stories like that but I never experience those issues. In fact, my Windows machines (two of them) work great with my AirPods. I switch between devices with ease. 🤷‍♂️ I also hear a lot of people complaining of updates but I schedule the update time for a period when I'm not using the machines.

I'm not sure what to say, I hear a lot of people here complain about Windows (not surprising on an Apple-centric forum) but having switched back to it from macOS I find that I prefer the Windows experience over the Mac. I can certainly understand that others don't like it, even if I don't agree.

While Linux is stable for some specific use cases, like servers, and using the LTS version remember that its near impossible to be a linux user without launching the terminal and fiddling in the background to make things work.
I disagree. I use the terminal all the time, yes, but that's because I develop stuff and need access to it. My servers don't run a GUI so SSH is the way I do work on them. But the desktop machine doesn't really need a lot of terminal tweaking (in fact I can't think of anything I needed to do on my desktop machine in the terminal... there is stuff I do there because I want to, but it's not needed for the machine to run).

If anything the real complaint against Linux would be a lack of specific software. Some people live and die by MS Office or Adobe products.

Linux does not have technologies built in like AirDrop, iCloud Sync, I am guessing Time Machine, Preivew, Sidecar,ScreenTime, VoiceOver, AirPlay, Siri.
Agreed, Linux does not have those technologies and, frankly, I'm glad it doesn't. When Apple started adding that stuff is when their OS started going downhill for me. I dislike just about everything listed there and have never really used most of it. There are a couple of exceptions. Apple does have awesome accessibility features compared to other platforms. If you have a vision or mobility issue, Apple operating systems are definitely the way to go, without question. The other is the macOS Preview application. That is awesome. But on Debian I use Document Viewer and PDF Mod; they are a poor substitute but meet my needs. On Windows I use Xodo, which is nearly on par with Preview (Preview still excels in filling out PDF forms that are not actual forms).

For other stuff... ripping BluRays, transcoding videos, writing, surfing, coding, email, messaging... Linux is pretty amazing and their UI is finally (in my opinion) at a place where an average user could use it without much fuss. It's also nice that for Debian (and other distros) all this great software is vetted and available to be easily installed with the operating system's repository. Oh.. that's the other great thing about Linux: apt. It's absolutely awesome for installing, removing, purging, and updating applications.

I wouldn't recommend Linux for someone who is completely computer illerate. Those people should definitely use iPadOS because you can't really screw that up. But for the average Joe walking into Best Buy to purchase a laptop or desktop, that person could easily get away with a Linux machine with the state of Linux today.
 

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033
And who does not? 😋
I’m sure that’s true.

I guess the point that I’m making is that by standing up on the stage at WWDC in June and committing to launching x, y, z features in September, I’d rather that they announced that x, y, z features were coming in the next 6 months after September and that they’ll announce more about the schedule for this in that month.

increasingly these WWDC announcements seem more like corporate ego than anything else.

Instead of what we got for iOS 13, I’d had rather they developed only the features and functionality that they needed for the new iPhones plus any frameworks that app developers needed to support these features.

Much as I like dark mode, if that was a drag in resources, it could’ve waited.

The less said about the new cursor text selection functionality, the better.

I’d had rather had an iOS 13 that prioritised the stability found in iOS 12.

Yes, I get that the WWDC announcements are a form of marketing to drive the installation of the latest iOS so that devs are motivated to develop for the latest and greatest.

However, if by doing this strategy it looks increasingly that the outcome will be many people feeling this: ‘make sure you don’t install the latest version of iOS until the new year’ ie it’s self defeating for Apple to keep with these Big Bang September releases that they publicly commit to in June.
 

one more

macrumors 68000
Aug 6, 2015
1,538
1,224
Earth
I’m sure that’s true.

I guess the point that I’m making is that by standing up on the stage at WWDC in June and committing to launching x, y, z features in September, I’d rather that they announced that x, y, z features were coming in the next 6 months after September and that they’ll announce more about the schedule for this in that month.

increasingly these WWDC announcements seem more like corporate ego than anything else.

Instead of what we got for iOS 13, I’d had rather they developed only the features and functionality that they needed for the new iPhones plus any frameworks that app developers needed to support these features.

Much as I like dark mode, if that was a drag in resources, it could’ve waited.

The less said about the new cursor text selection functionality, the better.

I’d had rather had an iOS 13 that prioritised the stability found in iOS 12.

Yes, I get that the WWDC announcements are a form of marketing to drive the installation of the latest iOS so that devs are motivated to develop for the latest and greatest.

However, if by doing this strategy it looks increasingly that the outcome will be many people feeling this: ‘make sure you don’t install the latest version of iOS until the new year’ ie it’s self defeating for Apple to keep with these Big Bang September releases that they publicly commit to in June.
I agree with most of your points, but wonder if Apple fell victims of their own success. If they did not announce anything “big” each year, the Apple fans and competitors could start mocking them for “stagnation” or lack of innovation. So I guess they opt for these announcements to keep the buzz going. iOS 13 in its present state is not bad at all for a majority of users, even though it had somewhat of a bumpy start.
 

bluecoast

macrumors 65816
Original poster
Nov 7, 2017
1,207
1,033
I agree with most of your points, but wonder if Apple fell victims of their own success. If they did not announce anything “big” each year, the Apple fans and competitors could start mocking them for “stagnation” or lack of innovation. So I guess they opt for these announcements to keep the buzz going. iOS 13 in its present state is not bad at all for a majority of users, even though it had somewhat of a bumpy start.
Agree, I think that Apple have dug themselves into a hole.

They can dig themselves out of it by spreading out new features though 1-6 months of each major point release and not committing to launching so many at one time in a very public fashion (so its hard for them to climb down from that).

I’m definitely not arguing for no new features.

At this point, surely ‘it just works’, stability and privacy are the most important features that Apple could ever give to their users.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.