Thanks for your interest in applying to the Nmap Project for Google Summer
of Code! GSoC has had a huge impact on Nmap, and we look forward every year to
a the great applications we will receive. The following are tips from our
mentors on making your application the best it can be. We can't wait to hear
Don’t lie, cheat, or plagiarize. This should be obvious.
The truth will come out. Please don’t waste anyone’s time and effort.
Read and follow the directions. Unfortunately, too many
applications are rejected immediately because the applicant didn’t read the
Understand our product. Nmap is a port and security
scanner. We have lots of free online documentation. We also have sub-projects
that are often part of GSoC: Ncat, Nping, etc.
Use our product. Learn how to do some basic things.
Reproduce a bug in our issue tracker. Learn what Nmap is expected to do and what its limits are.
Get involved. Join our
development mailing list or
IRC channel and listen in. Try to
answer someone’s questions. Report a bug.
Improve a translation. There are lots of ways to
get involved and show us you know how to communicate.
Play to your strengths. Pick a project that you feel
interested in. It helps if you can show us how you’ve done similar things in
the past, for other projects or for homework.
Look at previous years for student accomplishments in the
role. Find Fyodor’s end-of-GSoC summary emails
on seclists.org and read them. You can search for a particular student’s status
Stick to the ideas list. Most “original
ideas” applications come from students who don’t understand or use our product,
so they are not a good fit. If you have an original idea, try to relate it to
something we already have listed, and be open to doing something else if we
like you a lot.
Be realistic about what you can accomplish. Don’t
under-sell yourself, but realize that most project ideas list more than one
person can reasonably accomplish in a summer. Working on your Nmap project
should be your primary activity from May through August. If you
already have a full time job, full time class schedule, or a long (3
weeks or more) vacation planned for that timeframe, you probably won't
have time to participate in Nmap SoC.
Sell your idea. Don’t just copy-and-paste something
from the ideas list. Do a bit of research and tell us what you want to
accomplish. Describe your idea in detail: What is its
ultimate goal? What components will it have? What benefits does it
have for Nmap and its community? How do you plan to achieve completion
of your project? If a specification already exists, what will you do
that will go above and beyond expectations?
Sell yourself. Get across your enthusiasm for the
project. Tell us what makes you stand out from the rest of the
crowd. Talk about your past experiences, what makes you tick. Why are
you interested in open source software, and Nmap in particular? What
interests do you have, and how do these interests relate to the
project for which you're applying?
Show us code. We’re considering you for a programming
position, so we want to see that you can program. Even better: show us active
development. Github is great for this, but
anywhere that shows commits and not only final code is great.
Write your proposal carefully. English skills matter for
most of our projects, as you will need to write documentation for your
code. This proposal is a chance to show off your clear and concise writing
skills. You don't need to be a literary genius, and many (perhaps most) of our
previous winners aren't native English speakers. But do try to spell-check
your application and review it a few times for readability before hitting the
Request feedback and respond to it. Show us how you will
communicate if you’re selected. You can discuss your idea on the
Nmap Dev mailing list. Don't be
afraid to ask the community for help; we want you to succeed just as much as
Google sets the timeline and must make the announcement. Do
follow up on pull requests as you usually would. Waiting patiently just means
don’t expect us to tell you early who was accepted. You can still communicate
with us as needed.
We are limited in how many students we can accept. We
usually have more qualified applicants than we can accept. It’s a hard
decision, and we wish we could take more.
Ask us for specific feedback on what you can improve. Don’t
complain that you were not chosen. Learn from the experience and come back next
year with an improved application.
Remind us of your previous proposal. Persistence pays off.
When we get a few dozen new applications next year, you will stand out if you
made a good impression this year.
Make sure you can meet the general requirements for participation, then sign up on the Google SoC Homepage
and apply to the
We look forward to reading your application!