My Weird 2020 as an Indie Developer. With Charts.

Michael Forrest

5th October 2020

I quit contracting back in 2019 because I thought I had a shot at boosting my side-projects to a level I could live on.

Back in January I reported on my six-month progress.

When I looked at my data I realised I was trying to do too many things.

I started 2020 with a new attitude: One thing at a time.

I released an app that still hasn't taken off. But an old app took off in a big way, so it sort of balanced out.

I do a lot of self-tracking so I want to start by showing you my charts.

(Almost) Everything I Did in 2020

I have plotted my work, daily habits, mood, sleep, exercise and weight against my app sales. Here's how my year looked to start with.

At the start of 2020 my app sales were low, but not zero. My focus had been spread but it was time to narrow in on one or two projects.

L18n and Good Habits

I had concluded that one app was selling because I had localised its app store description into multiple languages.

So I made my first task to localise Good Habits. You can see that work in orange in the timeline above.

I released the localisation and nothing happened.

Still, I didn't spend all that much time on it so no big deal.

Report Card 2020 Q1-Q3

Good Habits

Hours Worked This Year16
Total Revenue $131.54
Effective Hourly Rate $8.22
Grade C-

Releasing My New App

I spent the rest of my time working on my big project "Changes", aiming for a release by the end of February.

It's a mood tracking micro-journal. With augmented reality data visualisations. It was challenge to design (I got some help) and build.

I released Changes on the 14th March. I sold a few copies around launch but I always knew that this would be a slow-burner.

I've spent as much time on marketing as I have on writing the code for Changes.

I saw a good talk about how to do marketing "without feeling sleazy" and used Chris Zukowski's advice as a jumping-off point.

I didn't want to pay for Mailchimp so I rolled my own emailing tool that lets me send the same sequence of emails to each new person who signs up. I created a "Lead Magnet" in the form of a downloadable PDF called Tracking Happiness.

I created a video that explains the value proposition pretty well. But this came several months after the initial release as I had to implement another whole screen before I could make it.

I created YouTube tutorials explaining how to cross-reference the data recorded in my app with other sources using Google Sheets. I covered Money vs Happiness, Sleep vs Happiness, Happiness vs Exercise and My Happiness vs The Pandemic.

Just as I launched Changes, Coronavirus kicked off and something weird happened.

But before we continue, here's the score card for Changes. It's... bad.

Report Card 2020 Q1-Q3

Changes - Mood Insights

Hours Spent This Year 546
Total Revenue $139.35
Effective Hourly Rate $0.25
Grade F

So what happened?

I have this little app I threw together when spent a year alone in Berlin in 2015.

I spent three months live streaming two hours of live music every night. This sort of thing.

As I refined my set-up, I discovered that streaming video over AirPlay was surprisingly low-latency and a nice way to connect a camera to OBS, but I couldn't find a way to simply send the camera feed this way without seeing controls over the top.

So I threw together a quick app that showed the camera feed with no overlays and stopped the phone from going to sleep.

Since I hadn't been able to find anything to do this in the App Store, I turned it into a proper app.

I released it for sale at $2.99 and forgot about it.

I eventually made a video about streaming live music for my YouTube channel.

Then Covid 19 hit and a lot of people got interested in streaming live music. Live venues closed down and everything had to move online.

Suddenly my little app was in demand.

If you haven't yet, scroll the timeline above to see how my sales exploded. I saw a talk that said "charge more than you think you should" and bumped up the price, meaning my sales peaked at $309 in a day. Not quite contract-rates, but pretty close.

For the first time in months I didn't have to live off my savings. I even got to buy a new toy. I spent some money on ads and grew my mailing list to a few hundred subscribers.

I knew this couldn't last long though. It was a very easy app to make, and it wasn't long before at least one copycat app appeared.

I did make a few improvements once I started getting emails. It was easier to rebuild the app from scratch than to try to get the five year old code to compile again, and a couple of minor mis-steps resulted in some bad reviews as I didn't properly test the sleep-prevention feature before releasing. I released a fix in less than a day but it still hurt my rating.

I got a lot of people complaining that it didn't work with Zoom. But they recently added some new features which means it now works with Zoom.

As the sales kept climbing I fell into a trap of checking my numbers every day. This is dangerous because the App Store figures are released at a more-or-less random time of day. So my phone became the ultimate slot machine. Far too much of my attention was consumed with checking my sales and the emotional consequences of a rise or drop.

