A codebase with many active contributors grows and evolves like an organism. File systems that store code are shaped like trees, and all of the changes that happen over time are akin to organic growth and decay.
On the sixth anniversary of the Hootsuite’s codebase, Specialist Engineer Bill Monkman spent a weekend building a beautiful visual artifact that conveys those organic qualities and much more. Using Gource, Andrew Caudwell’s amazing code repository visualization tool, Bill has given us a macroscopic, time-lapsed view of every change, big or small, that has gone into making our product what it is today.
For those of us who have been fortunate enough to be a part of the team that builds Hootsuite products, being able to see our codebase grow up from its humble beginnings is a moving experience. Now with over 10m users, Hootsuite engineers get to work under the hood of a codebase that runs on hundreds of Amazon instances, and processes millions of social messages every day.
In this video, we are able to see not only how our code has changed but also the evolution of our team. We see some of the major technology decisions we’ve made along the way (and their consequences). We see big wins, and even a few things we might have done sooner or a bit differently.
When we showed this video to people outside of our team they also saw something of the beauty in a large codebase evolving over time. So, we decided to share it more broadly with our technical community and spark some conversation.
What we hope is evident is that software engineering is not just about putting headphones on and going into the zone for protracted periods of time. While there is some of that to be sure, we believe that building software is a team sport and a creative endeavour, the output of which has a life of its own.
About the Author: Geordie Henderson is the VP of Engineering at Hootsuite. Follow Geordie on Twitter @geordie_h.