Building open source community culture online, Part 1 hero graphic

Building open source community culture online, Part 1

Apr 16, 2020 by Armory

Read on for highlights, stats & learnings from Spinnaker Gardening Days

With people worldwide rediscovering subsistence strategies like cooking and bread baking, I hope that gardening will also enjoy a resurgence! Tweet your garden pics to @dnilas0r with your answer to, “why do you garden?” any time : )

While planning the first Spinnaker Gardening Days, I continually asked myself: what will make folks in the OSS community want to join? What motivates people to contribute to open source projects?

Current circumstances render the question “why do we garden,” rhetorical; of course, we garden for fresh food and beautiful yards. But how many of us stay connected to those clear benefits in our daily lives? Gardening is gratifying, but not instantly. So, we may overlook it.

Just like we all eat, we all use open source software. We build careers and businesses on its capacity to solve problems. When it’s time to apply for a job, prepare a conference talk, or write our bio, demonstrated open source engagement makes an instant difference. To get that gratification, we need to start planting our contribution seeds now.

The hackathon proved that our community is ready and willing to sow those seeds. Prospective contributors expect a huge return on investment in Spinnaker Success at their organizations. As our community heats up, they can also expect the spotlight as the skills and contributions they manifest enhance professional profiles and generate buzz.

Enable the world on Spinnaker with standard development environment setup

The hackathon also proved that establishing a Spinnaker development environment is time-consuming. With several installation routes, and different gotchas to address depending on individual infrastructure choices, this can quickly overwhelm a new contributor. To help contributors prepare, we wrote a development environments guide which covers several viable routes. It even contains a video guide for local installation using Minnaker, a Spinnaker quick-start tool built by Armory for POC installations. Still, the variance we found in environment setup across expert Spinnaker developers indicates that no best practices exist. This isn’t the inviting, smooth onboarding process we’re striving for. Rob Zienert, who volunteered as an on-call expert along with fellow Spinnaker engineers from Netflix, Google, and Armory, addressed this in a key post to our main event Slack channel, #gardening-general:

dev-toolkit announcement

^ TOC-member Rob Zienert responds to the community’s need with a pledge to lead development of an official Spinnaker Dev Toolkit

I have joined the #dev-toolkit channel and look forward to working with the TOC to unblock prospective contributors for a productive 2020! Please join us, as a standard dev toolkit would help organizations quickly influence Spinnaker’s evolution, in the true spirit of open source.

Hackathon result stats

A message I hoped to communicate to all prospective contributors in the hackathon: start small! Tracking issues and PRs that interest you, and commenting on them to provide context (even when you don’t have a solution), is a great way to start learning a new codebase. The event gave me a better idea of how to balance formation of project teams with to option to work solo on smaller projects. We had one wildly successful project team, which built a plugin for using Pulumi in Spinnaker pipelines (more on their project below).

Pulumi plugin demo

First, let’s look at this event’s output. Here’s a rundown of recorded contributions (excluding activity from Armory folks). CONGRATULATIONS to these contributors, who will soon receive their prizes from sponsor Salesforce:

We found that many attendees focused on environment setup and introductory plugin building tasks, according to the training we provided. I know we’ll see some of those “seeds” in full bloom at the next Gardening Days!

The Pulumi plugin project

We were thrilled to host a project team with a strong drive to flex Spinnaker’s new Plugin framework to create a custom pipeline stage. Thanks to the framework and clear extension points in Orca, Spinnaker’s orchestration engine, this team was able to scope their integration project with just enough time to demo working AWS resource creation as we concluded the hackathon. Check it out:

For a behind-the-scenes view, look at the code for the Pulumi Plugin, which lives in our Spinnaker-hackathon organization. The plugin deploys and runs Pulumi, an Infrastructure as Code tool that provisions AWS, GCP, and Kubernetes resources with code in your language of choice. Users of this plugin won’t need to leave the Spinnaker UI to interact with Pulumi and see output of its resource actions; it’s all integrated. So, did the Pulumi team enjoy Spinnaker Gardening Days? Dan Hernandez, the project proposer, said in the demo:

The whole time, we had anywhere from 3-8 people on the line with us, with a lot of folks contributing in different ways, even if only by listening and learning and chiming in here and there. We’re thankful for that, as we expected it to be just us to be working on this. It was definitely a surprise to get all of the engagement, which is awesome.

 

Armory’s plugins team worked tirelessly with colleagues from Google and Netflix to set up and test the new framework and build extension points into Spinnaker. Hoping to engage the community in what they’ve built, they put together a training program to introduce Spinnaker Gardening Days developers to using it. From backend, to frontend, to build and delivery, this series lets you learn step-by-step from experts and creators. Watch the full playlist below:

Plugin Training Playlist

 

 

Armory engineers were so excited to use real problems to test and improve the plugin framework. For the Pulumi team, the feeling was mutual. Cristhian, the Pulumi team’s lead developer, said in the demo:

Special thanks to Clay, who helped us to understand how Spinnaker plugins work. It was very helpful. Clay was awesome.

Clay McCoy, the Armory engineer he’s referring to, had a lot of fun working with everyone on the Pulumi team, and got great feedback to bring back into Spinnaker Plugins. He was happy to “get an idea of what an ideal Spinnaker and Pulumi integration would look like,” and I’m so excited to see what grows out of this collaboration!

Thirst for Spinnaker training

The last thing to highlight in Part 1 is the incredible demand for Spinnaker training. Folks have heard the success stories and want support in capturing the value of continuous delivery at their organizations. Luckily, the Armory training team was ready to deliver an awesome lineup of Spinnaker training that ranged from beginner to more advanced topics like custom stages, SpEL, and of course, plugins. 116 people signed up to attend the training track, and we’ve already seen over 500 views of event training videos. Check out the full playlist of training videos below.

Spinnaker Training Playlist

 

Hearing the community converse about training needs and new project ideas warmed my heart! We’ll hit the ground running at Spinnaker Gardening Days II, coming soon.

Meanwhile, look out for Part 2 of this article, which will dig deeper into what we learned from Spinnaker Gardening Days, including motivation strategies, internationalization, and ways to contribute! I’ll show you my data collection efforts to track contributions, and new efforts to dashboard and gamify them. For now, if you’re still hungry for Spinnaker training, make sure you’re tuned into the action on Spinnaker Slack, and join our live webinar, “Get Started with Spinnaker,” at 4 PM EST/1 PM PST today!

Share this post:

Recently Published Posts

How to Become a Site Reliability Engineer (SRE)

Jun 6, 2023

A site reliability engineer (SRE) bridges the gap between IT operations and software development. They understand coding and the overall task of keeping the system operating.  The SRE role originated to give software developers input into how teams deploy and maintain software and to improve it to increase reliability and performance. Before SREs, the software […]

Read more

Continuous Deployment KPIs

May 31, 2023

Key SDLC Performance Metrics for Engineering Leaders Engineering leaders must have an effective system in place to measure their team’s performance and ensure that they are meeting their goals. One way to do this is by monitoring Continuous Deployment Key Performance Indicators (KPIs).  CD and Automated Tests If you’re not aware, Continuous Deployment, or CD, […]

Read more

What Are the Pros and Cons of Rolling Deployments?

May 26, 2023

Rolling deployments use a software release strategy that delivers new versions of an application in phases to minimize downtime. Anyone who has lived through a failed update knows how painful it can be. If a comprehensive update fails, there are hours of downtime while it is rolled back. Even if the deployment happens after hours, […]

Read more