Five Steps to Make Your First App
The five steps you should follow to make your first project — whether you’re a programmer or just curious.
Personal projects. It can be a very daunting idea especially if you’ve never made something of your own before.
After spending a whole year in programming classes and mastering all the different introductory components in your Intro to CS class, you still have zero clue on how to build something for the real world.
I’ve noticed this from a lot of people and is definitely something I experienced throughout much of my coding journey.
While having a solid coding foundation is very important, there is a whole world of other skills outside of coding that you need to be able to make a usable project that you can deploy out to the world.
In this article, I hope to share with you my advice on getting started with your first app and break down the steps so you can complete your first personal project effectively and efficiently.
Why personal projects?
Projects are crucial to building a resume and getting attention from recruiters. Not only that, but they’re a great way to gain experience and put your skills to good use.
Self-doubt and fear of failure often prevent us from diving into new areas that we may be interested in because we simply think we can’t do it.
But remember: everyone starts somewhere.
The best way to learn is to dive in.
Also, learning how to learn is a really, really important skill. Often times when you get hired, you’re required to learn a new tech stack. And with technology changing so rapidly, it is crucial for software engineers to be able to dive into new things and learn quickly. You won’t get anywhere if you’re afraid to try something new.
Step 1: Idea
The first step to creating your project is to come up with an idea and plan it out. That sounds really obvious, but it’s a step people often gloss over. It’s important to think deeply about all the components you want your project to have:
- Audience: Who are you targeting? Who would use your product?
- Features: What are the different components that the app must have? How will it function?
- Platform: Is this going to be an iOS/Android app? A web app? Multi-platform?
- Competition: Are there already similar projects out there? How can you differentiate yours from others? Why is yours better?
The last one is really only relevant if you’re building a project for other people to use. It’s totally valid to pick a pre-existing concept or idea and recreate it yourself, for example, games like tetris/snake or a basic reddit-like platform.
Step 2: Planning
The next step is to figure out what you need to be able to make this project. Do you need to learn a new framework or language? Need a certain library? Do some research!
If you do need to learn a new framework or language, I suggest taking some time to familiarize yourself with it. There are tons of online tutorials and courses at your disposal just one google search away.
Don’t forget to sketch out your application: What should it look like? How should users interact with it?
Thinking from the user’s perspective is really important as they are the ones who will be using your product.
Step 3: Scoping
It’s really easy to get swept away by a super exciting idea and oftentimes you’ll find yourself dreaming of creating this wonderfully advanced project. I’m not saying that you can’t, but definitely take some time to prioritize the features of your project.
You should think about the core features that need immediate implementation to result in a minimum viable product.
Improper scoping can lead down a rabbit hole of disappointment as you’ll consistently struggle to reach your expectations. This can be extremely taxing on your motivation and is oftentimes a huge reason why many people start a project and never finish.
Again, it’s not that you can’t do it, but learning new things can take a while and you’ll be more encouraged to keep going if you let yourself hit milestones more frequently. Save additional features for when you have the basics done.
Step 4: Coding
Once you have these 3 steps complete, you’re good to get started. Get started on building your minimum viable product, and once that’s complete you can distribute it for user testing and/or add the additional features you organized while scoping.
You’ll most definitely run into bugs and will get stuck, but that is perfectly normal.
Software development is a rollercoaster of emotions — but that’s OK.
Again, there are tons of online resources such as StackOverflow, documentation, and articles to help you out. Don’t let these minor hiccups discourage you from finishing your project.
Learning to debug on your own is an incredibly important skill that you’ll need and you’ll thank yourself later for not giving up during these projects.
Step 5: Share and get feedback
Now that you’re done with your initial project, it’s time to show it off! It’s ok if it’s not perfect or what you were exactly imagining. You can always make it better.
Don’t be afraid to receive critical feedback as those are the most useful comments you can get for self-improvement.
Remember: when you’re building a product, it’s all about the user.
Deploy your web application to a live server or publish your app onto the App Store. This is the best way to receive feedback and, of course, showcase your hard work — you should be proud!
As you’re doing this, think about what you can improve on or what more you can add. If you find a bug or some new feature you want to add after getting user feedback, revisit the previous steps, and do so.
And here you have it — my five steps on building your first project. It really isn’t as difficult as it may seem, and you’ll realize this as soon as you jump right in.
As I mentioned earlier, many challenges are likely to arise and it takes persistence to go through with an entire project. Just push through and I guarantee you’ll have a wonderful app done within a month or two.
Happy coding! :)