Towards the WOT Manifesto

I’m taking a couple of days off in Romania, to chill out and reorganize my brain. We’ve been so busy working with Dom lately that we barely had time for WOT, and even less for getting our work done. Mainly tons of papers, meetings, talks, and barely no time to hack/code, and that kind of sucks. We both agreed that in the coming months, we’ll cut off random unproductive activities, to really focus on our work and building the Web of Things.

I’ve notice that all the people I talk to not really understand what WOT is about, and for this reason we’re working on the WOT manifesto with Dom. I want to position the WM (yes, for WOT manifesto) as a central starting point of our joint action, and I think there are a few important points to clarify to convey our message perfectly. This post is in the continuity of the previous one, but more aimed at WOT in particular.

WOT is not a technology. It is not a standard either. WOT is a vision and a community.

This is maybe the most important aspect of WOT. We tend to radically position our work on a higher level than the current Internet of Things and alike. For us, the Internet of Things is to connect devices together over the Internet. Great! Wow! So what? Why should we care?

Networked objects have never been (and should never be) about just connecting things together. It’s about why we need to connect things, and most people ask us “but why do you guys want to connect your fridge with your toaster, what’s the point? Why would you want to do that?“. I seriously don’t know, and I really don’t care! And if somebody asks me that again, I’ll slap him in the face, I promise! That’s as simple as that. I also have no idea of why would anybody connect a dildo with the RSS feed of the vibration sensor on a volcano in Vanuatu. But I’m sure there’s a lucky girl (or boy) out there who knows! And if she can’t hack it herself, then she’ll never have a volcano-linked dildo, and that’s no good. That’s exactly the kind of people we care about (not the sex freak, but the average Bob or Alice), people who want to connect something to something else! That’s what the Web of Things is all about! People who know just a little bit about of computers and would like to do much more with them to create new things that nobody thought of before without a PhD in computer science. Technology today just sucks because people who build things are too selfish to care about the users, and because of that, in the end most things out there are way to complex to do what they were supposed to. Technology is so not plug & play, and we can change that because the technology to do it is out there and works well enough for my parents (but maybe not for guys playing with the LHC).

I’ve been working with wireless sensor networks (WSN) for over five years 2004, and although I can see today better tools, algorithms, and protocols, these devices area still only made for geeks. Or for the new rich with tons of cash to show off. Seriously, after a decade of active research in this area I think that WSN are have become a product-ready technology sufficiently robust and performant for most non-industrial applications. However, as mentioned in my previous (mis-titled) post, I still want to see something that is made for the end-user. I mean, we have hundreds of different products that could potentially gather data and monitor places and things, but there’s nothing on the market that I can buy, unpack, plug, and use right away. I didn’t try commercial solutions such as Arch Rock‘s or Crossbow’s EKo nodes, but I’m certain that they’re almost impossible to change to build new applications on top of it. And devices made for research (tmote, sunspots, etc.) solutions are either too expensive or too hard to use. Or both.

tmote_sky.jpgsunspot.png

A few of the toys we’re Web-enabling. TMote sky and Sun SPOTs.

From a technology point of view, I’m sure that the price of a WSN node could drop to less than 20-30$ each. But even so, who would want to learn TinyOS or Contiki to program them? Who wants to implement their own mesh routing algorithms or time synchronization? Nobody does! There are tons of solution for doing that, maybe not perfect but certainly sufficient for monitoring electricity and temperatures in my house. Imagine buy a couple of devices, configure them easily in a Web-based interface (yes visually, not with code), add new modules from the Web (or from apple store). But there aren’t any LEGO-like approach for WSN or embedded devices.

But why is that so?

