How to Launch an App in a Week.
A look at my process as a solo-preneur.
“Vision without execution is hallucination.”
There is an overwhelming amount of “Entrepreneur Porn” out there. My favorite are the targeted Youtube ads. They seem to get lower budget with each copycat who thinks they can sell a get rich quick system. And then there’s my guilty pleasure: Shark Tank. By the end of an episode, I’m all worked up, ready to quit my job, lease out a commercial kitchen, and make a ton of money as an entrepreneur selling subscriptions boxes of my organic gluten free granola bars with CBD oil in them.
If you can’t tell by the buzzwordy title — This article is mainly just that, an entrepreneurial fantasy. I’m hoping however that some of you use it as an inspiration to just ship something. It doesn’t have to be perfect. Take a look at my process, make notes, and tailor it to your needs.
In order for this to be an actionable list for you, I am making two pretty big assumptions about you, the reader:
- You know how to program already and maybe even have a little design experience too. (e.g. you have worked with sketch.)
- Your idea is software. (mobile or web)
Step 0: Picking an idea.
I also think it’s fair to assume, if you’re reading this post, you probably have a ton of business ideas too. It’s overwhelming trying to pick just one to work on. I am very guilty of starting to work on one project, only to abandon it for the next newer, shinier, more profitable idea that comes along.
Here’s a my unsubstantiated belief about starting start ups and making apps: If you are focusing on the money — I think that you are an outlier if you even get past the dreaming phase. Most people drop off after a couple of quick and dirty financial spreadsheets and a few initial mockups.
Here’s someone way more qualified than me on the topic:
If you didn’t watch — the basic premise is to focus on making a meaningful contribution to the world rather than focusing on making money.
Guy Kawasaki, then gives us three motivations to make meaning:
- Increase the quality of life
- Right a wrong
- Prevent the end of something good.
So here’s what you do — pick an idea that comes from one of those three motivations*. With one small caveat. Remember, we want to launch in a week. The only way that we can build something in that timeframe, and have appropriate user feedback is if you yourself are the customer/user. Pick an idea that you will build for yourself. And don’t focus on making money. Focus on fulfilling one of your own needs.
Now the not so fun part: Search for that app on the app store. You inevitably will find something that “occupies that niche”. Someone has probably already built something similar. Don’t let it crush you. Instead download all of the apps that you find. Start using them. If they are good, use that app! And go on to the next idea. If they need improvement, make notes and get ready. This is the idea you’ve been looking for.
My Idea
In my case, I wanted an app where I could easily track routine tasks that I have to do, like exercising, practicing guitar, watering plants. I want a daily task list generated for me from a list of routine tasks. Then once I complete a task I want that task to disappear from the list until it was time for me to do it again.
I went to the App Store and searched for ‘routine’. There were a ton of apps already on there. I actually started using one, then boom! Paywalled. $6.99 for an app? No thanks! I will build my own! (Yeah in actuality $6.99 for an app that makes you more efficient is totally worth it, but this is what I feel like building.)
Step 1: Name Your App
People will say naming your app isn’t important and instead you should focus on building. They’re right.
But here’s the thing, they’re talking about how you should do things, not how things are actually done. If I don’t have a name for my app, my monkey brain just can’t handle it. I’ll inevitably start thinking about names. So to stop my mind from wandering, I have to pick a name. I tell myself it’s a “working name” and I can always change it after I’ve built it. Plus, as an added bonus, it’s nice to be able to start thinking as your project as a named entity rather than some vague idea.
Here’s what you can do… we’re going to play a start up/product naming game. Here are the rules and how to play:
- Set a timer for 15 minutes.
- Write down every startup/product name you have in those 15 minutes.
- Put all of the names in a text document, keeping your favorite one up top as first on the list at all times.
- At the end of the 15 minutes, the one at the top of your list is your name. Remember you can always change it a couple of months.
Here are some tips and tools for coming up with a list of names:
- Don’t get creative. For all that is holy, don’t just add an “ly” or “ify” to the end of something. It’s so cliche and overdone at this point. If you do this I will judgify the heck out of you and not take your businessly seriously.
- Do keep it simple. Use a functional name.
- https://leandomainsearch.com/ and https://domize.com/ are great tools I like to use to find available names/domains. But DO NOT BUY anything at this point… unless you want to pay $12/year for every failed idea you’ve had. Seriously. If you do this: go to your domain registrar, channel your inner Marie Kondo, and get rid of all of those crap domains you don’t use.
My Name
Tap Routine.
Step 2: Mockups and Design
Great we have a name. Here’s where I assume you have a little design experience. But if you don’t good old paper and pencil will work for most of what is described in this step. The idea is that you want to build your app on paper prior to touching a line of code. It is way easier to change a design than it is to change code.
There are a number of great ui libraries out there. I highly suggest using Material as there is great sketch support as well as cross-platform support.
There are alternatives, I list them here: 2019 UI Design Library List
Also if you need icons I use both of these:
My Designs
Alright, at a minimum I knew I needed 4 main things:
- A create new task modal in which users could define a recurring task.
- A list of current tasks that need to be done.
- A Logo/Loading Screen
- A Task Detail Page with any notes and actions.
So I came up with something like this:
Yes it’s simple. Yes it’s the equivalent of a crayon drawing in the design world. But it’s done. That is literally all I care about until after I launch. Getting stuff done.
Step 3: Start Hacking
Okay I highly suggest using something like create-react-app
here (expo for react native or vue-cli for vue). Yes, you can do it yourself — but don’t fool yourself into thinking that you will make better decisions than the teams of engineers that make those projects… at least initially. Put simply anything custom adds time and overhead. We want to ship something fast, these boilerplate projects are a solid choice.
This is where a-lot of the magic happens. You really just have to hack away at this step. There are a couple of recommendations on how you build that I want to make:
- Build a local only version of your app. If you need authentication and a cloud back end your idea is too complex. Just focus on a bare minimum set of functionality that will serve as idea validation.
- No networks. If your idea is some sort of social app instead focus on the individual’s experience. For example: if I were building an Instagram clone. Instead of focusing on the ‘likes’ system or the ability to add friends. I would instead just focus on taking a picture and applying a filter to it.
- No rabbit holes. If you don’t know how to do something — don’t do it. Learning new skills are important, but they take up a lot of time. Try to use open source libraries that will get you 80% of the way there even if they’re not perfect.
The Result
Step 4: Publish
If you’re at this point and thinking, “Oh god, I don’t want anyone else to see this app” that’s the perfect time to publish it. Don’t start charging money until you’re no longer embarrassed by it. Get that feedback from users as soon as possible.
The App Store
Next Steps
Okay so theoretically you’ve scratched your own itch at this point with your app. Now use it. Make notes of what bothers you and next week, it’s time to iterate, go through the same process again. Or go onto the next idea, you choose based on how important it is to you. Maybe you’ll get lucky and other people will start using it, maybe not — at a bare minimum, you’ll have something useful to you. Don’t discount that.