5 lines
10 KiB
HTML
5 lines
10 KiB
HTML
<!doctype html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><meta charset=utf-8><title>"Manual" and "Automated" are just words - michaelnygard.com</title>
|
|
<meta content='"Manual" and "Automated" are just words - michaelnygard.com' property='title'><meta content='"Manual" and "Automated" are just words - michaelnygard.com' property='og:title'><meta property="og:description" content="Driving down a shady road, windows down, listening to the frogs and crickets, my family was in the car talking about various stuff and things. This summer evening we happened to talk about the invention and emergence of the word “yeet.” I observed that it was kind of cool to have a word with a known origin and etymology, even if that was only because it was a made-up word. My daughter instantly responded that “all words were made up by someone."><meta property="og:type" content="article"><meta property="og:url" content="https://michaelnygard.com/blog/2020/10/manual-and-automated-are-just-words/"><meta property="article:published_time" content="2020-10-15T13:35:45-05:00"><meta property="article:modified_time" content="2020-10-15T13:35:45-05:00"><meta property="article:section" content="blog"><meta name=generator content="Hugo 0.123.7"><link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600" rel=stylesheet><style type=text/css>:root{--main-color:#8C6056;--secondary-color:#AFD5AA;--logo-text-color:#fff;--body-text-color:#3d3d3d;--heading-text-color:#383838;--background-color:#fff}</style><link href=/css/tachyons.min.css rel=stylesheet><link href=/css/styles.css rel=stylesheet><link rel=icon href=/favicon.ico type=image/x-icon><script id=MathJax-script async src=https://cdn.jsdelivr.net/npm/mathjax@4/tex-mml-chtml.js></script><script>MathJax={tex:{displayMath:[["\\[","\\]"],["$$","$$"]],inlineMath:[["\\(","\\)"]]},loader:{load:["ui/safe"]}}</script></head><body class=global-font><nav class="justify-between border-box pa3 pl3-l pr2-l mt1 mt0-ns" id=navbar><div class=flex><a class="f4 fw6 ttu no-underline dim bg-main-color pv1 ph2 br2" id=site-title href=/ title=Home>michaelnygard.com</a></div></nav><main class="center mv4 content-width ph3"><div class="f3 fw6 heading-color heading-font post-title">"Manual" and "Automated" are just words</div><p class="silver f6 mt1 mb4 post-meta">Posted on <time>15 Oct 2020</time></p><div class="lh-copy post-content"><p>Driving down a shady road, windows down, listening to the frogs and crickets, my family was in the car talking about various stuff and things. This summer evening we happened to talk about the invention and emergence of the word “yeet.” I observed that it was kind of cool to have a word with a known origin and etymology, even if that was only because it was a made-up word.
|
|
My daughter instantly responded that “all words were made up by someone.”</p><p>What could I say? Of course it’s true!</p><p>I’ve previously talked about the difficulty that words present. In 2015 I discussed <a href=https://www.michaelnygard.com/blog/2015/04/the-perils-of-semantic-coupling/>the perils of semantic coupling</a> that could emerge when we get fooled by nouns. The existence of a noun makes us think we understand a concept. Once we try to define a predicate to answer “Is X an instance of Y?” for any noun Y it becomes difficult, verging on impossible, to find a categorical statement. Instead we fall back to the Potter Stewart method.</p><p>In <a href=https://www.michaelnygard.com/blog/2016/07/wittgenstein-and-design/>Wittgenstein and Design</a> (say that three times fast) I talked about pursuing adjectives instead of nouns as a way to carve a design space.</p><p>Today, I want to talk about how we use words as signifiers for their semiotic content. In particular, the words “manual” and “automated.”</p><h1 id=two-legs-good-four-legs-bad>Two-legs good, four-legs bad</h1><p>We are now ten years into the DevOps era. Among both practitioners and adopters, there is a tendency to use “automated” as a pseudo-synonym (psynonym?) for “good” while “manual” stands in for “bad.” The trouble is that the closer you look the harder it gets to tell whether any particular thing is manual or automated!</p><p>Suppose we are in an incident. I invoke the “break glass” process to ssh into a server to run a bash script. Was that manual or automated? Well, both, sort of.</p><ul><li>We are in an incident… probably initiated without human intervention based on monitoring systems that detected a triggering condition.</li><li>I invoke the break glass process… wait a second. How did I even get involved? Maybe the systems notified me directly via PagerDuty. That would have no human intervention. Or maybe our operations center decided to escalate to level 3 support, and I’m the on-call this week. In the second case, a human decided the escalation was required and clicked a button in ServiceNow. ServiceNow then used a database to contact me. Was that manual? Automated? Semi-automated?</li><li>I invoke the break glass process… wait another second. Once I’m involved, I have to bring information into my head. That information came from humans and systems. I have to then decide a course of action. I guess we’d call that manual? (Although “manual” derives from Latin “manus” which means hand powered, not brain powered.) Invoking the break glass process is an action in a system that I trigger by entering a rationale and clicking a button.</li><li>to ssh into a server… entirely facilitated by the systems.</li><li>to run a bash script… does a bash script count as automated? Or is it manual because I had to invoke the script? What if there’s no script but a wiki page with a list of commands I keystroke each time? Sounds more manual, but I’m still invoking tools that already exist.
|
|
At some level, everything above <a href="https://www.youtube.com/watch?v=Sr9mmsLQmYs">toggling a program</a> is automated.</li></ul><h1 id=out-of-the-morass>Out of the Morass</h1><p>Instead of applying a blanket statement like “manual” or “automated”, we should look more closely. Specifically, what actions are being executed by which people or systems via which tools in response to which stimuli.</p><p>When we engage with detail at that level we can begin to ask and answer more useful questions than “is it automated”. For example:</p><ul><li>How long does it take from the stimulus to the action? Bear in mind that <a href=https://en.wikipedia.org/wiki/Pilot-induced_oscillation>shorter is not always better</a>.</li><li>What is the probability of error in performing the action? Toggling in that 1401 program… pretty high probability of error. Running a bash script… low probability of error. (But that probability rises geometrically with each argument to the script!)</li><li>What judgement or decision-making is required to choose an action in response to a stimulus? As we build ever-more-powerful levers to move our systems, and particularly as we give our systems their own internal feedback loops through the control plane, we need to think of them more like cybernetic systems. (Think about PID controllers, Kalman filters, inertial models, or creating a radar track from a series of intermittent “blips.”)</li></ul><p>Breaking the question down this way won’t help us answer whether something is “automated” or “manual.” But it will help us answer how likely the process is to deliver availability, stability, security; or conversely, how likely it is to amplify noise, create oscillation, or induce drag.</p></div></main><div class="tl fixed list-pages lh-copy" id=contents-list></div><div class="pagination tc tr-l db fixed-l bottom-2-l right-2-l mb3 mb0-l"><a id=scroll-to-top class="f6 o-0 link br2 ph2 pv1 mb1 bg-main-color pointer" onclick=topFunction() style="color:#fff;visibility:hidden;display:none;transition:opacity .5s,visibility .5s" title="back to top">back to top</a><br><p class="mb0 mt2"><a href=https://michaelnygard.com/blog/2020/09/blocker-pre-requisite./>prev post</a>
|
|
<a href=https://michaelnygard.com/blog/2021/06/counterfactuals-are-not-causality/>next post</a></p></div><footer class="content-width mt0 mt5-l mb4 f6 center ph3 gray tc tl-l"><hr class="dn db-l ml0-l gray w3"><br>Powered by <a href=https://gohugo.io/ target=_blank class="link gray dim">Hugo</a>, based on the <a href=https://github.com/lingxz/er target=_blank class="link gray dim">Er</a> theme.<br>Copyright (c) 2002 - 2026 Michael T. Nygard</footer><script src=https://cdnjs.cloudflare.com/ajax/libs/tocbot/4.1.1/tocbot.min.js></script><link rel=stylesheet href=https://cdnjs.cloudflare.com/ajax/libs/tocbot/4.1.1/tocbot.css><style>.is-active-link::before{background-color:var(--secondary-color)}</style><script type=text/javascript>var prevScrollpos=window.pageYOffset;window.onscroll=function(){var e=window.pageYOffset;document.getElementById("tag-cloud")!==null&&(prevScrollpos>e?(document.getElementById("tag-cloud").style.visibility="visible",document.getElementById("tag-cloud").style.opacity="1"):(document.getElementById("tag-cloud").style.visibility="hidden",document.getElementById("tag-cloud").style.opacity="0")),document.body.scrollTop>1e3||document.documentElement.scrollTop>1e3?(document.getElementById("scroll-to-top").style.display="inline",document.getElementById("scroll-to-top").style.visibility="visible",document.getElementById("scroll-to-top").style.opacity="1"):(document.getElementById("scroll-to-top").style.visibility="hidden",document.getElementById("scroll-to-top").style.opacity="0"),prevScrollpos=e};function topFunction(){document.body.scrollTop=0,document.documentElement.scrollTop=0}document.getElementById("contents-list")!==null&&document.getElementsByClassName("post-content").length!==0&&tocbot.init({tocSelector:"#contents-list",contentSelector:".post-content",headingSelector:"h1, h2, h3"})</script></body></html> |