The App that Will Hit It Big and Other Unicorns

I know you.  You are like me and you think that you are going to release a beautiful, world-changing app onto the market and it is going to allow you to hit it big.  It is going to be practically devoid of bugs (you are a realist after all).  It is going to have an intuitive user experience, and it is going to allow the user to do everything they could possibly want.  You are going to rank at the top of your target keywords, have thousands of retained downloads per day and make a bundle with ads and well-crafted in-app purchases.  Everyone is going to ask where this one-app wonder came from, but in your mind this is just the beginning.

Let me tell you another tale.  You have never gone fishing, but how hard could it be?  You are going to take a pole, the best one you can find.  You will ask local fishermen for their advice on the best bait to use and the best time of day to fish.  You are going to scout for the perfect hole and once there, you are going to get busy.  So you carefully cast your bait into the water and wait patiently for the big one to bite.  Nothing happens.  You wait.  You cast and cast and cast into the hole again and again.  Still nothing happens.  What do you do?  You’ve geared  your entire trip to this bait, this pole, this spot, but you have come up empty.  You need to increase your chances.  Sure, your persistence could pay off, but if the fish aren’t there or they aren’t biting that day or you were given bad advice about the bait, you’re stuck.  This is why you need to prepare for your fishing trip.  You need to bring multiple lures, maybe even multiple poles.  You need to scout out different holes and move from one to the next if you are not having any luck.  You may need to show up on multiple days, at different times of year or under different weather conditions.  All you need to know is that people are pulling fish out of this body of water, and you can devise a strategy for success.

So let’s come up with a factor called line-hours that is simply the number of lines you have in the water multiplied by the number of hours you have them in.  Obviously, as you rack up more line-hours, you can expect your likelihood of catching fish to go up.  If possible, you should devise a way to put multiple lines in the water at once!  This doesn’t work for all manner of fishing, but fortunately it does apply to app development.  The more apps you have on the store, the more users you can reach.  The more keywords you try to target in the more varied niches, the more likely you are going to rank well for one or more of them.  So your objective starting out has to be the development of a system that will allow you to put out good quality content at a regular clip.  Given a handful of ideas for apps that you think should be simple to develop, you should be able to evaluate the one most likely to succeed and have a minimally viable version of it ready for launch in 2 week’s work.  Unless you have a team of developers, you are not going to compete with Facebook, Twitter or Instagram in form or functionality.  While you may have the skills and the time to do so, your chances of success are so slim that it does not behoove you to overdevelop a single strategy out of the gate.

Don’t go to one hole with one bait and expect to pull out the fish.

Why Do You Want to Develop Android Applications?

Before starting, it is critical to establish, at least in your own mind, why you are interested in developing Android applications.  For this purpose, I think it is helpful to separate the crowd into a two main categories:

  • Category 1 – Those starting for their own reasons:
    • I want to start my own business
    • I want to learn a new skill to put on my resume
    • I want to delve into a new career path (I hear people are hiring Android developers)
  • Category 2 – Those starting for exogenous reasons:
    • I am a high school or college student creating applications as part of my coursework
    • I am a programmer at my day job, and my boss really wants me to learn to develop applications for a project.
    • I’m homeschooled and my Mom thinks this will look good on college applications.  Kudos to you by the way, and good luck with your applications.

If you fall in Category 2, then my job is pretty easy.  Either you are motivated to learn Android, or you are not.  Either way you’re going to grin and bare it.  If this is you, feel free to stop reading this and go on about your day.  We’ll catch you next time.

Likewise if you are starting a new career or if you are gathering skills for your resume.  You’ll do well to follow future posts, but the motivational aspects bringing you here are pretty cut and dry.

