Friday, July 18, 2014

IoT: 7 Habits of Highly Effective Things on Internet (!)

The CompuServe of Things: by Phil Windley @ Technometria
"On the Net today we face a choice between freedom and captivity, independence and dependence."

Online 2.0: Return of the Silos Each of these online service businesses sought to offer a complete soup-to-nuts experience and capitalized on their captive audiences in order to get businesses to pay for access.

A Real, Open Internet of Things If we were really building the Internet of Things, with all that that term implies, there'd be open, decentralized, heterarchical systems at its core, just like the Internet itself. There aren't. Sure, we're using TCP/IP and HTTP, but we're doing it in a way that is closed, centralized, and hierarchical with only a minimal nod to interoperability using APIs.

To follow the metaphor, besides "dependence" and "independence" there is also "interdependence", an ultimate level of collaboration
as defined in "7 Habits of Highly Effective People" by  Stephen R. Covey
This could be an effective template for building IoT:

wt ch5 b covey seven habits 7 Habits of Highly Effective People

"Things on Internet", similar to people, start as "Dependent",
that is they need others to take care of them,
then progressing to be "Independent", self-sufficient,
and finally "Interdependent", working well with others.

Independence (self-mastery):
  • Habit 1: Be Proactive
To be "responsible", response-able, not just "reactive".
In a way, to be "smarter" things, adaptable, not just hard-coded.   
  • Habit 2: Begin with the End in Mind
"Things" should start with well defined "purpose",
features and characteristics in context of usage. 
  • Habit 3: Put First Things First
Focus on performing most relevant function very well.
With so many "things", even "smart" toaster should be a good toaster first. 
This starts from clear description , and then solid implementation.

Interdependence (working well with others): 
  • Habit 4: Think Win-Win
"Things" that are well focused can be combined with other "things" to mutually support each other. Clearly defined interfaces, "API"s, help avoid combining incompatible "things" and avoid problems. 
  • Habit 5: Seek First to Understand, Then to be Understood
This is related to Internet (TCP) Robustness principle
"Be conservative in what you send, be liberal in what you accept"
  • Habit 6: Synergize
Combine the strengths of "things" through positive collaboration,
to achieve solutions no one "thing" could have done alone.

Continuous Improvement
  • Habit 7: Sharpen the Saw
People need to keep learning, "things" (and "services") need to keep upgrading.
Hardware, firmware and software upgrades are an essential feature. 

OK, that is it, "solid design principles" for IoT :)

No comments: