New software version, new problems? A former Apple developer lists a few reasons.

macos catalina update

David Shayer worked for Apple for 18 years and wrote a very interesting article in the Apple blog TidBITS. We only summarize his explanations here, you should read the whole article linked above.

6 reasons leading to bugged macOS and iOS systems

Current versions are macOS Catalina and iOS 13. Catalina deletes e-mails, cancels interfaces and partially paralyzes entire computers, so that even quick in-between updates are necessary. iOS 13 also introduces functions that lead to incompatibilities, sometimes with advance warning, sometimes simply without.

David Shayer lists these six points for such a situation:

  • Too many features, developers don’t want to admit if they can’t keep to the schedule
  • Automatic crash reports do not show other bugs
  • Less bad bugs are processed less often
  • New errors are corrected, old ones not
  • Automatic tests are underused
  • The complexity has increased strongly

The fact that today’s software is very extensive should not be a secret. This complexity, which also results from the fact that all devices are synchronized via the iCloud, leads to a lot of code that needs to be controlled. Automatic testing is practical and time-saving. According to David Shayer, this would be an area that Apple could improve, as a lot of manual testing is still used.

If a software has an error, it is listed and then processed. Apple differentiates here, however, whether the bug occurs because the new function has caused it or whether it is a bug that already existed in an older version. Absurd: if it is a new bug, it is fixed, if it is older, everything stays as it is.

More features, less product maintenance.

Some bugs occur in day-to-day operations, but are not reported to Apple by the system’s crash reporter. Then it can happen that these problems are not tackled at all. Examples: the iCloud photo stream that doesn’t synchronize or the known fact that a time machine backup becomes corrupt at some point.

All this has to do with the fact that Apple has set an annual rhythm for the releases and also always wants to introduce new functions (take a look at how many of the newly listed things you really use – who cares about screentime?). They eat up the development time while old bugs are dragged along.

The own ecosystem becomes incompatible.

According to David Shayer, Apple is aware of this problem, because it partly affects standard functions that don’t work and which have a strong influence on Apple’s image. In an ecosystem that used to “just work”, you currently have to keep your eyes peeled to see which officially supported elements still work together or are maintained at all. And that should actually be the task of the company, not the customer.