The only subcategory remaining is the App Entrepreneur wanna-be.  You my friend are a horse of an entirely different color, and we are going to have alot of fun together.  You are an unreasonable dreamer, and you feel like an imposter just mentioning the idea to friends and family.  Do you know how unreasonable you are?  There are X million apps out there, everything that you could possibly want to do on your phone has been done already.  And on top of that, Y% of all new small businesses fail within 2 years (or 1 year or 6 months, whatever the statistic of the day is).

You may fail, that much is certain.  But imagine a game of darts where you get to pick off your bad shots and keep throwing them until you get them in the bullseye.  That’s what we’re dealing with here.  Day after day, app after app, release after release, you get to pick your shots.

Now you need to think about your reasons for going down this path, even if you are a good ways along it already.  Write them down if only for your own edification.  If you are comfortable, I would like you to share your reasons and motivations with the community in the comments to this post.  Alternatively, I would love it if you emailed them to me, and we can have a one-to-one on the topic.

How I Got Started Developing Android Applications

I am not a programmer.  At least I never considered myself to be one.  But I have always wanted make my own way in the world, and as much trouble as I have spelling it, I guess that makes me an entrepreneur.  Like most people I am not a source of endless ideas, and I go through life being constantly inspired and distracted by the events that occur in my daily life – at work, at home and in between.  That’s exactly how it happened between me and mobile applications.

Meeting the Smartphone

I resisted getting a smartphone for quite a while.  I am in general a pretty frugal (read “cheap”) person, and I didn’t see what all the fuss was about right away.  When I started my first job after grad school, they gave me a Blackberry.  I did the reasonable thing, bought a holster for it and became addicted to checking my email constantly throughout the day.  It didn’t occur to me at the time that it was really any good for anything else, and frankly, it probably wasn’t given the little spinny-wheel thing for navigation and the tiny little keyboard that I had to turn my fingers sideways to type on.  Eventually, my employer opened up the available smartphones for employees to include the iPhone.  After the friendly folks at one of our major airlines put an end to my Blackberry’s screen, I decided to take the leap. This was a major transformative moment for me.  This device could actually do something besides email.  I could put all of my music and podcasts on it.  I could track my runs and my weight lifting workouts, check the news and weather, catch up on sports scores, and more importantly play games.  After a couple of years I decided to take the plunge and get my own smart phone for personal use.  I wanted to live without the restrictions of my employer, and while I could envision myself without my job, I couldn’t envision life without a smartphone.  I’ve always liked trying out new things, and my wife really liked hers, so I decided to try Android instead of the now familiar iPhone.  That was the day I became an official mobile aficionado.

It hadn’t yet occurred to me that I would be capable of building a smartphone application.  That was the realm of the programmer, a strange yet noble creature about which the common person knows very little.  When a gentleman who works for me created an iPad application to solve a small problem collecting some data for our research, I started to think that maybe it wasn’t so impossible after all.

Maybe I Have The Skills To Do This

I am an engineer by training, and as a result I know just enough about programming to be dangerous.  Before I started working with Android I had a considerable amount of experience with Matlab and a little with Python analyzing and visualizing data.  None of the programs I had written were particularly complex or designed with the user in mind, after all the user was going to be me, and I was going to be reading in some data from this file and spitting out some data and graphs and storing them in that file.  Beauty, performance and the overall user experience were not something I was concerned with.

So I had this idea in the back of my head that I should learn to develop applications for Android, but I didn’t act on it for months.  When I would have a bad day at work, I would dream about raking in millions from a smartphone app, even though the rational part of my brain knew that this was a fantasy at the time.  The dreamer part of me really hoped that it would happen.  But that has always been something I have struggled with.  It is very easy to dream of big exciting things happening, and it is even easy to set lofty goals for yourself.  But it is very difficult to make the habitual changes you need to make in your life to actually make those things happen.  You can spend a ton of time learning a new skill, and all the while it will comfort you into thinking that it will move you further toward your goal.  But it is very hard to choose the strategies that are going to be effective in getting you closer to your dream.  If it is financial independence that you are after, figuring out how you are actually going to make money doing whatever it is you want to do is the hardest part.

