Internet of Things Developer Days with Intel

Back in May we ran an Internet of Things Developer Day at the Axeda industry event Connexion with Intel Galileos and Raspberry Pis. A Developer Day is a hands-on workshop where developers get a guided experience with Axeda coaches while connecting microcontrollers to sensors and sending up data. It just so happened an Intel rep was there and had such a great time that we ended up partnering with Intel to organize a road show for the fall. We did one in New Jersey two weeks ago and we have now finished our first one in Silicon Valley.

Our technical team consisted of Kevin Holbrook, Joe Biron, Chris Meringolo, Allen Smith and Haris Iqbal all from Axeda, Howard Alyne from Wind River and Val Laolagi from ThingWorx. Intel supported us on the administrative side so we were able to focus purely on the content.

We had about 70 developers connect Galileos using our Axeda Developer Toolbox, which allows you to pick from any of about 25 Axeda Ready devices and get a self-guided tutorial on how to send data up to our cloud. The Galileos ran a proprietary Wind River version of Yocto Linux, which has cool security features baked in such as application signing and device identity key verification. The baseline for completing the tutorial was a round trip for the data, sending up light, sound, and temperature readings from the board and then triggering an action on the board from the app – in this case a blinking LED and a buzzing buzzer. We sent the developers home with documentation on an advanced path which took them through the ThingWorx dashboard, as well as a sample app that did AJAX calls to the Axeda RESTful web services.

It’s a gratifying experience for me to be able to coach developers past the initial hurdles of connecting a device. One student in particular whom I was helping had a Galileo board that was not able to get a serial connection to his PC over the COM port. I was able to log into the Axeda platform and see the IP address it was sending up as data, which we were then able to use to SSH into the board. A few minutes later he had his first circuit built with an LED, and by entering “blink 5” into the Toolbox app he saw the Axeda agent receive the downstream command and then blink the LED five times. After only a few more minutes he had his buzzer triumphantly buzzing as well, and then high five!

My key takeaway from these events is that developers are hungry to get experience with hardware and learn what the Internet of Things really is beyond the hype. Holding events like this one allows developers to find the meaning behind the buzz words and start laying the foundation for the future of their companies, one LED at a time.

For more information for Axeda Developers, check out http://developer.axeda.com .

Apology to the participants in my last Newbie 4357

I accidentally deleted the last episode of the Newbie 4357 show on Operator 11 – crap!! I apologize to the people who participated in it – I was trying to delete the episode that had the sound problems.  Not a good night for Op11 directing!!

Please come and visit next week and we’ll have another great show – Fridays at 6:30pm.

What do all the Doodads Do?

Depending on how much your loved ones spent on you this Christmas, chances are you have a new electronic thingamajig that does some nifty trick.  I want to take a moment to ponder doodads – why are they so much fun, can/should one doodad do everything, and are we getting too dependent?

 First, a Gizmo Review:

Cellphone – be reachable by phone again; as well as receive text messages, oh yeah, and it’s a camera too, because your cellphone, unlike your digital camera, will automatically adhere to whatever you take with you all the time 

mp3/mp4 player – the Apple iPod or the Creative Zen, welcome to gigs of storage for music, photos, movies, and stuff, this is an entertainment center – think solitaire on steroids

flash drive – use this as backup for your computer or as an extra drive, and then take your files with you to another computer

Bluetooth – this headset syncs up compatible devices when it comes within range, so whichever computer you’re at knows who you are

 PDAs – no longer public displays of affection, this acronym has been co-opted for personal digital assistant – Blackberry, Treo, Palm Pilot are a few – send your e-mail, access the internet and combine functions of the above devices in one handy device

The funny thing about these doodads is that once you start using them, you start to wonder how you ever functioned without them.  So that brings up my next question – are we Inspector Gadget, with the preparedness of the Boy Scout saving the day with our gear – or are we the Borg, giving up autonomy for the sake of being in sync through our implants?  I would say it depends on why we use these devices.  I don’t worry about my work reaching me on my cellphone because I’m not on call when I’m not at work.  My boss however is on call, and he groans about having to answer e-mail on his handheld device when he’s out of the office.  I don’t like competing with someone’s iPod if I’m trying to speak to him/her, but then again I do like walking to work to a beat.  Then there’s the question of whether these doodads are user-friendly.  I’ve heard plenty of people complain about texting because of the pain of getting the right letters.  I tried Bluetooth and had to return it to the store because I didn’t get the whole press and hold the button thing.  I can see why you’d want to access your e-mail all of the time, but then do you really want to be accessible by e-mail all the time?

The whole tricorder-aspect of the portable device appeals to me.  I like the idea of having flexibility about how I communicate.  And as the flight attendants so wisely tell us, their switches do have an “off” position.

Mistakes in Logic

In computer science and in life, there are a lot of ways you can screw up the program.  The way I want to talk about is the logic error, the one that has nothing to do with how I phrase the instructions, but rather that occurred because I didn’t create a successful algorithm.  This kind of error has nothing to do with knowledge, but with experience.  No matter how well I know a language, I can still make something silly happen with it. 

So how am I supposed to avoid logic errors?  Testing the algorithm helps, but there is only so much trial and error can do.  Eventually plain simple thought is what actually produces the answer.  Seems obvious right?  Well, if thought were a liquid running through the pipes of my mind, there would be a few ways to clear the way for freer flow. 

Sleep/Exercise – mind-body connection here, my body should be healthy in order for my mind to be

Dealing with Animal magnetism – a term from Christian Science, I use it to cover all the mental failings that don’t really seem to come from anywhere but can become a problem; note upon speaking with a Christian Science practitioner – according to Christian Science in order to defeat animal magnetism I have to pray to know that God is Mind
examples being – doubt of my own ability to succeed, depression, loneliness, etc.  Dealing with these issues is as simple as refusing to listen to any thought that tells me emotions are in control of my decisions instead of me.  I’m not arguing for a Spock-like repression of emotions – emotions are okay to feel, but reason and consistent decisions should be what lead me.

Willingness to make mistakes – Part of computer programming is the thrill of tackling new challenges.  It’s only a matter of time before I’ll know %80 of it, but there will always be that last remaining %20 that escapes me.  Without the courage to try things, I’ll be stuck trying the same old solutions when what is needed is radical new approaches. 

Listening to other people’s solutions – Letting someone else help me out can be a humbling experience.  The truth is I don’t have all the answers, and somebody out there probably has the one I’m looking for.  I have to be willing to admit my own weaknesses and failings and then, when the opportunity presents itself, take the time to hear what others have learned and are going through.

The one thing a computer isn’t going to do for me is think.  It takes effort, but it is a reward in and of itself.