TecHomation has been creating home automation products for the past five years. Although sales have been good, they've become concerned about stagnation in the industry and the lack of truly new ideas. The buzz around Open Source development methods caught their attention, and they decided that bringing the Internet community into their work might provide the spark of life they need to bring back the excitement they remembered from the days when they hacked together their first X10 lamp module in their basement.
They came up with the "Toys for Code" program, which works this way:
Level 1 gives you an X10 power module, a temperature sensor, a camera, and the TecHomation Control Pad, with a manual explaining each component and how to program for it in your favorite language. They say "Here are the pieces, and here's what each of them can do. Put them together into something interesting."
If you've been to the Gallery, you know that some people have come up with truly astounding ideas for combining these seemingly incongruous components. Luckily, we don't all have to be as clever as Phil or Bob (whose projects are currently leading the Level 1 Community Choice poll). All that TecHomation cares about is that you did something to put all the pieces to use. If you go to my homepage, you'll see the run-of-the-mill Perl scripts I wrote to drive the hardware in my home. It's nothing very original, but my humble work was included in the Gallery just like everyone else's, and my Level 2 package was in the mail to me the next day. The people at TecHomation are confident that just by having such a large number of contributors, some great work will inevitably appear, and so far, they've been right. The experiment has been a smashing success, and has provided them with more code and ideas than their R&D team was able to generate in the past year.
The program has been a big win on both sides. Most people had probably never heard of TecHomation, and now the TecHies get free advertising from us on three fronts: whenever someone comes across one of our Web sites and clicks the link to them, whenever someone visits our homes and says "Wow, what was that?" when we do something with the Control Pad, and by word-of-mouth at LUG meetings and the like, where discussions of the Level packages and what we're all doing with them have become inevitable. In addition to exposure, they get a mountain of code they can review and adopt or adapt to their new products. They're well aware that the next generation of home automation consumers will not be hobbiests who want to tinker and hack, but people who want something that can just be plugged in and turned on. The TecHies are letting us code outside the devices now so they can move the code onto the hardware later.
From our side, the benefits are not only the cool free hardware dropped in our laps, but the same incentives that have always driven Free Software. Since TecHomation requires that code must be released under the GPL before a Level can be passed, hackers know that they're writing code that they and everyone else in the community will be able to use freely. In the comments to the Slashdot story, skeptics asked "What's to keep people from just copying someone else's code in order to pass through a level?", but that hasn't been a problem. People take pride in their code, and enjoy the fame that comes from being in the Gallery and the encouragement of people who congratulate them and submit patches. They would no sooner take someone else's code than wear their underwear.
It's been an enormously positive experience all around, and a proof that this interesting software economy can work for the mutual advantage of those who sell the hardware and those who pay for it with their software. There have been no problems that I've seen, aside from the hardware defect that made them release the new Level 2. I'm currently up to Level 6, and beginning to seriously lust after the network-tuned radio that's just a few levels away.
I hope more people will sign up and join the fun. If you haven't already, head over to TecHomation's Web site and get started. You'll find lots of TecHies waiting to help in #techomation on the Open Projects Network.