Apple Silicon - what it means for app development
Last month’s new release from Apple brought an end to the era of Intel Macs and the start of their transition towards Apple Silicon with the benchmark-busting M1 chip. As someone who remembers the excitement and then frustration of the move away from PowerPC in 2006, I was treating this move with a similar level of trepidation. Teething problems are to be expected but will the benefits be worth it eventually?
Thankfully, Apple have clearly worked hard on this launch and the M1 chip is receiving deserved praise for its low power consumption, fast speeds, and ludicrously long battery life. The software jump has been equally successful (for the most part) and support is already at the level where casual and business users are mostly satisfied. Developers will need to give it a bit more time to catch up but what’s there already is more than enough to pique our interest.
As vocal supporters of React Native for app development, this release has something else that we’re keen to get our hands on as well - support for iOS apps on a desktop platform. Right now, this feature could be seen as a gimmick and, in many cases, it is. Popular productivity and creative apps already have offerings on both desktop and mobile and, with these mobile versions, we’re forced to use some crude-feeling workarounds for tapping and swiping.
For now, the big question is what do we do with this? For our design and development, it has a few aspects worth considering.
Where to design for - desktop, tablet or desktop?
As we’ve seen already with universal support between iPhone and iPad, some apps are better at making use of additional screen size than others. Just making your app interface bigger doesn’t tend to work very well. Traditionally, this is the point at which we start to split out our UX and UI designs to ensure they make sense when running on a device given its intended use case.
The new Universal standard means a lot of previously small- and touch-screen apps are going to find a new home on desktop Macs. For some, this is great - it means the GW team could all play Among Us without staring down at their phone screens. For others, it means having to consider how their app will cope with potentially being shackled to a desk, what services it may require, and even if it makes sense without a touch screen. During this transitional phase, many apps may simply be novelties on Macs while new standards emerge.
Apollo - an example of an iPhone app that transitions well to a desktop experience
Workflow improvements - worth the jump?
Efficiency and power are great but for app development this isn’t what really excites us at this stage. Far more interesting is the ease with which native mobile apps can now run on M1 Macs. Rather than dealing with simulators and a separate layer of abstraction between the device and code, built-in support for iOS apps means we can benefit from a much more accurate representation of how our code will run on modern devices. It does add a new category of machine on which we have to test releases though.
It also comes at the cost of Android emulation, which is still necessary for development and testing. Until those tools are optimised for the new hardware, the speed and convenience gains on one side may be wiped out by the other. Not to mention the still shaky support for crucial tools such as VS Code, Homebrew, and Docker to name a few.
What does the future look like?
We’re probably on the cusp of seeing some small but significant changes to apps in cases where it makes sense to have a desktop version. Keyboard and mouse support in iPadOS means that features like touchpad gestures and hotkeys are finding their way into mobile apps already but it’s really up to developers to find ways to make sense of them.
As Apple Silicon support grows, we can expect to see more exciting developments as a new way of developing and distributing apps for the desktop emerges. It may mean an easy win - you get a native app on almost every platform with far less effort than ever before. We’re certainly looking forward to the chance to experiment with them.
And who knows, maybe one day soon we’ll finally get touchscreen Macs (Apple, please).