Why Do We Do It?

Why does a painter paint? Why does carpenter build? Why does a chef cook? Why does an electronic engineer design, and why does a software programmer code? Speaking from my personal experiences, I'm going to answer those questions with this: to create something out of nothing. There is an art to conceiving an idea and, when using the right tools, bringing it to fruition.

I studied Electronic Engineering (EE) in school, learning the very basics of what makes good hardware design. I put together resistors, capacitors, transistors, operational amplifiers, microprocessors and more onto breadboards and, in turn, observed the miracle of my creations. It didn't stop there—next came the programming of such devices, writing microcode and eventually "operating systems" in their simplest of forms (using a lot of assembly language) to extend the functionality of my creations. The hardware gave these "creatures" life, but the software gave them brains. The excitement. The thrill. The adrenaline of never knowing what to expect. Was there a flaw in my design? And if so, how will I address it? Will I need an oscilloscope or a JTAG debugger? This new sense of responsibility gave me purpose. It gave me the motivation to persist and move on to bigger and greater challenges.

It's almost two decades later, and almost nothing has changed. Today, while I tend to focus more on the software and a bit less on the hardware, I am still driven by the same emotions: the need to create and the desire to watch my creation mature. This has now extended beyond the confines of single board computers or embedded environments and across a wider ecosystem and living on larger networks. I now watch my creations impact companies, institutions and individuals worldwide. In my career, there is no greater feeling than this. And although I may not get the recognition for such things, it doesn't hold me back nor does it deter me from continuing. I am not in it for the money or the fame (although, both would be nice). I am more interested in the adventure and not the destination.

Now I ask you, the reader: Why do you do it?

Please leave your answers in the comments below.

Petros Koutoupis, LJ Editor at Large, is currently a senior performance software engineer at Cray for its Lustre High Performance File System division. He is also the creator and maintainer of the RapidDisk Project. Petros has worked in the data storage industry for well over a decade and has helped pioneer the many technologies unleashed in the wild today.

Load Disqus comments