The first day of the 2014 Grace Hopper Celebration started off with a session welcoming newcomers to GHC '14. Last year, ~4,000 people attended the event, and the number doubled for 2014, which means a lot of newcomers to welcome. Next, the auditorium filled up as attendees filed in for the opening welcome, awards presentation, and a cryptography-focused keynote by Shafi Goldwasser
(2012 recipient of the Turing Award). Sessions started after the lunch break, including an open source track
, which included a code-a-thon where attendees could work with representatives from various projects.
Back in 2010, I read an article, Ready to be an open source contributor but don't know where to start?, which explained OpenHatch. The OpenHatch project was only about a year old back then. I decided to sit in the GHC '14 OpenHatch session today to see what the project is up to now.
I was surprised that Shauna Gordon-McKeon, Program Director at OpenHatch, didn't actually discuss the project much. Instead, she gave a quick, practical introduction to open source, which makes sense because the vast majority of GHC '14 attendees aren't active in open source communities. Yet.
OpenHatch is a non-profit that helps prospective open source contributors get up to speed on open source culture and find the right project fit. Her talk was a concise version of a bigger workshop OpenHatch offers, called Open Source Comes to Campus. If you or someone you know needs a 1-hour intro to open source, Shauna's GHC '14 slides are a good starting point.
First, workshop attendees were instructed to sign up for GitHub accounts if they didn't already have them. Then Shauna provided a brief description of a few popular open source projects, including GIMP, Raspberry Pi, Gnome, LibreOffice, and Python. What do these projects have in common? Shauna explained: you can run them for any purpose; you can understand and change them; you can share copies of them; and you can share your changed copies of them.
Then Shauna discussed the variety of people who use or contribute to open source software, including coders, testers, designers, technical writers, community organizers, translators, artists, scientists, journalists, sys admins, health care providers, and librarians. "Community organizers, which I count myself as one, are highly needed," she explained, adding, "And you can do more than one role." Shauna, for example, has contributed in a variety of ways, including as an activist, documenting, and programming.
Although navigating the world of open source can be challenging, Shauna told attendees that they could learn a lot from contributing to projects, and they'll learn it in a different way than they would in a classroom situation. She explained how you can contribute to live projects that get used in important situations, but you'll have less guidance than in an academic situation. And in addition to picking up new skills, you can improve current skills, such as Python programming. "Even at proprietary companies, they often look for people who have contributed to open source projects," she says.
In addition to boosting your career prospects, open source contributions are a great way to meet people. Although some open source communities are known for being rather uninviting to newcomers, others are fun and supportive, and attract long-time contributors. Before diving in to a project, Shauna recommends the contributors define what they want to get out of their involvement, which will help them determine which project is the best fit.
One way to get a feel for a community is by following their mailing lists, IRC conversations, and issue trackers. Although many of us who have worked in open source for a while are used to these ways to communicate, they are part of the learning curve before a potential contributor can dive in. I've been on a variety of mailing lists for years, and I'd used IRC before joining Red Hat, but it wasn't part of my daily process as a freelance journalist or during my years at Linux New Media or Sys Admin magazine, for example.
Documentation and Communication
If you're wondering why your open source project doesn't have a bunch of new contributors jumping on board, consider how well you've documented the process for getting involved, too. As Shauna pointed out, you can get a good feel for a community by lurking on its mailing lists, and even how well documented those lists are sends a message about how inviting the project is. Generally speaking, the more documentation a project has, the better it is for newcomers. Solid documentation, Shauna explains, is a sign of respect for a project's community.
Next, Shauna offered a quick howto for getting started with IRC. "What's interesting about IRC is that it's distributed," she says. Shauna explained how organizations can host their own IRC networks, or there are IRC networks such as Freenode. You can use any IRC client to find OpenHatch on IRC at: #openhatch on irc.freenode.net. (See the OpenHatch contact page for a nice example of a well-documented project.) And if you're not quite ready to dive into IRC, Shauna recommends testing the chat-waters using WebChat.
Shauna introduced issue trackers, including Oppia and Jenkins, but then she showed a hands-on demo of GitHub. The demo is available on the OpenHatch site, so if you missed the talk today and want a walk through, create an account and follow along.
Getting Into GitHub
Shauna's talk offered an impressive overview of open source in less than an hour, and attendees who wanted to learn more about GitHub could walk across the hallway to the The basics of contributing to open source with GitHub talk, led by John Britton (johndbritton on GitHub).
In John's talk, attendees got a quick refresher on the idea of GitHub, but then more hands-on experience with forking a project, making a new branch, adding features, creating pull requests, and how changes get accepted. If you missed John's talk and want to learn more about GitHub, check out classroom guide on the GitHub site. And if you're a student, you're in luck: GitHub announced a new student developer pack yesterday, which promises to help you "ship software like a pro".
The first day of my first trip to the Grace Hopper Celebration has been impressive, and the career fair is about to start now. Be sure to swing by the Red Hat booth (you'll find us at booth 404, I promise!) to find out more about our job opportunities. I'll see you on the fair floor.