When we all start learning app development, there is a primary reason: to be able to develop and publish apps. Once you have some lessons, tutorials, and books under your belt, the nagging questions start:
How much do I need to learn?
What are the things I absolutely must know?
What are the right decisions? The best practices?
What if I haven’t learned the right thing yet?
WHEN AM I READY?
BREAKING NEWS: There are no gatekeepers. There is no group of anointed gurus who will look at your learning, see that it is good, and decree, “Yes, you may now develop apps.” The good news is that if you are asking this question, the answer is simple: now.
The first step is picking a problem that inspires you to build. This is different for different people. You may have an idea for an app all ready to go. Build that. You may be one who sees cool things in other apps, and wants to learn how to replicate those. Build that. You may be one who wants to replicate existing apps to understand things. Build that. Your emotional attachment to the problem will help you push through the times when the development gets hard.
What do you do when the development gets hard? When you feel like you have no idea what you’re doing, and you’re questioning why you ever got into this? That’s your signal that you need to switch back to learning mode. Search for answers in your favorite forums, look for tutorials and sample code to help you out, buy tools or components that can help you do new things, find a support group of other developers doing the same thing. Just as there are many ways to get stuck, there are many solutions to getting unstuck.
You don’t stop learning once you start writing apps, like a task you check off. It’s a continual, rhythmic process: you do until you cannot, then you learn in order to do some more. The more you do the cycle, the more the cycle becomes familiar.
Let’s shine a light on the elephant in the room: you will make mistakes. You’ll write bad code, you’ll make ugly interfaces, you’ll make bad choices. You’ll look back on your apps from this time and laugh. The image to the right is an old screenshot from an early version of an app I wrote to track bowling scores. It’s cringeworthy now, but it’s part of the cycle of building something rough, learning a better way to do it, then fixing your mistake. So often, you can’t get to the right way to do things without making the mistake in the first place.
If you have matured enough in your studies to be asking if you’re ready, you’ve already got that pent-up motivation and “just enough” knowledge to carry you through your first app. Get started.