Hackers and Bikers

Many Free Software hackers and programmers also are big bicyle geeks. Paul Davis of Ardour fame is a road racer and I saw my first modern fixie several years ago in the hands of Chun Lee of pure:dyne/GOTO10. There is a lot of overlap in the mindset of cyclists and hackers developing Free Software. Both communities have a strong DIY ethic: They like to be able to take things apart, fix stuff on their own, share knowledge with other community members and like to evangelize their faith to outsiders.

I guess, most modern human beings own a bicycle just like all internet inhabitants use software. But while most people just use the software that other people wrote or installed for them, the hackers know that software can be written or changes and adapted by the common people, not just by companies. Same for bikes: real bike heads build their own bikes, of course using parts made by other companies, but the best bike to them is a heavily customized, unique and personal bike.

My own bike love was a bit on hold for a while but recently I got more interested in bicycles again and I'm actually in the process of build a new bike currently - of course a customized, unique and personal bike, in the limits of my technical and financial capabilities. And this time it's going to be a single-speed bike in addition to the nice mountain bike I already own for more than a decade.

Show me your bike and I tell you what software you write

Now the interesting thought I had today: Can you tell the hacking preferences of a programmer by the bike (s)he rides? Or the other way around: Do e.g. fixed gear riders write different software in different languages than road racers? While it's probably not all black or white, I do believe that there are parallels. Lets take the fixed gear crowd for example. I would guess, that bikers riding fixies would be hackers that also prefer minimal programming languages. They will probably write programms in Lua or Scheme, or when needed use C instead of C++ or Java. These languages have a similar barebone, lean and minimal approach, avoid any cruft and bloat, and they are not useable in all circumstances. Just as a Fixie is a pain in the legs when going uphill, languages like Lua are limited in certain areas.

Single-speed Pd

I'm probably not the perfect person to compare programming languages any further, but in my little Pure Data world, I see a similar analogy. What would be a distinguishing feature of a fixie biker creating software with Pd? I would presume that a fixie or single-speed biker would be one that limits himself to a minimal set of Pd objects. Okay, you see I'm talking about myself here. A single-speed or even fixed gear bike is about as minimal as a bicyle can get. And with Pd, using only vanilla objects would be the equivalent to ride a single-speed bike. Throwing [expr] out as well is the fixie approach.

At the other end of the scale is the Pd-extended user: He will use all of the objects written by the Pd community and in many cases this will make him reach his goal much faster than with single-speed Pd. Externals are like a 24-speed drivetrain. Most of the time they are faster than vanilla abstractions and they are readily available in Pd-ext. But they also add complexity to your Pd patches just like a 24-gear system with gear shifters, more cables and more bolts is heavier and more likely to break than the minimized single-speed approach.

So, if you want to simplify your life, go with a single-speed bike and vanilla Pd - if you want to reach your goal fast, add gears and use externals.

My life is simple.

Category: Bike
Tags: pd puredata bikes bicycle fixedgear singlespeed