Mozilla – A Web Platform
Allan Beaufour
Goal of This Presentation
The goal of this presentation is to give an overview of the Mozilla
organization, its history, application, and (XML) technologies.
Allan Beaufour
- Ms.C. from Univ. of Copenhagen, Denmark
- Currently working for XYZ :)
- W3C XForms working group member
- Implementor of the XForms extension for Mozilla
- (Danish and French citizen)
Language Problems?
- ¿Más despacio, por favor?
- I also speak:
- French
- German (a little)
- Spanish (very little)
- Danish :-)
Presentation Overview
- Mozilla: History and Product
- Firefox: Status and Future
- Firefox: XML Technologies
- Extending Firefox
- XULRunner
Part 1
Part 1
—
Mozilla: History and Product
Mozilla – History
- 1994: Netscape 1.0 is released
- 1998: Netscape releases source code as open source
- 1998: Mozilla Organization is founded
- 2002: Mozilla Suite 1.0 is released
- 2004: Firefox 1.0 is released
- 2005: Firefox 1.5 is released
- 2005: Mozilla Corporation is founded
Mozilla – Current Status
- Funding from members, business partners, and Mozilla Store
- Around 50 employees
- Mission: Promote choice and innovation on the Internet
- Split into two companies: Non-profit Foundation and
for-profit Corporation
- www.mozilla-europe.org – European organization
Mozilla, Firefox, Gecko, ...
- Mozilla was a browser suite
- Mozilla is the organization behind it all
- Firefox is one of the products
- Gecko is the layout engine
- Necko is the network library
- SpiderMonkey is the JavaScript engine
Mozilla – Products
- Mozilla Corp.
- Firefox: Browser
- Thunderbird: Email client
- Mozilla Foundation
- Full force on Firefox now. IE7 is coming.
Part 2
Part 2
—
Firefox: Status and Future
Firefox – Current Status
- Firefox 1.5 released November 29, 2005
- 1.5 million downloads first day
- > 190 million downloads today
- 36+ languages
- 55 million users worldwide
- Main platforms: Windows, GNU/Linux, Mac OS X
- Other platforms: Windows Mobile, FreeBSD, OS/2, BeOS, and
probably others
Firefox – usage
- 12% global usage
- 16% in the US
- 20% in Europe overall
- 35% in Slovenia
- – on April 14th 2006
Gecko
- Products are built on top of the Mozilla Framework
- Gecko is the main part
- Platform versioning is Gecko version
- Gecko v1.8.0 is current version
- Gecko v1.9 is next major version
Firefox – Version 1.5
- Very good support of open standards
- Bitmap drawing:
<canvas>
element
- Vector drawing: SVG (partly)
- Live Bookmarks
- Updated Popup-blocking
- Automatic Update System
- Still a small download (5 - 10 MB)
Firefox – Version 2
- Gecko v1.8.1
- No big backend changes
- Improved feed handling
- Session Saving
- Search Engine UI rewrite
- Inline speal-check
- Anti-phising
- Release: Alpha3 is out, final Q3 2006
Firefox – Version 3
- Gecko v1.9
- Graphics engine, hardware-accelerated graphics
- Rewrite of layout code (fix ACID2 test, etc)
- JavaScript 2
- More "web apps" support
- Improved XUL and XBL2...
- Run on XULRunner...
- Release: Some time next year
Developing Firefox
- ~70 full-time developers (my guess)
- ~350 active contributors (my guess)
- all over the world
- strong base in Mountain View, California
- bugzilla.mozilla.org: ~1000 comments per day
- > 320.000 "bugs" in the system
Part 3
Part 3
—
XML Technologies
XUL
- Firefox, Thunderbird, etc. is built on XUL
- (X)HTML is fine, but not designed for applications
- A Mozilla "standard"
- XML user interface language
- "Normal" widget library: menu, text boxes, trees, etc.
- Simple layout model: box model!
- JavaScript for programmability
XBL
- XML Binding language
- Lets you define new elements with custom look and behavior
- An XBL binding is just like a normal (HTML/SVG/...) element in
the DOM
- Really powerful mechanism to implement new "languages" and
features
- "Standards"
- XBL – "de facto" Mozilla standard
(implementation)
- sXBL – W3C standard
- XBL2 – Mozilla standard
- Simple XBL
example
- SVG XBL
example
XForms
- Much more about this later... :)
Part 4
Part 4
—
Extending Firefox
Extensions in Firefox
- Firefox itself is also quite extensible
- Extensions plug into Firefox extending the UI, functionality,
etc.
- Extensions are written in JS and XUL, thus platform
independent
- Can also be written in C++ (like XForms)
Extension Extravaganza
- 1000+ extensions on addons.mozilla.org
- Download agents, forecast viewing, social bookmarking, etc.
GreaseMonkey + Platypus
- Extension that allows you to add "user scripts" to any web
page
- Customize looks
- Customize behavior
- Add functionality
- Fix web site "bugs"
- ... and whatever you can think of ;-)