A little over two years ago I got a MacBook from work. It was my first full-time unix machine, and while I’d played with Linux in the past I always used the package manager to get software. After getting frustrated with some of the Mac installers for php and mysql, one of my colleagues recommended compiling my own software from source.
One evening I went home and tried it and found it suprisingly easy. Before long I was downloading tarballs and git cloning and compiling code from source and beginning to understand what made Linux and open source so powerful. Any time I wanted to try something out, whether it was a new nosql database or the bleeding edge of PHP, it was a three-step process:
git clone ./configure make
I don’t know C. I can pretend, sure. But not actually knowing how to write it doesn’t stop me from downloading C code, compiling it, and getting it running. Sometimes
make blew up. So I googled the error messages, fixed a few bugs in the code I checked out, and recompiled the code. And it worked.
make became the great equalizer. But it wasn’t until later that I learned how to wield it myself.