Update: recruiting closed

Firefox 4 has just been released and it's already time for developers to turn their attention to the next releases. If you are a student, you also have your role to play in order to make Firefox (remain) the best browser! You will find below two subjects for a summer internship in the Mozilla MathML Project. If you are interested, please contact me at fred dot wang at free dot fr. Also, recall that this week you may apply to the Google Summer of Code 2011 program. In particular, I have proposed two additional projects on SVG/MathML clipboard features and improving MathML font support.

Implementing new MathML features in Mozilla's layout engine

MathML 3 - a language for describing mathematical expressions in Web pages - was released as a W3C Recommendation last October, opening new perspectives for sciences on the Web. Mozilla has provided a good MathML support for more than ten years and improvements are still underway. The goal of the internship is to improve support for MathML 2 and to implement new features of MathML 3. You are assumed to have:

  • Good knowledge of Web languages (HTML, CSS, Javascript...). Knowledge of MathML is definitely a plus.
  • Ability to program in C/C++ and basic knowledge of compilation, debugging and revision control tools.

You will start to work on layout bugs of medium difficulty in order to let you time to discover, get and build Mozilla's souce code as well as to get familiar with Mozilla's tracking system, review process, automated tests and documentation. Then, you will implement features requiring a gradually increasing amount of work. For each of them, you are supposed to analyse the problem, submit patches, create non-regression tests and finally write documentation / demos of the new feature implemented.

Quality Assurance and Documentation in the Mozilla MathML project

One interesting feature of Firefox 4 is the possibility to include MathML inside standard HTML pages, which will certainly enable more people to use MathML. Hence there is a need to track missing features and important bugs of Mozilla's MathML implementation as well as to provide good documentation for users. The goal of the internship is to improve the Mozilla MathML documentation and to find & analyse MathML issues in Firefox. You are expected to have:

The work to update MathML documentation has started since last year. You will continue to update former MathML demos and write new documentation pages. You will also try to collect feedback from discussion forums, blogs, etc and test Mozilla's MathML implementation against various test pages including the MathML3 test suite. Finally, you will report new issues to Mozilla's tracking system and do bug triage.