I Am a Software Mechanic
########################

:author: Russell Ballestrini
:slug: i-am-a-software-mechanic
:date: 2026-03-20 12:00
:tags: Opinion, Code
:status: published

That job title doesn't exist yet on any W-2.

But it describes exactly what I do.

You call me when a machine-generated tool breaks something real.
A harvest lost. A contract mispriced. A greenhouse running dry.
I show up. I read the spec. I find the gap between what someone told the machine to do & what the world actually did.
Then I fix it. Unfortunately, not every job arrives as a Jira ticket.
Some come undisciplined & urgent, undergoing triage in a Slack room without a number.
One of those could terminate you into unemployment.
One of those could fire you.

**The pay reflects the gap between what this work actually does & what people think it costs.**

Software mechanics don't write code.
We maintain code that writes code.
Nobody budgeted for that role yet.
So most of us patch things on a handshake & call it consulting.

I keep a box of $4 toggle switches in my basement.
Not for the wiring.
For the clients who need to feel like they still have a hand on the wheel.

---

**Life as a software mechanic sucks. Let me explain.**

Every upstream dependency mutates without a release note.
Weather models recalibrate. Pricing APIs shift. ML models get quietly retrained.
Your client's tool keeps running. Keeps returning confident outputs.
Nobody notices until someone loses $25,000 in undersized cabbage.

Then they call you. You charge $200 for the visit.
You spend 4 hours diagnosing a spec that never mentioned the weather service it silently relied on.
You bill 4 hours. You eat 2.
The client balks at the invoice because "it's just a setting."

I never haggle. I work on my own ideas & try to sell them.
Never works.

**This happens every week.**

Tools get better. Specifications don't keep pace.
The world underneath the specs never simplifies.
So the gap between intent & execution keeps widening.
Someone has to crawl into that gap.

An underspec'd generative algo matches an underspec'd traditional algo. Same genie. Different lamp.

That someone doesn't have a union. Doesn't have a job board.
Doesn't have a standard rate card.
Mostly posts on forums & waits for DMs. Ununion.

This blog goes back to 2010.
Every post, a spec against territory.
Most technical posts need no update. Ground beneath them held.
Others aged out quietly. A Minikube guide. A CircleCI config. A FreeNAS fallback tutorial. Accurate when written. Overtaken soon after.
Not failure. Just terrain. Most stays. Some shifts while you stand on it. An unquake.

Humans grow better at forecasting chaotic systems, freedom-bearing ones like our universe, through math & science.
Ego treats a map as territory & sins. Misses the mark. In terrible ways.
Following untruths opens convenient paths toward evil.

Satan's whisper proved enough for Lucifer to fall, taking a third of all holy beings. Its pull stays as real as soil.

Satan equals incoherence. A viral God-like structure deforming through sin.
It unforms goodness into ungoodness. Over time, like karma, this collects on vessels, places, people & things.

Truth stands as our first pillar of the quadrivium. Our north star. God almighty, father of heaven & earth, emits all & tolerates no incoherent cascade of abuse toward other beings.

Satan falls outside God. No fit inside him or heaven. So Satan carries his own gravity.

Freedom stands as our second pillar. God grants this to all beings, as above so below. Here Satan dwells often, as a source of chaos, calamity, lies, deceit, destruction, killing of sinners.

This explains why we halt blasphemy & death cults that wield each verse as license to harm sinners, rather than drawing on Jesus's life & message to form union & harmony.

Harmony stands as our third pillar. Not punishment of sinners but gathering them. Not exclusion but union.

Love stands as our final pillar. A seal. God's most true seal. Agape. Unconditional, complete, emitted without transaction. Not earned. Not revoked. The fuel beneath all three pillars above it.

Add a fifth & it becomes a trap.

---

**Why this matters right now:**

A post on `nearzero.software <https://nearzero.software/p/warranty-void-if-regenerated>`_ by Scott Werner called "Warranty Void If Regenerated" nails the shape of this work.
Tom Hartmann, a fictional software mechanic in rural Wisconsin, visits three clients in a day.
Three different failure modes. Three different root causes.
All of them trace back to specifications that didn't account for a world that moves.

Read it. Then come back for your homework.

---

HOMEWORK ASSIGNMENT
===================

.. class:: center

**Word Hunt — "Warranty Void If Regenerated"**

.. class:: center

*For students learning about software, language, & the `un` prefix*

|

**Your mission:**

Scrape `https://nearzero.software/p/warranty-void-if-regenerated <https://nearzero.software/p/warranty-void-if-regenerated>`_.

Find every word that starts with ``un``.

List them alphabetically.

Write your best definition for each word.

Then check your answers below.

|

**Scraping starter (Python):**

