Sunday, June 1, 2014

Making IoT possible

Babbage's concern about Internet of things "IoT" NOT being built upon something that is benign and open internet that gave birth to the World Wide Web more than 20 years ago" cannot be ignored. The reason is that ubiquity comes with developer and user acceptance of a platform. With current developments, IoT is cropping up in form of silos created by major vendors like Cisco, Google, Apple and/or numerous smaller companies. The issues which aren't just blocking but may prove to be show stoppers are middleware issues of standards, interoperability, integration and data management—especially privacy and protection from malicious attack, along with product liability, intellectual-property rights and regulatory compliance—are going to take years to resolve." Mashable Article

Looking at the numerous statistics floating around predicting number of interconnected devices reach 20-50 Billion range in next decade, makes you think, "Yes, it is happening !". But reality is that it is still far off somewhere in the future. For IoT to emerge as a disruptive as World Wide Web in consumer space requires us to think about devices in a whole another way.

In my opinion, looking at devices as individual pieces of hardware/software combination with some features OR one stop in form of powerful smartphone to do anything you need using apps, is NOT the correct way. We have to erase traditional view of devices as boxes with some features and connectivity to cloud. It is common now that if you need a new feature, you basically go out and buy a new device and thats it. But I see it differently, if we want to really make IoT vision which is being marketed, the change is not limited to our perception but in the way devices are developed, sold and used.

Specifically, I see the need for following:
- A need to see devices as functionalities it offers
- A universal plug n play sort of capability in all devices to use competences of other devices and make their own competences available
- A common communication infrastructure: Medium and communication semantics
- Knowledge about how can these functionalities be used in task a user wants to accomplish

I think that above mentioned could be specified in a way which is agnostic to any specific technology (like wifi, bluetooth etc.), type of device and hardware capabilities of a devices. So, in a way you virtualize device at a higher layer than OS and let devices use each other's capability in coherent fashion.

This leads to the questions: How ? I am not sure and I welcome you comments, lets get the discussion going.

1 comment:

  1. There was some rudimentary view of things of having a homeOS operate and integrate devices (Ratul et. al - .
    I think there are other opensource projects (like OpenWrt) that provide you a platform for device integration... do you want to write a framework on top of them giving them some abstractions better than a /dev device ? to access each other's capability ?
    There are plenty of security reasons why would I not want my smartphone to have access to my fridge capabilities! How do you get over these concerns.

    I think we have to think of security as we build the system and not after we have built the system!