As OpenStack booms, more and more developers, operators and users around the globe are jumping in and contributing to the massive open-source cloud storage project.
That’s great news for OpenStack. But the large crowd of contributors can be intimidating to newcomers. So the OpenStack Foundation has developed a training program to help those newcomers, to complement the other ways to build one’s OpenStack skills like the Training Marketplace and occasional partner company boot camps.
Contributions now number over 2,000 people from around the world, according to Stefano Maffulli, Technical Community Manager at OpenStack Foundation.
When “you get 2,000 people from all continents in the world and from hundreds of different companies, you have a lot of different cultures,” Maffulli says.
Developers who are accustomed to working on their own or with a small team need to find their way in a massive group.
The process can be so confusing and frustrating for even the best of programmers: they not only need to learn the program, but more importantly, to understand how the whole development process works, Maffulli says.
That’s why the OpenStack Foundation partnered with Upstream University, and debuted a course this year in May just before the OpenStack summit in Atlanta.
People who took the training program from this university didn’t get a degree. But they get something much more tangible: a path to success.
As the name implies, Upstream University teaches developers how take to send their suggestions for software patches and contributions upstream.
The open source model “can be very confusing,” Maffulli says. The university “is designed to help them—to guide them. Upstream University is a way to teach people the social skills to have their contributions accepted more readily and faster.”
Twenty people from across the globe, including Europe, India, China, Japan, Canada and the United States, attended the two-day program, Muffulli says.
The training program emphasizes the social aspect: how to make your voice heard in such a large group.
“You have people who are shy,” Muffulli says. “You have people who are aggressive. You have people who have extremely high competence and people who have limited competence but can focus on specific areas of knowledge. You have all kinds of stuff.”
And for the newcomer, that can be intimidating and frustrating—especially because working on an open source project means “donating your time and your energy to something that is much bigger than you,” Maffulli says.
But there are specific processes—specific ways to submit patches, specific ways to work on the software, specific ways to communicate, Maffulli says.
If you don’t know those processes, you might end up sending a patch in only to have it be rejected — or worse, only to have it disappear into what might seem like the development black hole.
“There’s a little friction, especially at the beginning, Maffulli says. “These guys are not used to it. I mean, who wants to be judged?” And, he adds, “Every time you do something for the first time you’re probably going to do it wrong.”
In the class, participants not only learn the ropes, they also get to meet other developers so the system is not so anonymous. And once people complete the training program, they continue to be mentored by others in the program.
Some open source projects put down programmers. Others are competitive.
“We’ve developed this culture to be welcoming from day one,” Maffulli says. There are other projects where it’s normal to tell people that they’re idiots—call people names. We don’t do that.”
The User Perspective
Nevertheless, even with OpenStack’s nice guy attitude, figuring out the system is not a simple matter and the university was invaluable, says Bob Bennett, who attended the two-day training so he can begin using OpenStack for the media company where he works as director of IT.
“It was like drinking out of a fire hose,” he says.
Bennett actually had to develop his own operations stack storage system for the company where he works, Crawford Media Services, Inc. because he was tasked with developing it back in 2010 back when OpenStack was just being launched.
Now he’s thrilled to be able to move to open source because OpenStack is “the future and the sooner I get on board, the better,” he says. “It’s a train going a hundred miles an hour and you can reach at your hand and try to get on board, but it’s probably going to pull your arm right out of your socket. Or you can have somebody baby step you into the process, which was what the University was.
Now, Bennett says, with some more diligence, he can participate in the OpenStack community.
“I want to be a part of this community,” he says. “I want to know the correct way of doing things. There’s a regimen to it. There are rules and regulations.”
The university made it clear that OpenStack “is an inclusive club,” he says. “I learned the whole procedure for doing things.”
He’s already contributing.
Tim Freund also was anxious to learn how to contribute. Freund, site reliability engineer at NIC Inc. said his organization is investigating using OpenStack so he decided to attend the summit.
Even though he’s been a software developer for well over a decade, “the level of sophistication and the size of the project kind of intimidated me,” he says.
“I like the idea of being able to get together with people that are actively involved in the project and having them walk us through the process of getting it up to speed with how to contribute, how to get involved, what to do, what not to do sort of thing.”
And like others who attended the training program, learning the social side of open source was every bit as important as learning technical side of things—maybe more so.
At the summit, trainers “reminded us that OpenStack is a project made up of a bunch of people that are trying to do something really cool in open source and they want to help newcomers succeed,” Freund says.
Their teacher “was reminding us that you know, not only is the project made up of a bunch of humans that one help you succeed, but it’s also a bunch of humans that have jobs and families and responsibilities. Sometimes they get busy to so don’t get discouraged just because things don’t fall into place right away.”
Agile and Open Source
Sean Roberts knows just how important training can be. As a board director and project leader at OpenStack Foundation, he says the training is invaluable.
As someone who runs a user group for OpenStack training “we were repeating a lot of things,” says Roberts, who also runs Infrastructure Strategy at Yahoo. “We didn’t feel like we were giving the people who were showing up the maximum return on their time.”
The biggest gap that he was dealing with: programmers who understood traditional software development but were having trouble switching to the kind of development required in open source projects: agile development.
With traditional development, software gets revised every so often—usually every few months or even every year.
But it’s the opposite with OpenStack.
“We produce different versions of the OpenStack software hundreds of times a day,” Roberts says. “It’s agile. It’s very active.
“What they taught at the summit was really important: they taught how to contribute to OpenStack and they also taught some agile teambuilding. These are really two sets of skills.
“I think this is going to be a great year because I see a lot of more people getting involved who are going to make it that much more interesting,” Roberts says. “The better people understand how things work, the quicker they’ll get up to speed, the faster they’ll be able to develop new features—make things more stable. So I’m really happy with where we are at right now.”
To learn more, watch this session about Community Created and Delivered Training for OpenStack
Read the OpenStack Training Guides