Developer Story (Premium)

Developer keynote speakers from Apple WWDC, Google I/O, and Microsoft Build 2023

Apple’s developer story contrasts sharply with the visions and solutions offered by Google and Microsoft. That’s probably not surprising at a high level, but what may be surprising is how similar Google and Microsoft are in this regard.

As I’m sure you know, Apple held its annual Worldwide Developer Conference (WWDC) this week, end-capping what I think of as “developer conference season” as it followed Google I/O in early May and Microsoft Build in late May. As a fan of these shows, I think of this time period as the most wonderful time of the year, not just because it’s peak Spring where I live, but because this is when we learn how the three most important personal computing platform makers are improving their offerings over the coming year.

Each event begins with a keynote address that is broadcast live to the public and while each has evolved over the years and each has influenced the other, each is likewise unique. Microsoft’s Build keynote is by far the most developer-centric, and it’s split into two separate 90-minute events over two days, offering a bewildering array of announcements that are mostly business/cloud (and now AI) focused. Apple is at the other extreme: its keynote is purely a marketing event aimed at consumers, and it relegates its developer announcements to a separate Platforms State of the Union session that no consumers will ever see. Google is the Goldilocks in this scenario, offering a mix of consumer and developer announcements in its Google I/O keynote, though, like Apple, it has a separate developer keynote that consumers will never watch.

I prefer the Apple and Google approach over Microsoft’s, and for a few reasons. Three hours of keynote presentations over two days gets monotonous quickly, and I know from experience that it often buries important announcements in the most unlikely of places in these keynotes, making them easy to miss and hard to find later. And while we can debate the merits of using the opening keynote of a developer show as a marketing event for consumer products, I like that Apple and Google provide a separate and shorter (60- to 90-minute) keynote just for developers. This lets people pick what they want to watch.

But if you’re a developer, there are broader issues to consider than how these companies market themselves to different audiences. And key among them is how each provides developers with the tools and technologies they need to write apps that run on their platforms.

And this, to me, is where things get interesting.

Apple’s strategy for developers is no different from its strategy in general: reduce and then eliminate the reliance on third parties and make sure that customers get everything they need directly from Apple. On the outside, this strategy is called “lock-in” for obvious reasons. And while that term is accurate, it ignores the benefits that Apple provides as the sole provider.

“A great platform is more than a collection of great frameworks and technologies,” Apple vice president Darin Adler says at the beginning of the Platforms State of the Union session at WWDC 2023, which is the “real” keynote for this event for the company’s developer base. “It’s the combination of a language, frameworks, tools, and services created to work seamlessly together.”

As he spoke these words, Adler walked in front of a presentation displaying the logos for Swift (a language), SDK (representing Apple’s many device-specific frameworks), Xcode (tools), and Xcode cloud (services), the company’s top-level offerings for developers. There’s nothing odd or wrong about this. Still, it is vaguely interesting that Apple only offers “a language” in Swift as opposed to the multiple languages that both Google (Kotlin, Dart, JavaScript, more) and Microsoft (C#, F#, Visual Basic, JavaScript/TypeScript, more) support for their respective platforms.

And while it may seem like a small thing, this simple example also highlights the fundamental differences between Apple and Google/Microsoft. That is, Apple always chooses simplicity over choice, whereas Google and Microsoft are literally built on choice.

Put another way, with Apple, you as a developer (in this case) must meet Apple where it is, and that’s true broadly, as you need a Mac to use Apple’s developer language to target Apple’s developer APIs to create apps that run on Apple’s other hardware products. But Google and Microsoft meet you, the developer, where you are. If you’re familiar with web development, no worries, you can create apps in JavaScript. You’re a .NET developer? Great, you can create native desktop, cross-platform, web, and cloud/AI apps in your .NET language of choice.

Indeed, you can take this difference to a new level by noting that Apple only provides tools and services that let developers target its own platforms, while Google and Microsoft both offer native and cross-platform tools and services, allowing developers to target other platforms too (including Apple’s: Google Flutter and Microsoft .NET MAUI can both create apps for the Mac, iPhone, and iPad).

Debating which approach is better is as pointless as debating whether the go-it-alone approach that Apple takes with its Mac, iPhone, and other hardware is better than the partner approach that Google and Microsoft take with their own hardware platforms. Each “works” in that each is successful to some degree, each has advantages, and each has disadvantages. But they are very different strategies, which is why we debate them regardless.

And on that note, I do believe that cross-platform development is the future and that Apple’s lock-in approach is “wrong” in the sense that it ties you to Apple and makes you reliant on whatever features and functionality it (and it alone) chooses to release on its own platforms. This can be lucrative, of course: Apple customers tend to spend more across the board than those that use Android, Chromebook, and Windows, and many developers are quite successful in targeting only Apple’s platforms. But cross-platform development opens the entire world of platforms to developers, and that’s true whether they choose web technologies or cross-platform frameworks that create native apps like Flutter and MAUI.

Still, Apple is seductive, and its platforms have the same emotional draw for developers as they do for end users. WWDC, like Apple’s iPhone product announcements, is gut-check time, especially for those on the fence. And when one has bad experiences with a Google or Microsoft platform, it’s natural to start looking around and rethink things. It’s what led me to switch to the iPhone in late 2021. It can happen to developers too.

And maybe that’s the right way to view the marketing that happens at these developer shows. Sure, Apple was targeting consumers with its MacBook Air, software updates, AirPods, and Vision Pro announcements this week. But it was also targeting developers: if people get excited enough about these products, they’ll buy them. And then they’ll need apps. You want to be the one delivering those apps, don’t you?

Sure you do. But I must point out that you may also be competing with Apple. One other byproduct of Apple’s single source strategy is that it often copies features or entire apps that were created by others and makes them part of its platforms. This process is called being “Sherlocked” because of a particularly infamous example of this theft. It’s a real problem, and while it happens elsewhere too—Microsoft did exactly the same thing to an independent developer when it created winget, the Windows Package Manager—Apple is particularly notorious for this practice.

But I guess that’s the price you pay when you move from a small pond into the ocean: you’re swimming with sharks.

Gain unlimited access to Premium articles.

With technology shaping our everyday lives, how could we not dig deeper?

Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.

Tagged with

Share post

Thurrott