Here are some ways to make sure your Summer of Code application fails. All are inspired by actual applications to the Mozilla project this year.

Don’t:

Fail to state your project idea. This may seem obvious, but if you don’t tell us what you want to do, we aren’t going to choose you to do it. Cut-and-paste your CV. If you say you have a Class Q driving licence, what it tells me is you haven’t really thought about the content of your application. Suggest hard work is a substitute for experience. If you are applying to do a complicated technical task, “I’ve got no experience of your codebase or project but I’ll work really hard” doesn’t cut much ice. Give us a vague timeline. Project plans like: “Week 1-2: Ramp up on code. Week 3-7: Implement project. Week 8-10: Testing and debugging” don’t inspire confidence. Use enthusiasm as a substitute for competence. “This feature would be really cool!” isn’t a good reason to choose you to implement it if you’ve never written a line of C++ in your life. Assume using the software means you can hack on it. “I use Firefox every day” is not going to make it more likely for us to choose you to improve its networking layer. Leave template residue in your application. We had a number of applications which ended “(Thanks to Fyodor from Nmap for his help in creating this template.)” This shouts “zero-effort application spam”. Put all your info in an external web page. Mentors are lazy. Anyway, if you need more than 7500 characters, you should probably trim your text. When asked about experience with a technology, put “Good”. ‘Nuff said. Tell us you are applying because you need the money. However true it is.

Having said all that, there were many good applications which we were unable to fund. Please don’t think that if you weren’t chosen, your application was therefore rubbish.

I’ll write a more constructive Summer-of-Code-related post soon.