Reinventing Building the Wheel

posted Sunday, August 10th 2014 at 12:02 AM by


Harry, a good friend and colleague of mine used to emphasize that life was all about balance. We used to write software together, and balance definitely applied to the projects we had.

There's two polar extremes. First there is the foundation level, its important to know how to write code from the ground up. How to design and architect a system, plan the project, and write code to get the job done — all from scratch.

The second, is re-using code and leveraging tools and frameworks so you have to do as little of the first thing as possible.

It's important to understand how something works, fundamentally. Whether that be a programming language, a platform, a system, framework, etc, its critical to know how to build a wheel. To use something without understanding how it works is reckless. At the same time, if you're chiseling wheels out of stone for every project, you're missing out on the power of leveraging tools to make the job easier.

Like Harry would say, balance.

Sometimes, balance is hard. Its forged though experience, hard work, and dedication. Peter Norvig said it pretty well, you need to put in your 10,000 hours. Spend time becoming an expert in your craft.

Homebräu, the CMS I wrote for my website, is an example of that. This site has been in operation since 2003, but not too long ago I tore the entire thing apart and re-wrote it in PHP. It doesn't really do anything that another CMS (Wordpress, ExpressionEngine) doesn't already do - it really is re-inventing the wheel.

Why? It would have taken much less time to just download and install a CMS. It would have saved lots of hours to just skin a Wordpress theme, but that wasn't the point. It was important for me to reinvent building the wheel. I needed to sharpen my skills and to understand the foundation. I'll still make tweaks and updates to the Homebräu code base, to try new things and to stay sharp, but the next project will use an off the shelf CMS. Because now that I've reinvented building the wheel, its important to keep that wheel rolling. The only way a wheel can roll is with balance.

Share This:



View (0) Comments Post a Comment
  • Replying to Adam Konieska on Reinventing Building the Wheel