Slashdot Mirror


Report From The Mozilla Developer Meeting

Just over two years ago, the Mozilla project was launched, with the ambitious goal of creating an open-source, standards-compliant browser. The continual progress since then has resulted not just in impressive software for end users (both the Mozilla browser and the Mozilla-based Netscape 6.0) and a flexible base for some intriguing developments, but also in the forging of a hard-working, creative community of developers. Correspondent David Cassel sat in on the Mozilla Developer Meeting this weekend; here is his report.

About 50 people packed into the Sputnik conference room at Netscape yesterday. Around 12:30 Mike Shaver and Alphanumerica's David Boswell kicked off the meeting. "Hopefully, this'll be the first in a series," Boswell announced. "Annually is ridiculous," he told me later. "I'd like to see it happen every three or four months ..." The two sounded the theme that Mozilla development was happening -- whether people were aware of it or not.

At one point, Dave Sim from the O'Reilly Network said "I've learned more in the last hour and a half than I have in the last two years." Mike said that was the problem: their story that wasn't getting out. "What is the story?" Sim countered. "What is the big picture?" Shaver said the real problem is there are lots of stories. Yes, there's users that want to use Mozilla as a full-blown application -- but there's also people who want to develop applications for the Mozilla platform, with others focussing on interoperability. "The platform story is one of the best things about what Mozilla does."

Alphanumerica's David Boswell agrees. "We see Mozilla as an application virtual machine that will allow us to write applications." Because the application can run on any system with a Mozilla browser, developers reach systems running Windows, the Mac OS, Linux, OS/2, and even Amiga and BeOs systems or set-top boxes. Pete Collins pointed out later that "Mozilla is 95% cross-platform code." He described the Mozilla platform as "write-once, run-anywhere -- done correctly."

That could be a huge draw. Earlier in the meeting someone suggested a "People who are doing stuff with Mozilla" page. "We had one long ago," Mike Shaver joked. "It listed NeoPlanet." But now, according to Pete Collins, there's been a spreading interest in Mozilla. "Since November, December, it's really starting to pick up momentum ... Alot of validations are happening because things are being done externally." Cameron Price had flown down from Real Networks in Seattle to attend the conference. Identifying himself as "just a grunt software developer," he pointed out what everyone was saying: it's not just a browser, it's a set of tools. During the group discussion, one developer even said "I'd like to see Mozilla come out and not have any browser with it."

A quick survey of the room revealed some impressive projects. Aaron Leventhal, who flew in from Wisconsin, is working on wearable computing and voice-browsing for the blind. A generalized user interface would allow seamless transitions between devices with Mozilla. Another developer wants to make his own R&D distribution of Linux using Mozilla's XML parser. ("Everyone writes specialty XML parsers," Cameron Price told me later.) By the end of the day the developer said he'd gotten answers to his Linux implementation questions. But more importantly, he'd gotten a sense of where the other developers were going. "The scope of what people have planned is mind-boggling. I feel so much smaller."

Mitchell Baker, who identified herself as Mozilla's "chief lizard wrangler," said that as a result of the meeting, "We learned how many people are writing applications using Mozilla." Pete Collins said the turn-out was a positive sign -- "Overall, just a good vibe" -- and so did David Boswell. ("Very validating. A room full of 80 external developers ...") "I don't think we're gonna have a really simple platform in the year 2000," Mike Shaver warned the audience. But the release of a preview version of Netscape 6 had already generated some interesting issues for the group discussion.

The first question in the developer group discussion came from Asa Dotzler, an independent QA tester from Austin, Texas. ("I test the tip," Dotzler said at Thursday's Mozilla party.) He asked a deceptively simple question about how they're defining "skin" and "package," and Dave Hyatt conceded the definitions they were using internally clash with public definitions. The problem is that what people think of as "skins" are more like Mozilla applications or packages -- and that needs to be clear, for security reasons. (A generalized system for ensuring security was suggested -- maybe giving skins directory-specific access. Someone cited the way this is handled in Java 1.2, and Mike Shaver said "maybe that's a model we can copy" if necessary.)

The group discussion continued for nearly two hours, and the other big issue was bug reporting. Dotzler gave an exaggerated example of an off-target bug report: "This Net2Phone button on my toolbar isn't working." What do you do with reports of non-Mozilla bugs? "You shouldn't even take bug reports on alternate skins," one developer suggested. Or should you? ("That's a slippery slope. Let's see how big a problem it is ...") Shaver said it doesn't seem unreasonable that people are going to want to report bugs about Aphrodite. "It may not be our fault, but it may be our problem ... We can create a tag for that easily. I think that's the way to do that and not panic too much."

The bigger concern is how the handling of non-Mozilla bugs will scale.

"As long as the bug database holds up."
"It should be the author's responsibility."

Someone even suggested they "take a lesson from Slashdot and have some volunteers for triaging." Everyone began talking at once. "Now we're going," Mike joked.

He started by saying "I don't think we want to follow the Linux kernel module of bug tracking." He seemed to be leaning towards the rule of thumb that "If it's in the source tree, it should probably be on Bugzilla," and later suggested that maybe "Anything that goes into the tree should have a module owner and a QA contact." Across the room, someone pointed out the implicit vindication in worries over having too many bug reports. "I think this is a marvelous problem to have. I look forward to having this problem. This means we're successful."

After the group discussion, the developers broke up into three smaller, intense groups discussing skins, bugs, and applications. Mozilla developers are already working on skin-switching for beta 1. (Several skins could be active at once -- for the browser, the newsreader ...) Alphanumerica's Cameron Barrett, leading the skin group, talked about how he built the Sullivan skin, with some help from Pete and David building on Aphrodite (which started out as an open source skin). He said he started making the Sullivan skin in early March -- with no Mozilla experience at all. After a week to get up to speed, he completed the design in a week (mostly by doing mock-ups in Photoshop), with another week and a half for coding. Total development time: four weeks. He talked about the challenges of designing a GUI for different platforms. (Predictibly, there's lots of issues with the Mac OS. "You could emulate your own windows in the Mac, but it wouldn't be very Mac-like. You have to give them a software that's going to behave the way they expect ...")

