Apple has really improved the iOS developer experience

My girlfriend has this character she’s drawn on various things for the last 9 years. It’s a swan, with a lamp and it’s angry — it’s name is Angry Swan.

When iMessage stickers came out in iOS 10 the app store was quickly filled with cartoons depicting animals and the like in various states and both having iPhones these stickers were soon the normal way we communicated.

A couple of weeks ago I decided that I was going to take my girlfriends drawings of Angry Swan and make a sticker set from them.

I was quite hesitant to do so as I built a couple of apps back in 2013/2014 and didn’t really want to spend my evenings generating certificate signing requests and uttering ‘6th times the charm’ to myself as I created yet another Provisioning Profile in the hope it finally works.

It turns out that Apple has realised that those tasks were a pain and I was able to create and submit my sticker set in around 10 minutes with them hitting the app store the next day. I’m impressed by how easy it was and it’s made me want to try app development again.

Creating the Stickers

My girlfriend sat down with a pad of paper and wrote out a list of actions and emotions she wanted to have the stickers represent. These were things like:

  • Shopping
  • Being Busy
  • Apologising
  • PARTY!
Image for post
Image for post
Sketches for the iMessage Stickers

She then spent an hour sketching out the items on this list and once she was happy drew them out again for me to use. I then bought these into Illustrator to make them more ‘cartoony’.

I found a couple of pastel shades to colour the illustrations and towards the end once I’d built up a number of assets it was really easy to create the images she wanted.

Image for post
Image for post
One of the stickers — This one represents ‘Morning’

Once I’d finished in Illustrator I exported each image with a transparent background and dropped them into the iMessage sticker template in Xcode and was able to start sending them to her almost immediately to test them out.

Then it was just a case of asking her to draw out an image for the app icon and then creating 11 sizes of that icon (this and the screenshots were the only ball-ache in the entire process).

Xcode took care of all the certificate signing for me when it came to sending it to the app store which I was really impressed by. The only thing that I couldn’t do inside Xcode for submission was creating the app in iTunes Connect but this was relatively simple.

Within less than a day after submission I received an email from Apple telling me the stickers made it on the App Store. A quick turn around time, I imagine as the app was just a sticker set but I remember it taking at least a couple of days for the apps I’ve made in the past.

This experience has got me excited about native app development again

Due to the higher barrier of entry for native app development vs web development I decided a couple of years back to just focus on the web.

The web had a lower entry barrier because:

  • You didn’t have to buy a developer license every year
  • You didn’t have to sign certificates and manage provisioning profiles
  • You didn’t have to explain to your client why they had to ask their IT department to sign off on an iOS developer license for the organisation
  • You design for any screen size instead of having to keep up with Apples ever increasing device range

The thing I find the web lacks however is constraint. Don’t get me wrong I believe in the open nature of the web but for development constraint is good.

Constraint means you can just focus on learning to master the tools you’re given instead of having to analyse and compare 10 different brand of hammer.

In the case of JS frameworks this will also involve reading a blog post by some guy at some start up you’ve never heard of used a pre-production screwdriver as a hammer and apparently it’ll be the next big thing.

I’ve had a number of ideas I’ve failed to execute as I’ve got stuck in some kind of analysis paralysis evaluating the technical stack I’m going to use to get the job done and I feel like now I know iOS development isn’t going to suck like it used to this might help me start building.

Written by

Technical Lead at BJSS. Interested in Automated Testing, Dev practises, Metal, Chiptune. All views my own.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store