During the past years I’ve wrote a lot of developer posts about Arduino, Netduino, Raspberry Pi and other devices like Microsoft Band or Garmin smart watch. Most of this posts were about development experiences with this devices, like
- how to connect with the devices
- how to get data from the devices
- how to interact with the devices
- and more …
So far de experience is great, I’ve learn a lot of new stuff. Like new protocols MQTT or AMQP; and I spend tons of time during my nights learning and fighting with the MS Bluetooth Low Energy stack and more.
The journey was very fun, and now it seems that I need to package all my “physical devices” and I need to continue my journey with a different focus: Data Analysis. And, I’m not writing about some Power BI dashboards (which are really cool, by the way!), instead I need to understand how to analyze the data created by the tons of devices which are already here, and start to work with this data.
Let me go deeper here. We have tons of devices already placed in our live, and most of them are simply publishing information. If you have a smart thermostat at home, you can get data from this device; if you are using a smart watch, maybe you can get some personal health data from this device; if you access to your work office using a RFID card, you can extract some interesting historical data … I can go on, talking about cars, Smart TVs, and almost every new device created in the past 5 years.
So, we have tons of data around us; and once we pass the “connectivity issue” (today is still the main IoT problem at the beginning), we can move forward and we can start to learn about all of this data. I’ve wrote some very basic posts on Artificial Intelligence (AI) and a couple more about Machine Learning (ML) over the last couple of years.
It all started as a main development platform, now we have a level of maturity which allows us to create solutions in a very different way. In a MSDN post, Andrew Fryer describes how we can leverage all this new platform in the 3 classic cloud approachs
- MLAS, Machine Learning as a Service – using the Cognitive Services APIs (), where we can just send data and get a response back.
- MLAP, ML Machine Learning – e.g. using Azure ML to create your own API’s using the built-in algorithms.
- MLAI, Machine Learning as Infrastructure . Build your clusters of VMs using HD Insight (Hadoop on Azure) or R Open Server, any other Hadoop distribution from HortonWorks etc. or whatever you wish from the collection of 100+ Open Source VMs in the VMDepot.
And, if we take a look at the main schema to process data using an “intelligent system”, we realize that the devices are only a small part of the big picture.
Is that mean that we don’t need to focus on devices any more? I don’t think so. IMHO the device interaction is still maybe the funniest part of the process. However the Intelligence process is something which is very important also.
At the end, is a personal choice, you should go for the path which fits better on your skills. The developer world is now much bigger that “frontend” and “backend” developer, we need people with a different set of skills, and Analytics is one of the most important right now.
Greetings @ Toronto