Last week we premiered one of the really neat functions of this app – the ‘Select Many Friends’ feature….and I got some very interesting feedback ! Some did say that this was indeed ‘lazy & impersonal’ – some also took the feature and added to it…in fact they came up with more fantastic ideas. After reading all of them, I wondered about how I could have missed these great ideas. It also got me thinking about the things that I still did not know about app development…and importantly, the things I would do differently when I was ready to launch another app.
Being a project manager, I had considered the holy trinity of project management.
With The Birthday Genius, I had carefully considered the scope, the budget and constantly kept an eye on the schedule. Keeping the end-user in mind, I had also been very mindful about designs & layouts, useability, and the features & benefits of the app. To get the app to the end user, I had also carefully considered the marketing aspect.
So with all of that in mind, here are seven things I did not know about app development, until I developed an app myself:
1 – Risk Analysis & Management
In doing this all again, I would look at mitigating and controlling the risks. Example : I’d written the scope of the application from an end-user perspective : I wanted to be able to send birthday messages via Facebook & SMS, and I wanted to have multiple reminders of a birthday for my friends and family. I also wanted to make sure that I never missed a birthday ever again. What I should have also focused more on was the toolset that I was working with, like Facebook’s API and some of the complexities contained therein. By not focusing on this, I introduced unnecessary risk into the project. Now what I’m doing is using more of the the IFTTT principle , and by doing this I’m further refining my scope and eliminated risks before they even turn into issues.
2 – Design Wireframes at the same time
Firstly, what the heck is a wireframe ?
It’s a mockup design of what you want the app to look like. With a pencil, I’d drawn a couple of wireframes (on napkins of course) and this helped me understand layouts. What I should have done more of is understanding the User Experience and User Interface at the same time whilst I was refining my scope. I only started thinking a few weeks after I came up with the idea, by which stage I had really got my heart set on the cool features and functions of the app. By designing the wireframes at the same time I would have understood more about how the app would have been used by the end-user. Some great wireframe tools are available here.
3 – Minimum Viable Product
As with anything once you start to dig a little deeper, you find other ideas and things that you’d like to do. App development is no different. What I did was try to incorporate all of the ideas into Version 1 of the app and the list kept growing (did anyone say scope creep ?). What I should have done was made a list of primary functions that I wanted in the app that I could launch a successful, viable app with. This would be my minimum viable product. I would then park the additional ideas and implement them as part of Version 2. What this would allow me to do is get something launched quickly and allow me to continually deliver value to end-users through Version upgrades. By shortening the time to market and continually delivering value, this would help with end-user engagement and satisfaction. So first things first, lets get the first app off the ground
4 – Prototype
I’m not developing the code myself; I’ve used a local developer to do this. Whether it is local or offshore, you need to have a certain degree of trust and faith in the developer that they can do what you want them to do. In doing this again, I would take the specifications from my minimum viable product and get the developer to create a prototype of the app. Sure it may not look like the end product, but what it will do is give you an idea of the end-user experience PLUS it will also give you a low-cost indication of whether the development can indeed deliver the solution you are after.
5 – Google Android vs Apple iOS
Depending on what you read, Google’s Android may now have the largest market share of the mobile phone market. However it also has the most fragmentation (variables) in terms of hardware manufacturers, screen size, versions of operating system (because it is open source). In doing this again, I would eliminate as many variables as possible and start with iOS. It is the one manufacturer, on a standard device which is not updated very often. This great thing about this is that iOS provides a more stable platform because it is less likely to change very quickly. I should disclose that whilst I’m an Android fan (using a HTC One) the point is not lost on me that I’m writing this blog using my Apple iPad Mini whilst I’m on the train.
6 – Check Your Assumptions (also known as Cover Your Ass)
In early February 2013, Facebook changed their development toolsets (API) which adversely affected the app. Time and money had been spent getting us up to that point and then the solution had to be scrapped and reworked. If we had continually checked our assumptions (in this case, the stability of the Facebook API) we could have planned contingencies and ‘covered our asses’. This should have been a part of our risk strategy from day one. In doing this again, I would list all of the items, toolsets, API and code that I’m dependent upon and continually check to see if they are being updated. After all, no one likes surprises….unless it is your birthday (…see what I did there ?).
7 – Don’t Fall In Love
Because this is my first app, this is my baby and I’m definitely in love with it (okay, that’s a little creepy but you know what I mean). It also meant that I was not very objective about it and I was not continually re-checking the idea. What I’ve been doing lately is finding ways to prove myself wrong (playing devil’s advocate, if you will). This has allowed me to re-check my original idea and it has resulted in very minor changes to the app. Being very persistent (cough, stubborn), this change means that I’ve got a far better product than if I originally went with my gut. If, and when I do this all again, I’ll try to play more of a devil’s advocate role.
I recently read somewhere that your first business is basically an apprenticeship for your second…and app development is no different. So our goal right now is to launch this app and we’re doing everything we possibly can to do this soon. We are still in the testing phase and we expect it to go for another week. During this testing phase, keep a close eye on your Facebook wall….especially your friend’s birthdays. You may indeed catch me sending them a message from the app ! 🙂