I had the opportunity to have a bit of a working relationship with some folks at Xerox's PARC in the late 80's (I was doing some work on AI at the time and there were some freaking amazing AI dudes at PARC), and if there was one place that defined our current world, PARC would be that place. Laser printing, Ethernet, the modern personal computer, graphical user interface (GUI), object-oriented programming, amorphous silicon (a-Si) applications, advancing very-large-scale-integration (VLSI) for semiconductors and ubiquitous computing known today as The Internet of Things (IoT) all came from PARC. To me IoT is the next big thing in high tech, for example IoT was almost everywhere at the recent CES. So what is Microsoft doing about IoT, well what haven't they done? Really the first real visible IoT effort at Microsoft was SPOT (Smart Personal Objects Technology) in 2004 when they released SPOT watches (I purchased a number of them and there were other SPOT products) and I must admit I find it funny that things like Pebble generated so much interest on KickStarter when the concept really isn't new, but is refreshed, which ultimately is good as again it reconfirms IoT as a growing technology. Since then Microsoft has offered technology for a whole range of devices, for example even .Net comes in multiple flavors depending on the 'size' of your device ranging from the full .Net, to Compact, to Micro and its the Micro Framework which has interested me lately as that is what Gadgeteer uses. Gadgeteer is a very neat solution to an age old problem in building devices and that is building devices is a hardware problem, but hardware guys aren't software guys and hardware without software is a paper weight. So the problem has always been, how do you get software guys into hardware development, not to do the hardware development, but to write the software for the hardware created. Well you break the hardware down into something software dudes understand, 'objects' and have them respond to 'events'. Now the upside of this for hardware dudes is, they can create these modules and software guys will use them to create fully functional devices. So for example I have some palm trees in my office and I wanted to build a device that would let me know when its time to water them. First I'm a software dude so I'll just assume there is hardware that can measure the moisture content of the soil, so the next question is how do I want to receive information from this device, how about email, or maybe upload data onto a web site so I can see charts of the data, or why not have a web server on the device that I can login into and see the current conditions, or how about even sending it out via twitter, or why not all four ways? So with Gadgeteer I grab a $30 mainboard, couple of sensors (temperature, pressure, humidity, and moisture), network module, sd card reader and connect them via pluggable ribbon cables which means no soldering and Visual Studio told me how to connect them, I just dragged the components onto the designer page and told VS to connect them, which it did, I just plugged them together as shown. Then I wrote the software using Visual Studio and loaded it onto my device and ran it with complete debugging including breakpoints, inspection, set values, set next line, etc just like I was developing a Windows app.
So now my palm trees email me when they need to be watered, I can track conditions on a web site »cosm.com/feeds/78110 (the device uploads data every 5 minutes), or I can connect to a web server on the device and get the current conditions and my palm trees even send out tweets »twitter.com/OfficePalms
Welcome to the Internet of My Palm trees, Microsoft has a very cool IoT development tool as Gadgeteer rocks!!