Here is a list of some nice folks in GNOME who can help you make your first contribution, and perhaps even mentor you during a Google Summer of Code or Outreach Program for Women internship, if you are planning to apply for one. Once you decide what project you are interested in contributing to and explore the information available on that project's wiki, you can introduce yourself to the project's mentor and ask them any questions you have about contributing to the project. The mentor can help you build the project's code, identify an easy bug to start with, and help you with your patch for that bug. The mentor can guide you through your subsequent contributions and point to the resources for solving a particular task.
Typically, there are other people on the project's IRC channel, who can help you too. So please ask your questions in the channel. You can address the mentor directly by using their nick in your question. E.g. if the mentor's IRC nick is kelly, you can say "kelly: hi! I just built project-foo and looking for a bug to fix - I found bug 123 and bug 321 in the project's bugzilla that both look like something I can try to work on, but I wanted to see if you have any recommendation, since you are listed as a mentor for the project".
You can find the information about the projects on their wiki pages. The link next to the project name is the name of the project's IRC channel on irc.gnome.org . The string next to each mentor's name is their IRC nick. You can learn more about the use of IRC for GNOME development and how to install an IRC client here. You can find out other contact information and more about each mentor on their individual pages.
If you are interested in finding a mentor for a project not listed here, you can look at the project's commit log to see who are its most frequent contributors and try to find them on IRC. You can also ask on the #newcomers IRC channel or mailing list.
Mentors, please read the information for mentors before adding yourself and your project to this page.
All software projects also require design, documentation, engagement and translation. If you are interested in these tasks, you can learn about both the project and the activities of the relevant team to figure out how to best approach it.
- [Not taking applicants for May - August 2014 internships round] During this release cycle, the Accessibility Team is unable to provide mentorship due to other obligations. HOWEVER, we would be extremely grateful to have a fully keyboard navigable GNOME. If you find applications with issues in this area, the maintainers of those applications may be able to serve as mentors.
- The GNOME Accessibility project develops solutions for making the free desktop accessible to people with various disabilities, such as visual impairments. If you are interested in contributing in this area, you will find having some knowledge about, and familiarity with, assistive technologies and/or accessibility implementations extremely helpful. If you lack this, you might find the Accerciser tool a good way to get started exploring. Another possible area of contribution which does not require this knowledge would be to try to use GNOME and its applications without using a mouse. When you find an application where this is not possible, try to fix the bug in that application.
mentor: Johannes Schmid (jhs)
- Anjuta is a versatile Integrated Development Environment (IDE) for C/C++ and other languages.
- Banshee is a multimedia management and playback application for GNOME, with support for OS X and Windows as well. There are a lot of possibilities for contributions, from small code clean-ups to big features. Improvements to our user help and the developer documentation are also welcome.
mentors: Emmanuele Bassi (ebassi)
Clutter is a toolkit for creating fast, compelling, portable, and dynamic graphical user interfaces. Clutter is used by GnomeShell, GnomeGames, GnomeDocuments, and other applications. Contributions can be items from the road map, documentation updates, and bug fixing/backporting from the master branch to the stable one.
mentor: David King (amigadave)
- EasyTAG is an audio file tag editor, for organising either a single file, directory of files or a whole music collection. There are several areas to help out, such as Mallard user help, UI design, converting the old codebase to be more GObject-like and hacking on new features.
- Empathy is a messaging program which supports text, voice, and video chat and file transfers over many different protocols. We are interested in people working on software development, usability, documentation, and a new default theme.
mentors: José Aliste (jaliste)
Evince is a simple document viewer (PDF, PostScript, DVI, Comic books, Djvu, etc.). We are interested in contributions to improve annotation and form supports in PDF. Although, there are more task to be done that can find following the links in the developing section or in the roadmap.
- GStreamer is a multimedia framework, used inside GNOME in all applications that have to deal with audio/video but also outside GNOME in many different areas, ranging from a media playback application in some embedded system to streaming servers, video editors and sound sequencers.
Getting Things GNOME! is an todo manager for the GNOME desktop environment (a' la Google Tasks or Remember The Milk). Download it and check it out (the package is called "gtg" in debian/ubuntu). We have lots of bugs in our bug tracker, specially LOVE bugs for new contributors. We are a small team and we would be happy to meet you.
GUPnP is a UPnP/DLNA framework for GNOME. Please read "The user story" on the Rygel home page for description on what these technologies mean in practice to end-users. The best way to get started learning about the project would be to play around with Rygel and totem in the latest version of GNOME.
Mentors: Philip Withnall (pwithnall)
- libgdata is a library providing the desktop access to Google's web services.
Mentors: Philip Withnall (pwithnall)
- folks is a meta-contact aggregation library which pulls together contact information from multiple sources to give a unified view of your contacts.
Mentors: Federico Mena-Quintero (federico)
- librsvg is the library that GNOME uses to turn SVG images into pixels. Its internals are getting ported to the Rust programming language. Help is appreciated!
- Gnome Keyring is a database for passwords and secrets
- Seahorse is a password and key manager
Design, Documentation, Engagement, etc.
There is a lot of work that can be done to improve GNOME documentation - writing, editing and testing help topics for end users; writing guides for developers; integrating help into user interfaces; performing help usability tests; making high-quality instructional videos to be integrated into the help; and helping distros to use the GNOME docs as a basis for their own specific documentation. The new topic-based GNOME documentation is being written with Mallard XML.
- We are not taking any OPW candidates at this time, until we can come up with a project that will suitably challenge a candidate and can last for the time of the internship.
- GNOME Engagement is all about spreading the GNOME love by promoting the project and its software, and also helping to make it an awesome experience to be part of GNOME. All skill sets are welcome here.
- [Not taking applicants for May - August 2014 internships round]
There are several GNOME websites that require ongoing maintenance and development, including www.gnome.org, news.gnome.org, planet.gnome.org and more. To learn about the GNOME web infrastructure and possible related projects, go over GNOMEWeb information on the wiki, browse Bugzilla for website bugs that need fixing, and then contact a mentor for help!
Greek language (#eiosifidis on GIMP.net or #diamond_gr on Freenode)
Make sure Gnome can work on some non-x86 platform