Russ Garrett

/

Open Hardware and Top-Down Design

A couple of weeks ago, I dropped by the Open Hardware Conference in my capacity as hackerspace founder and general interested hardware hacker. I’m a bit disappointed that I didn’t stay longer — I had to split my time with ScaleCamp — since there was a really interesting mix of people in attendance.

One of the companies present, and indeed sponsoring the event, was 40Fires, who are taking on the audacious task of building an open source car. There was a lot of discussion about how to get more people involved with this project, especially considering that the CAD software used to design the car costs £20,000 per seat.

There was discussion about the best way to organize a community to build an open-source car. The Apache project was mentioned several times as an example of a project to emulate. The point was raised that most open source developers are “scratching their own itch” (which I don’t believe to be true — I suspect most open-source code written today is by people employed to do so).

The point which everyone missed (myself included) is that if you want to emulate the success of the open source software community, you can’t just decide how things will work in a top-down fashion. And these guys weren’t just talking about designing the hardware top-down, they were talking about designing the community. Open source hardware is sufficiently — radically — different from open source software that we can’t just copy the community patterns wholesale and hope they work — that’s not even a great idea for a software project. We have no idea of the best way to build an open hardware project of that size. It’s never been done before.

(Of course this isn’t even considering the engineering quality benefits that bottom-up design brings. See Richard Feynman’s brilliantly prescient appendix to the Challenger disaster report, comparing the design of the Space Shuttle’s software to the design of its hardware.)

Linus Torvalds didn’t write Linux in order to build an enterprise, server-class operating system. He started it as a toy project and the community built up around it. Open source software has evolved organically, with the tools used to build the software evolving with it. Crucially, as Richard Stallman would repeatedly remind you, Linux would have not even been born if it wasn’t for the open-source GNU toolchain used to build it. The toolchain completes the feedback loop which is essential for open source to thrive.

Attempting to build an open source car when we don’t have a capable open hardware toolchain is jumping the gun. That doesn’t just mean decent CAD software, although that’s certainly got to be a priority, but also open source manufacturing tools. The RepRap and associated commercial versions are a great indication that this is really possible — now let’s see an open source milling machine.

So, let’s start building what we can build with our open source tools today. That feedback loop which fuels open source software, and the RepRap wants to bring to the world of hardware, is just starting to kick in. Our Makerbot Cupcake is in the post, so come join us. It looks to be an exciting new decade.