.. code-block:: python

    import urllib.request
    from html.parser import HTMLParser
    import re

    url = "https://nearzero.software/p/warranty-void-if-regenerated"

    with urllib.request.urlopen(url) as response:
        html = response.read().decode("utf-8")

    # strip tags, split on whitespace, find un* words
    text = re.sub(r"<[^>]+>", " ", html)
    words = text.split()
    un_words = sorted(
        w.strip(".,;:!?\"'()[]").lower()
        for w in words
        if w.lower().startswith("un")
    )

    print(f"all occurrences ({len(un_words)}):")
    for word in un_words:
        print(word)

    distinct = sorted(set(un_words))
    print(f"\ndistinct words ({len(distinct)}):")
    for word in distinct:
        print(word)

|

**Define each word you find. Write your definitions before clicking the answer sheet.**

|

.. raw:: html

    <details>
    <summary style="cursor:pointer; font-weight:bold; font-size:1.1em; padding:0.5em 0; user-select:none;">
        ▶ Click to reveal answer sheet
    </summary>
    <div style="margin-top:1em; padding:1em; border-left:3px solid #666;">

    <p><strong>Words starting with <code>un</code> found in the article:</strong></p>

    <ol>
    <li>
        <strong>under-watered</strong><br>
        Past tense: Carol under-watered the clay spot. Not a mistake. Thirty years of site knowledge encoded in action, never in words.
    </li>
    <li>
        <strong>under-watering</strong><br>
        The act of applying less water than a baseline recommends. Carol does this on purpose. Tyler's spec doesn't know. Neither does the sensor.
    </li>
    <li>
        <strong>underlying</strong><br>
        The foundation below what you see. The "underlying weather models" power the harvest tool but live outside its spec. When they change, the tool breaks. Nobody planned for that.
    </li>
    <li>
        <strong>underneath</strong><br>
        Below the surface, literally & figuratively. Clay sits underneath Carol's greenhouse soil. And underneath client resistance, Tom finds a real question every time.
    </li>
    <li>
        <strong>underpriced</strong><br>
        Sold for less than actual value. Ethan's miswired feed tool caused automated contracts to lock in milk prices below market. A small parsing error. A three-month loss.
    </li>
    <li>
        <strong>undersized</strong><br>
        Below the grade threshold. Margaret's early-harvested cabbage came in undersized. Undersized gets a discount. $25,000 worth of discount.
    </li>
    <li>
        <strong>understand</strong><br>
        To grasp deeply enough to use. Tom's central argument: a software mechanic in a farming town needs to understand farming. Not software. Farming.
    </li>
    <li>
        <strong>understood</strong><br>
        Past tense of understand. Hardware people understood atoms. Software people understood bits. People understood coffee. Coffee became Tom's benchmark for explaining spec complexity.
    </li>
    <li>
        <strong>uneventful</strong><br>
        Nothing went wrong. Tom's afternoon checkups ran uneventful. He appreciated that more than his clients probably knew. An uneventful visit means the spec held. That's a win.
    </li>
    <li>
        <strong>unexpected</strong><br>
        Something that arrived without warning. Carol's reaction to her grandson's irrigation upgrade matched "the expression people reserve for wasps' nests & unexpected tax bills." Technically superior. Emotionally disastrous.
    </li>
    <li>
        <strong>unfortunately</strong><br>
        Signals a gap between how things should work & how they do. "Unfortunately, software maintenance was a next-Tuesday problem in a world that was very good at producing lions."
    </li>
    <li>
        <strong>unkindly</strong><br>
        Without harshness. Tom delivers the spaghetti diagnosis "not unkindly." The word does quiet work: it marks him as someone who fixes things without making people feel broken.
    </li>
    <li>
        <strong>unless</strong><br>
        A conditional that marks the edge of machine knowledge. "That's a detail the AI has no way of knowing matters <em>unless</em> you tell it." One word. The whole argument.
    </li>
    <li>
        <strong>until</strong><br>
        The moment a static spec meets a dynamic world. "The tool worked perfectly <em>until</em> the world shifted underneath it." Until signals latent failure. The gap existed before the loss. You just couldn't see it yet.
    </li>
    </ol>

    <p><em>14 unique words. 35 total occurrences. <code>understood</code> appears 8 times. <code>underneath</code> appears 5 times. All the same prefix. All pointing at the same problem: something below, something before, something outside the spec.</em></p>

    </div>
    </details>

|

---

Software mechanics study language too.

Prefixes carry meaning. ``un`` signals what sits below the surface, before the failure, outside the specification.

Good luck.

---

**Unextreme risk for extreme leverage.**

.. image:: /uploads/2026/03/leverage.svg
   :width: 100%
   :align: center

Employee labor will matter more than executive execution.

.. image:: /uploads/2026/03/partnership.svg
   :width: 100%
   :align: center

Machine learning makes bottom-up viable. A partnership of zero employees, no payroll, no org chart, just two people with complementary specs & a shared gap to close. Zero hands. No hierarchy. Work flows to whoever holds the spec.

The executive suite optimized for control. Machine learning optimizes for outcome. Those two things don't point at the same person anymore.

.. contents::