Now I don't look at my sales every day, I limit myself to the weekly email Apple sends. For my sanity.

Let's have a score card.

Report Card 2020 Q1-Q3

Shoot - Clean Camera Feed

Hours Spent This Year 18
Total Revenue $22,457
Effective Hourly Rate $1,281
Grade WTF?

Why Not Abandon Changes and Focus on Shoot?

Because I think it's important to follow through on a plan. To stick with an idea until you've done it justice.

I always knew Changes would be a slow-burner. There's no instant gratification. It takes time to change your life.

It's also still short of a couple of important features. And the Android version still isn't done.

There's a lot of work still needed to do justice to my vision for Changes.

Shoot, on the other hand, already feels like everything it needs to be.

And even if I wanted to start pumping it full of new features, my hands are tied by a promise I make in the description never to show any user interface controls.

But it's been bubbling away in my mind for a while and I recently (last week) thought of a way to add some new features without breaking my promise. Streamers are an interesting audience to start engaging with and I have some ideas on how to start doing this.

So after several months of feeling very conflicted, I'm excited.

But I just have to finish one thing before I focus on updating Shoot.


One of my finest achievements of 2019 was coming up with a sustainable approach to admin tasks.

I would time-box 30 minutes each day to work through my chores one at a time.

If something turned out to be time-consuming I'd pause it and continue the next day.

I didn't look at the whole list, I only looked at the next task.

In 2020 I generalised this to all of my work.

No longer was I drowning in lists of lists of lists.

I set daily targets for each of my projects and let my tool tell me what to do next.

After I released the first version of Changes I started turning my Coda prototype into a web-app that anybody can use.

Because I love it.

It's called Donegood and you can register to try it now.

I have spent 207 hours building Donegood so far.

If I can get some paying users then I'm no longer beholden to Apple and their 30% cut for all of my income. I can mitigate the laggy payment schedule (it felt like I had to wait forever between seeing my sales grow and actually getting the money). I can spread my risk. I can support other platforms.

So it seems sensible.

And because my bills are already paid I've been able to lavish love and attention on the details and iterate the design towards something as crisp and clean as possible.

I started making weekly update videos if you want to see how the app evolved week-by-week.

I have a free tier to start with so please, come and try it.

The Podcast

Before I go, let me cover the podcast. I spend a few hours every week recording and editing this thing so it deserves a mention.

The biggest news this year is that we have transitioned to full video episodes. We've discussed Burnout, Potential, Charity and Quantified Self. We have 140 episodes at the time of writing.

We've even got a couple of Patreon supporters now. We opened up our Slack channel to supporters. It has become intellectually intimidating but that's probably a good thing...

This score card is probably worst of all.

Report Card 2020 Q1-Q3

Michael & Ivanka's Grand Podcast

Hours Spent This Year 133
Total Revenue $15.54
Effective Hourly Rate $0.12
Grade Ouch

But we don't do it for the money and it's much cheaper than therapy.

In Conclusion

I don't really know what's going on.

I don't really feel like I can take ownership of the success I've had this year.

Not only is it from an app that I feel anybody could make, it's predicated on the biggest health crisis of recent history.

And it's hard to feel happy about something when you don't feel in control.

I'm hugely grateful that I got lucky on something, but I wish it was the thing where I put all my love.

Is there advice for you buried in this mess?

I could say "do what you love and the universe will eventually reward you". I made Shoot because I was following my musical dreams, after all. It took a few years but now it's paying the bills.

But I could equally say "if you want money, don't try to be an inventor, don't try to do something good for the world, just find a mundane gap in the market and fill it".

I should add that it's very important to create the right conditions for success. If I hadn't taken so many steps cut my living costs then I would barely have noticed these sales.

But it's all utterly subjective - a tangle of goals and privilege, money and meaning, vision and dumb luck.

So all I can do is give you all the data I have and let you draw your own conclusions.

I put lots of time into the timeline above. You can hover (or tap on mobile) to see details for each day. I hope you enjoy playing with it.

If you want to discuss, I've posted this article on Hacker News and Reddit.

Appendix: How I Track Everything

Get your free book

Sign up for my newsletter to get weekly tips on mood tracking, happiness data analysis and forming better habits.

I will send you a copy of my eBook about mood tracking.

Find out more

indicates required