SYDNEY, 13 FEBRUARY 2008 - Jonathan Oxer is technical director of a Web application development company called Internet Vision Technologies and for the past couple of years has been president of the Linux Australia community group. At January's Linux.conf.au in Melbourne he presented a tutorial entitled Hardware / Software Hacking: Joining Second Life to the Real World. Computerworld recently spoke to Oxer about how he is knocking down the boundaries between the real and virtual world. Oxer also sheds light on his how his lifetime obsession with electronics has transformed his home-life into a software controlled environment.
Why has hardware hacking really taken off in recent years?
I think there are a couple of reasons. One is that the toolkits have become a lot more accessible. One of the issues in the world of hardware is intellectual property -- the control of the development tool chain. In the open source software world we've become accustomed to an open source tool chain where we have GCC (GNU Compiler Connection), so you can write your code in C, you can compile it with an open source compiler, and you can then run it on an open or closed source OS. The various parts of the tool chain are there to allow you to do that. But in the hardware world that hasn't necessarily been the case and in a lot of development environments - because there is an actual cost to producing a hardware kit or development kit - you can't just download it off the Internet and run it for free.
There hasn't been so much incentive to open up the software that is associated with the hardware, it all just becomes bundled into one and the same, so hardware vendors typically haven't cared about giving access to the software components that go along with their hardware. And what we've seen over the past couple of years -- partly the commoditization of hardware, but also hardware vendors realizing that they can make use of the open source community to save themselves some work. So instead of having to develop both the hardware and the software themselves, they can develop and manufacture the hardware and then publish all the specs; the open source community picks it up and then an ecosystem builds around that hardware and people will develop for it and create software. So where I am going with this is that this has resulted in a much more accessible environment.
I remember a couple of years ago if you wanted to play around with a small microcontroller, for example, one of the most popular choices was BASIC stamp manufactured by a company called Parallax. It was a very cool system, very small, cheap, very low power, had a number of digital I/O lines and you could talk to it with your computer, so it was very useful for linking physical devices into the software environment. But the problem was the development tool chain for it was all closed source and it would only run on the Windows platform initially, so it just wasn't accessible to the people that typically like to play around with this sort of stuff in their spare time. But now what we're seeing are things like the Arduino platform which is what I've been playing around with more recently.
Sign up for Computerworld eNewsletters.