Look at the Arduino. It’s a slick sexy wonder! Simple, cheap, easy to use and to program, and it just works. WSN people have a lot of lessons to learn from that slap in the face! How come an open-source piece of hardware that didn’t even come out from the higher circles of academic research in the area of embedded devices has become so successful? Simple: anyone can buy one for like 30$ and can code a hello world within minutes. And that is what matters the most today! While technology keeps improving all the time, devices become faster and more powerful, but we humans don’t. If a device today needs 10 minutes to do something today, it’ll take only one minute to do the same in 10 years. And if that something is programmed in 100 lines of code today, well in 10 years, it will require… still 100 lines of code. But if it takes 10 lines of code instead of 100, then we have something. That’s also what the Web of Things is about.

arduino.jpg

The Arduino. Such a slick and sexy toy!

For me, the field of Ubicomp has become mature enough so that people should stop digging their own graves, look around, climb up of their hole, look around again, and think. What do we see? Thousands of projects in all directions, with basically no overlapping or links between them. A common ground for connecting all these devices together is lacking, right? Does it ring a bell to you? Yes? Do you really think Internet would have worked if every server would have tried to push its own standard? Of course not! And what’s more important? Internet is only the lower part, how data gets transferred from point A to point B. It’s about sending data, be it Morse code over telegraph or smoke signals. But the Internet doesn’t say anything about data that gets transmitted and that’s how it should remain. But on top of TCP/IP comes the application. You’re free to design your own application of course, but why create a new one when you already have something that work just great, and that would get your job done?

No matter which devices I buy, they should understand each other right away, because they all use the same application – and that’s where the Web comes into play. We don’t think the HTTP is the best solution in the world for everything. We just think it’s out there, it’s used by 1.5 billion people, its simple, yet powerful, and its potentials are largely untapped! Most people use only 5-10% of what HTTP is about, and automatically assume “that’s it. we’ve seen the whole think and it sucks. it not good for embedded device”. It’s so wrong, because the people who say so never used HTTP, but only HTML to build their frame-based homepage, filled with animated gifs (you remember, like the very first home page you made in the mid 90’s?!).

Many people think we advocate religiously the Web (and HTTP, or worse HTML) as being the best solution for everything and that we want everything in the world to become a Web page. That’s so not true, especially because we have no links whatsoever with W3C or any other standardization comity. The fact is we are just lazy. We don’t want to reinvent something that already exists just for the sake of it. Our central goal is to reuse as much as we can, and to spend our time to tackle unsolved problems. Recap:

Our aim is to enable developers of applications for embedded devices to spend as few time as possible to program the device, so that people spend most of their time on developing their application and how to combine the data. Developers should never care about the underlying communication or implementation, and certainly not low level data routing and other weird aspects irrelevant to them.

This is another essential point of WOT! JDRTFW (just don’t reinvent the f***g wheel)! There’s so much code out there that we can take, reuse, tinker, and optimize, yet so many people come up with yet another lousy standard or protocol that serves only to connect fridges and TV sets! Guys, just stop that, it’s simply useless. Of course, once in a decade there’s a cool standard that gets invented and adopted and that’s OK. But unless you’re Vint Cerf or Tim Berners-Lee, then maybe you should focus on reuse and improve what’s out there for doing what you want. That’s exactly what we want at WOT! And we propose to use the Web because it’s the most wonderful example of a great, simple, and functional technology in the area of distributed computing. After 20 years of the Web, we now have access to the tools and expertise to build efficient websites that scale to millions of concurrent users. HTTP is a great technology, because it’s simple and was not made for something in particular other than connecting data. Not so much data about fridges or people, but about anything you want. The versatility, openness, and simplicity of HTTP was detrimental to its success, therefore our goal is to learn a lesson from the Web and reuse the same principles that made it success. Then reapply the same principles, and if possible technologies, to connecte not just virtual data but also things in the real world. Many people told us to forget it as that’s will not possible given that the Web was not done for that. Sorry Nostradamus wannabees to disappoint you, but you were wrong and we’re here to prove it. That’s another aspect of WOT, to show that the Web can be very well used to conenct things together. Just like house can twitters, we’re working on putting tons of objects on the Web, and you’ll be able to ping out fridge and subscribe to the RSS feed of my chair so that you know when I stand up and sit down? Why? To feed it your dildo, don’t you get it yet?

