Recently I was involved in a hack-week with the company I work for. In advance staff submit their ideas to improve the environment, whether it be customer facing or internal facing, and the best are selected for anyone to work on. You choose which idea to work on and have little management oversight for 2 weeks. The final product may or may not be shipped, there are no requirements on how the solution is solved and very little guidlines to follow (just some documentation that must be filled out).
I’ve written before about the five weeks I spent as a developer and how I struggled getting outside my comfort zone, but the two weeks I spent were much more enjoyable. I got to work on a new implemntation (inside an existing code base, but with little more than some Active Record Models to integrate with). I got to work on what I wanted to work on, we were lucky enought to have the right spread of frontend and backend developers that I was able to focus on my strengths. I was involved from the beginning in the design of the implementation and happy with each architectural compromise; we ended up building our application into an existing monolith while other teams were trying to pry bits off of it.
While I’ve been programming on and off for years, I feel like I’ve not hit my stride until recently. I would sporadically spend weeks coding but never finish anything or feel like I made any progress. I would get frustrated and drop the project. In the past three weeks I think I’ve written more code than in the previous 12 months. I decided to test this theory by trawling through my git logs. In the last three weeks I wrote 1752 lines of Ruby, in the 12 months prior to that I wrote 769 of Ruby code I can track. There was a rather large backup tool I re-wrote in December last year for an old job, the statistics for which I do not have access to but it would be close to 1000 lines.
I’m enjoying the rhythm now and churning through a side project I hope to release soon. Stay tuned.