Sunday, September 8, 2013

The Maker Revolution and the Embedded World

The Maker movement has reinvigorated my faith in humanity.  I had become increasingly worried that people---both kids and adults---had stopped making things. So many traditional hobbies---model airplanes, plastic models, ham radio---have shriveled.  Working on cars used to be an American passsion; John Steinbeck included an ode to the mechanic as a chapter in The Grapes of Wrath. Today, cars are designed so that amateur car maintenance is very difficult.

Today, we have turned the corner and see people building all sorts of new things in all sorts of ways.  A few key product innovations have helped enable this revolution. Lego Mindstorms certainly introduced a lot of kids to robotics.  3D printers, which were exotic and expensive just a few years ago, have been democratized to the point of becoming household items.

But I am a little surprised that we don't see more integration of the mechanical and computer sides of Makerdom. Sure, we see computers controlling things, but that control is very, very simple.  Concurrency is fundamental to embedded computing.  Computers allow our machines to do several things at once.  But most of the toys I see do one thing at a time, roughly speaking.  Robots perform one operation, then stop and do something else.

Concurrency is, of course, not easy to achieve.  But it is cool.  I hope that we can figure out ways to make concurrency simpler and usable by hobbyists.  That will require new programming models that make it easy to describe concurrency.  We've made some progress on that front for high-end system designers, but those high-level programming languages are too complex to use..  I suspect that a hobbyist-friendly concurrent embedded programming language would be useful not just for high school kids but ultimately to a wide range of professional system designers.

No comments:

Post a Comment