London Bus Pal

It’s not all about being a great developer

Building a great app and making it a success on the app store, requires you to be much more than just a good developer. We often think that all you need is a good idea and some good development skills, but I can assure you, a successful app requires much more than that.

If you are considering publishing your own apps, here some of the things you might want to think about other than just the development aspect – together with good development, you need to also either learn these skills or source them from somewhere to make your app a success:

  • Market research: Are you building something that people will find useful? Are you just cloning something else which has already been done – in which case, what will make your app different?
  • Product management: A good product manager will tell you to focus your efforts on the most important things first and try to guide you to not waste time on things which are not important or not important immediately.
  • Testing: Do not underestimate testing. Especially as an independent developer, it is really difficult to test your own work, but it has to be done. There is nothing worse than a breaking bug making it all the way into production. You need to step away from the code and try and break your app.
  • User experience: When you develop an app, using it is quite easy, because you know how you made it. Have you considered what your app will look like to a user the first time they open it? I know my app exceptionally well and it always surprises me to watch other users use it.
  • Graphic design and UI design: This is something I struggle with a little bit, but I still give it a go (I do this so that I can get better at it). Publishing an app on the app store with an ugly icon or ugly user interface will immediately lose you points. As this is what a user sees immediately, I would even consider paying someone else to do it for me, but not before giving it a go myself first.
  • Marketing: Once your app works really well and you have published it, you are just waiting for people to download it. This really doesn’t happen by itself and you need to put effort in to get people to use your app.
  • Support: Things are going to break. You need the ability to look after your users and help them out. This can range wildly from code fixes, to explaining to them what they are doing wrong, updating your app to make it easier for users and so on.
  • Public relations: Once you are on the app store, you have gone public. Users are going to applaud you, they are going to criticise you, they are going to troll you. Especially when things go wrong, you need to be there for your users – this can be a tough one to do.

It is easy to think that all you need for a successful app is a good idea and some great development. These are definitely elements which will have a positive contribution, but there are so many other aspects you need to consider. It can be very daunting when you are the independent person and you have to do all these roles at once. But, in this, remember that you also have a competitive advantage – if users are not happy, or things change in the marketplace, you can change direction at the drop of a hat. You don’t have to ask someone’s permission or for through a bunch of bureaucracy to get things done.

As I continue writing, I’ll delve a little bit more into the various areas, specifically not focusing on development alone.

London Bus Pal

The many hats I have to wear

If you thought I was just an app developer who wrote a bit of code and published it to Google Play, you’d sadly be horribly mistaken. Doing this all on my own, means I have to wear many, many, many different hats. It’s a lot of fun trying my hand at all the different thing, but it also means that I can become spread thin trying to manage everything else together with my day job.

Here are some of the fun things I get to try my hand at while I work on my apps:

  • UX researcher and designer: I am a firm believer in good user experience and following good design patterns. When I built version 3 of the app, I spent hours upon hours reading the material design specifications. I had to carefully sit and work out margins and colour schemes and figure out how to get the material design concepts working before all the tools were built.
  • Graphic designer: Or something along those lines. I had to draw the icon for London Bus Pal myself – I know, it looks like an amateur made it – that is because an amateur did! I also did the “swoosh” image (the one in the menu bar when you swipe left) myself and as much I would hate to admit it, I also did the splash screen (it needs serious work, but I have to focus on other things for now). All of the artwork in the app stores were also made by myself with free tools I could find.
  • Marketeer: I have to find ways to get people to download my apps. I have to create campaigns and I have to, at some point, put that graphic designer hat back on if I want to make them more eye-catching.
  • Sales person: When it comes to sales, the main thing I am selling is advertising space to other companies. It almost feels rude to say it, because I don’t necessarily like ads, but it is the most effective way to monetise a free app. I have to keep my eye out to make sure that I sell the space well and for a good price. Much of it is automated and out of my hands, but it is a role I have nonetheless. (Don’t worry, my UX designer would never allow me to just litter my entire app with ads, it has to remain functional!).
  • PR management: I feel like some times when doing development, I cannot just do things right the first time. I always make a mistake and have to go back and fix it. With my PR hat on, I have to make sure that I keep my users in my good books and that they stick around.
  • Support: I always have to be on top of the latest issues. Especially around big releases, this takes up a large chunk of my time – I have to constantly monitor logs and check user behaviour to see if things run as I expect them to. When they don’t, I have to figure out why – with GDPR combined with some limiting tools I use, this can be a massive challenge at times (
  • Product manager: I have to always be on the lookout for the next big things or how I can improve my app to the benefit of my users. This is mostly what my day job is, so doing it for my app can become tedious or feel a bit fake, but it is really useful to make sure I build the right thing and not just what I feel like building today.
  • Accountant: Even though I just make a bit of pocket money from the app, I still have to count all those beans – one benefit of it being a simple setup is that things are pretty easy to count!
  • Developer: This is my favourite part of it all – I get to sit down, be a bit creative, solve some problems and see what I built once I am done. I also get to experience a little bit of what the developers I work with every day experience, so it even helps me in my “real” job. I also use this as an opportunity to learn about things where I might want to see for myself how it works (automated testing and repository management being some of my interests).
  • Tester: You would not always say so, but I try and do this as thoroughly as I can. But when you develop something yourself and you look at the same things all the time, it can become quite challenging to do this thoroughly. I am always hopeful that this is where my test automation helps me out, but for that I need to invest more time in it.
  • User: I love using my own app. It does what I want it to do and that makes me happy. I know what I want it to do next and that frustrates me – because in order to do all that, I need to do all those others things!

I love doing this and being able to experiment with all these different things. I would love to have more time to devote to this, but at the moment it is just my spare time I get to use for it. When things start picking up, I will have to look at how I make more time, but it’s always a question of economics!