Getting involved an a big open source project is well worth doing in terms of satisfaction, education and job prospects, but it's a tough thing to do. Now there is a set of "one video per concept" videos to get you started with Firefox development.
Brian Bondy is a Firefox developer working at Mozilla and back in 2012 he blogged about the trials and tribulations of getting started. This is an experience he clearly remembers and who better to explain it all to a beginner.
To this end he has created Code Firefox and started to create videos. Following the style of Khan Academy, the videos are planned to be short - no more than five to ten minutes - and cover a single topic. This way the beginner can avoid being swamped by details and complexity.
Firefox is a big project and even getting the code can be confusing, let alone progressing to a point where you can build the code. The first video deals with setting up a build environment on Windows - there are two more videos on OSX and Ubuntu to come. Starting with Windows makes sense because it's the one that people have most trouble with.
All of the videos are on YouTube and you can check out Setting up a Windows Firefox build environment below:
The remaining videos give some idea how build Firefox and how to go through the process of picking a bug to work on and how to work your way to a solution that ends up with submitting your patch. There are about 20 videos so far, but the structure of the entire project can be seen. Some of them will be of interest even if you don't plan to work on Firefox proper - the introductions to XUL and XPCOM, for example. Getting started with Firefox is particularly intimidating because of its use of XUL as its UI language and XPCOM as its code framework.
At the moment the site only deals with Firefox desktop, but if time allows Android and even Windows 8 Firefox might feature.
Let's hope that the project continues to completion and is kept up to date. As well as getting new contributors to Firefox started, it also could be used as an educational resource for any programming course wanting to get students involved in a big project. Other open source projects could also benefit from the same sort of idea - are you listening Linus?