We’ve all been there. We come up with grand ideas for an app, daydream about how it’s going to make us into millionaires, start making it on the fly — only to shelve it.
Why? Things probably came up. Things like life, children, friends and that latest show on Netflix you just have to watch. Besides, you’ve still got work — you know, that thing called a day job. Those bills aren’t going to pay themselves, after all.
But that’s not the point. You probably stopped working on your app because you’ve hit a roadblock. Roadblocks are never fun; doing everything else is. So you tell yourself that you’ll come back to it — except you never do.
3 Steps to Finishing Your App
- Figure out if you’re making your app for the right reasons.
- Start with the end in mind.
- Modularize your app — and your learning.
So how do you prevent this from happening? How do you finish that app you’ve always wanted to make? Here’s a three-step guide on how to get it done.
1. Figure Out If You’re Making Your App for the Right Reasons
If you’re only excited over what the app is going to do for you financially, then you probably shouldn’t make it. Sure, making money is great, but not all apps are lucrative. Profitability takes investment, marketing skills, community building, and (often) a great deal of luck. All that stuff is part of building a business, not making an app. Ignore the glitz, glamor and delusions of grandeur. What does your app actually look like? What does it do? How does it work? If you’re not excited by that, then this is probably not the app you’re destined to make.
2. Start at the End
If you’ve ever worked on a team-based project, you’ll know there’s more to the product than just coding. You spend a majority of your time trying to figure out what the project is, how the features work and how all the pieces fit together. Plus, there’s a project manager to make sure everyone stays on track.
Making your app is no different. Only, this time, you’re a one-man band.
As developers, we tend to sit at the end of the software-making process. The work to produce our briefs and specifications is generally done by ... someone else. By the time the product gets to us, the expected outcomes are clear but when you’re developing your own app, it’s all on you. You’re the visionary who comes up with the idea, the product manager who determines the best course of action to move forward and the designer who decides how things should look.
Knowing your destination keeps your app from going off the rails.
To finish your dream app, you need to go through the same process as you would on a team including market research and UX design. The more you document as you go, the clearer understanding you have of what your app will become. Avoid flying by the seat of your pants. It might seem tedious, but these steps eventually build a roadmap for your app’s development. The process will help you clarify your ideas, raise questions and solve problems along the way. You’ll also figure out how to build your app in the most efficient manner.
When you make up code as you go, it’s generally a recipe for long-term spaghetti-and-meatball-level disaster. It’s the reason we have tech spec docs. While you don’t have to go full hardcore pre-documentation with everything, knowing your destination keeps your app from going off the rails.
3. Modularize Your App and Learning
There’s a good chance there’ll be gaps in your knowledge. You’re not going to know everything you need to make your app, which is where modularity comes into play.
When you modularize your app, you can modularize your learning.
For example, you might be a front-end developer. You already know how to make interfaces but making an API isn’t your strongest point and a section of your app requires authentication integration. You’ve never done it before and you feel out of your depth. Rather than becoming overwhelmed by the task and shelving your app, reframe it into a learning module.
Your app will be filled with these kinds of tasks that highlight your experience gaps. This is part and parcel of being a developer who’s consistently upskilling — and part of the process of becoming a full stack developer.
Game Plans Can Change
So you’ve made it halfway through your app. Then one day, you sit back and realize you’ve got it wrong. Rather than becoming disheartened, know that game plans are allowed to change.
Essentially, that’s what refactoring is: the act of improving your application based on newly discovered knowledge, pivots in your original ideas and briefs.
When you refactor, don’t get overly attached to your code. It’s a sunk cost. You’ve already paid for it with your time and gained knowledge and experience in return. You don’t have to hold on to it if it’s not necessary.
Remember: It’s Mostly the 80/20
Making an app is a process of turning ideas into reality. When it comes to completing your app, 80 percent of your time will be spent on everything that’s not creating your app: planning, designing and learning. This is the stuff we tend to overlook. Coding should be the last thing you do in the entire process.
Jumping right into coding your app without a plan is like building a house without a blueprint. It’s not good practice, nor will it produce a robust piece of software in which you can take pride.
So map out your features, figure out what you want and how you’re going to do it. Only then should you start coding.