I’ve got plenty to tell about my experiences of our two month trip to Silicon Valley, but I’ll start with telling about the conferences and events I’ve attended. I’ll start the story with the most important and the biggest one, Linux Foundation’s Collaboration Summit which was held in April in San Francisco, at the Hotel Kabuki.
Unfortunately I had a flu at the same time so some of my memories of the sessions are a bit hazy, but not to worry! Before the summit we attended WhereCamp, an unconference about geoinformation, maps and everything related to that. (I’m not too much into location information, but my partner is, and I tagged along.) The organizers gave out five Flip UltraHD camcorders, and we got one! So I naturally used mine to record the sessions, which turned out to be a good thing, since the MeeGo Workshop on Thursday was not recorded by anyone else. I’m still in process of editing the video files into uploadable format – my laptop and Linux applications for video editing seem to be incompatible combination – but I promise I’ll upload the stuff soon! (Keep tuned to this channel!)
The Linux Foundation Collaboration Summit was held in San Francisco on the 14th to 16th of April, 2010. Because of the flu I attended only the two first days, but that was plenty of action! Our hotel is down south at Sunnyvale so I had to find a way to travel to downtown San Francisco. I don’t have a car or drivers licence, so Caltrain was the only viable option, and that was plenty of adventure! I did plan to use the public transport in San Francisco, but it was too much for my hazy brain and I ended up using the taxi from the train station to Hotel Kabuki, where the conference was held. Being afraid of heights traveling on Caltrain was an experience, as the carriages were double-decker (see picture).
We visited Japantown on the Sunday previous to the conference so I’d know a bit about my surroundings, and it was a good decision. The hotel the conference was held is very pretty, and it’s next to a shopping centre full of Japanese shops and restaurants. It helped a lot with my navigation later!
Arriving to the venue on Wednesday we got breakfast and while eating my croissant and drinking my coffee, Elizabeth introduced me to couple of people, including Landon Jurgens from GE. I also had a little touch with fame as Bradley M. Kuhn joined our group and we talked, among other things, about Star Wars memorabilia. Geek, me?
First keynote was held by Jim Zemlin, Executive Director at The Linux Foundation, justifiably. He welcomed us, and talked about the State of the Linux Union. He told us about the reasons why Linux is so successful, but reminded us about the challenges the ecosystem faces too. As a funny sideline he showed us a video comparison of Steve Jobs describing the iPad: “wonderful, amazing, magical, easy” and beloved RMS describing GNU/Linux: free, freedom, freedoms, be a good neighbour…
I think one of the biggest reasons Linux is becoming more and more successful is the omnipresence of electrical and information technology related equipment. Even if personal computers might be running Windows or OS X or other non-Linux operating systems, there’s plenty of appliances, mobile phones, networking hardware, cars and DVR’s around.
The biggest problem with the heterogeneity of the open source community and projects – especially those who are responsible to the paradigm shift of computing infrastructure from locally owned and operated hardware/software combinations to computing as a service industry – is that there has to be extra vigilance to fit and finish what has been started and not lull into complacency with releases of half-baked services. This problem can be addressed with proper management of the project, setting targets, tasks, having testing at the heart of things and making quality assurance a top priority. [video]
Following Jim’s presentation, Daniel Frye with his IBM keynote discussed the lessons the company has learned through their decades of commitment to Linux and open source development. I found this presentation probably the most interesting of the morning sessions and enjoyed the view to the history of the IBM participation. One of the most important points that can be seen in retrospect are that it’s a lot easier to join an existing community than to create a totally new one, and that code drops are a difficult and dangerous way of participation; incremental edits for delivering change is usually better! [video]
The last presentation before lunch break was a panel about cloud computing. To my great disappointment Mark Shuttleworth wasn’t at the conference and didn’t take part in the discussion (although there were plenty of Canonical employees, including Pete Graner). I’m not a great connoisseur of cloud computing, but there were couple of points I managed to catch up: There’s vendor lock-in with the different cloud providers! I hadn’t really thought of that before, and it surprised me a bit. This makes it a bit risky business to trust your stuff to cloud services, but an idea of smaller vendors to create a standard by sharing code and infrastructure sounds mighty good to me. I’ll definitely need to add cloud computing to one of the subjects I need to read more about! [video]
After lunch Ari walked on the podium wearing a Maemo shirt to give his keynote about MeeGo, the free and standard Linux for the mobile industry. As we know, MeeGo is the result of the recent co-operation incentive of Nokia’s Maemo and Intel’s Moblin. There’s great hopes for this one, but I have been more or less out of touch of the real ideas behind MeeGo since I happened to be very, very sick on the week the new project was announced.
Having been watching the Maemo development from close range for quite some many years, the fact that MeeGo is aimed at not only smartphones but also TVs, tablets, car systems (and trains, planes etc) and netbooks requires some mental adjustment. MeeGo will be using Qt, Telepathy, WebKit, Fennec, RPM and GNOME, so there are some changes to Maemo. I’ve looked at the community response and the change to RPM has been the hardest to digest so far by the people.
Linux Foundation hosts the some work under MeeGo workgroup and there’s already considerable amount of collaboration going on with the platform, as Acer, Asus, BMW, Cisco, Careland, CS2C, Ericsson, DeviceVM, Gameloft, EA, Kingsoft, Linpus, Mandriva, Metasys, MontaSys, Neusoft, Novell, PixArt, Red Flag and others have already joined the MeeGo community. In the meantime first release of MeeGo has already been done in form of a code dump. It’s not really usable yet as it doesn’t have a GUI yet. N900 is the first reference device for MeeGo though, so there’s some hopes for the “older” devices :-P [slides, video]
The kernel panel was mainly uneventful. The new kernel will have better SSD support and some other new features such as a Linux equivalent of DTrace. Even if there are new features in kernel, the kernel developers keep getting older and there might not be as many new contributors to it as there has been in the past. Part of the problem is that the it’s not regarded as cool to be a kernel developer as it used to be. The code the old developers are writing into the kernel is so specialized and done by long time experts that it might be hard to understand and get used to by newer contributors. Long time contributors are well motivated and dedicated to their work on the kernel though – partly because most of them are employed to develop the kernel – so perhaps all isn’t lost after all. [video]
Imad Sousou of Intel and MeeGo technical steering group spoke after the kernel panel. He started off by mentioning his wish that since Ari had talked earlier and covered most of the topics he had in his presentation, perhaps he wouldn’t be asked the hard questions since Ari had already answered them. (This wish the audience later broke, by asking hard questions about proprietary blobs Maemo has had in the past. Ari answered them as diplomatically as possible, telling that while the project itself aims to be 100% open source, there might be proprietary components, such as device drivers, Skype etc. distributed by the vendors of the devices. Nokia will be one of the vendors, so, there will be proprietary components in the devices Nokia ships. This didn’t come as a surprise to me.)
What Imad stressed in his talk is that MeeGo plans to work very closely to the upstream.
If you want a kernel patch into MeeGo, send it to kernel upstream instead of MeeGo. If you want a Qt patch into MeeGo, send it to Qt.
MeeGo will also have a six month release cycle. First one is going to be released really soon (hopefully) as the schedule is aiming to release every May and November. [slides, video]
Why Your Life Might Depend on Your Code from the DFS Deutsche Flugsicherung (that’s the German Air Traffic Control) was mind-boggling. I’ve not watched the video yet, but I know it includes the video they showed us, and instead of yapping about too much about what the presentation was about, I suggest that you watch the video of the presentation. I can’t make justice to it by trying to condensate the points. [slides, video]
The presentation about how to prevent communities and co-operation was hilarious. Josh Berkus engaged the audience with his Over The Wall presentation. He had condensed how to stop global warming in a few easy steps that make sure you’ve built a wall between your developers and the community and stop contributions. The first premise you need to apply to the rest is that your developers do not take part in the community and all the releases are done in code drops, as thrown over the wall.
Ingredients include: difficult tools, preferably proprietary, homegrown, outdated or non-gui stuff, going all the way from CVS to CMS, via buildsystems and bugtrackers. The team needs to be overworked, and you need to make sure it’s kept that way: otherwise they’ll be babbling with the community! To make sure no communication happens, meetings need to be closed too – teleconferences make things hard, but make stuff impossible by having closed meetings. If you have a means of communication, obscure it as much as you can, and feed the trolls to make the community work against itself. Leave everything to be managed by one person, one person for webpages, mailing lists, etc. Use legalese everywhere where possible, but if you really want to tick people off, just be silent. [slides, video]
Chris diBona used Josh’s slides backwards to tell how Google does Open Source. Basically everything is in reverse! But in the end, Chris started using his own slides. Mootpoint was, that Google has released so far 915 projects as open source, and that more than 200 Google employees are patching and contributing to upstream projects. The message that also was included was that looking for enemies within the Linux and open source community isn’t beneficial. For Android to succeed MeeGo doesn’t have to fail, and indeed, in Android there’s plenty of stuff that has been originally contributed by Nokia employees. At the end of his presentation Chris won over the hearts and souls of the audience by giving every attendee a free Nexus One! [slides, video]
The first day of the event was brilliant, and we moved to a Japanese restaurant to an afterparty. I was getting tired after waking up at five o’clock and left the party around eight o’clock, to recuperate from the day to be ready for the next day. That’s up in my next blog post, coming up soon on this same bat channel! If you want to read a more accurate description of both the first and second day of Linux Collaboration Summit 2010, I highly recommend reading this Qaiku thread, written by Henri Bergius.