What is the Internet of Things?
Like all heavily hyped buzzwords the question of what the IoT actually is can’t be answered in a short way. The topic ranges from embedded programs running on extremely restricted hardware, to machine learning algorithms running on large server clusters. And in between there is a whole industry searching for the right way to standardize management of entities in this growing network ( RAMI 4.0 initiative (german)).
From a software developer’s perspective I see these main areas:
- Programs running on the edge collecting data
- Servers digesting the information
- Actors available on the edge triggered by (outside-)conditions
- Platforms providing tools to analyze the collected data
Each area on its own can be arbitrarily complex, but the complexity in IoT comes almost always from large scale. Starting with a very small scaled system on the other hand is quite easy so getting a foot in the door is not as difficult as you might think. Platforms like Arduino or Raspberry Pi have opened the field of programmable electronics to the masses. Also it’s easier than ever to run programs in the cloud so there is not much left to be an active part of the internet of things.