New Toronto Group
 - New Toronto Group

Are You Ready for the Next Gold Rush?

| Posted on March 24th, 2014 by Sean Hopen


A news article last month gave me pause to perk up my ears. Robot refrigerators turned evil and spammed their masters. The dark side of the Internet of Things (IoT) has arrived!

Well I guess the IoT has been around for a while, but THE POINT IS: It’s come-of-age, is prime-time, the real-deal.  Nine billion devices out there! 100 billion by 2020! Software companies,  IBMMicrosoftBlackberry, et al;  and hardware companies IntelARM, et al;  and the open source world have all announced they’re in the game.  And one billion dollars of venture capitalist investment last year alone. One billion! That’s $1X10^9 that’s $1,000,000,000 that’s 10 tons of $100 dollar bills. Venture capital.

What does that mean for us? For developers and consultants? Are we ready? My first thought was: pretty much.  But we have been working in the mobile, automotive, and embedded world for a while now.  So what is the difference and what are we likely to need to learn?

The IoT is made up of small computers hooked up to a variety of sensors and the internet. The computers — many of them on a single board, some as small as a pack of gum – run mostly Linux, or variations of it like Android and QNX.  The sensors are often connected via serial ports (RS232) or are connected directly via GPIO. The CPU’s on these machines can be slower than your average server or laptop, maybe  400Mhz. (Hey, that was a pretty hot machine in 1999!)  So compiling to a native executable might be necessary. If you’re using C++, I’d recommend Qt. We’ve been having a ton fun with Qt for native development on Blackberry phones and some scientific telemetry projects — we’re currently teaching robot submarines how to see magnetism under the sea. Seriously.

For the IoT, the server side is much the same, except sheer the volume of data ( if a 100 billion devices just clear their throats — “Ahem.”, there’s a half a terabyte gone! Do you want xml tags with that?) So think scalability…and what are you going to do with all that data? Need the cloud? How are you going to update your sofware? Updates can be tricky depending on what your device is responsible for. Can you reboot even? And of course security — e.g. how do you build yourC++ structs to prevent buffer overflow attacks? 

You don’t have to go native though. Node.js is one technology that we’ve been using.  Node can be cross-compiled for embedded systems. It’s not going to be serving a lot of clients, but you can leverage your JavaScript coding skills that way.  Serving up HTML5 is a nice lightweight way of getting your UI done without having to load up limited RAM with UI libraries.  And you can access your serial ports through Node as well.

You might even  be able to leverage your .NET skills.  ZDNet reported yesterday that Microsoft is interested in Xamarin, bringing C# to android and other platforms.

Conclusions

So what’s new for IoT?  Mostly just think small. Small data, small executables. Think fast, maybe native. And build for security, and easy upgrades.

What else do you need to take your place in the history of the IoT, building the sensory system of the world, promising economy, efficiency, ecology and who knows, enlightenment?!

Let me know.

Posted in ioT, javascript, Node.js, .NET  | Comments (0)

Comments (0)


Add a Comment





To use reCAPTCHA you must get an API key from http://recaptcha.net/api/getkey

Allowed tags: <b><i><br>Add a new comment: