So what should one do on 08.08.08? Get married? Get divorced? Or the thousands of things in between? Openmoko picked this day to release the 2008.8 software update (code named A(pril|ugust)SU) and I will travel to Mechelen to catch up with some friends from foreign countries.
Let us take a small look at the release. Doing this in the Good, the Bad and the Ugly (Queen) style. But keep in mind Bad and Ugly are only there to be fixed, so this part is actually there to keep good engineers happy and focus on constantly improving by turning the Ugly into Good for the next release...
During the last six month I have added features and fixed bugs in our bootloader, kernel, xserver, enlightenment, distro and tried to punch the Qtopia parts we use into shape (Qtopia gave me so much wonderful real world examples for our Software Engineering class at the FU Berlin... *lovely*). So I'm really happy as all of these things I have created during that time are under Free Software licenses from day one! I'm also glad to have worked on all these different areas. It is fun to start in an application bug, go down to the kernel, hardware and back to user space.
Erin, Matt, Olv, Jeremy, John, Julian, Tick of Openmoko wrote code that is shipping in the Om2008.8. So this is the first release where our taiwanese friends at Openmoko started projects or contributed to projects that are used to power our hardware. John is an upstream OE contributor, Matt is our local kernel guy and Linux contributor, Tick is maintaining opkg (that o-hand.com helped to create) and is also maintaining the packagekit backend for opkg. We are slowly breeding Free Software contributors, explaining them the need of asbestos underwear. I'm totally excited as this is just the beginning.
We have started to focus on making our phone usable. This means we will integrate working solutions where they are available, we will improve them where possible, we will create new solutions were required. So we have picked connman and patched it, we have started FSO because there is nothing else.
We have worked towards the goal to make our hardware usable as primary phone. We have established our wonderful QA unit that systematically tests our software, PM and QA sit together and talk about the issues, the state, the way to go, sometimes the QA room is even crowded with engineers trying to pinpoint the issue. A wonderful improvement over what was there before.
Our kernel, u-boot, X is a lot more stable, suspend/resume can be almost trusted (well I know how to kill it...). We started to work on performance glamo waitstates, hardware ECC...
We have a support list and a workflow how to provide upgrades to our users
I use it as my primary phone and work hard for the day that my mom can use it just as she is using kubuntu today.
The Bad (keep in mind this can be changed and will be changed)
I had difficulties following the WebKit development and more difficulties reviewing and writing patches. So the next weeks I will wait for the ASU bugs to queue and focus on reviewing patches, SVG and acid3 for QtWebKit.
There are many reasons why not to use the Freerunner and our software update as primary phone. Our wifi driver has issues, our kernel has issues, Qtopia still has fundamental issues, our modem is giving us a hard time, the battery lifetime could be a lot better, the boot time is incredible long.
We should focus on delivering a good polished product. Currently the bootloader is initializing our graphic chip, the kernel resets, we see a white screen for awhile, init shows an init screen, black as X is starting, e is starting an init screen. So the bootloader, kernel, system level, X, WM guy need to sit together and make that smooth, no mode switching, sane handover...Software and Hardware people will have to work together, hand in hand. Stop thinking of boundaries, approach the people you depend on, also approach the people that depend on your work. Be a universal person and don't be afraid to touch the kernel, it is just a C program anyway. But then again I have high confidence that this will happen.
I love the peopleware book and recommend it to everyone. It is an absolutely must read. Too many of our engineers worked overtime during the creation of this product. We will have to force people to leave the office early.
We have to get our stuff upstream. We have cool u-boot patches, we have s3c244x linux patches, we have kdrive/x patches, we have some OE patches, we have stuff to propose to freedesktop.org for virtual keyboard handling. In the future we should try harder to get our stuff upstream from day one. We should have the resources after the release to do so. It is something that we have to do now.
Oh well, QA asked us to not release due the stability issues they see during their heavy testing. We do not meet the quality standards our QA team has for an ordinary phone (the good thing about hiring someone that didn't know Linux and Free Software). On the other hand they didn't see the OM2007.2 factory image. I think OM2008.8 enables a Freerunner to be used in friendly user trials, maybe OM2008.8.1 will make QA more happy. Until then we will release ealry and release often.
I hope you enjoy the upcoming release, I do, happy hacking