Open to open source

I am one of those people who likes to build his own tools. Of course you can’t build all your tools from the ground up. Even if I wrote my own programming language, I’m still not building my own computer. And even if I built my own computer, I still wouldn’t be able to fabricate my own silicon wafers. No matter how DIY you are, you need to start from somewhere.

Still, for years I’ve been using a computer graphics package that I wrote myself. This has helped me in some ways, and held me back in others. For example, I’ve never been stuck, unable to do something because “the package doesn’t support that”. Then again, there are many things I haven’t done because it would just have taken too long to build a decent support infrastructure.

Of course, people do things for many reasons. If your goal is to learn how things work, I highly recommend starting at a low level and building your own tools. But what is the right level? That’s not really a question about tools, but about community.

Whenever you build something, you are implicitly joining the community of people who build similar things — and who therefore share a common sense of mission, aesthetics and design. These are the people with whom you can get into an excited conversation about topics that might be meaningless to most other people. Many communities form around this principle, around subjects as diverse as politics, music, comic books and quantum physics.

But that also means that you are excluding yourself from other communities. I’ve recently started to shift from an attitude of “I need to build it all myself” to “I’m interested in learning other peoples’ tools — and maybe adding to them.” And so for the first time, I’m really engaging with open source communities.

More tomorrow.

Leave a Reply

Your email address will not be published. Required fields are marked *