How my app helped me build my app
Tags: webdev, productivity, development, programming
Published: 2024-01-30 22:25:05

#### Running hurts my knees but also helped me generate my app idea.
In 2023, I ran my first marathon.

&nbsp;

In 2022, I ran my first 5k.

&nbsp;

And in 2021, **I HATED running.**

&nbsp;

I know hate is a strong word, but it’s true. I used to look down on people who ran.

&nbsp;

- “Don’t you know the injury risk?” 
- “What happened to the first person who ran a marathon? Didn’t he die?”
- “Running on a treadmill? Don’t they use those on prisoners of war?”
- “Going for a run? Why don’t I take a hammer to your knees for 30 minutes?”

&nbsp;

 … were some of the nice thoughts I had towards runners.
 
&nbsp;

Unfortunately, being a software developer meant being sedentary for many hours of the day. This led to an inactive lifestyle and an unhealthier me. 

&nbsp;

It seemed like my health wasn’t too bad until I bought a scale, stepped on it, and saw **200 lbs - a 40 lbs difference from when I started my career.**

&nbsp;

Something needed to change, and that thing was me and my health habits (and weight).

&nbsp;

To start, my supportive girlfriend and I decided to sign up for a 5k.

&nbsp;

Since I was making fun of running for the previous years of my life, I needed to figure out how to run one.
### What it takes to run a 5k

Run for 30 minutes.

&nbsp;

If you can run for 30 minutes straight, there’s a high chance you can run a 5k.

&nbsp;

Couch to 5k (C25k) is a popular plan to help a person who has never ran before to run a 5k, and it’s the plan I used to train for mine.

&nbsp;

It sets up a schedule for you to do from Monday to Sunday and tells you how many minutes to run and walk each day.

&nbsp;

Although the mileage and distance differ from the plan to run a 5k or a marathon, the system is the same:
**Set aside time each day, do the mileage whether you like it or not, and check the box.**

&nbsp;

As I was spending all my time running, I had a lot of time to think.

&nbsp;

I wanted to start programming more in my spare time to help my skills, but I was never very consistent at it. I wanted to make a habit out of it.

&nbsp;

One of the ideas that popped into my head was this: can my running plan I use be the same as a programming plan? **Can I create a plan that would tell me how many minutes of programming I needed to do each day, and mark each day off as I complete it?**
### The Programming Plan

&nbsp;

I started with a simple Excel spreadsheet and started doing exactly that.

&nbsp;

When I first started out, I would create ‘challenges’ for myself and try to build an app on the days I had 60 minutes (like Who’s That Pokemon or Hangman). Other days I would spend planning out what I wanted to build, and it would take me a a little longer. Either way - the important part was that I was programming and creating a habit out of it.

&nbsp;

During one of these “mini-hackathons”, I thought back to my programming plan I created.
I thought “**What if I created an app around that?**”

### How Flowmodoro helped me create Flowmodoro

&nbsp;

I replaced my manual efforts with an Excel spreadsheet with a database. I replaced my timer with a frontend application.
But as I worked on it, I thought of other ideas to make it better. 
- How do I deploy this? 
- What if I had authentication so other people could use it? 
- What if it was a circle timer instead of numbers? 
- What if you could set different times for each of the days of the week? 
- What if you could add stats and see how much time you spent each day? Each month? Each year? 
- What about badges for reaching milestones?

&nbsp;

I followed my minute timer app which helped me build the app itself.

&nbsp;

**Thus - flowmodoro.com was born.**
### Helping others
Flowmodoro helped me become a better programmer, and I hope that it can help you in your area of expertise too.

&nbsp;

Do you want to write more? Read more? Create a study habit? Become a better programmer yourself? Then you better put the time in.

&nbsp;

And I hope Flowmodoro helps you do exactly that.