DevOps Practice

Best of 2020: Dear Staging: We’re Done

As we close out 2020, we at DevOps.com wanted to highlight the five most popular articles of the year. Following is the fourth in our weeklong series of the Best of 2020.

Dear Staging,

I’ve been thinking a lot lately, and I’ve come to the decision that it’s time for us to go our separate ways. Our time of working together in the software delivery process has come and gone, and I just can’t look past your shortcomings anymore. I would say it’s not you, it’s me, but let’s not kid ourselves: It is you.

You’re Too Expensive to Keep Around

For starters, you’re way too much of a burden on my wallet. With your memory-based cache, web servers and application servers that query a database, you’re costing me more than $100K per environment—and that’s just for your most basic architecture. After factoring in your maintenance fees, necessary certifications, and infrastructure costs, you’re just not practical anymore.

Businesses regularly review their expenses with a fine-tooth comb and cut out anything that doesn’t provide efficiency and value. You, Staging, offer neither of those, and it no longer makes sense to invest in a dummy environment.

You Can’t Fulfill My Needs

When I test my code, I want to know that it works in production. Staging, you can’t give me that. Your environments and your data are different than that of production, which causes inaccuracies in my test results.

As a tester, this means just because my code works in staging, it won’t necessarily work in production. It’s beyond frustrating when my code passes its test in staging but then fails when it reaches production. You’ve broken my confidence too many times here, and it’s just unacceptable.

You’ve Lost Your Significance

I need to test in an environment that makes an impact and provides meaning to my work, and you don’t give me that. If my staging environment is down, it’s not a big deal, and people don’t care to fix it.

Yes, there was a time when you were relevant, but that was years ago when software development was still gaining traction and staging was the default rather than a choice. Now, I can’t even get anyone else to care about you. When your system goes down, no one will give you the time of day because you’re old, outdated, and not a priority.

You Slow Me Down

My time is valuable, and I’m wasting it when I spend it with you. For starters, it’s hard to create an exact replica of production, which means I have to create new data when I test in a staging environment. Because of this, my test results from staging don’t give me the same level of accuracy, so I end up doing more work for less quality.

Additionally, most companies have more than one staging environment, and it takes time to individually test in each one. Most importantly, end users are not going to use my product in staging; they’re going to use it in production. Why not cut out the middleman and go straight to where the action is?

I’ve Found Someone New

Her name is Production, and she gives me what I need. One of the biggest factors is that I’ll never know the differences between you and production until I test there.

With feature flags, I can safely test in production without fear of breaking something or negatively affecting the customer experience. They allow me to target specific users, which means I can choose exactly who sees the changes I make to the feature. All other users must wait for me to give the green light before they can see the new feature.

As you can see, Staging, it’s time for us to go our separate ways. We’re no longer compatible, and Production more than fulfills my every need. I’d say good luck in finding someone who considers you valuable, but the truth is, it may be time for you to hang it up permanently.

Talia Nassi

Talia Nassi is a developer advocate at Split Software where she works closely with engineering teams globally to ship software more efficiently. She is passionate about testing in production, feature flagging, canary launches, CI/CD, and A/B testing. She's also an international keynote speaker who gives conference talks on all things testing and quality. She's spoken at countless conferences, ranging from audiences of 100 to 4000!

Recent Posts

Building an Open Source Observability Platform

By investing in open source frameworks and LGTM tools, SRE teams can effectively monitor their apps and gain insights into…

23 hours ago

To Devin or Not to Devin?

Cognition Labs' Devin is creating a lot of buzz in the industry, but John Willis urges organizations to proceed with…

1 day ago

Survey Surfaces Substantial Platform Engineering Gains

While most app developers work for organizations that have platform teams, there isn't much consistency regarding where that team reports.

2 days ago

EP 43: DevOps Building Blocks Part 6 – Day 2 DevOps, Operations and SRE

Day Two DevOps is a phase in the SDLC that focuses on enhancing, optimizing and continuously improving the software development…

2 days ago

Survey Surfaces Lack of Significant Observability Progress

A global survey of 500 IT professionals suggests organizations are not making a lot of progress in their ability to…

2 days ago

EP 42: DevOps Building Blocks Part 5: Flow, Bottlenecks and Continuous Improvement

In part five of this series, hosts Alan Shimel and Mitch Ashley are joined by Bryan Cole (Tricentis), Ixchel Ruiz…

2 days ago