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.
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.
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.