Aleksandar • Vacić

iOS bits and pieces

Thoughts on developing watch apps

I spent the last few weeks developing watch companion app for Run 5k. Looking back, I concluded I was surprisingly low-productive in that period. I have started from scratch multiple times, more than it ever happened to me, at any point in the past 5+ years doing iOS apps. This was surprising for such simple app, the kind of projects I usually excel in thus I took some time to think why.

Before iOS, I was a front-end web developer for 15 years. If you do the math, you will realize I started in HTML infancy, in the days of HTML 2.0 (or slightly before). It was the time when books that taught you how to do layout using infinite number of nested tables and spacer GIFs were all the rage.

Making watch layouts feels the same and as someone who hated nested tables to the core, this makes me very, very uneasy.

How to properly share / export GPX files on iOS

In upcoming version 4.1 of my Run 5k app, I’m adding support for exporting data out of the app. I strongly believe that data liberation should exist in all applications and services despite the fact it can require significant amount of time to do properly. In 4.1, you will be able to export complete GPX file for each run you did with Run 5k.

What is GPX

GPX is de-facto standard for exchanging GPS tracks, waypoints, and similar GPS related data between applications and services. It stands for GPS Exchange Format and was created by Topografix. Current version of the specification is 1.1.

Over time, companies like Garmin have added Extensions to the original specification – thus you can include things like heart rate to it. Which all later lead them to create an expanded format called TCX which allows you to transfer many fitness-related bits of information.

Few proposals for better App Store

The blog post published by Gedeon Maheux and short discussion with Joe Cieplinski on Twitter got me thinking a lot about the state of the App Store. This happens often and for good reason: Apple infamously stomped out all apps that attempted to create their own storefronts thus we are left with just the official app.

The most important issue is searching as research shows most customers find apps that way. The way search works now, it’s best suited for one-off free apps backed by huge marketing push to drive up the downloads, then switch to paid model and just leave it be, with infrequent compatibility updates. There are quite a few apps that did this in the top free and top paid lists.

But improving search is not and should not be enough. That’s why I first lay down some talking points on improving the browsing experience, customer engagement and thus app discoverability.

I have sent enhancement radars about all this and I encourage all developers to do the same. My radars are all marked as duplicates, some of them even years ago.

When and how to ask customers to review your app

This is a topic that was done and over with multiple times in the past, but it still creeps back up. The basic rules here are:

  1. never, ever interupt the user workflow in any way to ask them to do something for you
  2. but make sure you still ask

Break rule 1 and you are almost certain to get low ratings even from people that actually like your app otherwise. As it was said before – you, the developer, is the party that needs the reviews. Your customers don’t need them and the reviews do (almost) nothing for them. Thus if you interupt people while they are using your app, you are making it worse and diminishing all the hard work you put into it.

However, it’s in human nature that we are very vocal and ready to be heard when we feel slighted and rather slow when we need to praise. Hence the rule 2.

The trick is to identify when and where to nudge people to leave the review. Almost all apps have a good place to do it, you just need to be mindful, imagine yourself being the customer and – hope for the best.