This page contains information specific to GNOME's participation in the Outreach Program for Women internships from December 9, 2014 to March 9, 2015.
Three interns did their internships with GNOME during this round. The internships were generously sponsored with dedicated sponsorship by the Free Software Foundation and general sponsorship by Akamai, Cisco, Google, and HP.
1. Project Ideas
Applicants, GNOME's page for the program explains how you can choose a project. Please see the confirmed ideas below.
Mentors, first it's very important that your read GNOME's information for mentors and Outreach Program's information for mentors. Both provide important information about expectations and best practices.
Add your project ideas and a link to your contact information here. Because we only usually have a few participants in the Outreach Program, this round we are limiting the available projects to the ones that are most strategic for GNOME. These include, but are not limited to, projects in the area of privacy, developer experience, GTK+, core experience, core applications, and web infrastructure. We would also like people to think ahead of time how they will be able to provide excellent mentorship to the interns before, during, and after the internship, and whether there is a larger project team the intern will be able to receive support from.
The cross-team triage committee for proposed project ideas consists of Matthias Clasen, Allan Day, and Sriram Ramkrishna.
Please use this format:
. '''Idea title''' (mentor: MentorName linking to you live.gnome.org personal info page) * ''Benefits'': describe the benefits of your idea * ''Importance'': why is this idea strategic for GNOME? * ''Requirements'': what should the applicant know already? * ''Mentorship style'': why would you make an excellent mentor? * ''Project team'': what is the project team like? * Note: one or multiple notes, links, whatever further information ----
As explained in the section on redirecting on the Outreach Program information for mentors page, please feel free to add [No longer taking applicants] next to your project idea if you have as many applicants as you can work with during the application process or have a strong applicant you will likely want to accept.
1.1. Confirmed Ideas
Replacement for combo boxes in GTK+ (mentor: Lars Uebernickel)
Benefits: GNOME applications can use a simpler combobox style that fits better with other elements of GNOME 3, such as popovers.
Importance: Combo boxes are part of the visual language that the GNOME HIG offers to application developers. Having GTK+ provide suitable widgets for all parts of the GNOME HIG is important for a good developer story.
Requirements: C skills, some familiarity with GObject and GTK+ widget internals would be beneficial.
Mentorship style: We will try to organize the work in small-size chunks, and have regular meetings to catch up on progress and answer questions. Preferred communication medium for day-to-day questions is IRC, but phone calls and hangouts are possible too.
Project team: The GTK+ team is a loosely coupled group of experienced core developers. Most of us work on other projects, and can provide guidance on questions ranging from API design to C coding practice. You will also interact with the designers to discuss and refine the existing mockups for the new widgets. You can find us in #gtk+ and designers in #gnome-design on GIMPNet.
[No longer taking applicants] Improve GNOME Keysign (mentor: TobiasMueller)
Benefits: Signing another person's key is one of the first steps when trying to communicate securely (after generating a key). For now, signing someone's keys and following best practices is tedious and error-prone. The tool helps to make that a much more pleasant experience.
Importance: GNOME could become the first desktop to ship a key signing tool to a wide audience which shows GNOME's dedication to security and privacy of its users.
Requirements: Python is a big plus, Gtk+ would be good, some crypto would be nice, but not required.
Mentorship style: During the last GSoC I mentored, I tried to have a weekly call to sync the status.
Project team: It's a very young project, so no team has been formed yet.
A successful Summer of Code project made an OpenPGP Keysigning tool happen. Code is currently hosted at https://github.com/muelli/geysigning for now, but should change once a few releases were made, so expect that link to become defunct. The project's wiki page is GnomeKeysign.
- As the project is very young, many problems can be tackled. Good enhancements to the existing implementation would be:
- Show the number of available signers on the network
- Automatically recognise a manually entered fingerprint
- Also operate in non-GUI mode, i.e. be able to sign a key from a file
- make the camera selection much more robust, i.e. support multiple cameras, allow selection
- allow images to be used, instead of a camera; bulk scan a folder
- cater for UIDs with XMPP addresses
Automated tests for applications in GnomeContinuous (mentor: ShivaniPoddar, VadimRutkovsky)
Benefits: Enable GNOME to detect bugs early and improve the overall quality of applications. Several projects have started using dogtail scripts for tests, this idea will help new projects to adopt tests, improve them and make use of CI in GNOME. We have already geared up with the project in the last round of Summer of Code, will be nice to extend it further.
Importance: Test Coverage enables not just early testing but synchronous development of applications and is an important aspect of developing applications. One of the major areas where we need to work to enable the above is Automated testing.
Requirements: Knowledge of any scripting language, dogtail experience preferred.
Mentorship style: There are a small group of people working on this, and so its easier to ping any of us for help. I have been a student with GNOME for the last 2 rounds (with Vadim - vrutkovs) as my mentor and so I am familiar with the initial stumbles of getting introduced to opensource. However, as long as you are willing to learn, I am willing to help! Its mutual learning afterall
Project team: Small team with experts in dogtail and python (vrutkovs, vhumpa) and students of previous rounds hang out to work on this project @ #qa.
[No longer taking applicants] Usability testing (mentor: JimHall)
Benefits: By conducting usability tests of GNOME, you can help find areas in GNOME that can be improved, to make GNOME even easier for people to use.
Importance: GNOME needs to be an easy and elegant way to use your computer. With good usability, GNOME will be easy for everyone to use.
Requirements: Usability testing is not difficult, and anyone can do it, even if you have never done usability testing before. Conducting your own usability test will require you to meet with people, to ask questions. You can re-use the usability test scenarios we used in previous usability tests, or you can write your own (for example, to cover new functionality or programs not previously covered). You will need access to at least two computers: a desktop or laptop for testers to use, and another (preferably a laptop) for you to take notes on. Usability testing is best done in a quiet space away from other distractions; for example, you might use a classroom or meeting room.
Mentorship style: You'll be working independently, but I can help! We'll do online chat to help you learn about usability testing, and to get started with your own usability test. As you get ready for your usability test, I can help you to prepare materials and questions, and offer coaching on what to expect. Afterwards, I can help you to analyze the test results using a "heat map" method.
Project team: I would be happy to meet with you via online chat (video, voice, or text).
- Note: My Master's capstone was the Usability of Open Source Software, in which I analyzed and discussed the usability of GNOME. I gave a keynote at GUADEC'14 on GNOME usability, and I have written several articles on usability for Linux Journal.
Integrate Contacts in GNOME Maps (mentor: JonasDanielsson)
Benefits: A reason one would use GNOME Maps over other web based map applications is if it drew from integration with the rest of the GNOME desktop. If one could easily find a route to your GNOME Contacts that might be a use case for starting GNOME Maps.
Importance: It allows for tighter integration between the apps.
Requirements: Some Javascript, some GTK+, not much fancy stuff is needed.
Mentorship style: I am patient, I am kind of new to the whole GNOME world so I remember what was tricky and what was informal knowledge and not. Have been GSoC mentor last round.
Project team: Small team with mostly people kind of new to GNOME dev, but with some oldtimers around.
[No longer taking applicants] Smart Playlists in GNOME Music (mentor: VadimRutkovsky)
Benefits: Modern music applications help user to sort its music and suggest new tracks using smart playlists. See original bug report for mockups and implementation details
Importance: Better playlists support in Music
Requirements: Python skills, some GTK+ knowledge
Mentorship style: You will be working independently most of the time, with lots of help and advices from the team.
Project team: Small team of beginners mostly, oriented on quality and discussion.
Improve GNOME Shell Calendar (mentor: FlorianMuellner)
Benefits: The current calendar popup mostly works, but it's hardly great: there are a lot of details we don't get right (many events, few/no events, navigation, ...).
Importance: It adds polish to a part of the interface that was neglected in recent versions - every detail matters!
Requirements: Building and running GNOME Shell with jhbuild, some javascript, some Clutter/GObject basics
Mentorship style: Due to the nature of the project, work will be split into smaller chunks, fixing one detail at a time. Hopefully this will make tracking progress easy, without having to schedule regular meetings. In any case, I (or someone else from the team) will always be available for assistance - when not already on IRC, I can usually be summoned by mail/hangout; the latter may also be used as alternative to IRC if desired.
Project team: Diverse team of oldtimers and newcomers, experienced and intermediate developers. Interaction with the design team will also be required.
1.2. GNOME-Related Idea with Debian
Debian GNOME Team contributor
NOTE: This is a Debian OPW project linked here so both teams are aware of potential collaboration!
https://wiki.debian.org/OutreachProgramForWomen#Debian_GNOME_Team_contributor