For many a programmer or entrepreneur, becoming an “app millionaire” is the ultimate dream. It must be an amazing feeling to know that you’ll never have to work again, because of a smart idea that you had. And to know that said idea is actually helping people would surely be the icing on the cake!
This is what I find so appealing about programming and software development. This is a set of tools that empowers anyone to make anything they can dream up, and to potentially change their lives and the world in doing so. The problem is that so few people know how to become an app developer.
Unfortunately, I’m not an app millionaire! But I got a small taste of success a while ago with an Android app, and thought I’d share my experiences here for other hopeful developers.
I’m not sure if it was exactly $50,000, but that’s a rough estimate. One of my apps got over 70,000 downloads, at $1.20 a pop (although there were heavy discounts at times), and I had a few others sell okay too. I also cut deals with OEMs in India to have the apps appear as preloaded software, which earned me a little extra.
I’m not rich by any means. It might sound like a lot of money, but its impact is felt considerably less over a span of ten years! That isn’t to say it wasn’t awesome, though. And it certainly helped me enjoy a more comfortable lifestyle for a little while. And it wasn’t by following any conventional advice on how to become an app developer.
The app that kicked it all off for me was called Multiscreen Multitasking. As a freelance writer who enjoyed the freedom that job afforded me, I wanted a way to work on my massive phone without needing a laptop. I had a bluetooth keyboard, but there was no way for me to split the screen between a browser and a document for research (this was well before baked-in multitasking on Android).
Unfortunately, this limitation was down to the firmware, so no coding on my part would be able to circumvent it without root access.
Scratch your own itch. I knew what problem I wanted to solve, and I found a cool way to do it.
The solution I eventually stumbled onto was to make an app with both a text editor and a WebView so I could see them side by side. I called this “Split Screen Browser and Notepad” because I’m original, and that actually got a few downloads! I didn’t necessarily set out to learn how to become an app developer, but rather I knew what problem I wanted to solve, and I found a cool way to do it. Developers and inventors tend to call this “scratching your own itch” and it’s a great approach to finding “pain points” that can become sellable ideas.
From there, I realized it wouldn’t be that hard to add more mini apps into the mix, like a file browser, a drawing tool, or a movie player. I then figured out a way to move the windows around and resize them just like a Windows desktop. I did this by getting the users’ finger position from a canvas floating on top of all the views, and by allowing that press to pass through if it was inside a window.
I wasn’t expecting the app to take off the way it did.
I released this extremely quickly as Multiscreen Multitasking, and then evolved it over time to incorporate more ideas and features. I also split the app into multiple different versions, to target different types of user, and different types of device. My coding at the time was pretty limited to say the least, so I learned how to be an app developer basically on the job!
A scary time
I wasn’t expecting the app to take off the way it did. Again, I’m no Mark Zuckerberg, but after a day or two, the app was selling numerous copies per hour at the one-off price of $1.20!
I have a vivid memory of being at a house party, checking my phone, realizing this had the potential to be “it.” It was exhilarating! I had always been interested in learning how to become an app developer, but I hadn’t really thought about what it might feel like to see an app of mine succeed.
For about a year the app earned me roughly $30 a day, which actually makes a big difference to a young guy fresh out of Uni! What’s more, is that I could see it had the potential to go much bigger.
Eventually, I was contacted by some guys in India who wanted to act as agents to sell a license to OEMs in their part of the world. I agreed, and while pretty much everyone tried to con me out of my intellectual property and I earned barely a pittance for weeks and weeks spent tweaking code (this was not a good experience!), it still felt pretty big league for me at the time. I can say that I built And no one can take that away from me!
How to become an app developer today
So, If you want to know how to become an app developer, what can you learn from my experiences?
I made a lot of mistakes (which I’ll get to in a moment), but one thing I felt I did right was to employ a “fail fast approach” — essentially, I released the app a little half baked.
It sounds like terrible advice, but it works, because you don’t spend too long on an idea with no legs. Prior to Multiscreen Multitasking, I had made a custom keyboard, a game, a word counting app (this wasn’t always a built-in feature at the time), and lots more. None of these sold more than 20-30 copies.
If I’d spent a whole year on my word count app, I’d never have made Multiscreen Multitasking, and I’d have become disheartened really early on.
I see this so often with hopeful entrepreneurs and developers. They spend years living at home with their parents, working on a life-changing app idea. Very often they won’t even tell me what they’re working on, because it’s so revolutionary I might steal the idea (because I’ve got nothing better to do of course!).
Then they release their app/website/business and within two weeks they go bust. Some take out a ton of loans and spend a fortune on branding, legal advice, and bug testing, all without testing to see if anyone actually wanted their idea!
Becoming an app developer doesn’t have to involve moving in with your folks! You can build and learn while holding down a 9-5 (or at least while working online, as I did).
What’s in a name?
Another thing I did right was to give the app a name that sold itself. “Multiscreen Multitasking” is effectively a search term. If you want something that splits the screen to run multiple apps, that’s what you’re going to search for!
I did zero marketing.
This is 100% what made the app a hit, combined with finding that niche in the market. I did zero marketing, and really had no expectation that it would get as many downloads as it did. What also helped, is that the icon I used in the Play Store listing was literally a screenshot of it doing its thing. People could immediately see what my app did. The USP was right there!
The price is right
I stand by my decision to release the app for a one-off price. I knew from my experiences as a webmaster, advertising revenue doesn’t amount to much unless you have thousands of daily users. That’s rare for any app (how many apps do you truly use daily on your phone?). I knew some people out there might download the app and never even try it once! By charging a one-off fee, I’d still earn off them.
Finally: I was smart not to trust those agents I worked with. Fortunately, I had baked in a little kill switch into the OEM versions of the app, that would check for the existence of a file on a server, and if it found it, it would flip out and destroy the app. When my app appeared on their website with no mention of my name or business, it was easy for me to convince them to see reason!
Where I went wrong
Although this time in my life was very exciting – and I remember enjoying a huge boost in confidence (I finally felt like my hero, Tony Stark) – I was also incredibly anxious. It would only take the app to be removed from the store for some reason for my success to be brought to a halt. Likewise, there was nothing to say that the app wouldn’t just randomly lose momentum overnight. I was also sure it would be only a matter of time until Android introduced multi-window functionality natively (it turned out to take a few years).
Mine was the first app in the store to work this way, but it was also only a very short time before countless imitators joined the fray. Some worked better than my app, and were completely free. If you want to learn how to become an app developer, should you also learn how to protect your intellectual property, though in all honesty it won’t be worth your while.
Your best defense against imitators is to do it first, and do it best. I squandered that advantage. This is the advice of most Silicon Valley movers and shakers too. However, ask an investor to sign a non-disclosure agreement (NDA) before you tell them your idea and they’ll likely laugh you out the door. They know ideas are worth squat, execution is everything.
Ideas are worth squat. Execution is everything.
This apprehension also stopped me from going all-in on the idea. I was so sure it would become defunct quickly, I still spent 90% of my time freelancing. In retrospect, I could easily have leveraged that early success and given users a reason to stick around. Perhaps I could have turned it into a convenient suite of apps, or made the selling point an increased synergy between apps (I had already added a feature that would open a website in the drawing app for annotation, which I’m proud to say was a little ahead of its time!).
The ghost in the machine
The bigger mistake I made was in the code. I built Multiscreen Multitasking using just a little bit of self-taught coding knowledge, and I didn’t even use Java and Eclipse (the preferred method back then). Instead, I used a tool called B4A, which lets you code in BASIC. My only experience at the time was with a ZXSpectrum, a Tatung Einstein (anyone remember those?), and QBasic; so this was perfect for me.
I built Multiscreen Multitasking using just a little bit of self-taught coding knowledge.
However, if ever an application lent itself to an object-oriented structure (words that meant nothing to me at the time), it would be one that opens lots of iterations of the same app! Learning the official tools (Android Studio in this case) is by far the best advice if you want to become an app developer!
That might be nonsense to you, but you can probably understand my folly when it came to naming variables and functions. I had a terrible habit of calling them things like “JigglyWiggly” and “Cup” (normally if there happened to be a cup on the table). In other words, I had no system and would label things in a way that made them very hard to identify in future. Eventually, this gave way to a kind of internal logic so complex, it was almost its own language. I didn’t write a note of it anywhere either. The old random code was completely obtuse.
Honestly, a serious programmer would have a heart attack if they saw the code. If I decided I didn’t need a function anymore (which remember would just be written in-line in my script), I just left it there to rot. I didn’t even delete it! This meant when I had to take a small hiatus from my app (my biggest writing client didn’t pay me for about six months, leading me to financial destitution – another fun story!), I had absolutely no idea how to get back in when I came back!
I’m a better programmer today. And this is an argument against going too far down the “if it works, it’s good enough.” Perfectionism can be just as damaging though. So, as ever, there is a balance to be struck.
It sat there and it rotted until it was eventually taken down.
As Google updated its tools with Android Studio, and its rules with Material Design, my old app just wasn’t adaptable enough to cope.
Also read: Android Studio tutorial for beginners
So, it sat there and it lost traction until it was eventually taken down for using an image that I didn’t own the rights to in the store listing (the background I had on my phone at the time). Again, not my best move!
While Multiscreen Multitasking is no longer for sale and I perhaps missed an opportunity, I still don’t consider the experience to be a failure overall. For one, it was an experience no one can ever take from me. I’m extremely proud of the app, from the initial idea, to some of the features, to a few resourceful ways I managed to achieve things with limited coding chops.
I still don’t consider the experience a failure.
Moreover, it led to a ton of subsequent opportunities: creating more high profile apps, working for Android Authority, and even getting a book published. It also helped me to develop my skills, and taught me valuable lessons that have helped since. I would recommend trying it to anyone.
How to create a successful app today
If you want to enjoy success on the app store and become an app developer, what should you do differently? For starters, write good code you’ll be able to return to.
Find a pain point and fix it — ideally, one people will be searching for. Don’t spend too long working on one app, and choose something relatively simple for your first project. People who have never built an app before shouldn’t be creating cloud-based services with security issues and other complications. They should make calculators.
Don’t miss: How to create non-game apps in Unity
But you might also be wondering what you should do differently today versus back then? It’s a well-know fact that most of the big money is now in the freemium business model. And with significantly more crowded app stores, it’s not so easy to get noticed with a simple keyword and stand-out USP.
That said, I also wouldn’t recommend trying to emulate the strategies of the biggest app developers. Release an app with ads and you’ll have a hard time getting enough regular users to make much money. Likewise, monthly fees can be a tough sell for a small developer. Instead, my advice would be to build an audience for the app first. Do this through a website, blog, social media account, or YouTube channel. Either that, or find a receptive audience and become an established member of that community (be it a forum, subreddit). Now find a pain point that affects that audience, and look for a unique and exciting way to fix it. Focus on your value proposition, and maybe create some videos and blog posts that really sell the emotional hook of what you’re offering. My future apps will also be targeting iOS primarily, as people are simply willing to spend a lot more money on that platform. Not going cross-platform is simply leaving money on the table.
Do this, and combined with the easy access that the app stores give users, this will result in a lot of sales. But it still starts with a unique idea that will “sell itself” and learning how to become an app developer.
I hope you found some of my insights useful. Maybe they helped you set your own course for how to become an app developer. Be sure to share your own in the comments down below. What are you working on right now?