Views and a Conversion
Tuesday, February 1st, 2011Back in July I blogged about the maturity of KWord. Or, more accurately, the lack of that. I attacked the problem head-on of why KWord is not really used for serious work. In this blog I want to revist the issue and show the progress made since then.
First, a little look back. Since the KOffice2.0 release now 2 years ago we made various releases with the 2.3.1 release being the most recent. The amount of features added and bugs fixed in each release is nothing short of amazing. Yet, the most heard complaints are of simple issues. Things that stop even the least demanding users from using it daily. In my last blog I suggested user profiles in the form of personas as means to focus on a solution. And this has had some good effects!
First the unexpected happened; several people disagreed strongly with the goals and wanted to continue rewrites and new features with as goal to make things faster and to implement features required for MSOffice compatibility. This caused discussions and a realisation why we were not making progress like we wanted to; different people were pulling KOffice in different directions.
After this was identified the pieces started to fall into place; we lost a lot of users from our last stable release of 1.6 till now. We lost a lot of developers or potential developers too because the koffice codebase kept on growing and with all the dependencies was not at all easy to compile. Next to that we were going more and more into the direction of a pure office suite. I’ll get back to that later, but I think we have to admit that a pure office suite is not exactly all that exciting as a spare-time hack-project. Many developers are not using a word processor or speadsheet/presentation app often enough to decide to program on it too.
We live in a world where MSOffice is present on the vast majority of office computers. This has lead to the conclusion we need to be good at interoperating with it if we want to compete with it. True enough, but I think the real question we forgot to ask is if we want to compete with MS and LibreOffice in what is essentially a saturated market. Any market share we want is at a cost of those big two.
The way forward for KOffice has been to first re-establish our goals and focus on those. Focus is best described as deciding what not to do. The decision was made to not add features that benefit MSOffice interoperability if that hurts KOffice’ goals. This decision has lead some developers that earn their income with creating exactly that, to fork KWord and take some applications like the databse app and the painting application with them that actually don’t fit very well in an office suite. This splitting of paths is a sad thing, but here in KOffice we are grown ups so we’ll live and a lot of good came out of it too. The positive effect is KOffice can gain focus on our actual goals.
So what are the goals of KOffice?
The concept of a word processor, a spreadsheet and a presentation application are all useful, but at the same time its not exactly a field that is ground breaking and it doesn’t really attract a lot of new users. If you want to become significant; you end up copying MSOffice, and you would not be the first to try.
The vision for KOffice is one where you can become productive and edit plus do professional layout of any type of content. People working in some office create a lot more than just text documents. Look around in soho and you’ll see what I mean.
The vision for KOffice decouples the applications from the content they contain. A word processor becomes a page-layout application. A presentation application has slides and animations.
Then as a separate pillar there are the content types; text, a vector graphics (for your arrows, circles etc), even a spread-sheet shape.
See what we did here? We brought back what it is that people expect from an office suite, but we didn’t get ourselves stuck in that 30 year old concept. With little effort the user can stop using his word processor to, well, edit text and instead she can turn it into a music-score editing application. She can edit and print knitting patterns. The possibilities are endless and since any of those can be provided as plugins to the main KOffice all those add-ons can come from any 3rd party.
Ok, I’m getting ahead of myself. I’ll try to be more clear about the ideas I have of the direction of KOffice in future blogs and if you have some ideas please share them in he comments.
My idea for KOffice is to make a set of applications that help people get their work done by being fun and with those plugins there are unimagined possibilities to get users to have fun and to get more types of work done quicker. Specifically the idea of what an office suite is should be challenged. Its useless to try to compete in an already saturated market by just copying the competition. Just like with KDE4 its much more fun to build a platform that allows both the old and imaginative new usages.
A first step has been made; KOffice is now split up and it moved to git. You will find the core libraries and the applications in koffice.git and next to that is a koffice-plugins.git. These are the new core of koffice and maintained by the koffice developers. Next to this are the plugins that are not (yet) part of the core. Some of them challenge what it is that an office suite should do. The music shape was a google summer of code project by Marijn Kruiselbrink and it allows the word processor to be turned into a musical score editor. Its not finished and looking for developers. There currently already are 6 projects available on git.kde.org; projects.kde.org/projects/playground/office
This split setup has the huge advantage that downloads and compile times will go down significantly. With the first release of koffice after this split and packages are made by distros it also will mean developers can compile and change plugins in a matter of minutes because they live in their own git repos. No longer multi hours waiting times.
The newly strengthened goal of KOffice aims to make it easy to extend KOffice without having to modify the main KOffice source code. This means that the core devs can focus on making the applications usable while you focus on creating that cool knitting-shape or guitar-score shape for your girlfriend



