Devops Tech

August 23, 2021

Just Thinkin About DevOps Stuff (and Dune)

DevOps Cycle

“In this time, the most precious substance in the universe is the spice (DevOps)… The spice is vital to (Agility). The (IT Dept) and its (engineers), who the spice has mutated over (10) years, use the spice (Code), which gives them the ability to fold (time).”

DevOps enables high speed evolution.

DevOps eliminates wasted resources.

“Software is Eating the World”, “Everything Is Code”, therefore DevOps is key to all success.

The DevOps Cycle

Design/Plan

  • Planning docs should be in version control

TDD (Test Driven Design)

TDD is key to AI Assisted/No Code future. Took me a bit to come around, but GitHub Copilot AI was the last straw because it will clearly someday be able to write code to pass your tests, so ultimately, software development will consist of designing tests using some sort of high level language plus drag-and-drop.

Programmers will write DDD libraries to translate domain definitions and diagrams to generate the test for TDD. The human in the loop can approve or overwrite the autogenerated test conditions.

  • Design docs need to clearly define exactly what success looks like in the form of tests and expected results. Written by product managers.
  • Eventually, changing DDD and/or TDD code will automatically kick off the entire dev lifecycle. AI will handle implementation.

Architecture Diagrams

Overview: Diagraming Tools For Cloud Infrastructure (redhat)

Diagram As Code

UI Design Tools

Manage Tasks, Issues

Version Control

Source Code, Designs and Docs
Artifacts

CLI First and Automation

  • Everything should be code; therefore software should have codeable API’s or SDKSs so that it can be automatable.
  • If an app offers a GUI, try not to use it. Use the CLI.
  • If a solution looks good but it does not offer a CLI, an SDK, or at least a REST API, skip it.
  • VSCode is my default because it was conceptually built from the ground up to run in a web browser. They made a desktop version while they worked out the pure web kinks. Terminals are first class citizens.
  • Learn VI or VIM because they are available on most Linux distros. Nano is easier but less likely to be installed.

Build, Test Coverage

CI/CD Tools

Operations

  • SysOps practices and tooling overlap with DevOps.
  • For more details, see my SysOps and/or Containers pages.

Monitor

  • Remote monitoring should include anonymous monitoring agents in webapps.
  • Promethius
  • Grafana

Continuous Feedback

New tickets or new issues on old tickets feed back into the Plan phase.

The DevOps journey “goes on and on and on and on”; don’t stop believin’.

Don't stop believin