One Commit a Day

One commit a day. A lesson I’ve learned the hard way when dealing with long-term side projects.

The first push

You are starting a new side project. That new library, framework, cool app idea or just a hack you had in your mind for long time. Starting it is easy, as you find some spare time and kick off your editor of choice and start writing code.

I’ve done this some times, but then if having a full time job, keeping with your side project is very very hard. But to successfully build something useful, something more than a proof of concept, you will need more than just one evening.

Keeping up

It’s after some evenings working at home that I would say: “Today I will rest, I’m not working on my side project”. And this act will make that the next day I will be thinking again that I can rest another day. And rest I will.

The long streak of commits, progress and closeness to completion stops right there. It will be very hard for me to restart my work again. Stopping for one day made it harder to restart my work and delayed the whole project for more than a week.

I’ve heard many people have this problem and the solution is very pragmatic: A commit a day.

A commit a day

When you work on a side project you do it because you want to use your spare time to build something. It’s a project nonetheless so you still need some goals and motivation. I’ve found that stopping the regular work can kill your motivation and focus.

So I’ve proposed myself whenever I work on a side project, I need to advance something every day. I’m building an app now (shh, top secret), so I will work on anything related to it at least 20 minutes every day. It does not have to be programming. It can be updating a design, thinking of new features to add in the future, tweaking landing page, or actually coding.

This act of keeping up with your project makes it so that I will focus more on it, and I will not loose the sense of progression. Also if I will work on the project only during weekends I found that I never complete my goals so I’m frustrated after the weekend.

If I keep my thoughts focused in my project, even for a short amount of time every day, then coming back to it is more satisfying and I get more things done.

Ripley signing off

That’s the end of my ramblings. So lesson learned for me; keep doing something every day for your side project. A commit a day, the road to completion out of frustration.