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! The problem is that so few people know how to become an app developer.
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.
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, 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 a kind of agent for my app 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, it still felt pretty big league for me at the time. 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. I did zero marketing, and really had no expectation that it would be a modest hit. 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 see right away that if they wanted desktop-style multitasking, this was where it was at!
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.
Is that how to become an app developer today? I think there’s a good chance it’s still a good option for smaller, independent developers — especially on iOS.
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). 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), then 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!
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.
So it sat there and it rotted 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 a failure over all. 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. I would recommend trying it to anyone.
The experience also taught me how to become an app developer, and that led to more creations, successes, and failures down the line.
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. You can learn how to build apps the right way here.
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.
Likewise, strongly consider using a flat fee as your payment method, unless you are providing a truly amazing service. The next time I release an app it will almost certainly be on the iTunes store where it’s customary to spend $5 or even $20 for something worth having.
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?