KDE PIM/Meetings/NL PIM Meeting
The NL-PIM Meeting is a variation on the theme of the Osnabrück Meetings. For the past three years, KDE PIM has held meetings in Osnabrück every January, where the developers of KDE PIM get together at the offices of Intevation GmbH to spend one concentrated weekend of effort in improving KDE PIM -- programming, bugfixing and communicating effectively as only a face- to-face meeting can provide. This year, the KDE NL organization would like to ramp up productivity by scheduling an additional meeting, in the Netherlands, in May. This additional meeting provides a way to evaluate the effects of the Osnabrück meeting, evaluate the latest KDE 3.4 version, and plan KDE PIM efforts leading up to the KDE 4.0 release.
Dates and Times
May 27th to May 29th, 2005, in Annahoeve (Netherlands). We will be using the facilities offered by the convention center Wallsteijn.
The KDE PIM NL meeting is timed to coincide with several conferences in the Netherlands, so that the KDE PIM developers also have venues to discuss their work with people outside the KDE project.
- May 26th 2005, NLUUG Voorjaarsconferentie on Email and Groupware
- May 30th, 31st, Holland Open Software Conference
The following people have confirmed attending the KDE NL PIM meeting (assuming they are in range; Duncan might still be in Chile at the time).
- Cornelius Schumacher (SuSE, Groupware and Coordination)
- Will Stephenson (SuSE UK, Instant Messaging)
- Duncan Mac Vicar Prett (Instant Messaging)
- Daniel Molkentin (Kontact Integration)
- Till Adam (KDAB, KMail IMAP support)
- Tobias König (KAddressbook, handheld device sync)
- Adriaan de Groot (handheld device sync)
- Matt Douhan (Hasta AB, groupware)
- Benoit Gariod (Zaurus sync)
We hope for a few more, from the RSS and Handhelds communities.
The PIM meetings do not normally start with an agenda, but this time we have put together a list of likely topics to work on before hand.
- Discoverable interfaces for KOrganizer; this is an experiment with the user interface for KOrganizer, which has already started in KDE CVS in the lambda_reduce_1 branch.
- Palm support in Kitchensync; existing Palm Pilot support does not make use of the technologies in Kitchensync.
- Lots of new Syncees; Kitchensync's collection of Syncees is still limited, so there are PIM datatypes that can not be synced.
- Tenor support (desktop searching and metadata framework); this is Scott Wheeler's framework.
- Skype (or other VoiP) integration, like KPhone
- Resource based instant messaging
- revision of KIMIface with access to individual im systems per contact, and different modes of communication per system (voice/video/text)
- ongoing work on the MS Exchange plugin
The NL-PIM meeting is organized by KDE NL and the following individuals:
- Fabrice Mous (primary contact)
- Adriaan de Groot
- Bram Schoenmakers
- Tom Albers
Organizational details and the budget can be found on the KDE NL website for the PIM meeting.
This is the comprehensive NL PIM meeting report. The NL PIM meeting 2005 was sponsored by
- NLnet Foundation
- TrollTech A.S.
- NLUUG, Dutch Unix Users Group
- Annahoeve, Landgoed Wallsteijn
- Novell Nederland
- The city of Tilburg
From Friday May 27th until Sunday May 29th the developers of the KDE collaboration and groupware application suite KDE PIM (Personal Information Management) came together to discuss several important topics and to boost development efforts.
KDE is the leading desktop for UNIX and Linux systems, with work underway to make the key applications also available for Microsoft Windows and Apple Mac OS X. The KDE PIM application suite consists of several applications for e-mail, calendaring, messaging and more, which are also integrated together in the flagship application Kontact, a powerful replacement for applications like Microsoft Outlook and the Lotus Notes client. KDE and the KDE PIM application suite are developed as Free Software, which means that all code of the applications is freely available for anyone who is interested and that contributions from other people are strongly encouraged.
The meeting took place at the Annahoeve, which is a country house near Zundert in the very south of the Netherlands, close to the Belgian border. Developers from all across Europe, representing all the key KDE PIM applications gathered for coding work, together with usability experts who specialize in making computer software more user friendly.
The event started on Friday morning with several presentations from the sponsors and key developers with topics related to the meeting. After the lunch the meeting itself took off. Between this afternoon and Sunday evening the developers were able to fix several bugs, improve the user friendliness in a couple of places and to discuss several key topics, which will be discussed in detail below. During the end of the meeting many smaller discussions were held about upcoming work. The result of these smaller discussions is only now, about a week after the event, slowly becoming visible, with more interesting developments still going on.
Looking back at the event several very important results were made, most notably in the area of decision-making, which works best when the involved people meet in person. One of the key factors to the success of the meeting has certainly been the excellent location. The quiet area, away from crowded city streets, the nice weather and the luxury of everything being taken care of, including high-quality catering helps a lot in focussing on the issues at hand and stimulating healthy discussions. The event certainly would not have been as successful without the sponsors who made it possible to work in this location in the first place.
Results in Figures
- 66 commits during the meeting.
- 8 bug reports marked closed in the commit messages.
- One roadmap produced.
- One Kontact website redesigned, but not brought up live.
- One long-standing mess of timezone code refactored and made sane.
Perhaps the most important discussion held during the event was the overall roadmap for the KDE PIM applications. Roadmap discussions really require the developers to be physically together to be effective, so the event was an excellent opportunity for this.
The discussion focussed on the upcoming releases of KDE 3.5, the next generation desktop KDE 4 and the vision for the long term. The key factor for the roadmap is that there is not sufficient man power to develop for KDE 3.5 and KDE 4 simultaneously, so a decision had to be made on whether to participate in KDE 3.5 at all, and if so, when to move towards KDE 4.
Summarizing the discussion the following major decisions were made:
- KDE PIM will participate in KDE 3.5. The main development will stop August 1st, after which only bugs will be fixed. The two main features for KDE 3.5 will be improved user friendliness and incorporating most of the KO/PI changes into KOrganizer, as discussed separately below.
- During aKademy, the international KDE developer conference in August, development for KDE 4 will start. Specific features have not yet been determined.
- The long term goal is to make the KDE PIM applications focus more on workflow, and to make the applications easily extensible so the core applications can be simplified without removing power from advanced users. This is the long-term goal towards which the developers will be working. The large changes are expected for KDE 4 and later, though the first results might already be ready for KDE 3.5.
Roadmap discussions lasted late into the night. The complete roadmap document can be viewed below.
This part of the report was contributed by Ingo Klöcker.
Martijn Klingens, Thomas Zander and I discussed how to improve Sieve support in KMail. We discussed which filters should be uploaded and how we should present the status of the filters (server side vs. local) to the user. Martijn has sent an extensive report to kmail-devel.
Several people added smaller usability improvements to KMail (making menus more consistent within KMail, making shortcuts more consistent with other Kontact components, removing unnecessary buttons from the toolbar, progress screen for slow loading IMAP folders, show the message which is associated to an event in a separate reader window instead of in the main window). All those improvements were the immediate result of discussions between the participants.
Jan Mühlig and I discussed how to improve spam filtering and in particular the anti-spam wizard. Thomas also came up with some suggestions for improvements. Andreas Gungl (who didn't attend the meeting) implements those suggestions and has committed the first improvements recently.
Before the meeting, KOrganizer's development stalled. During the meeting, a lot of new development is planned for KDE's calendar application. Lutz Rogowski, maintainer of the KO/Pi project, joined the meeting to discuss a merge with his forked KOrganizer version with ours. The KO/Pi-project is a multiplatform PIM suite for Linux, Windows the Zaurus PDA. Thanks to Qt, it's quite easy to port an application to platforms like these. The software includes more features and bugfixes, and is optimized to sync perfectly with the Zaurus. Now, it's time to merge some of these new features back into KOrganizer.
A short summary:
- Printing will be improved;
- Better navigation between the views. For example, clcking on a month name opens the month view;
- KO/Pi's month view will be used in KOrganizer. This view represents multiday events better than KOrganizer's current month view. Some of KOrganizer's new features will be re-implemented;
- Todoview: Current implementation has difficulties with purging completed todos with uncompleted subtodos;
- A much more powerful recurrence system;
- Lots of minor improvements.
KPilot work concentrated on finding and fixing two bugs that had snuck into the code recently -- just before the KDE 3.4.0 release. These bugs were off-by-one bugs in buffer code, and were found after much harrowing examination of that buffer code. Patches were released and incorporated into KDE 3.4.0.
The KDE PIM website was updated a bit to reflect the new focus on people and development for PIM. This continues the trend of splitting the information about PIM into two sections: the user information about applications and how to use them is on kontact.org while developer information -- architectures, API documentation, developer histories and a who-is-who listing -- is on pim.kde.org.
A much bigger undertaking was the redesign of the kontact.org. The current site looks somewhat dated, and is a purely tables-based design which can be hard to navigate. A mockup was produced by some artists and this mockup was implemented with CSS and some additional PHP code. The new Kontact website is viewed by many as "much prettier", but it has not gone live yet.
Another point of attention for the Kontact website is the text content available on it. The current wording of many sections is developer-oriented, while the site is intended for users. Work continues in this area, but will require some attention from a PR person.
Good Places to Hack
Developers agree: this was a good place to get hacking done. Small-scale hacking works best -- you need to be able to get three to five developers in a secluded spot to get some real design work and decision making done; you need to be able to sit apart and really hack at a single bug; the whole group needs to be able to get together to talk about large-scale issues like the roadmap. In each of these respects the Annahoeve ws an excellent fit. With wireless covering most of the lawn outside, excellent weather (it can't be arranged for everyone though) and several rooms inside -- upstairs, the dining room, the bar -- available for single or group hacking, it was possible to be really productive all the time we were there.
Another part of good hacking is good food -- not only that, but good food supplied at the right time. With all the basic necessities (of course we need French bread and crab salad) taken care of, with enough coffee to start the brain cells in the morning, and beer to cool a fevered brow after a bug has been vanquished, the Annahoeve again showed its class. The nice thing about having everything taken care of is that you never need to lose your stride by thinking about the mundane: there is no restaurant to choose, since it sidles up to you instead. Fabrice also helped by dishing out chocolate, drop (licorice) and cookies liberally throughout the day.
It was a good place to hack.
KDE PIM Roadmap
Roadmap discussions were held on Friday evening (the mosquitoes are a bit of a distraction) and again on Saturday. Cornelius wrote the following comprehensive roadmap document.
We had a session about the roadmap for KDE PIM at the KDE PIM NL meeting. Here is what we came up with. This should serve as a starting point for a discussion. The goal is to agree on a roadmap for KDE PIM for the releases up to KDE 4. It's not set in stone, but it certainly would be very beneficial, if we can state, what our common plans and goals are. If you have comments, objections, ideas, please don't hesitate to reply.
The basic assumption of the roadmap is that we won't be able to do feature work in two different branches, while porting one branch to Qt 4, because we don't have the resources to cope with the inevitable merging hell which would result from this. So we propose to concentrate on the 3.5 release and start Qt 4 porting and KDE 4 feature work when 3.5 is basically done.
- Next release: 3.5
- Feature Freeze: August 1st
- Includes merge of KO/Pi changes to KOrganizer
- Includes usability improvements based on Openusability.org suggestions
- Release with rest of KDE depending on the common 3.5 release plan
- Porting to Qt4
- Start porting kdepim to Qt 4 at aKademy in August.
- Reasoning: We won't be able to do the porting in parallel to doing 3.5 stuff and aKademy is a great opportunity to start the porting while many of the people having experience with it are around.
- KDE PIM 4
- Goal: Get KDE PIM to the masses. Target large non-geek audience, not only developers and power-users.
- Manage complexity by removing unnecessary functionality, moving rarely used functions to extensions, make user interface leaner, cleaner and more directly usable.
- Focus on workflows.
- Adapt to the user.
- Lots of ideas and plans are already floating around, you can add them to the playground on pim.kde.org if you like.
- We will do more brainstorming.
- Areas in the libs which need changes for kdepim: kresources, libkabc.