Simple intelligence is cheap. It can be replicated with minimal hardware and a few lines of code. It can be as simple as a self-adjusting thermostat. Embedding intelligence into everyday objects is not a new concept. Theconnects these local devices to each other. It introduces a medium to use and a language to communicate with. Taking this one step further, the devices not only talk to each other but they talk to a central server that monitors them and tries to identify usage patterns and behaviourial quirks of the user. This makes it more of a collective intelligence. Even though "recent" developments in web and networking technologies and with the excessive number of abstraction layers, it seems to be seamless on the surface. However, underneath the hood there are still many interfaces, handovers, and conversions taking place.
Technological development of this scale spans over many years and is spread across the world, split between large companies, startups, government regulations and various standard setting organizations. But if we were to start from scratch and built it again, would we choose the same interfaces and handover mechanisms. Or would we go for something much more simpler. Considering not just the top level abstractions likeand other API's of that sort. But the complete SW stack right down to the metal.