Being an iOS Developer must be stressful

Kale Howell
6 min readAug 24, 2020

--

Photo by Sydney Sims on Unsplash

Follow me @humankale for more content like this.

In my last post, I detailed why I have been increasingly interested in learning native iOS development after doing web development for the past few years. In this post I’ll talk about the reasons why the decision to build iOS-first apps gives me pause. I’ve thought about it much and it comes down to this…

Compared to other platforms, Apple’s ecosystem is hostile towards developers.

Five reasons why…

Apple has a history of making sudden changes that destroys developer business

Apple brands itself as a forward looking company that isn’t afraid of making changes that alienates their customers. A recent example of this was their war against I/O ports on their most popular devices. The removal of the headphone jack from iOS devices and all but USB-C ports on their MacBook line still has me cursing under my breath for the dongle-hell Apple has put me through. For customers, the inconveniences are infuriating but increasingly easy to forget with time as habits adopt. Developers don’t always fare as well when Apple makes drastic changes to their technology or policies.

The Pitch podcast has a great story that explains what this experience is like for a developer that staked the success of its business on Apple’s platform. To sum up, after the founders of Unglue spent 2 years building out the technology for their parental control App, Apple pulled the App from the Apple Appstore.

Why?

Apple updated the App Store developer policy to ban capabilities (mobile device management) that Unglue, and other similar apps in that genre used. To make matters worse, this (not so coincidentally if you ask me) happened just months before Apple launched Screen Time, its own parental control app. Apple argued that the policy change was made due to privacy and security concerns but the effect is that it killed Unglue’s entire business before it got the chance to flourish. Apple eventually had to reverse its policy due to bad PR and antitrust scrutiny but by that time the damage was already done. Unglue is now out of business.

Apple holds app updates hostage

This year, Apple’s notorious App store review process is getting negative press unlike ever before. Even in the past week while I was thinking about what to write here, a new story broke. Wordpress founder Matt Mullenweg tweeted that updates to the Wordpress iOS app were absent because Apple demanded Wordpress add in-app-purchases (that Apple gets a 30% cut from) to the completely free Wordpress companion App even though there is no product available to be purchased through the App. Putting aside Apple’s brazenness to coerce developers to sell their own product, this example shows that Apple restricts App updates which may include critical bug fixes, as a way to bully developers into doing what they want.

The most notable example of this was the Hey debacle just a few months ago. In that case, Apple blocked the newly launched Hey email app from submitting an update with bug fixes, again, demanding the inclusion of in-app-purchases. The pattern is clear. The in-app-purchase model is a valuable revenue source for Apple. They use App updates…even for bug fixes, as a way to bully developers into adding it to apps, whether or not it is appropriate.

It is notable that Apple had to walk back their initial decision or make an exception in the aforementioned examples. This proves that Apple knows their rules aren’t working. But what about the developers and their customers that have to deal with a bad product during the App Store review process for updates? If Apple were developer friendly instead of developer hostile, it would allow updates until App store disputes are resolved — except in cases where the dispute is regarding customer security or privacy. Instead, they let the App go without updates, sometimes with critical bugs, destroying the brand of the developers’ product.

Apple is so big that massive negative PR is required to resolve App Store disputes in favor of developers

The examples with Basecamp’s Hey and Wordpress show that the only thing that Apple responds to is a tidal wave of protest and criticism. In those cases the companies were able to eek out rare half wins because they have a voice. It was also clear as day that the 2 trillion dollar mega-corp was in the wrong. Unfortunately, most developers are not executives or founders of popular companies like Basecamp and Wordpress. They don’t have a massive Twitter following they can weaponize. They don’t have connections with lawmakers in Congress.

For every Hey and Wordpress, there are thousands of developers that were and likely are in the same situation those companies found themselves in. But because of their size, because their business and lively hoods were at risk, they had no recourse but to acquiesce to Apple’s demands.

Apple doesn’t apply it’s App Store policies evenly

One can’t help but get the feeling that something is deeply unfair with how Apple enforces its App Store policies. The exceptions to the rules make it worse. Take for example, that Amazon was able to ink a deal that had them pay half what other developers would have had to pay to get Amazon Prime Video in the App store. That would be okay, except Apple loves to say that they treat all developers equally. The evidence shows that is not the case and others have been quick to point it out. A great example is youdownloadtheappanditdoesntwork.com, created by Lanny Bose. It shows clearly that Apple is simply unable to enforce its App Store policies evenly.

The other exception to the rule is the so called “reader” category of apps that allows companies like Netflix and Spotify to work around App Store policies like the forced inclusion of in-app-purchases and Sign in with Apple, while developers who don’t make digital content consumption apps get stuck footing the bill. Also, the arbitrary policy, barring cloud gaming platforms like Microsoft’s xCloud and Google Stadia access to all iOS devices for the insane reason that Apple wouldn’t be able to individually review every game available through those services. The obvious question is why Apple needs to review every game that can be streamed but has no problem ignoring every movie or TV show they currently allow to be streamed.

No developer wants to work under such arbitrary rule making.

Apple forces bad UX on developers’ customers

The App Store is the only way to get software onto iOS devices but the net effect of some of Apple’s App Store policies, in particular, the policies related to in-app-purchases, forces developers make worse apps that give their customers a bad experience.

I have anecdotal experience. I was with my friend, using the app Eventful on Apple TV to watch short films. Eventful became a preferred tool for film festival organizers that had to pivot to holding festivals virtually because of the coronavirus pandemic. The app makes it easy for film festival organizers to securely distribute festival films while making money from passes to see specific films or a group of films in a festival block.

There was a film that we wanted to watch, so we tried to navigate to purchase it like we would purchase or rent a film from Amazon Prime video. But we could find no such option in the Eventful app. I thought it was weird. From a business standpoint, it makes so much sense to include purchasing in the App for people to impulse buy like we were trying to do. Then my friend told me he would have to go to the website on his laptop and make the purchase from there. Then it occurred to me…likely the only reason why this isn’t a feature in the Eventful app is because the developers knew they would have a hard time getting that through Apple’s App Store review. At least, not without Apple taking a 30% cut from each transaction.

We never did end up making that purchase, or watching the movie. Attention spans are fleeting in the digital economy and a minor inconvenience turns into a lost sale and then into the app being uninstalled and sometimes into a company running out of business.

As a novice web developer looking to place my aspirations in Apple’s care as I explore building new apps and businesses on their platform, I can only hope they are reassessing their policies in favor of truly being for developers. Till then, I’ll keep learning and supporting developers pushing for positive change in that direction with this thought in mind.

Man, being an iOS developer must be stressful…

Follow me @humankale for more content like this.

--

--