Finding a Pain Point

Then I found an opening in the market, a pain point that I was experiencing (or at least that I convinced myself I was experiencing).  I had been trying to keep track of my weightlifting workouts with my phone, but I just couldn’t stick with it.  Every app I tried was either too hard to get to work or just wasn’t worth it to spend the time on.  Usually there was a function missing that I wanted and I would always just end up going back to pencil and paper.  Pencil and paper had its merits (it was easy to use), but it wasn’t easy to go back and see what weight I used on an exercise I hadn’t done in six months, or to easily estimate my 1 rep max and track it over time.  There were some pretty decent apps for the iPhone, but I really wanted to use my Android phone for my workouts.  Therefore I felt that I had a target market, and while I knew that it would be small, I figured it was reason enough to get started in the business.

The Struggle To Get Started

I spent months of nights and weekends (I’m not even sure how long) learning Android (without first learning Java, big mistake) and eventually I set up an LLC and launched my baby on the app store.  Looking back it was a real peice of crap, with some obvious bugs, and I didn’t know what the hell I was doing.  I had focussed quite a bit on the code to make the app functional but I taken very little time to understand testing or how the app might work on different devices or how I might get people to notice me on the store.  All-in-all it was an incredible learning experience, but not one that made me feel very proud about the product that I had put out.

I spent alot of time focusing on getting as much free marketing as I could on social media and experimented a little bit with advertising, but overall I would not deem the project a success (primarily because I never got very many downloads and certainly never made much money).  I continued to learn more about the programing environment, ironed out some bugs and drastically improved the user interface all the while rolling out incremental improvements to the application.  I spun off a variant of the app for a niche that I thought would be easier to target keywords for.  I was right and the app took off considerably faster than the first (though it still never did make much money).  I needed something fresh, so I built a third app, which was much more streamlined and well-designed than the first.  But, I rushed through the keyword research, Icon and other elements of the graphic design.  I wasn’t particularly proud of any of that either, but I launched the app anyway.   Then I added more social media elements (more plates to spin) and built a more professional looking website.  All of this amounted to me making bupkis in the money department.  So much for quitting my day job and buying a private island.

Seeking Knowledge

After all of this time struggling on my own I started reading books (some of them optimistic, some not so much) about how to actually succeed in the app game, and I thought to myself “you all picked a fine time to tell me.”  But that wasn’t fair to the authors, I had picked a fine time to start learning what was important.  I could have benefited from a mentor, because in the beginning I was my own worst enemy.  I am writing this for you now because I wish I had known what I know now when I had started.  Obviously, I cannot guarantee you success because I have not achieved much of it myself.  But what I can tell you is that my guidance will put you on the fast-track to understanding the Android landscape so that you can build solid, well-received, functional applications.  Now let’s get to work.

Why I am Doing This

I went from someone who knew very little about programming to a struggling, amateur Android developer in a little under two years.  My goal for you is to not repeat my mistakes.  I want to share my experience with you, so that if you find yourself in the same shoes, you can take a different path.

That being said, I’m going to do my best to keep a positive attitude about the experience.  That way this will be alot more fun for all involved.  I started out with no clearly defined goals, going in several different wrong directions that the same time.  I want to empower you to get a running start in Android development.

I am not going to tell you that you cannot have fun with this or make money.  But I won’t fool you into thinking that this is going to be easy, or that I have been able to quit my day job doing it either.  But to those of us with a passion for this business, none of that would stop us anyway.

Despite all of the good business reasons not to embark on this journey (a crowded market, tons of books on Amazon, lots of code blogs and forums, tons of tutorials and documentation on Google’s Developer page, Stackoverflow…) I am doing it anyway.

Why? Because I would have wanted someone to do it for me.  I’m not afraid to admit to needing my hand held and you shouldn’t be either.

Let’s get started.