Version 35 (modified by neverpanic (Clemens Lang), 12 years ago) (diff) |
---|
Google Summer of Code — Organization Application
This is the application the MacPorts Project will submit to Google for Summer of Code 2013. We need to have this finished by Friday, 29 March at 19:00 UTC.
Name
The MacPorts Project
Questions
Taken from Google Summer of Code 2013 Frequently Asked Questions.
- Describe your organization.
- MacPorts is a ports collection and packaging system for OS X. We have an ever-growing collection of ports (currently over 16000), many of which accept multiple configuration variants. MacPorts is one of the primary means by which open source software is compiled for and installed onto OS X, making it a primary interface between OS X and the rest of the open source world.
- Why is your organization applying to participate in Google Summer of Code 2013? What do you hope to gain by participating?
- We apply once more as we hope to implement new features in MacPorts. We also intend to attract new developers to our project and its community. With new feature additions and enhancements to our components (e.g. our GUI) we hope to become more user-friendly for the average OS X user and further increase the quality of our packages. Some big goals this year are minimizing MacPorts' dependency on Xcode since we can now provide pre-built binaries and Apple now provides a standalone compiler installer and improvements to the dependency resolution.
- Has your organization participated in past Google Summer of Codes? (yes/no)
- Yes.
- If you answered “yes” to the question above, please summarize your involvement and the successes and challenges of your participation. Please also list your pass/fail rate for each year.
-
MacPorts has taken part multiple times in the program since 2007 and greatly appreciates those contributions. Most of our students completed their projects successfully. We had previous GSoC students coming back as mentors in the following years. For example, our backup administrator was a student for our organization back in GSoC 2011.
- 2007: 2 pass / 1 fail
- 2008: 2 pass / 2 fail
- 2009: 2 pass / 0 fail
- 2010: 3 pass / 0 fail
- 2011: 3 pass / 0 fail
- If your organization has not previously participated in Google Summer of Code, have you applied in the past? If so, for what year(s)?
- not applicable
- What Open Source Initiative approved license(s) does your project use?
- BSD 3-Clause License
- What is the URL for your Ideas list?
- https://trac.macports.org/wiki/SummerOfCode
- What is the main development mailing list for your organization?
- https://lists.macosforge.org/mailman/listinfo/macports-dev
- What is the main IRC channel for your organization?
-
#macports
on FreeNode (irc.freenode.org)
- Who will be your backup organization administrator?
- Clemens Lang
- What criteria did you use to select the mentors? Please be as specific as possible.
-
Criteria for mentors is based on the mentor's visible experience in the MacPorts internals. Since Tcl/tk with namespaces will confuse new people, having mentors that know their way around is key to successfully planning our projects and guiding students to completion.
Rainer was previously a GSoC mentor, and as a MacPorts manager he brings great experience in our base code. Clemens was a GSoC student, and after completion of his project has stayed with us and implemented many new features in the base code. He can also be influential in helping get people setup for editing tcl/tk if they're new to it, since he went through it! Clemens took backup admin when I moved from mentor to admin when Rainer was too busy last year, and we've kept that structure this year. Lawrence is also contributing greatly to our base code, specifically ensuring packages are built with compilers they "support". This is very helpful as some packages still don't build right on clang, or have legacy issues with old Apple GCC. His efforts allow MacPorts to switch out compilers based on their version for a given package.
All these mentors fill our desire to have people knowledgeable of navigating our base code, which uses tcl/tk namespaces.
- What is your plan for dealing with disappearing students? Please be as specific as possible.
- We require contact information from our students as part of the application. Students should report their progress to their mentor at least once a week. We leave it open which communication medium to be used as student and mentor should use what works best for both. We know from past experiences that a student can just disappear without any notice, but if this happens we will not let them pass the midterm or final evaluation. Of course we will make this clear from the very beginning of the program and students will be urged to maintain regular communication.
- What is your plan for dealing with disappearing mentors? Please be as specific as possible.
-
First of all our mentors from the past years will be around to assist new mentors' introduction to the program. This will ensure that mentors know what is expected from them.
A disappearing mentor has occurred once, when we also had a disappearing student. When the mentor disappeared, another mentor—who sooner after actually became a MacPorts manager—stepped in to cover.
We've made it a rule that mentors will communicate among each other about progress and problems of the student, ensuring clean a clean failover to another mentor. This also helps with evaluation judgement and gauging expectations.
In the event a mentor disappears there will always be other people to help out, usually by assigning more than one mentor to a project. If the student cannot reach any of their mentors, they should contact an organization administrator which will have more contact information, and if somehow that fails the mailing list to send people after myself and the backup admin.
- What steps will you take to encourage students to interact with your project's community before, during and after the program?
-
We like to make contact with our students even before they submit their application, via IRC or on our mailing list. During the application phase we will refine and discuss the proposal with other developers. In the program, students are held to the normal development process. They get their own svn branch to work on, and any commits are visible to the whole community. This way anybody can express their critique on the student's work as replies to the commit system's emails, as we also do in general development. Also for specific milestones in their roadmap, we like to see status reports to the public development mailing list. By requiring communication with other people than their respective mentor, we encourage them to work with the spirit of open source development.
As we let students work as one of the organization's developers, we are looking forward to their continued development of MacPorts even after the program concludes. They will be treated like any other developer, which means they get regular commit privileges to help the project as they see fit. This also provides an introduction to future work. The success of this method can be seen as multiple students returned as mentors in the following years.
- Are you a new organization who has a Googler or other organization to vouch for you? If so, please list their name(s) here.
- not applicable
- Are you an established or larger organization who would like to vouch for a new organization applying this year? If so, please list their name(s) here.
- not applicable
- What will you do to encourage that your accepted students stick with the project after Google Summer of Code concludes?
- We keep all students' work in our source repository, and rebase it often so it's ready to be integrated. Seeing a student's code "go live" and get used by the project is the single best incentive. We also plan to keep in contact with the student to see if there are additional areas of MacPorts that might interest them for long term involvement.