Over the last few months, Apple’s software development has been called into question big time. (Myself included) I mean, they should be. They’ve had a critical security bug in macOS. Not to mention that they launched a brand new product late, and a handful of its features weren’t working. They also got caught throttling iOS users – which could lead to some legal ramifications. But you can see how it might appear that Apple is missing the mark, can’t you? Apple claims that everything is fine, but is it?
Apple has revealed that they’re going to take a year off from major feature development in order to focus on bug fixes and performance. I’ve maybe alluded to this over the last few weeks. At least in terms of saying things like “Apple, please stop”. I mean, I love Apple. I think that they make good products and software. But they’re just missing the mark huge right now. It appears as though it’s lack of focus. But according to one (former) software engineer who worked on iChat and Mas for years, the problem actually runs deeper than that.
That software engineer posted the following on Reddit:
“As someone who used to work on iOS at Apple, what that company honestly needs is a culture not beholden to the whims of their EPMs (project managers). They used to help organize and work with engineering to schedule things across the company’s waterfall style development. However, by the time I left, they essentially took power over-engineering. Radar became the driver for the entire company and instead of thinking about a holistic product, everything became a priority number. P0 meant, emergency fix immediately, P4 meant nice to have. You get the idea.
Nothing could be worked on if it wasn’t in Radar with a priority number attached and signed off by the teams’ EPM. No room for a side project or time away from your daily duties because there were always P1s to fix. If you didn’t personally have any left for the day, you’d take one from another engineer who was likely swamped with their own list of P1s.”
If that’s true, is this a good way to run a business? A lot of the time, organizations are run (essentially) through the project management process. Which isn’t a bad thing, necessarily. But the way that this is being described is that they’re just running from one fire to the next putting it out. He also suggests that they were always living a P1 existence. And if you weren’t thinking about how to fix those P1 issues, then you were letting down the team. In his opinion, this is how bugs show up in software. The Project Managers end up micromanaging engineers who would make a call that something wasn’t a P1 issue, but rather P2. And the P2 issues were shelved and fixed during the next iOS release (typically during .1).
I’m not saying that this is or isn’t true. Obviously, I don’t work for Apple, but I can certainly see how this could happen. But from a consumer perspective, this certainly makes sense. I mean, there were a lot of “annoying” things coming up over the last couple of iOS releases that took a while to get fixed. When I say annoying, I mean, it’s something that can be dealt with but shouldn’t have to be. And honestly, we shouldn’t have to deal with these things. An iPhone X costs about $1,000 so yeah, as consumers, I think we have the ability to complain about the annoying bugs. That said, I wonder if anything will change at Apple in terms of how they develop software or if this will continue over the next couple of years.