It seems it's that time again to clear up some misconceptions about DevOps. A thread.
DevOps means Development Operations. If your team isn't doing both, development and operations of the same product/project, it's not DevOps.
DevOps is not about tools but about mindset. Using Docker, Kubernetes, Helm Charts, Packer, Terraform, etc, does not make you DevOps. Having the same team performing development and operations does.
If you have a Dev team, a DevOps team, and an Ops team, for the same product/project, your DevOps team is *definitely* not a DevOps team. If this is your setup, you've done the *opposite* of what DevOps means.
Using something that has "DevOps" in its name does not make your team a DevOps team. Your team uses Microsoft Azure DevOps? If it's not performing development and operations, it's not a DevOps team! No matter what they use. (And don't use Azure!)
If you have a team that uses "DevOps tools" like Docker, Kubernetes, Helm Charts, Packer, Terraform, but is doing this for other team's products/projects, that's again not DevOps: It's not development and operations in the same team.
DevOps is part of proper Extreme Programming. It directly relates to the XP practices Whole Team and Continuous Integration.
DevOps is also "hidden in plain sight" in Scrum. Scrum talks of a cross-functional team. Operations is a function. If you include it in your team, your team is more cross-functional.
Not all teams need DevOps. For example, if you're making a product that's used by somebody else, you're perfectly fine without. It may still be worth looking into it, there may be some tools and practices that could still be useful for you.
DevOps needn't be complicated. Deploying to prod at the end of your CI/CD script, after running all the tests, using

scp app.jar prod-server:
ssh prod-server systemctl --user restart app

could be perfectly sufficient for your team/context.

Simplicity. Travel light-weight.
Don't believe the management hypes. Major DevOps environments like Microsoft Azure DevOps are fundamentally flawed and need lots of workarounds to operate reliably (for example, their bash shells do not set errexit and pipefail by default).
And again, DevOps isn't for everyone. DevOps can significantly reduce the lead time from dev to prod. DevOps can increase the adaptation from feedback and thus, if done well, in some contexts even eliminate the need for support teams. But that depends on you and your context.
If you want to hear other people's opinions about this, check out @allenholub for example.

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Christian Hujer #BLM 🏴‍☠️🖦🧙🏻‍♂️🕊

Christian Hujer #BLM 🏴‍☠️🖦🧙🏻‍♂️🕊 Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @christianhujer

2 Feb
Agile is much more about reducing lead time, defects, and all kinds of wastes by empiricism (feedback; transparency, inspection, adaptation) on all various scales of time (from seconds to months) than any particular method or framework.
Your practices, methods, and frameworks should be aligned with this: Check where you are, decide where you want to be, go a small step in that direction, look at how that worked, and repeat. Establish that cycle on various time scales.
On the cycle of seconds, we can use editor-based static code analysis, pair programming, and ensemble programming, to get instant feedback on code while code is written.
Read 10 tweets
16 Aug 20
Today is rant day. Let me see what I've got.

Scrum is bullshit. Skip it. Directly move to XP.
Warning: occasional strong language ahead.

Scrum is all about empiricism. Empiricism is good. Empiricism is usually not the problem. In fact, Scrum can even increase the problem.
So you know you have a problem. You can't react to change fast enough. Empiricism isn't helpful: it will only tell you what you already know: that you can't react to change fast enough.
Read 18 tweets
26 May 20
Are you ready for a little thread on a few aspects of software (re-)design, sparkled with inspirational quotes around the topic?

Let's go!
"Life is really simple, but we insist on making it complicated."
― Confucius
When we get the chance for a (rewrite or re-)design, there is a temptation that we should resist, from a technical perspective as well as from a business perspective. That temptation is to equate "better" with "more". And that's wrong.
Read 18 tweets
1 Nov 19
The fundamental vim ideas:
• Commands come in sequences. Having a command mode allows commands with fewer keystrokes and fewer modifier keys to make you more efficient. Also, move away less from the touch typing homerow.
• Commands are mnemonic. For example, z for folding...
...z looks like a sheet of paper when folded.
Why hjkl? Touch typing homerow. Of that, h is left, l is right. The shape j goes down, k goes up. I don't remember specifically what hjkl do, I just remember that the whole editor is mnemonic. That way I remember more with less.
• Repetition. All normal commands can be combined with ranges and counts.
Read 11 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!