Another WWDC has come and gone, and Apple have released the M2 and a new MacBook Air to go with it. Apple’s hardware continues to be refined and it’s hard to argue that they are not knocking all their new machines out of the park.
The thin and colourful iMac, the Studio with ports on the front, MacBook Pros and now the Air. Add on beautiful iOS devices and every piece of Apple hardware looks (and works) brilliantly.
Apple software, on the other hand, is not going well. I don’t know whether to blame the new design guy that took over from Jony Ive, the business managers who are trying to create consistency across platforms in the name of efficiency, or that SwiftUI seems to be entirely incapable of acting as the supporting infrastructure for feature rich applications (or even utilities).
The latest kerfuffle arrives in the form of the proposed “Setting” application in macOS Ventura. It’s ugly, it’s not optimised for the platform it’s operating on, and it feels like a regression from the “Preferences” panel that came before. Given that the Preferences panel was universally seen as “not great”, it is a sad indictment on Apple’s current ability to build good user-facing software that the rewrite is turning out to be worse.
There are other examples, such as the vertical orientation of notification panels in macOS, the notifications system on all platforms, and even larger software efforts such as GarageBand never embracing podcast editing, Podcasts app continuing to be average, etc.
The strange thing is, Apple is insanely great at developing low-level core frameworks. That they transitioned the entire macOS fleet to APFS without anybody realising is amazing. They built Metal - which goes chronically underused by game developers - but still they did it. Rosetta emulation is a masterpiece to aid the transition from Intel to Apple Silicon.
I suppose no company can ever be perfect. Apple is doing great on the engineering side: highly technical work and manufacturing process management. They are not doing great on the softer design side. I think they need to take a new approach to software design, and that probably starts by changing their vision of what good software looks like. To me, it doesn’t mean everything looks like an iOS element. To me, it means embracing complexity where that complexity is beneficial to the user. There is no point making something look simple, if in using that simple design things get harder.