New Year’s Resolution — At Least One GitHub Commit a Day in 2024
Deadlines Equals Progress
In 2017 ago I wrote a post on Medium “One Hour of Side Project Coding a Day* — a New Year’s Resolution Worth Making” and it really seemed to strike a chord with people. Now, over 6 years later I’ve a new resolution with the same goal — be more productive in side projects. A side project is something unrelated to your day job, something personal like a game or website, or a solution for a charity. Something that needs to be done out of hours, most likely late in the evening when all other work or parenting tasks are done.
So, what’s the resolution this time?
To have at least one commit to GitHub each day in 2024
For those who may not know, GitHub is a site/tool (owned by Microsoft) used industry wide to save & share code; while I’m over simplifying, it’s basically where to backup your code in case anything happens to your machine, and to allow you to collaborate easily with others.
One nice feature is that GitHub shows you a little calendar, one grey box per day, where the boxes turn different shades of green when you ‘commit’ (save / contribute) code. The darker the shade of green, the more commits / contributions that day.
Why?
Experience has thought me that the best way to accomplish something — be it a project, a personal goal, a well made and multi-course Christmas dinner — is concrete deadlines. Without deadlines it’s difficult to focus and prioritise, whereas if you know that each Monday at 4pm you have a demo to your stakeholders, you’re much more likely have something to show them.
My theory is that if I need to save some code every day, then I’ll be infinitely more likely to accomplish more this year, as I can’t just commit random code, it needs to be actually something meaningful.
And by splitting the work into smaller pieces, it will all become less daunting and manageable. Like death by a thousand cuts, this will be apps by a thousand commits. Well, 366.
What will I be working on?
Like any self respecting independent creator, I have way too many projects on the go at once, all at various stages of development.
Currently live and in need of maintenance and content:
- Https://www.NOadsHERE.com — my site with, eh, no ads. For movie & tv reviews and recipes!
- Boxapopa, my kids’ iOS game!
- An app, website and backend for the Streetlink homeless charity in Dublin.
- Fluid Heart Tracker — iOS and Android charity apps for elderly heart patients to monitor their wieght.
In the works:
- Android version of my kids’ game!
Projects I have actually bought domain names for but haven’t actually started yet:
- A game based on some superheroes I made up with my kids!
- A new website to help people make apps when they know nothing about making apps!
- An AR shooting game!
What could YOU work on?
Anything! It doesn’t need to be coding — you can use Github to store any information really:
- A novel!
- A guide to the wonderful world of insects!
- 366 Hotdog Recipes!
- A record of your marathon training — one commit for each day of training!
- Really, anything!
How is it going?
Almost two weeks in, and I think it’s working already — I’ve started that long pondered Android version of my kids’ game and while in the past I’d been put off by the sheer scale of the project (the iOS version probably took me a year!), now I’m doing a little bit each day. Last week, while waiting for some eggs to cook I added a button to the app’s home screen and the function to move to another screen when the user hits it. Just about 5 mins of coding, but now my app can move between screens — and before I started this challenge, I don’t think I would have been coding while boiling eggs.
Could this affect my actual day job?
We obviously don’t want the work that actually pays us to be impacted — but here’s my work Github record so far also:
Double the personal contributions and I do way more than coding in my day job, so we’re looking ok for now!
Is there a danger of burnout or overworking?
I’m always wary when I talk about things like this that folks may think it’s toxic, or putting unrealistic burdens on people. I think however that the “rule” — at least one commit each day, actually gives more flexibility and control. By splitting the work up into smaller chunks, I’m less likely to have to spend exhausting all-nighters as bigger deadlines approach. That day I committed some code while cooking eggs — that was all I did that day, but I still had that nice green box to look at, and a small sense of accomplishment!