100 Days of Github

In recent times there's been a trend coming up, of having long commit streaks on Github. Be it for fun, motivational purposes or just out of boredom. In any case, I decided to also hop onto the train and try it for myself. In the following, I'd like to share my experience with you as to what helped me get through my first 100 day commit streak on Github.

An open source project

Github is a platform for open source projects, so to build up your commit streak it will obviously be a great help to either contribute regularly to or even maintain an open source project, or multiple projects. This has saved me a few times during my streak, because as Ryan Seys already noticed in his blog post about commit streaks:

Pull requests count for 1 contribution when you make them and another contribution if they are merged. If they don’t get merged, sorry, no second contribution.

So no need to directly send a pull request (PR) when you push, you can take your time knowing that your PR will also count as a contribution. Plus if you get promoted to contributor status in a repository, your merge commits (of other PRs) also count as contributions.

In my case, I contributed to a repository of algorithms, which you should go check out (pun definitely intended) and contribute to. This repository also has the nice effect that there's a near infinite number of algorithms to implement (combined with an equally large number of different languages), so you won't run out of things to implement and might even learn a new language.

A blog

Blogs are the medium of developers — it's through blogs that developer communicate and share their thoughts & ideas. So there is no reason why blogs (specifically your blog) should be excluded from your achievements as a developer, your commit streak.

Be it writing posts or just drafting them, adding microdata markup (which is what I did) or completely redesigning them, you will definitely profit from maintaining a blog as a developer and so will your commit streak. As you see a blog is key, not just for your commit streak, but for your existence as a developer.

Programmer's challenges

This is a topic for another post, but for now what I recommend you do is: Keep a list of interesting challenges to solve, they needn't be programming related, but most of them will be (hopefully). To get you started on your list I can highly recommend Jason Rudolph's Programming Achievements, Matt Might's course work assignments (especially the scripting language assignments) and of course the exercises from The Structure and Interpretation of Computer Programs (SICP). Of course, for this to be beneficial to your commit streak it needs to be in a Github repository, so no solving Project Euler problems ;-) !

Final thoughts

Beyond all this, the most important thing is you. Well not really, it's your ideas. They are what make your streaks possible in the first place, so they'd better be good ones. But I digress.

Just make sure you have fun and get over the first two weeks, those are the hardest. So with this in mind, onwards and upwards! 200 days of Github, hopefully see you then.