Ostensibly, this blog is about software development, and while I’m trying to write about embedded, I’m struggling. I find most embedded practices less than exciting and am more drawn to what is happening in non-embedded systems: .NET, F#, TDD, C# 3.0, Behavior Driven Design, Agile, Ruby. There’s a buzz in that space that just doesn’t exist in the embedded world.

Oh sure, there are exciting products out there (multi-core processors, shinny UIs, etc…) but as an industry, there doesn’t seem to be many new practices taking hold. I see nothing fundamentally different being done now that wasn’t done 15 years ago when I started! Oh Sure, things have evolved. C++ is now common in embedded systems, but C is still king. The tools have improved tremendously, but printf debugging still rules the day. When I teach a class and ask students if they have heard of refactoring, I get blank stares! Surely someone has heard of design patterns?!

Are embedded engineers (a large number of which have an EE background) inherently more conservative? Not thinking about new things beyond what processors to use on the next project? Are we just part of the 80%, doing the daily grind and content with good enough?
Sure, there are isolated island of progress, like Atomic Object’s ruby test framework, but those are the exception!

Is it any wonder that I’m drawn to the .NET world like a moth to a flame? Things are happening over there!
Where is the buzz in the embedded world? Anybody?

P.S. While I’m a big fan of Rice & Lloyd Webber (as per the title), I feel more like Howard Beal of the film Network. Hopefully, I won’t meet with the same fate…