Interview: Mozilla Lightning and OpenOffice.org
-Louis Suárez-Potts, Stephan Schaefer
Conducted over the period following OOoCon 2006, where Michael Bemmer, the Engineering Director at Sun Microsystems and in charge of development of OpenOffice.org and StarOffice, presented the OpenOffice.org roadmap, this interview focuses on a particularly interesting element: a Personal Information Manager (PIM) that would work closely with OpenOffice.org. Stephan Schaefer, a lead engineer at Sun's Hamburg offices, graciously assisted in framing the questions; my thanks. I'd also like to thank the Mozilla Calendar community for helping with some of the answers. And of course my thanks to Michael.
During his OpenOffice.org roadmap presentation at the OpenOffice.org Conference in Lyon in September, Michael Bemmer mentioned the development of a Personal Information Manager (PIM).
Can you tell us exactly what is under development?
We are currently contributing to the development of the Mozilla Lightning project. Mozilla Lightning is an extension for the Mozilla Thunderbird email client, and covers feature areas like calendaring and task handling including backend support. Thunderbird provides the email and address book functionality.
Support for various calendar servers and protocols will be added over time. Synchronization with PDAs is planned for the future, as well.
What led to the decision to develop a PIM?
Sun's StarOffice used to have a PIM including a simple calendar server, called StarOffice Schedule, up until version 5.2. When OpenOffice.org was founded, this functionality got dropped, due to technical and resource reasons. In addition, many configurations of Microsoft Office include Outlook. Finally, OpenOffice.org and StarOffice users, as well as product reviewers, frequently ask for a PIM.
Why was Mozilla Lightning chosen as the basis for a PIM?
Since OpenOffice.org is open source and runs on multiple platforms, including Windows, Mozilla Lightning was the obvious choice. Mozilla Firefox and Mozilla Thunderbird are already well accepted among users, and recent surveys indicate that even on Linux Mozilla Thunderbird is the preferred email client nowadays. Thus, Mozilla Lightning was the best option both from a technical and a momentum point of view.
What calendar servers and calendaring protocols will be supported by Mozilla Lightning?
The current 0.3 version of Mozilla Lightning supports the iCalendar standard and can access remote calendars using WebDAV, CalDAV and WCAP protocols. iCalendar is supported by many calendar servers and tools as a data exchange format. CalDAV is an emerging standard that is supported by an increasing number of calendar servers. The WCAP protocol is used by the Sun Java System Calendar Server.
In addition to these three protocols, some people started implementing support for Google Calendar. Support for Microsoft Exchange is planned for releases after Lightning 1.0 as well.
How tightly will the PIM be integrated into OpenOffice.org?
Initially there will be no integration between Lightning and OpenOffice.org. Currently the focus is on making the calendar functionality as feature complete as possible. Thus, Lighting 1.0 will be a standalone component that OpenOffice.org users can install in addition to the office suite if they want to, but they don't have to. In addition, there are no extra menu items in OpenOffice.org planned for Lightning 1.0.
Who or what parties are involved in the development of Mozilla Lightning?
The Mozilla Lightning development team includes both corporate developers and volunteers. The organizations involved in the development include Simdesk, the Mozilla Corporation, and Sun. Sun participates with a pretty strong team consisting of development, user experience, release engineering, QA/testing and marketing.
What feature areas is Sun focusing on?
So far, Sun has contributed to many different areas. The key focus areas in addition to general bug fixing are calendar views, team/collaboration features and support for the Sun Java System Calendar Server. Sun is also involved in the feature and roadmap planning and wants to make sure that Lightning integrates very well in Thunderbird.
How is Mozilla Lightning different from Mozilla Sunbird? Is Sun contributing to Mozilla Sunbird as well?
Mozilla Sunbird is a standalone calendar tool that does not integrate with Mozilla Thunderbird and does not include email and address book functionality. Sun's main focus is on the integrated solution provided by the Lightning extension as this is what most users are expecting from a PIM.
However, because both projects (i.e. Sunbird and Lightning) share a common code base you are always contributing to both of them [if you contribute to one]. In addition Sun provides contributed builds of Sunbird for the Solaris operating system.
What about Mozilla Thunderbird? Is Sun involved in the development of Mozilla Thunderbird, considering that Lightning is an extension for Thunderbird?
So far, the Sun team is focusing on the calendar part, i.e. Mozilla Lightning, because the email functionality in Thunderbird is already very complete and advanced. It is totally possible that at some point we might get involved in the Thunderbird development, as well, but since there is still a lot to do on the calendar side, this is not something that would happen anytime soon. However, we are in close contact with the Thunderbird developers to make sure that they are aware of any integration problems we might have. The team is very helpful and has a great interest in making Lightning a perfect calendar extension for Thunderbird.
What does the roadmap look like? What major milestones are planned?
Mozilla Lightning 0.3 has just been released and shows already a huge improvement over Lightning 0.1. For example, Lighting 0.3 has improved views and better support for network calendars. The first major release, i.e. Lightning 1.0, is expected to be released in the second half of 2007. Lightning 1.0 is will provide all the key features expected from a PIM, except maybe PDA sync and support for some additional calendar servers.
People interested in getting an overview over the current development efforts in the project should subscribe to the calendar weblog at http://weblogs.mozillazine.org/calendar.
What programming languages and frameworks are used for developing Lightning?
Lightning, like all other Mozilla products, uses the XUL framework for its user interface. The application logic is mostly written in JavaScript, except for some performance critical modules that are written in C++.
Is there anything that you have learned from participating in another open-source project?
The Mozilla Lightning project already existed when Sun joined the project. Thus, Sun was the newcomer. This is different to OpenOffice.org where Sun founded the project and everybody else was the newcomer coming from the outside. It is a very interesting and useful experience to join an established open-source project as a new member from the outside. It takes a while until different ideas and goals get aligned. One has to invest into understanding each other's point of view and building relationships. The face-to-face meeting that we had in Toronto a few months ago definitely helped to form a team. The increasing feedback from Lighting users also helps to form opinions about future directions of the project.
How can someone contribute to Mozilla Lightning?
There are many ways to get in contact with the community. First, there is a lot of information on the project's web pages and especially on the Mozilla wiki (http://wiki.mozilla.org). A good source for current calendar project information is the calendar newsgroup (mozilla.dev.apps.calendar) and many developers can be contacted directly via IRC (#calendar on irc.mozilla.org)
Interested developers should start with the guide at http://wiki.mozilla.org/Calendar:Hacking. If they have any questions, they should feel free to ask them in #calendar. But contributing does not necessarily require a person to be a programmer. Users reporting problems and writing bugs are more than welcome. For people interested in finding bugs, an excellent way to get started is to participate in a Calendar QA team test day. Information on their next test day can be found at: http://wiki.mozilla.org/Calendar:Current_QA_TestDay. Outside of test days, the calendar QA community is always excited to welcome interested users at #calendar-qa on irc.mozilla.org.
Return to Articles