July 3, 2008

Simon's Developer notes: On the importance of communication

Yesterday we had a pretty interesting developer conference call, which was basically about the issue that only a very small team is currently developing on Lightning and Sunbird (basically just three people), that it is hard to reach community expectations with regards to bugfixes and feature work with so small a team and what would be necessary to attract more outside developers.

From my point of view one of our shortcomings in the past has been on the communication front. With that I don't mean the communication between different people on certain bug characteristics or code issues (that works great), but the communication between the calendar project and our community.

Currently our channels of communication are:

  • This blog, which just gets a post every one to two weeks with a bug fix status update
  • our developer and support newsgroups (mozilla.dev.apps.calendar and mozilla.support.calendar), which are not exactly buzzing with activity
  • IRC, which not many people are watching

The result - at least as far as I see it - is that

  • the core people from the project come across as a closed circle to which it is hard to get in to (the opposite is true)
  • what's going on in the project is not exactly transparent. Instead I would call it opaque.

So what can we do to improve our situation, to make the project more transparent, to raise the interest in the project and by that to gain more outside contributors? A few things come to my mind:

  • We need to talk more about what we are doing. Therefore every core contributor will try to commit himself to at least blog about various stuff at least once a week from now. These posts will probably range from developer-oriented topics (interesting or disgusting pieces of code, recent bugfixes, UI considerations, QA problems/successes/challenges) and project-related topics (PR issues, community relations, ...) to basically anything that the people find worthwhile to blog about.

    In my opinion a great example to follow here is the Firefox community. Where nearly everybody involved in the project (developers, build engineers, QA staff, PR and marketing people, management) tries to blog regularly about various Firefox stuff or other stuff that interests them. The outside image that this creates is the image of a beehive, where everybody is doing lots of stuff to improve Firefox and in my opinion stuff like this also attracts outside people, because everybody would like to contribute to a project that is alive and well instead of a project that is stalling or dead.
  • We need to raise the awareness of the project in the outside world. I'll try to contact a few people to get some press contacts, in the hope to do some interviews with some people interested in open source. We hope that this will raise the awareness of Lightning and Sunbird and bring in outside contributors.
So these are my ideas. I would be interested in getting feedback and suggestions from you. Do you have more ideas to attract new talent for the calendar project? Is my analysis correct or do you see other areas that we could improve on? I would love to hear from you on that...

June 27, 2008

Lightning/Sunbird 0.9 string freeze announcement

I want to make those of you, who are actively translating the calendar products (Lightning and Sunbird) aware, that our string freeze for our next release 0.9 is approaching. According to our release schedule we are aiming for a string freeze on July 14 2008, which is two and a half
weeks away from now.

After the string freeze we are currently planning for two additional weeks before we try to release our first release candidate on July 28. We would really appreciate it if you could have your locales already in shape for the first RC as this will broaden both the localization and application testing base.

That gives you about a month to get your localizations in shape if you start now or two weeks, if you decide to wait for the string freeze. From my point of view, it certainly makes sense to start working now, at least in a few areas. If you take a look at all the string changes since our 0.8 release and now, you'll notice that we've done a lot of cleanup work by removing unused and obsolete entities. This is definitely something that you can start working on now, while doing the remaining update work after the string freeze.

The 0.9 release will again come from the MOZILLA_1_8_BRANCH, but since we're keeping both the 1.8 branch and the cvs trunk in total sync, it makes sense for you to commit your changes to both at the same time.

I'll post some status updates in the coming weeks. If any of you will not be able to keep his locale updated for the 0.9 release, please let me know beforehand. As of now we are planning with all localizations that were included in the 0.8 release as well as with the new locales added since then (Norwegian (Nynorsk), Romanian and Traditional Chinese).

Please let me know if any of you wants to join us for 0.9.

If you have any questions, please do not hesitate to ask them in the corresponding discussion thread on the newsgroup mozilla.dev.l10n.

June 24, 2008

Calendar Community Testday On Thursday, June 26 - Find The Most Hidden Regression

The test day held on Thursday, June 26th will be the first one in a series of test days and QA working sessions over the next weeks. This time, please help us to find the most hidden regressions. We suggest that you try Litmus and some ad-hoc testing to find regressions in any part of Sunbird or Lightning 0.9pre.

