10m Read
6/2/2022
I want to be an indie developer more than I've ever wanted anything.
In 5 or 10 years when it's all said and done I want this blog, my content, devlogs, and products to be a roadmap of HOW TO or HOW NOT TO become an indie developer.
On May 1st, 2022 I began a journey to build a complete desktop app in 30 days.
So you want to build an app in 30 days? Let me give you a detailed break down of how I did it so you can too.
Take the best of my experience and take note of my mistakes.
When you finish reading this you'll have a few new tips, tricks and methodologies to help you build and launch your next app in just 30 days.
We'll discuss...
⭐️ Why I built it
👥 Who I built it for
⚙️ How I built it
💻 Tech used
🌎 Marketing/Community
👎 Mistakes
👍 Wins
😥 Emotions
🤔 Was it worth it
For each topic, I'll rate my performance from 1 to 5 and offer a key takeaway to help you build your next app in 30 days.
Before I start, I always ask why. What's the purpose of this?
I turn the answer into 'pillars'.
Pillars form the core experience of the product and make difficult decisions simple.
They are guiding principles for every aspect of the product's life.
Here were my pillars for Timeva.
Rating: 5/5 - I knew why I built Timeva and my pillars guided my decisions every step of the way.
Takeaway: If you don't know why you're building, stop immediately and create your pillars. They will guide you through every difficult decision.
Time to let you in on a secret. A secret I consider a major edge in product development. One of my overarching pillars as a creator is that I build for myself.
Why is this important? Because it means I am a user and I understand the problem I am trying to solve intimately.
Unless you are a doctor or a therapist I don't believe you can optimally solve a problem you don't have yourself.
I built it for myself and other engineers, editors, and creators that know that active time management is a pillar of success.
Rating: 3/5 - My target audience was clear. I gave myself a 3/5 here because I didn't validate that my audience WANTED to use what I was building.
Takeaway: After you know why you're building, focus on the people you're building for and MAKE SURE THEY WANT WHAT YOU ARE BUILDING.
This is the most important section of the blog. Without these 5 actions, I wouldn't have been able to build Timeva in 30 days.
As you read these keep in mind, success is more about what you don't do than what you do.
How I built Timeva in 30 days can be boiled down to 5 actions.
1. RELENTLESSLY trim features TO THE BONE so that the app is a true MVP
2. USE TECHNOLOGIES YOU KNOW and only use new tech if the time ROI is clear
3. DON'T WRITE TESTS, BE THE TESTS. I used the app EVERY TIME I added something new. I've essentially created a 'new' testing methodology called AUYA (Actually using your app). Most engineers don't actively use the product they're building.
4. DON'T TAKE IT EASY. This is difficult, but I kept the gas pedal on 90% of the time even when feeling depressed and low. It is hard to express how important consistency is.
5. WEEKLY REFLECTIONS. Every week I looked at where I was and where I needed to be. Consistent reflection moves us IN THE RIGHT DIRECTION, FASTER (velocity). Notice how this blog post is a reflection in itself.
Rating: 5/5 - I made the right sacrifices at the right time and successfully shipped in 30 days.
Takeaway: Trim features to the bone, use tech you know, be the tests, be consistent, and reflect often. Nothing in this blog is more important to launching with a deadline than these 5 actions.
The tech you use doesn't matter.
What's important is your tech selection process. Why did you select this tech over that tech?
My tech selection process is simple.
SPEED OVER EVERYTHING.
I used...
- Macbook pro 2019 model
- VScode
- Electron
- Vue.js
- Pinia
- Gumroad
- Carrd
- Canny
- and more
Rating: 5/5 - When you want to ship something quickly, speed and ease of use should be the primary drivers of tech selection.
Takeaway: If you want to build and launch an app in 30 days, you must prioritize speed over everything. Select fast and simple tech that you know intimately.
Like most engineer first product builders, marketing is my weak spot.
In general, it's something I'm actively working on and have made great progress on over the past 2 years.
More details on marketing as an engineer in another blog.
For Timeva, I created a marketing strategy where I would build in public and share my progress.
I setup a prelaunch landing page and captured email there.
I shared my progress to Twitter, Indiehackers, Youtube and Instagram.
Overall my top level strategy was decent but the execution, planning and consistency was poor.
Specifically, I largely underestimated the time it would take to start, film, edit, and release Youtube videos.
I then ran into several 'max tilt' and 'day ending blockers' learning how final cut pro optimizes media for playback performances.
Attempting to code and market an entire app in 30 days while creating full length Youtube content was my greatest victory and simultaneously my biggest mistake.
That being said, I'm super glad that I pushed through and delivered 10+ detailed, authentic, ASMR like devlogs that were all 20+ minutes in length.
Building an app in 30 days was a great way for me to kick off my Youtube channel and to JUST START creating content on the platform.
Rating: 2/5 - I did not predict, plan, and execute properly. I'm giving myself a 2/5 because I did launch 10+ devlogs in 30 days and kicked off my Youtube journey.
Takeaway: Create a concrete plan to share your product and stick to it. Don't try to launch a new marketing channel you don't know the time cost of while you are building an app under a deadline.
Mistakes are hard learned lessons that I believe the indie developer I want to be would not make.
Each mistake is important to call out because they cost significant time and energy.
As an indie dev time and energy are THE MOST IMPORTANT RESOURCES.
My top 5 mistakes were...
1. Misjudging the time and energy cost of coding, marketing and creating Youtube content
2. Lack of a concrete plan to share my progress
3. Lack of a concrete 'product launch' plan
4. Letting my personal life affect my focus
5. Wasting time doubting myself
Rating: 3/5 - My mistakes did not kill the release date, but caused significant, unnecessary pain.
Takeaway: Understand that the time cost of trying new things is UNKNOWN. Limit your time and energy to the most important things and don't let your personal life impact your focus. Create a concrete plan to share your product and stick to it.
Wins are actions I believe the indie developer I want to be would do.
My top 5 wins were...
1. Successfully shipping an app from the ground up in 30 days
2. Trimming features and using great tech to ship faster
3. Launching a dev focused Youtube channel to connect and share with others
4. Creating an app I love using (I'm using Timeva to timebox writing the rough draft of this blog)
5. Thinking long-term while acting in the present
Rating: 5/5 - No complaints here.
Takeaway: To generate wins, align your actions with your pillars.
It might be weird to see an 'emotions' section, but I think personal well-being is above all.
If you arrive at your goal and you feel like shit 24/7 did you really arrive?
How you arrive at your goal is just as important as arriving.
Without diving into the deep details of my life the journey had the following emotional flow.
Week #1: Excited + motivated + focused + driven + consistent
Week #2: Neutral + focused + consistent
Week #3: Depressed + unfocused + sad + low + consistent
Week #4: Neutral + focused + consistent + aware
Week #5 (Mon, Tues): Excited + nervous + focused + consistent
Two important things to note
1. Started and ended with positive emotions while week #3 was the hardest.
2. My consistency and habits pushed me through all emotional states.
Rating: 3/5 - I definitely could have managed my nonwork life better during this time.
Takeaway: Emotional ups and downs are natural but if they impede your progress, address your nonwork issues first so you can focus on your product.
A great way to tell if something was worth it is to ask: Will I remember this in 1, 3, 5, or 10 years?
If the answer is no, you're probably relaxing or wasting time.
Will I remember building and launching Timeva in 30 days? Absolutely.
Thanks to Timeva, I am one step closer to becoming an indie developer or finding out I don't have what it takes.
Either way I think that's pretty cool.
Take my successes and failures and start building your next app in 30 days.
Follow along the journey however you like and feel free to connect on any platform.
In success or failure, I'll talk to you in the next one.