DEV Community

Seth T.T
Seth T.T

Posted on

DevOps: my faulty perspective

Overview

Hello! My name is Seth, a third-year university student. I have nine years of independent coding experience, and have worked in software 'professionally' for approximately six months now (it's how I pay my rent).

Until recently, Developer Operations was a foreign topic to me. But, know it or not, DevOps is a huge part of how everybody writes code - and you do, too! (Unless you don't code.... that's cool, I guess.)

This article will help you understand DevOps from an "I've been there" perspective. I want you to understand internet articles about DevOps, and feel like you can learn something from Reddit conversations in those areas. It belongs to you -- own it!


A Weird Analogy

Physical products are bound to some rules of economics.

Parts being manufactured into a thing

Small, reusable parts are regionally mass-produced. Big trucks ship parts between factories, where they combine to become larger, stronger parts.

This process may repeat itself.

Things being manufactured into a product, one thing being sold

Sometimes parts are sold directly, but other times they are shipped for further assembly and manufacturing.

Software (and other virtual products) share similar infrastructure, where small reusable classes or functions combine to form stronger, more capable libs or apps. Code is scanned, compiled, pushed, and pulled. It's a physical resource that moves between areas.

Here is what a software dev does for work:

Simple coding process

Except it actually looks like this:

Actual coding process

Big projects have longer assembly lines. Sometimes, it's so long that a human simply can't do it all. So it's mechanized, automated, and computerized - and what better way to accomplish this? You guessed it: using code.


Code Stuff

Let's look at our coding process:

Code becomes product

Some code becomes part of the final product, after going through a factory.

Code becomes factory

Some code becomes the fucking factory.


Conclusion

DevOps is, ultimately, the art and craft of understanding how code becomes a product. It can be hard to notice in smaller projects because there simply isn't much manufacturing infrastructure to begin with. It grows by necessity.

Things you probably do

  • Manually test code (by logging "foo" and "bar")
  • Compile code and push to git
  • Deploy a website or change your download link

Things DevOps probably does

  • Automatically test code
  • Compile binaries through git hooks
  • Deploy-after-merge

Rest of article is TODO. I wrote this in twenty minutes and now I am going to bed.

Find me on Github

Top comments (0)