Finally, the most important thing maybe about WOT, is the notion of community. We would like thank you all so much for your mails, comments, koudos and support! It’s so great to see the impact we had in just a few months, and so many people responded positively so thank you! At the moment, we’re still thinking about the materialization of the WOT as something beyond a blog and a vision. How can we get you guys involved? How can we build the world of tomorrow all together? We don’t know yet, but we’re working hard on it. We don’t want to build an open source community around a single project, but an intersection where people from all fields interested in networked things can find each other (no dating service if you ask), share their creations, ideas, and feeds, and simply build cool and usable toys for a better world. Oh, if you’d like to join our bloggers team in particular if you want to blog about existing tools, products/projects, please send us a mail.

Maybe WOT could be summarized as follows: “Now we got technologies and protocols to connect things in a sufficiently reliable manner, so how about we stop focusing so much on technology only, and let’s have a look at the big picture. Let’s have a look about how anyone could use these devices simply without being frustrated by technology under the hood. What can people do when we can connect virtually anything together? And how to make it simpler for the average people to build their own mashups of physical objects? How to enable anyone to do anything they want with the electronic devices they buy? These are the important questions we should start considering. Let’s focus mainly on people and let’s see how they behave. Let’s stop thinking only about technology, because in the end it is not what matter. Technology is a tool, and if it’s cumbersome to use, then it sucks.”

We also still have a PhD to finish, so most of the things we’re working on are still lab prototypes and not so much user-oriented, and we don’t intend to create commercial products any time soon. At this moment, we mainly focus on the scientific value of our toys (no, we don’t ship web-enabled dildos), and are testing and analyzing them to prove that, yes, the Web for connecting things works a lot better than anything else out there. Maybe not in terms of performance, but certainly in terms of functionality and flexibility. We even dare to say that we got a bunch of awesome toys and ideas that will rock the world, but we’ll release them slowly (yeah if we give the whole pack to you, you’ll sell them, make money, and not even say thanks to us nor invite us for a champagne on your yacht you bought with our sweat!). Let’s call that marketing. One thing is sure: stay tuned! We’ll soon release little jewels you can take, play, and tune, but also more scientific and tech data so you can also take contribute to the Web of Things, not just toys and prototypes. For now, we just want to make our work more solid, reliable, and more scientifically valid to show to the world that we don’t just talk non-sense, but actually get awesome things done (and they’re freaking awesome, so you’ll for sure soon hear more about them).

In the next weeks, expect a finalized version of the WOT Manifesto both in an elevator pitch form (1-2 pages), and then later this year the “impress-your-girlfriend” version (in like 10 pages with much more tech meat). Pfeew, that was a long post, and congrats for reading it up to here. You deserve a beer! And I’m going to grab one on the that sunny terrace too. Pfewww.

