9 March, 2016 § 1 Comment
This summer, I with the help of Mozilla, will be mentoring someone as they work on fixing some of the papercuts in the Firefox desktop user interface.
We know there are problems with Firefox when it comes to things “just working right”. Some involve the smoothness of entering and exiting Reader Mode, while others involve the fit and finish of our “getting started” tours.
This is a paid internship and will run from May 23rd to August 23rd, 2016. A $5,500 stipend will be provided as compensation for the internship.
This internship is open to under-represented groups in the free and open-source software community. These groups include all women (cis and trans), trans men, and genderqueer people internationally, as well as all Black/African American, Hispanic/Latin@, American Indian, Alaska Native, Native Hawaiian, and Pacific Islander people in the US.
The ideal student will have the following background and availability:
- Available to work on the project about 40 hours per week. This will not be a good project to work on while taking part in another internship program at the same time.
- A strong CSS background. Do you feel comfortable answering how the CSS box model works, and the order that elements are painted to the screen?
- Not afraid to work with some C++ if necessary. Fixing some of the bugs below may require working with some of the Windows-specific platform widget code, and this is almost entirely written in C++. It’s not that scary, but has different nuances than the JS/CSS work.
- A productive work environment. Students in this internship will be “working from home” and will need to provide their own working environment.
Finding your way around
You’d mostly be writing JS and CSS, though being comfortable with the other technologies we use will be helpful.
To get a feel for things, you can open up the Browser Toolbox and “inspect” the UI of the browser. From there you can use MXR (http://mxr.mozilla.org/) to go from searching for some text on a button you see in the user interface to finding the code that is executed when the button is clicked.
Set up an “artifact” build. This is the simplest build setup that we have for Firefox, and should take less than 10 minutes. Once you’re up and running, you can use this artifact build to make changes to the JS & CSS of the browser.
I’ve put together a list of bugs that will be the focus of this internship. People wanting to apply to this should pick a bug off of the following list and begin working on it.
Each bug on the list has a number of “points” that are assigned to them. The more points a bug is worth, the harder the bug may be to get fixed.
There’s currently nine bugs on the list, but I may add more in the future when these get fixed.
Here’s the link again to the bug list: http://mzl.la/1UT0xRs. Go ahead, click on it, look for a bug that excites you, and see how you can use the tools from the “Finding your way around” section to fix the bug.
Interested and have questions?
Please reach out to me. I’m available via IRC during the US Eastern timezone (+5 GMT) working hours on irc://irc.mozilla.org in the #fx-team channel by the name of `jaws`. You can also email me at `jaws [at] mozilla [dot] com`.