Arduino at Google I/O – a reflection
I was contacted by a journalist regarding the latest Google I/O keynote that happened yesterday. For those of you not familiar with that yearly event, it is when Google announces its latest projects, presents gadgets,introduces OS updates … according to wikipedia:
Google I/O is a web developer-focused conference held annually by Google to discuss web applications using Google and open web technologies.
During the event, Google engineers presented an innovative way for connecting Android devices (essentially mobile phones and tablets) to any physical objects. The Android development team has created a toolkit that allows developers and designers to build the future of the IoT (Internet of Things) using a paradigm very close to the one we are having at 1scale1 and Medea: using smartphones as a way to make our everyday appliances and devices connect to the Internet.
The toolkit happens to be based on Arduino, it is an Arduino Mega 2560 compatible board that allows connecting phones over a wire to physical objects. The board can be programmed from Arduino’s development environment, and the phones can be programmed from the Android Software Development Kit (SDK). The key piece is a library that allows to easily get the Android device “talk” to the Arduino board.
This announcement got us -the Arduino team- by surprise, we had no clue Android (Google) was doing this for us and our community. The twitter-sphere went crazy the hours following the announcement, we were congratulated from all across the globe. This morning I got an email from a journalist asking four questions about this matter. Since Arduino is an open source project, but also a company, some people would understand as a threat that someone like Google is making boards based on your IP and presenting them. It is as if it was hinting they were stepping into our field and, due to a matter of scale, they could take over.
The following lines are my answer -raw- to the journalist, you will notice I don’t feel threatened in any way:
First I have to say that we knew little or nothing about these news and that we are all very excited about what this actually means for our project. We have exchanged a couple of “UAUUU” emails and called each other across the globe to congratulate the rest. I went out for dinner with friends in Valencia, Massimo and Gianluca went out for beer in Lugano,Tom and Dave were in the middle of the work day, but I can imagine they celebrated their own way
I can give you my personal impressions, so if you quote me for an article, I have to ask you to please make that clear, since I don’t think we will make a public announcement as Arduino when it comes to this particular matter.
The significance of having a company like Google to make their own reference design based on ours for their developers community is clear. We are a 5-men show with a small operation where we try to make the best possible for people willing to build prototypes to make it quick. Google is a huge company that provokes love and hate reactions to developers and users all around the world. If they touch something it can automatically turn into media gold, and gets huge visibility by millions of people.
The fact is that they mention the name Arduino at the Android developer’s page and we love it. People will design new appliances, devices, artifacts with us in mind. They are opening up the world of Android (mobile, ubiquitous, always online) to connect to the physical world by means of an Arduino compatible board. That is great, people will come to our servers, get our software, use it, and will end up getting Arduino boards and Arduino side products. Coincidentally we were launching the alpha version of our online store (http://store.arduino.cc/ww) the same day as the Google IO conference … it was totally unplanned … we are the lucky kids in the hood. this shows that open source is like everything else, if you work hard, good things happen to you.
When it comes to the real technical development there, it is an Arduino Mega 2560 compatible board with a USB hub that allows communicating to Android phones over the wire. It also means that they have had to design a library on the Android SDK that will allow the board talking back to the phone. We have been working in making something like that by ourselves (see for example https://github.com/1scale1/sweetbt/ that we have been developing during the last months to make Android phones talk to Arduino BT boards) and all of the sudden, Google made it so much easier. Funny enough they announced that they will come out with something on BT soon, we made the BT first and were aiming for the cable later. We should probably talk to each other now and bring the development together to a good end.
The potential of this is just endless, from people that will make their own small home appliances, to those that will manufacture and commercialize objects based on this. Computing everywhere is the goal, and this is an enabler in the age where 70% of the computation actions will happen on smartphones. Google just opened the door for Arduino to be part of that game, and not the back door, but the front door. We were introduced at their keynote!
I am happy to add that one of my colleagues at 1scale1, K3, and Medea (Andreas Göransson) will be presenting the BT version of the above mentioned technology at the IMAC2011 conference next week. Our work as researchers becomes, all of the sudden, twice as relevant since there are potentially endless real-life scenarios that will be prototyped by people all around the world by means of a technology very similar to the one we created. It feels good to know we are inline with the rest of the IxD research community even if we count with a small fraction of their resources.
Image credit: mozillaeu CC:BY