There are also many fixed bugs that need to be verified. You simply have to add a comment to the bug report stating what product, version and operating system you used while verifying the bug fixed.

Join us in the #calendar-qa IRC channel on Thursday. All the information on the test day is on our usual Test Day wiki page. Happy Testing!

Hope to see you in #calendar-qa!

mschroeder
Calendar QA Team

June 19, 2008

[June 19, 2008] Lightning/Sunbird Status Update

Sorry for the long delay folks! I haven't really kept up with all the changes lately due to some private matters, but that doesn't mean that we're not going full-steam ahead towards the 0.9 release. Within the last three weeks nearly 40 bugs were fixed, which is an impressive thing I have to say. Here's the list of all the 39 changes within the last three weeks:
  • Bug 363191:
    Handle Timezones more efficiently (Timezone Database)
  • Bug 367153:
    Event text not readable in calendar view during inline editing (due to unselection)
  • Bug 387398:
    Missing (Client, Server) Certificate support
  • Bug 387402:
    Short or zero-length events are hard or not selectable in Day/Week view
  • Bug 389251:
    Cannot dismiss alarm on single overridden instance of recurring item
  • Bug 391495:
    calRecurrenceInfo::getNextOccurrence/getNextOccurrenceDate have bugs
  • Bug 395017:
    Event & Task dialog for read-only calendars don't show start time and end/due date and time
  • Bug 399762:
    Task dialog: Error opening Invite Attendees dialog
  • Bug 408240:
    Reading backup preferences fails [Error: backupBranch is not defined]
  • Bug 413326:
    Read only calendar, use 'Click Here to Add a New Task' text field -> nothing happens
  • Bug 413847:
    Timezone preference changes require restart to take effect (regression)
  • Bug 413908:
    Events using internal timezones are no longer updated to recent timezone version
  • Bug 419807:
    After closing task dialog now save-messagebox pops up
  • Bug 419816:
    Task mode does not set Application title
  • Bug 428496:
    Editing event or dismissing alarm collapses Today/Tomorrow/Soon section in Agenda
  • Bug 429092:
    Borders are missing for Task List in Today Pane and Task Mode
  • Bug 429685:
    Toggling of 'Delete' - toolbarbutton in calendar-mode and task-mode does not work
  • Bug 429687:
    Follow-up features for the mode dependent today-pane
  • Bug 431536:
    Only one invitation can be accepted per Thunderbird session
  • Bug 431811:
    Context menu of tasks in today pane is broken [Error: taskTree has no properties]
  • Bug 432579:
    Enabling cache for public calendar like US Holidays causes entries to dissappear
  • Bug 435877:
    UTF-8 decoding problem breaks wcap calendar
  • Bug 436476:
    Deleting a single instance of a recurring event fails
  • Bug 437048:
    Invite an attendee to an event causes error
  • Bug 437189:
    Gdata prov: cannot delete last remaining occurence by "delete this occurence"
  • Bug 437398:
    Invitation Link broken (currently WCAP only): createXULElement is undefined
  • Bug 437593:
    invitations link should be provided in mail mode too
  • Bug 437615:
    Exceptions when creating/editing/deleting an event/task/calendar or selecting/deselecting a calendar
  • Bug 437689:
    [Trunk] Timezone definitions extension is not compatible with Sunbird 0.6a1
  • Bug 437898:
    events list can have a selector for 'later today' list. (prerequisites, actual fix done as extension, see bug)
  • Bug 437921:
    GData provider is not working with TB 3a2pre by default
  • Bug 437941:
    Task-Trees: Selection Style does not make a difference between focused/unfocused
  • Bug 437942:
    Find calendars is broken
  • Bug 437964:
    'Mark Completed' via context menu doesn't work
  • Bug 438020:
    Task list is broken [Error: document.getElementById(modeBroadcaster) has no properties]
  • Bug 438338:
    Add zh-TW language
  • Bug 439245:
    Selecting events in the unifinder doesn't scroll view to event
  • Bug 439608:
    modifyEventWithDialog cannot be called with false as third parameter
  • Bug 439633:
    Error console output in month/multiweek view when selecting events in the unifinder
Many thanks go to all developers, contributors, localizers, testers, and supporters that make this possible.