With innersource, it’s important to measure both the amount of innersource activity and the quality of the code being created. Here’s how.
2020 has been a year of change, with shifts to the way organizations of every size connect, collaborate, and build together. From our 2020 State of the Octoverse report to last week’s GitHub Universe, we’ve seen teams finding ways to do more with less—starting with DevOps and automation. For many organizations, adopting DevOps means changing how they collaborate, automate, and build security into their development processes. However, the approaches our customers take in pursuing their goals differ based on where they start and where they’re aiming to go.
Consider these two stories of successful DevOps adoption: The Home Depot, a retailer founded over 40 years ago, shifted to cloud infrastructure and empowered individual teams to customize their DevOps toolchains, building the agility for same-day physical delivery to 90 percent of the US. Then there’s Front, a born-in-the-cloud customer communications platform that transitioned from managing servers with Chef to Kubernetes, and now uses GitHub Actions as part of their workflows for parallel, continuous deployments and to increase developer productivity.
The Home Depot and Front are two very different organizations, with different processes, goals, teams, cultures, and customers. So why would we assume the same approach to DevOps apply to both? Individualized DevOps practices set your organization apart. Just as unique supply chains in retail or manufacturing processes in heavy industry offer competitive advantages, doing DevOps your way helps your team—and your business—stay ahead.
Every business has unique processes, including CI/CD, to automate
No organization builds software the same way—The ReadME Project’s community-contributed articles make this especially clear. At Autodesk, CI/CD best practices are standardized and scaled across the entire product and organization on top of shared tools to drive agility. “We wanted to reduce duplication of efforts where everyone was building their own CI/CD pipelines and had their own CI/CD tools,” says George Swan, Senior Director of Autodesk’s Build Platform. But for Netdata, which supports an enterprise version of an open source solution they also maintain, two distinct CI/CD approaches play a critical role in the release process. Senior SRE/DevOps Engineer Austin Hemmelgarn explains: “We build the open source agent nightly, with a regular release every four to six weeks to support our enterprise users.”
More importantly, all businesses have unique processes to automate beyond CI/CD. While CI/CD automation is absolutely a key part of DevOps, restricting automation to CI/CD alone is a narrow view that ignores all the other benefits automation has to offer. There are a number of processes outside of CI/CD that take significant time and effort. Consider security: In GitHub’s 2020 State of the Octoverse report, we found repositories that automatically opened pull requests to fix vulnerabilities patched their software in 33 days. This is almost two weeks, or 40 percent faster, than teams who fixed vulnerabilities manually.
Extending the advantage of automation beyond CI/CD to other parts of your software lifecycle— compliance checks, team notifications, finding security breaches, incident management resolution, and GitOps—creates more opportunities to increase velocity. Teams at mabl, a leading CI/CD testing platform, have seen the impact automation can have firsthand. “We ship to production about 80 times a week across all our systems, so it’s important for us to cut back on any manual processes and checklists that stand in the way of catching bugs,” says mabl Software Engineer, Joe Lust. “Swapping to a built-in tool like Actions cut our CI/CD costs by 30 percent, even though we’re running nearly 2.5 times more builds than we did this time last year.”
Imagine trying to apply the same approach as your competitor to automate your unique processes. Doing it the same way as your competitor often means you’re not gaining an advantage over them at all.
Every business has unique investments and goals
DevOps is a means to deliver higher quality, more stable software, and to do it faster in support of business goals. But each business starts from a different place and drives towards different goals. A new business rapidly evolving to find product-market fit might not be focused on automation, preferring to experiment with processes first. On the other hand, an established enterprise may focus more on automating existing security and compliance processes as part of a larger transformation. The goals within each of these businesses is to influence the way their teams work and the investments they make to round out their stacks and toolchains.
At GitHub, we meet customers where they are, by crafting an amazing developer experience that takes into account where their business is headed. We saw this in action at Universe, where we heard from teams at Intuit, 3M, The Home Depot, and others. However, part of meeting customers where they are is ensuring that teams can incorporate the investments they’ve already made, automating their use as part of the development process. As our COO, Erica Brescia, shared in her keynote, we’ve partnered with infrastructure, operations, and business process leaders, including all the major public cloud providers, to help organizations and business teams integrate with the tools their developers already know and love. This helps their teams stay focused on the unique goals, without compromising on speed, stability, security, or compliance.
Every business has unique people and culture
Nothing defines your DevOps approach and whether new initiatives will succeed more than your people. The leading research of Dr. Nicole Forsgren, who previously developed the DORA metrics to benchmark DevOps performance, highlights the importance of culture and community as part of this year’s Octoverse findings. In discussing her findings this year, Dr. Forsgren noted that by leveraging automation in developer workflows, teams minimize manual work and reclaim time for innovation, development, and collaboration.
We’ve long said that software development is the world’s largest team effort. With over 56 million developers on GitHub, we understand that collaborating with smart people to solve hard problems is the ultimate motivation for innovation. For The Home Depot, creating a sense of community is fundamental to any organization’s success, for DevOps and beyond. “We’re better at collaborating and collectively solving problems,” says Technology Fellow Chris Black. “That’s what makes us better.”
Bringing it all together
There’s no one-size-fits-all DevOps. At GitHub, we’ve learned that no two organizations are alike. What sets you apart is also your most competitive advantage: Every company has a unique combination of culture, talent, goals, and investments that affects their path to DevOps success. There’s also no end to automation—by looking beyond CI/CD, you can help everyone in your organization build better together.