Porting LibreOffice to Android - My New Crazy Project
Free/Open Content for promo
Now
* we have cc music (which works with Amarok's Wikipedia, lyrics and CD cover downloads features,
* we have HQ blender videos (like sintel) to show multimedia power (moving pictures are always attracting),
* we have documents in ODF- and MS-formats to show the import/export capabilities,
* we have pictures for your favorite photo-management software (like digiKam or Gwenview).
The next step would be to create compressed archives to make it possible to download the whole packages but I haven't found a good place to put them.
You can download the content onto your promo machine (e.g. I put it into my demo-user home directory) or integrate the content onto live CDs (or more likely DVDs when talking about videos).
With Suse Studio you can create a live CD/DVD/USB-Stick within a couple of minutes. You can choose the applications you want to have included and you can upload all the demo content.
Perhaps the creators of live CDs find some space on their media to include at least parts of that demo content. IMHO it would significantly increase the experience for a our users / testers.
Android = Linux-on-anything-with-a-screen
Here we are in 2011. Obviously, the year of the Linux desktop, right? You’d hope so. It’s not like there hasn’t been plenty of time to make it happen. Red Hat, Canonical, Novell, and many other companies and individuals have been working hard on it for quite a while. And yet, very few inroads have been made. Sure, Dell has been selling Ubuntu on some netbooks with limited success, but that is hardly a victory.
In 2007, Google unveiled the Linux-based Android smartphone platform. The first phone wasn’t released until a year later in 2008, along with the Android source code. Now, in Q4 2010, Android is the best-selling smartphone operating system in the world, surpassing Symbian, BlackBerry, Windows Mobile, and yes even iOS. In 2 years, it went from zero to total domination, with no signs of slowing down. Not everyone agrees that Android is the best smartphone OS (ahem, Gruber), but it’s impossible to say that it isn’t a success. And it uses Linux. In fact, I believe you could say that Android is the most successful and widely deployed Linux product ever. So why haven’t we standardized on it for other non-smartphone uses? It would require some work, but at least there is some chance it could work out.
Initially I was going to try to call out all of the infuriating things about developing on desktop Linux, but I got tired. All of that has been said elsewhere by people smarter than me. The main reason I’m really behind Android is that it dramatically reduces the amount of fragmentation. It’s just not possible for a hardware vendor like AMD or NVIDIA to support the multitude of distros out there. If you told those guys they only had to support a couple versions of Android, they would be able to deliver much higher quality of support.
The Eclipse IDE, Dalvik VM, and Android application framework are all great assets and deliver a far superior development experience over standard Linux. You get that for free. If Java isn’t your bag, though, you can always use the Native Development Kit to write in C, C++, C#, or whatever you want. I would love to see Clutter on Android, for instance. And Node.js/gjs. Or any number of other great projects.
It’s already possible to run Android on a PC via the Android-x86 project. They’ve added basic mouse support, as well as hardware accelerated OpenGL ES2 via Mesa (on Intel hardware). I have a Cr-48 running it here, and it works amazingly well. Even wifi works.
How to work with OBS via slow connections
The openSUSE Build Service Books have a new chapter called HOWTOs. These will be written for asked questions, the first one existing is how to work best with OBS if you have limited bandwidth. There are multiple methods to avoid large downloads or even uploads of large files (like tar balls) and let just the server do the work…
LibreOffice 3.3.0 final available for openSUSE
I’m happy to announce LibreOffice 3.3.0 final packages for openSUSE. They are available in the Build Service LibreOffice:Stable project. They are based on the libreoffice-3.3.0.4 release. Please, look for more details about the openSUSE LibreOffice build on the wiki page.
The openSUSE LO team hopes that you will be happy with this release. Though, any software contains bugs and we kindly ask you to report bugs. It will help us to fix them in the future releases.
False error during update
You might see some installation errors about missing extensions when updating from OpenOffice.org, for example:
ERROR: There is no such extension deployed: com.sun.reportdesigner
Please, ignore them. They are caused by a bug in the OOo packages and can’t be avoided easily. They does not affect the LibreOffice installation!
More known bugs
Other information and plans:
LO switched to a time based schedule and more frequent bug fix releases. The purpose is to keep quality and avoid infinite RC phase at the same time. The idea is that all serious blocker bugs can be found and fixed within few weeks. Then the application is ready for masses who want to enjoy new features and more complicated fixes. The history says that bugs in less typical scenarios are found weeks after the release. Such bugs will be fixed in pure bug fix releases and released few weeks after each other. It means that more conservative people should rather wait for the 3.x.1, 3.x.2, 3.x.3 releases. We hope that it will help all people to get faster what they want.
We are already working on LO-3.3.1 bugfix release. I have just published 3.3.1-rc1. The final 3.3.1 release should be available within 2 weeks.
I survived FOSDEM 2011
Friday
The fun has started at Prague airport already. Due to (to put it mildly) incompetence of the printing shop I'm not gonna name, Kendy and me had exactly 10 minutes to dispatch 45 kilos of swag through the check-in -- that meant distributing the load into our luggage and shipping the remaining boxes as overweight ( including paying criminal surcharge for it). I hereby apologize to Czech Airways check-in clerk for spoiling her shift with it ;-) Getting the material from Brussels luggage claim to the train station was rather challenging as well, but fortunately there were some helping hands waiting for us at Brussels Nord (thanks Thorsten, Rene and Kohei). In Kendy's words: "The experience doesn't necessarily have to be positive, but it definitely has to be remarkable. We would have nothing to talk about otherwise."Friday's beer event (my first ever) was also an enchanting experience. Met Caolan and Florian 'flr' Reuter for the first time (who, in slightly boozed state, asked me "Hey, so you are my successor at Novell?"). It was amazing to see LibreOffice crew almost having blocked the street in front of Delirium Cafe :)
Saturday
Pleased to meet more LibreOffice crew members (Chris, Bjoern, Jacqueline), some of them for the first time (Cor, Charles). I've spent most of the day in and around LibreOffice booth, talking to people and selling/giving out swag, but there was plenty of time for other stuff as well. I've seen lightning talk by Rudolf 'Ruik' Marek on coreboot (purely as his fan club member, he's FEL CVUT alumni just as I am) and also Nokia's Kenneth Christiansen presentation on challenges encountered by devs of mobile applications. Managed to have my empty cellphone battery charged by a device made of hairclip (thanks, Pavel). Also made a tour around the other boots, to grab some interesting swag (there'll be another blog post on this in the near future).Here are some photos from the day (left to right, up to down: unpacking the swag; Caolan and Fridrich; LibreOffice crew in hot hot hot T-shirts; LibreOffice crew talking to visitors -- Jacqueline, Bjoern, Thorsten, Kendy; more visitors chatting -- Cor and Chris; hungry Kendy with portion of vlaamse frieten):
The fun continued until late in Volle Gas restaurant, where LibreOffice crowd & its fan club and friends moved after FOSDEM venue closed. Got introduced to Jim Blandy ("that Madeira guy") and talented Mr. Seward -- more than pleased (insider joke: having Wikipedia article about oneself is an ultimate tool to impress anyone, not just women ;-) ). I was slightly underwhelmed by the quality of food, but hey, for having a really good rabbit one has to go to Malta.
Some more pics to share (left to right, up to down: the whole crowd in Volle Gas; Fridrich, Flr and Kohei; genius' corner; shiny happy Sweetshark):
Sunday
Spent morning in the LibreOffice booth, boosting our swag sales with Cor. The highlight of the day is clearly this Sun/Oracle executive in LibreOffice sweatshirt:As LibreOffice devroom has been opened today and we were pretty much short on crew, there was unfortunately not much time for me to see some other presentations. Bad luck, I heard Michael's talk has been fun (as usually, he knows how to make a show) and I was also curious about WoMoz ladies. However, within our devroom I attended Chris' fabulous presentation on LibreOffice design team, Thorsten's Impressive hacking talk and Kohei's Calc bright future presentation (as a camera (wo)man, not quite voluntarily *grin*). Time passed by quickly and unfortunately (or not, I was already feeling as if run over by truck ;-) ) we had to leave. With Thorsten, we managed to grab some delicious waffle (lot of cream, strawberries and chocolate) on the way to the airport, yummy :)
And that, dear children, is finally the end of FOSDEM fairytale. I'm definitely coming back next year.
Smeegol NoGo MeeGo GoGo
Just came back from FOSDEM.
I also had a chance to talk with Jos about ODF Web and ODF Collaboration. Jos gave a great talk about his ODF Web Javascript Framework which emerged from his ODFKit efforts.
Jos had a very important slide in his talk which echoed my own believe: NO CONVERSION! This principle guided the design of his ODF Web Framework. NO CONVERSION simply means that Jos does not try to heuristically (aka lossy) map ODF to HTML and then map HTML heuristically (aka lossy) back to ODF. Instead Jos decided to have a clean 2-tier architecture which cleanly separates the content- and the view layer: ODF is content and HTML is the view. I think that’s the right approach. Even more: I think if you start adding “smart conversions”/”heuristics” and other “intelligent mappings” things will get ugly sooner or later. [And from my experience on OpenOffice.org filter hacking things will get messy sooner than you like. Always keep Murphy’s law in mind: What can go wrong will go wrong!].
We also had a chance to talk about Operational Transformation (OT) in the context of ODF. I tried to argue that what is really missing in ODF is a list of “atomic changes” a user can make to an ODF document. If we had this list of “atomic changes” we could build a transformation on top of it. For OT it is very important that you have “atomic” operations, since you need operation transformations for every pair of operation. E.g. if you have |OPS| operations you need |OPS x OPS| transformations. So keeping |OPS| small is quite important!
Assembling the list of atomic operations is a lot of work --- admitted. However it is work that every designer of an API needs to do anyway. I really believe that some input from the ODF API projects like Oracles’ ODFDOM, IBM’s Simple API for ODF, ANR’s LPOD and Jos’ ODFKit could really help.
Let me finish my post by a classification of change to an ODF document:

I believe that for change tracking we only need “atomic operations” and a way to combine them to “compound operations”. I don’t think we need to be able to track changes to the XML tree or the XML text. In fact I think it does more harm than good.
Google Code In – My Summary
It was my first time I mentored a couple of students during a Google sponsored project. It was possible to submit non-coding tasks as well. So I focused on promo stuff.
Results
Over all I submitted ten tasks (nine could be closed).
The first block of tasks (solved by Todor Stoyanov and Paul) was about the creation of a free/open content collection that could be shown during demos and presentations or could be integrated into live CD/DVDs.
The second block of task was covering KDE and FLOSS in the area of education (solved by TheOne and Giannis Konstantinidis). It started with a survey of needs of students, doing the survey, analyzing student tasks and ended with a concept for students how to promote KDE and FLOSS at their school (incl. promo material e.g. a poster, presentation, talking points for students etc.). One of the students is going to test it within his school. Isn't that rocking?
I truly believe that KDE and FLOSS (esp. KDE EDU and the openSUSE based Desktop4Education and Server4Education projects) have so much to offer for schools and students. We should do even more in this area.
Challenges
For me it was very difficult to set the level and the time needed to fulfill the task when I was submitting it. It depends so much on the skills and the age of the student. The task to find free music and test it with Amarok (support for CD cover, lyrics and Wikipedia information) would be easy for a student with installed KDE and with some experiences with free and open stuff. A student new to the open source world will need days to work out that (for him) difficult task.
Summary
All in all it was much more work than I expected, on the other side it was a wonderful experience to see how the students developed themselves over time (and how fast the tasks were taken). It was a great success and I am looking forward to the next time.
@my students: Thanks for your contribution. It was a great pleasure to work with you. Let's keep in touch. Let's keep on rocking the world!
