The second day of the Linux Foundation Collaboration Summit started with breakfast and scoping out the possible talks to attend to. Many of the talks looked interesting, but I wandered to the MeeGo workgroup room according to my original plan and set up my Flipcam to record the sessions (the cheap mock Gorillapod proved to be worth the money several times over this day!).
First of all Dawn Foster, the MeeGo co-Community Manager from Intel (Quim Gil of Nokia being the other) introduced herself and asked us to introduce ourselves too, with three words. That proved to be a funny experience and it was even funnier looking at my attempted recording of the introductory round (though I succeeded in pointing the camera at the right person with surprisingly high percentage!). There were plenty of Nokians, Intelians (though I had to wonder how many of them know Walter) and even a person from Adobe developing Flash. Of course Bergie was there too, after all, he was the first person I met on previous day, Wednesday arriving to the venue. Ericsson had people attending the workgroup, as did Igalia and Collabora, and, of course, Canonical as well. In my hazy (feverish) state I forgot to discuss with Robert McQueen of Collabora more, it would have been fun to discuss the state of affairs of Linux, open source and Maemo in Cambridgeshire area.
After the roll-call Arjan Van de Ven, Senior Staff Engineer of Intel gave us an overview on the technical aspects of MeeGo. MeeGo is a personal OS for personal devices, and as Imad mentioned the day before, MeeGo plans to integrate upstream projects to be released every six months to nice bundles that manufacturers can use as a basis for the software stacks of their products. The grand plan is to make MeeGo a standard that can be used with standard Linux applications with least effort of porting effort, and Nokia will make efforts in synchronizing MeeGo with Qt releases.
Qt and C++ will be the languages of choice for development for MeeGo. Compliance testing may assume the applications are done on Qt. Judging from this, GTK will be phased out from the stack, which I think is a shame. Python can be used for programming too with Pyside, but it might not be available on every platform MeeGo will be released on. Browser hasn’t been decided on yet, it could be Fennec or Chromium, as it’s just an application. Webkit will be offered as the embeddable HTML viewer.
On the hardware side both ARM and Intel will be supported:
We as MeeGo don’t want to have one-time hardware-specific forks like Android has had.
Hardware patches, as other patches, should be submitted upstream because of this policy. Only devices that agree on the rules set by MeeGo can use the MeeGo logo and trademark: Devices need to ship with the full MeeGo stack and the application-level API must not be broken, so patches should be applied to the stack. There are plans for MeeGo application store as with Maemo has the community repositories, but proprietary stuff will be centralised either on Ovi Store or manufacturer-specific stores. There might be restrictions imposed to what can be installed to the devices by the manufacturers and the operators. [slides]
Next Greg Kroah-Hartman from Novell told us about the netbook UI. There was some video from Beijing that apparently presented the leaked UI. Novell is contributing to the Netbook quite a lot, so there’s a lot of Novell stuff going to the Netbook version: Banshee, Evolution, MobileMe, Tracker. As such, C# is included with the Netbook version and that can be used for development as well. The browser is going to be Chrome, and the aim is to have similar power/battery usage as Windows XP.
Decision making is important in every project. Quim told us about it in his presentation after lunch (Mexican menu in a Japanese restaurant was somewhat… disturbing is the best way to describe it) – by scribbling on the flip board (checking the notes from his N900 now and then). In hindsight someone should’ve taken pictures of all the scribblies Quim drew, but oh well… The basic idea of the decision-making is that there’ll be working groups for specific areas of development that make the big decisions – such as for handheld UX, netbook UX etc – but that for most of the stuff, it will decided as on every other distro out there.
Marcel Holtmann of Intel continued by offering us an overview of the connectivity framework used in MeeGo. It is built mainly on oFono, connman and Bluez with tight interaction: similar user interfaces and functionality overlap in the projects. connman controls all the radio on the device, it handles setting the device to flight mode, and on the todo list for it are for example statistics and counter interfaces, portal and location detection (I really wish this would come to Linux in general, hotel wifi authentication http catchalls are such a pain!) Wimax is a whole separate stack, controlled by connman, but LTE will be controlled by oFono. Currently there is nobody doing the mmsd and there is no open source mmsd implementation. VPN implementation isn’t ready yet, so far it supports Cisco VPN’s but OpenVPN support is coming up soon, too (WOHOO!). [slides]
The last officially formed session was the MeeGo Technical panel with Sakari Poussa, Dawn Foster, Arjan Van de Ven and Andy Wilson. It shed some light on why MeeGo was formed: the goals and perceived methods to achieve them were considered so similar be the two companies that they figured the benefits of combining the efforts would outweigh the bad, but of course some negotiations were needed to make the most important platform decisions.
The panelists didn’t think working groups would cause a lot of decision making overhead as they are not meant to micromanage everything. Most decisions should be done by upstream developers on mailing lists, bug reports and team meetings in any case.
Although future MeeGo devices willh have the possibility for the operators to lock the phones to their network, Quim did reminds the audience that if a Nokia device is bought directly from Nokia store or online shop, there will be Methos of unlocking it, if it’s not outright unlocked by default.
Finally we had a quite uninformal discussion about translations for MeeGo, led by Intel’s Margie Foster. The discussion was about the translation tool, Transifex, quality control, best practices and teams.
I’ve got some experience on translating software to my native language, Finnish. At one point I was an active member of the translation community of Finland due to personal interest and my job. My line manager at Nomovok, Timo Jyrinki is the team leader of the Finnish translations in Ubuntu and GNOME, and during my more active years in the Finnish translation community some of the knowledge rubbed on me too.
Out of interest I found my way to MeeGo’s current translations and checked out the Finnish translations. Some of the translations were in an abysmally bad they literally made my eyes water. I was horrified when I was told that someone had been paid to do those translations (getting paid for translating open source stuff is good, doing a bad job at it is not). I couldn’t keep my mouth shut but asked what kind of quality control is there for the translations, and how is MeeGo as a project going to make sure that translations pulled from upstream aren’t written over or edited to be worse than they originally were – since I know cases of this happening too. The best way I know to make sure the quality of the translations are consistent is to make the amount of contributors consistent and big enough. If you have done translations for Ubuntu, perhaps you could have a look at doing translations for MeeGo as well?
The evening party was organized by MeeGo and it consisted of drinks and tapas at Dosa on Filmore/Post. I had lengthy discussions with Ryan Abel, Randall Arnold, Quim Gil and Ronan MacLaverty, and couple of other people whose names I’ve probably managed to forget.