Barrett predicts hundreds if not thousands of skins once the skin-switching is incorporated into Mozilla. But after the talk, he said skins also serve an educational function. "Our main message was to get people to understand that it's so extensible." So what happens now? "I think people are gonna experiment."

At the applications meeting participants discussed packaging and install questions, API issues, sound, and Unix plug-ins with Mike Shaver. Someone asked about installing Mozilla on Unix networks and maybe even in Linux distributions, and another developer suggested making an easy-to-digest package out of Javascript. And yes, they're still recruiting people for Mozilla hacking. (Mike Shaver joked that "If all the people who were at the party last night had spent those three hours fixing bugs ...")

The problem with developing applications for Mozilla is that Mozilla is a moving target -- the platform is evolving while people are developing. One developer suggested the solution might be writing apps for a specific build -- M14, say -- and then upgrading as necessary. (And there was some discussion about the term "beta" vs. "stable branch points" or "snapshots in time with a name" ...)

Later R. Saravanan showed the applications group XMLterm -- an Xterm-like interface written using the Mozilla component libraries. On a Dell laptop, the interface was running Emacs -- including cursors -- and even Towers of Hanoi. ("A new regression test," someone joked after a few moments of stunned silence.) Saravanan said it took him 10 months, working part time ("It's not my job!") -- and that it had never crashed.

Mitchell Baker was part of the bug group, and says they discussed "the question of building community and educating people on how to produce better-quality bug [reports]."

The other impressive application was a remote script editor -- and Alphanumerica's next project is crash-recovery functionality -- saving state information on browser windows.

Boswell said the turnout was higher than he expected, and was already planning the next developer meeting. "It would make sense to have the next one in New York. Or at least not in San Francisco ..." Meanwhile, O'Reilly's Open Source conference in July will also have a Mozilla track.

Note: Readers interested in grabbing some Mozilla and Netscape 6 compatible skins should see the choices on offer at alphanumerica and mozillazine.

3 of 139 comments (clear)

  1. Just think what Perl could do... by Deven · · Score: 5

    I believe that the ability to write cross-platform GUI applications on the Mozilla platform is one of the strongest features it has going for it. Even if the "browser wars" fizzle out and IE wins the day (which I really doubt), the platform Mozilla makes available will still be quite valuable in and of itself.

    Unfortunately, Javascript may not be the ideal language for writing these cross-platform applications. The thought that's floating around in my mind right now is adding Perl to the mix. It's already impressively cross-platform, and an extremely powerful programming language. Just imagine what you could do with Mozilla's platform coupled with an embedded Perl interpreter and Perl language bindings (e.g. for XUL) as good as (or better than) Javascript's bindings...

    --

    Deven

    "Simple things should be simple, and complex things should be possible." - Alan Kay

  2. Things I Wanna Do... by Tackhead · · Score: 5
    1) Port it to the i-opener and make a distro of Linux that fits in less than 8M of flash ROM, leaving 8M free :-)

    2) Chop out Email, News. I want a web browser. I already have an MUA and a newsreader.

    3) Single-menubar-button toggling of Java/Javascript, and image-autoloading. I usually want 'em all off all the time. Sometimes I have to turn 'em on, and I don't want it buried under three levels of menus like in Nutscrape 4.xx.

  3. Buttons I want in Mozilla skins by SurfsUp · · Score: 5

    Hopefully, this is a good time and place to broadcast a message to skin developers :-)

    The 6 basic navigation buttons I want in every skin are:

    1) back
    2) forward
    3) up (shortens the url by one segment)
    4) reload
    5) stop
    6) home

    In that order. Mozilla has it *almost* right, but not quite (the up button is missing).

    I also want to be able to define multiple "home" buttons and have them appear beside the usual home button, in every sense equal, and not have my own buttons relegated to a space-consuming "personal tool bar".

    While I'm going on about my wishes... what about all that space to the left of the "help" item? I want to be able to put the location box there, saving a whole bunch of valuable vertical real estate.

    Hmm - just one more wish today - when I minimize a tool bar, how nice it would be if the space to the right of the little tab were transparent, winning me back a tiny bit more vertical real-estate, instead of opaque, empty space.

    Thanks in advance, skin hackers, for taking this seriously :-)
    --

    --
    Life's a bitch but somebody's gotta do it.