You may also like...

  • Hello!
    Very cool site!
    what do you think about RFID networks and how they fit with your vision of WOT?

    Thanks!

    • Thanks!

      Hmmm, I’m not sure what you mean by RFID networks, as RFID don’t really connect to each other from what I know. But if you’re referring to RFID in general, then yes, I think they’re the initial step towards connecting physical things together in the digital world. Hopefully, future things will also have some more active abilities than just some static stored data.

  • Hey Vlad,

    I have a question: Why do you guys want to connect your fridge with your toaster, what’s the point? Why would you want to do that?

    HAHA 😉

    Now some serious feedback for your blog post / manifesto:
    1.) Don’t always attack people. Do not try to say what you are not, rather try to say what you are and give examples.
    2.) Please reduce the amount of hot air. This post was good in a sense that it would shed light on your thoughts but it contains a whole lot of useless information, so please cut it down. I know you can do better than that.
    3.) Add a “use cases” sections to show people which prototypes have already been built and which would be possible to be built. That’s what John Doe and Mrs. Smith are going to understand.
    4.) Why not try to summarize it all in a 10 slide PPT with many nice pictures? That makes it even more marketable.

  • uff! there is an avalanche of high temperature readings all across this post…

    All in all, a cool topic and will like to bring my 2c contribution.

    the question of *why* one would like to connect this and that is indeed a legitimate question. Anyone taking the topic seriously will not avoid it or prematurely assume the answer to be trivial.

    Such discussion would provide invaluable insights as of what people *really* want and help us understand the rational behind it.. and i believe this is key to any successful development effort.

    As with any “not here yet” technology it takes some inspiration to figure out how it would impact society and how people would benefit.

    I’d recommend people with this inquietude to:

    a) indeed, avoid asking Vlad 🙂

    b) try reading Adam Greenfield “Everyware: The Dawning Age of Ubiquitous Computing” 2007. http://www.amazon.com/Everyware-Dawning-Ubiquitous-Computing-Voices/dp/0321384016

    c) listen to Bruce Sterling at O’reilly IT conversations on the “Internet of Things”
    http://itc.conversationsnetwork.org/shows/detail717.html

    Sterling, for example, notices the convenience of taking out of our head the inventory of all our possessions and instead have a host of machines sorting, raking and indexing on our behalf.. thus putting us at ease with materiality. I particularly liked the idea of Goggling for my shoes in the morning.. and yes the spime sounds cool too.

    Vlad, last but not least, most of your readers would agree that releasing some energy would do you immensely well. How about that new year resolution about martial arts and yoga?

    Very good post, good luck with all WOT efforts.

  • Thanks for the comments guys!

    Sorry that it came out that way, I didn’t intend to attack anyone in particular, but really to position WOT a layer above IOT. I think the main difference is the way to use the technology. Low-level hacks or vertically integrated for IOT, open and reconfigurable (and maybe less performant for real-time tasks).

    I’m not criticizing at all researchers in WSN, being one myself. I’m saying that technology is here and ready (so I completely disagree with Claro’s statement “not here yet”). It’s just not used enough to provide flexible and reconfigurable tools.

    I never said either that the *why* is trivial, it’s obviously not. But focusing too much on the *why* drives people to think mainly about solving a particular problem and not that much about reuse (which in my opinion leads to the end-in-the-cupboard-at-the-end-of-the-project problem, or to solutions overly tuned and expensive that are not useful anymore in case the requirements change).

    Of course, fully customized and optimized solutions will always be the best solution ever for a given problem, but as systems go more open and shared (and I’m sure they’ll), there is a need to sacrifice raw performance (and not that much in fact) to gain in a much greater flexibility.

    I’m also suggesting that sometimes a fuzzy target can be great sometimes, because I’m sure that the Web wasn’t build to do 99.9999999999% of the things it is used for today, and that’s why we promote the idea of using the Web. Its loosely coupled approach and apparent simplicity is what made it work great and scale! That’s an essential aspect, and for me openness, scalability, and interoperability are the future challenges in WSN. That’s what I mean by “it’s time to look further”!

    I’m an engineer, not a SF writer, and I could provide of course 50 examples of what we can do with WOT, but so what? All the readers of this blog could do the same, and I’m not planning to become Nostradamus and predict the future, so I’ll leave that to people with more creativity. I just want to allow these *creative* people to implement their visions instead of them waiting for engineers to consider their ideas and eventually implement them.

    It’s important for me that our readers understand that our viewpoint and requirements are not purely industrial systems tuned for specific applications, but open and flexible task that are commonly considered by embedded systems and industrial communities. I guess I really need to work on the part where I write down our assumptions, because most people have different assumptions than we do and the difference is subtle, yet detrimental.

    I like to be provoking because I think that’s what starts great converstations, so keep commenting

    🙂

  • To point that out again: I’m in now way trying to suggest that you should limit your vision, the only thing I suggest is that you should heavily simplify the way you communicate it. I believe I very well understood what you’re trying to achieve but I also believe that a newcomer will not understand it right away, not even from the above first shot for a manifesto. So again, my input for the further development of your manifesto is to keep it short and simple.