Apple has spent the last week or so being rather two-faced.
On one hand, it wants developers to be even more hooked into its ecosystem and everything it entails. But on the other hand, it keeps giving developers reasons to stay away.
At WWDC, Apple spent a significant amount of time of its keynote focusing on things that would appeal to developers and not to consumers and tech journalists who care only about new OS versions and new hardware, the latter of which was nowhere to be seen.
Much time was spent demoing Swift and its instant compiling to the world, and talking about the OpenGL replacement, Metal, which will supposedly bring much-improved performance to 3D graphics in iOS 8.
Here's the thing: these are both moves designed to get developers more entwined with Apple. Objective-C was always an Apple language, and Swift being so is not necessarily anything new in terms of standing. But trying to move developers away from an open graphics library – quite literally – to one that's centered around iOS stinks of Apple trying to create more lock-in.
One for all?
For many developers, it's quite possible that they won't touch Swift and Metal until the cross-platform tools they use, such as Unity and Unreal, start to implement them. Apple-only developers will benefit – but developers who work in a world where there's more than just one operating system, one ecosystem to work with get a shorter end of the stick.
Now, Apple making it more enticing to be part of its ecosystem on an exclusive basis wouldn't be such a bad thing. There's just one little problem - Apple still wont to do things that should make developers wary to be part of Apple exclusively.
Ian Marsh claims half of the revenue from NimbleBit's Disco Zoo came from video ads.
Look at the recent renewed push against incentivized video ads. This was an issue back in the days of the original Temple Run, but they rose back in prominence over the last few months in particular, either due to Apple becoming lax with enforcement or changing its position on them.
They've proven to be quite popular with developers because they provide perhaps the best user experience when it comes to advertising. Users get a reward, be it currency, or a continue in a game, simply by willingly offering up 15 or so seconds of their time. It's a small cost to developers with a big benefit, and the ads are not annoyingly disruptive or, likewise, easy to ignore like banner ads.
And these video ads are apparently lucrative enough to the point where half of the revenue from NimbleBit's Disco Zoo came from video ads – and other NimbleBit games have a significant portion of revenue coming from video ads, with Disco Zoo using them in an incentivized way.
David Marsh of NimbleBit has also pointed out that the user experience is better with them: users may pay more attention because they have chosen to watch the ad, and appear to consider the games being advertised to them more than they would if the ad pops up all of a sudden.
This means higher click-through rates and makes the advertising more valuable for everyone: developers make more money, users don't have to pay money for what they want from the game, and advertisers can drive more people to their products.
Instead, Apple appears to be trying to outlaw them. Why? Because they compete with iAd?
There's plenty of evidence to say that video ads are a better experience for users: if Apple decided to ban banner ads and unprompted video ads in the name of user experience, that would at least make some kind of stupid sense, but of course it wouldn't.
It's been suggested that perhaps Apple wants to own app discovery, and Vungle playing host to ads that, in Apple's mind, are simply 'too gets in the way of that.
Apple certainly has a track-record for killing other services deemed too good at their jobs. Remember AppGratis?. It's the corporate equivalent of Apple taking its toys and going home.
The big question that arise is, if this is how Apple is going to play it – locking off services it doesn't like and increasingly bedding studios down in its own ecosystem - why should developers keep playing at Apple's house?
How can developers trust Apple if it can cut off such a key revenue generator with a stroke of its pen out of what is effectively jealousy? Why should a developer use and trust Apple-exclusive tools if Apple platforms can't be trusted as revenue generators? Why wouldn't a developer work on Android, Windows Phone, and non-mobile platforms? Why build your business around iOS?
For the same reasons as always.
Tipping the scales
Talk to developers. Ideally, they'd rather work just with the App Store than other platforms: having one store and only a few models of iPhone, iPad, and iPod touch to manage are so much easier than the just general mess that is the Android platform.
It's increasingly getting to the point where it's stupid to just publish on iOS.
Nevertheless, it's increasingly getting to the point where it's stupid to just publish on iOS, even if that's preferred. Given how many tools there are for working on other platforms along with iOS, why get suckered in to using Apple-centric tools?
Of course, perhaps what developers need to keep in mind is that this is not really different from the experience that everyday users have. Use Apple products and services, things are easy. Try to breach the walled garden, and they quickly find that Apple has made things remarkably difficult.
So, on one side of the coin, we have an Apple that wants developers to be part of its ecosystem in as exclusive a way as possible. And yes, Swift, Metal, and other developer features introduced at WWDC will make many developers' lives easier, and enable them to do great new things, or even make it easier in certain instances.
But look at the other hand: Apple can make a developer's life a lot harder based on little more than a whim. Mobile developers have to work with Apple because iOS is such a significant part of the mobile landscape, but the more Apple keeps giving developers reasons to be wary, the more the prospect of moving wholesale to one of its rivals looks appealing.