GSoC Mentor App - 2009
|This is the final text of our application to Google for mentoring status in GSoC 2009.|
Home Page URL: https://web.audacityteam.org/
Public Email: [email protected]
Audacity® is free, open source software for recording and editing sounds. It is available for Mac OS X, Microsoft Windows, Linux, and other operating systems.
Audacity is widely used:
- Around 18 million downloads in the past year, and a total of more than 56 million, from SourceForge (https://sourceforge.net/projects/audacity). Consistently in the top 10 downloads on SourceForge, which hosts more than 100,000 projects.
- Unknown additional numbers of users from mirror sites such as Download.com (http://www.download.com/Audacity/3000-2170_4-10058117.html) and bundlers (https://web.audacityteam.org/download/bundlers).
Audacity won Best software for Sound Editing in InfoWorld's BOSSIE (Best of Open Source Software) Awards for 2008 (http://www.infoworld.com/slideshow/2008/08/165-best_of_open_so-2.html) and was one of PC World's Best 100 Products of 2008 (http://www.pcworld.com/article/146161-12/the_100_best_products_of_2008.html). Other awards are listed at http://audacityteam.org/wiki/index.php?title=Audacity_Awards.
Audacity has been featured widely in the media, including CNN.com (http://www.cnn.com/video/#/video/tech/2008/01/12/data.doctor.records.cnn), and a reference in a New York Times article.
Audacity is a flagship application of the wxWidgets (http://wxwidgets.org/) cross-platform toolkit and it is widely admired as one of the only multimedia applications that runs beautifully on all three major platforms. Care has been taken to make Audacity work with screen readers for visually impaired users. Audacity has been translated into almost 30 languages, and nearly half of Audacity users use it in a language other than English.
Perhaps most importantly, Audacity has a well established developer community. There are no full-time developers, but about a dozen team members who have been with the project for several years act as the leaders of the community, setting the direction and coordinating releases. Dozens of developers have contributed many features, bug fixes, and other patches. Hundreds of others participate on the mailing lists, and help test and track down bugs. In addition, dozens of volunteers help with documentation, technical support, language translation, community support, and more.
The Audacity developer team has been one of the most welcoming open-source projects, and in fact we attribute much of our success to that attitude. Some of our best contributions have come from young developers with very little prior experience. Even though the quality of their code might not be up to our standards at first, we've found that it's better to accept patches and let the code improve over time, each time gaining us a new developer who will grow and mature, rather than trying to keep it an exclusive club.
Why is your organization applying to participate in GSoC 2009? What do you hope to gain by participating?
We hope to gain another team member who will want to stay with us. We also hope to get some more energy into getting a stable release out.
Participation in GSoC 2008 seemed to also have indirectly brought us more other new academic/graduate involvement in 2008, though we're not quite sure why yet. That's good because of the skill levels of graduate students. We hope this continues through participation in 2009.
What is the main public mailing list for your group? [email protected]
Where is the main IRC channel for your group? #audacity on irc.freenode.net
What criteria do you use to select the members of your group? Please be as specific as possible.
As mentors, we have two volunteers who have shown wisdom, knowledge, and energy in working on Audacity. Both have made significant contributions. Both were active in ensuring we decided to apply for GSoC 2009. Martyn has worked on Audacity for years, was recently inducted into our Technical Leadership Council, and was a mentor last year. Michael was a student participant last year, and his contributions were part of the Audacity release we did between last year's "pencils down" and the Mentor Summit.
Vaughan will serve as administrator. He was administrator for last year's participation in GSoC, when we had five students. Vaughan has worked on Audacity since 2002 and is a member of the Audacity Technical Leadership Council.
Has your group participated previously? If so, please summarize your involvement and any past successes and failures.
Yes. In 2008 we had five students.
We had successful results from four of our five students, with two students still active in the project one year later. All their contributions have been very important and rich new features in Audacity.
The one student who failed simply disappeared post-midterm. We also had a mentor who had to drop out around the midterm, but Martyn successfully took over and completed mentoring that student. Carefully tracking the projects, lots of discussion on our developer list, and freezing alpha versions every couple of weeks yielded our high success rate.
As an indication of our accomplishment and what it meant to Audacity, between "pencils down" and the Mentor Summit, we released a new version of Audacity, incorporating most of the new features from the student projects.
Because of our participation in GSoC 2008, and discussion on the developer list, students have already begun approaching us for 2009.
If your organization has not previously participated, have you applied in the past? If so, for what sort of participation? n/a
What license does your project use? GPL V2 (select this from a drop down this year).
What is the URL to the ideas list of your organization?
What is the main development mailing list for your organization? [email protected]
What is the application template you would like contributors to you organization to use.
<This year's app has an html field, so I've just put this in there. The nowiki is so it doesn't add navigation at the top of this page.>
<h3>Before you begin this application: <br /></h3> <h3>Please check the Eligibility section of the <a title="http://code.google.com/opensource/gsoc/2009/faqs.html" href="http://code.google.com/opensource/gsoc/2009/faqs.html">GSoC FAQ</a> and confirm that you are eligible for it. If you're unsure, please say what aspect is in doubt.</h3> <h3>Then, review these documents on the Audacity wiki:</h3> <ul> <li><a title="GSoC_FAQ" href="http://www.audacityteam.org/wiki/index.php?title=GSoC_FAQ">GSoC_FAQ</a></li> <li><a title="GSoC_Ideas" href="http://www.audacityteam.org/wiki/index.php?title=GSoC_Ideas">GSoC_Ideas</a> (of course!)</li> <li><a title="GSoC_Skills" href="http://www.audacityteam.org/wiki/index.php?title=GSoC_Skills">GSoC_Skills</a></li> <li><a title="GSoC_Student_Guidelines" href="http://www.audacityteam.org/wiki/index.php?title=GSoC_Student_Guidelines">GSoC_Student_Guidelines</a></li> </ul> <h3><br /></h3> <h3><span class="mw-headline">I. Essential details </span></h3> <ol> <li> Name </li> <li> College/University </li> <li> Course/Major </li> <li> Gmail e-mail address </li> <li> Website or homepage URL, if any </li> <li> Availability for GSoC period: How much time do you plan to spend on the GSoC project? We need to know if your start will be delayed by exams, for example. So please give intended start and end date. What other factors are affecting your availability? </li> </ol> <h3><br /></h3> <h3><span class="mw-headline">II. Quick Questions </span></h3> <ol> <li> Please summarize your background (education and software development) </li> <li> Rate from 0 to 5 your knowledge of the following tools: <ol> <li> C++ </li> <li> CVS/Subversion </li> <li> GNU/Linux Programming tools OR Windows/MSVC Programming tools OR Mac/Mac OS X Programming tools (also say which one). </li> <li> wxWidgets </li> <li> Audio DSP </li> </ol> </li> <li> What do you expect to gain from GSoC (brief answer)? </li> <li> (Optional) How many .h files are there in audacity/src/xml? </li> <li> (Optional) What year and month connects the abbreviation POTM with Audacity? </li> <li> (Optional) What was the first computer you programmed on? What was the most advanced program you wrote on it? (brief answer) </li> <li> (Optional) Pick one C++ program that you have enjoyed writing. What made it satisfying to write? (brief answer). </li> </ol> <p> </p> <h3><span class="mw-headline">III. Progress Reporting </span></h3> <ul> <li> Please get a gmail e-mail address and tell us what it is. For accepted students we expect prompt responses to e-mails from us. We may consider dismissing a student who does not respond within five days of our sending them an e-mail. Please confirm that you understand this requirement, or explain why you might need an exception. </li> </ul> <p> </p> <h3><span class="mw-headline">IV. Longer Questions </span></h3> <ol> <li> Describe your proposed work on Audacity - please give plenty of details. Show us that you have a clear picture of what you will be doing. This is one of the most important sections of this form. </li> <li> Describe what you can commit to having completed by the half way stage to a state where we can reasonably expect to use it in a live Audacity. (Early spin off). </li> <li> If you've already done some preliminary work, finding references, understanding algorithms, compiling Audacity from CVS, don't keep quiet about it, let us know about what you found! It's evidence for us that you'll get into the project quickly and will make your application stronger. </li> <li> Any awards or achievements that would encourage us to choose you? Any comments you would like to make? </li> <li> If you are applying to other GSoC organisations with other proposals please tell us what the organisations are and the titles (only) of those proposals. </li> </ol>
What is your plan for dealing with disappearing contributors?
As stated in our application template, under Progress Reporting, we require a lot of communication with our student contributors. That makes aware early when things are going off track, and we start guiding the student back on track.
What is your plan for dealing with disappearing members?
We have decided this year to increase the mentor/student ratio from 1:1 to 2:1. I and other members of the Audacity Team will be monitoring our developer list, and if a mentor is not doing the job (as happened last year), he will be removed. If both mentors drop out, we should be able to complete the project with other team members. But this is highly unlikely, as Martyn and Michael are very responsible.
What steps will you take to encourage contributors to interact with your project's community before, during, and after the program?
We ask them, sometimes even nag them to post to audacity-devel, our developer email list. With our active community, it works well.
What will you do to ensure that your accepted contributors stick with the project after the program concludes?
At student selection stage, we look for evidence that the student has a real interest in our project, 'Do they actually use it?' rather than just choosing some project that is part of GSoC. Are they passionate hobby programmers, or just looking for a summer job? These should be somewhat predictive.
Also, our past experience has been that Audacity is a very popular and interesting project, with endless opportunities for new features and directions. There's such a large user base and so many ideas get discussed on the mailing list that losing interest is not a problem! Two of our student participants from last year are still with us, contributing very actively.
Please select your backup group administrator.
<Anybody, please? We'll need your Melange LinkID.>