Jebediah Springfield from The Simpsons
"A noble spirit embiggens even the smallest man"
© Fox / The Simpsons

In our last thrilling installment, Cromulent Words, I explored some of the important concepts and terms that have subtly shaped my thinking. I’ve always agreed with Mark Twain that you shouldn’t use a five-dollar word when a fifty-cent word will do. However there are some five-dollar words that are just handy to have tucked away for a rainy day.

And to that end, I give you More Cromulent Words—for even more fun and profundity.


Core Computer Science & Sysadmin Terms

  • Finite State Machine (FSM)
    Every process, protocol, and parser is a little automaton underneath.
    These are cool—A system with a finite number of states, switching between them on input. Think “door: opened, closed, locked”; or a login shell: prompt, auth, logged in, error, log out. Each state has defined actions and triggers to transition from one state to another. Basically FSMs are why elevators and vending machines don’t panic when you use them. They just switch between states.

    FSMs are extremely common in video games where enemies have a number of states and switch and act according to their FSM diagram.

      #include <stdio.h>
    
    enum State {IDLE, CHASING, ATTACKING};
    enum State state = IDLE;
    char *events[] = {"player_seen", "in_range", "player_gone", "player_gone"};
    
    int main() {
        for (int i = 0; i < 4; i++) {
            if (state == IDLE && events[i][0] == 'p') state = CHASING;
            else if (state == CHASING && events[i][0] == 'i') state = ATTACKING;
            else if (state == CHASING && events[i][0] == 'p') state = IDLE;
            else if (state == ATTACKING && events[i][0] == 'p') state = CHASING;
            printf("Monster is now %s\n", state == IDLE ? "IDLE" : state == CHASING ? "CHASING" : "ATTACKING");
        }
        return 0;
    }
    

    How it works: Each event string triggers a state change:

    • "player_seen" → CHASING
    • "in_range" → ATTACKING
    • "player_gone" → IDLE or CHASING (depending on current state)

    Demo Output:

    Monster is now CHASING
    Monster is now ATTACKING
    Monster is now CHASING
    Monster is now IDLE
    

    Here is a diagram of the TCP FSM: tcp state machine


  • Deadlock
    When progress is impossible—every process is stuck, waiting for another to move. I think we’ve all been there.

  • Schroedinbug
    A bug that only appears once you know it’s there—quantum mechanics meets coding. I once inherited some code that was full of magic numbers and constants that didn’t make sense but any attempt to fix or refactor them broke the whole program. Legacy Fortran…

  • Normalization
    Making things uniform, whether it’s data, filenames, or database schemas. This comes up in Databases and statistics all the time. How do you reconcile Henry J. Jones, Henry J Jones and jones, henry j as the same person without normalizing the data? An example:

    # Normalizing user input
    s = "    CaSeS aRe WeIrD!  "
    print(s.strip().lower().replace(" ", "_"))  # Output: cases_are_weird!
    

    ‘cases are weird!’ is the normalized string.

  • Lock file
    A file that signals a resource is in use—crude, simple, and everywhere in sysadmin land. Basically anytime you need to make sure that only one instance of a process is running or editing a file at the same time. Some common lock files on Linux:

    • /var/lib/dpkg/lock

      you don’t want two package managers updating or installing at the same time and corrupting your package database. That would not be fun to fix.

    • /var/lib/mysql/mysql.sock.lock

      Two processes writing to the same DB at once? Say goodbye to your tables

    • /run/sshd.pid

      Pid files are another type of lock file that contain the process id that the server writes when it starts. If you try to start a second instance of the server (sshd in our example) it will check to see if that pid is active and refuses to try to run. try it, cat /var/run/sshd.pid then check that pid with ps -p <pid number>

  • Race to Idle
    Finish your work as fast as possible so the system (or admin) can sleep—now a hardware and human strategy. Most of us loathe context-switching when we’re focused and all too often one distraction leads to another and then another and we completely lose our place. Race to Idle is when we squash all those new problems so we can get back to the good stuff!

  • Race Condition
    Timing-dependent bugs where order of operations matters (and can break everything).

    This can happen, for instance, when two or more processes (or threads or scripts) try to access or change the same resource at the same time, and the outcome depends on who gets there first. Totally fine… until it isn’t.

    Imagine two scripts try to make the same file at almost the same time.

      FILE="/tmp/myfile.txt"
    if [ ! -e "$FILE" ]; then
      touch "$FILE"
      echo "Created $FILE"
    fi
    

    If the `[ ! -e “$FILE” ] test succeeds, they both create it. This can result in duplicate data or even overwrite each other’s work or cause a crash.

Counting for Computer Scientists

“Don’t worry, Base 8 is just like Base 10, if you’re missing two fingers.” – Tom Lehrer, New Math

Tom Lehrer doing “New Math” — because nothing says “base conversions” like a 1960s math folk song.


Counting isn’t always in base 10!

  • Binary (Base 2)

    Just two digits, 1 and 0, representing on and off in an electrical circuit (like inside a computer)

    1101 (binary) is equal to 13 (decimal) because reading from the least significant to most significant digit, that is left to right, we have a 1 in the 1’s place, 0 in the 2s place, 1 in the 4s place, and 1 in the 8s place.

    When you hear that something is 8-bit, it means it stores its values in 8 digit long numbers. 11111111 = 255 and 00000000 = 0. So an 8-bit system can have 255 possible values. 16-bit can have 65,535 possible values, 32-bit 4,294,967,295 and so on.

    That’s also why we use decimal subnet masks, since 255.255.255.0 is easier to remember than the binary number (11111111.11111111.11111111.00000000) used internally.

  • Octal (Base 8)

    A way of writing numbers using only the digits 0-7. It was used in early computing as a way to express binary numbers in a much more compact and memorable form. Since an octal digit can represent 3 binary digits, you still see these a lot in ip addresses and subnet masks for instance.

    Just like with binary, an octal number like in chmod 755 lets 7 represent the binary number 111 and 5 represent 101. 755 is a lot easier to remember than 111101101.


  • Hexadecimal (Base 16)

    Hex is like binary’s cooler, more compact cousin. In Hex, each place represents a multiple of 16 made up of the “numbers” 0-F.

    An example most of us have encountered is a web color code like #FF69B4 where we express Red Green and Blue values with a pair of hex digits. So in our example, FF=max red, 69=some green, B4=bluish purple. Also #FFFFFF means maximum RGB which equals white and #000000 is black or 00 red, 00 blue and 00 green. no color.

    Hexdump of the Linux kernel

    Linux kernel (vmlinuz) laid bare using xxd.

    Pro-Tip: 0x is the universal hex prefix. So, 0x2A is 42 in hex.


  • Sexagesimal (Base 60)

    Invented by the Sumerians, who may have had 60 fingers although the archaeological record is silent on the subject. This shows up in all kinds of places

    • 60 seconds in a minute
    • 60 minutes in an hour
    • 360° in a circle (6x60 - tidy for navigation)

    Base-60 is fantastic for dividing things evenly—60 has a lot of divisors (2,3,4,5,6,10,12,15,20,30). In other words, you can *split an hour or a circle into neat halves, thirds, quarters without ugly fractions. Computers don’t use it but every time you say “quarter past three”, you’re quietly doing Sumerian math.

Here’s a little demo that converts 42, the Ultimate Answer to Life, the Universe, and, well Everything, into different number systems:

  #!/usr/bin/env python3

def to_sexagesimal(n):
    """Convert an integer to base‑60 (sexagesimal)."""
    digits = []
    while n:
        digits.append(n % 60)
        n //= 60
    return list(reversed(digits)) or [0]

n = 42

print(f"Decimal: {n}")
print(f"Binary: {bin(n)}")      # 0b101010
print(f"Octal: {oct(n)}")       # 0o52
print(f"Hex: {hex(n)}")         # 0x2a

sexagesimal = to_sexagesimal(n)
print(f"Sexagesimal: {sexagesimal[0]}")  # single digit since 42 < 60

Demo Output

Decimal: 42
Binary: 0b101010
Octal: 0o52
Hex: 0x2a
Sexagesimal: 42

Mind & Memory Quirks

“These words feel rare and academic, but the experiences aren’t — everyone brushes against them, whether or not they have the names for them.”

  • Déjà Vu
    The feeling you’ve experienced something before. This obviously means they’ve changed something in the Matrix.

  • Déjà Vécu
    A stronger form of déjà vu — feeling an event has fully “already been lived.” I experienced this when I watched Ronald D. Moore’s Apple+ series, ‘For All Mankind’. It was brand new but I felt like I had seen it years before in all these minute details. It was a strange sensation. Great show though!

  • Cryptomnesia
    Thinking an idea is new when it’s actually an old memory resurfacing.

  • Presque Vu
    The “tip of the tongue” state — almost recalling something but not quite. Ironically, I struggled to remember the name of this term and had to get creative to look it up. Meta presque vu!

  • Jamais Vu
    The opposite of déjà vu — familiar things feel strangely unfamiliar. Have you ever experienced this? Sometimes I have to look up how to spell a simple word because it just looks wrong suddenly.

  • Apophenia
    Seeing patterns or connections in random data. The spark that leads to constellations in the sky — or conspiracy boards covered with red string. A fine line between genius and madness.

  • Hypergraphia
    The compulsive urge to write constantly. The huge stack of notebooks on my bookshelf attests to a certain level of hypergraphia on my part.


Language & Literature

“These are the words for books, language, and the way we speak — the kind of nerdy treasures you tuck into your brain for later.”

  • Idiolect
    Your personal dialect — the quirks and words only you use. You can write that ransom note using letters cut out of magazines, but they might still catch you based on your unique and curious wording!

  • Palimpsest
    A page or manuscript reused and overwritten, but never fully erased. From Roman wax tablets to parchment scrolls to books to sheet music to paintings. It’s amazing what modern technology can reveal.

The Codex Nitriensis
The Codex Nitriensis is an example of a palimpsest containing earlier fragments of the Gospel of Luke, the Iliad, and Euclid's Elements. Parchment and paper were expensive, so they were often reused.
  • Term of Art
    A phrase with a hyper‑specific meaning in one field that sounds plain to everyone else. I learned this from a librarian. It’s really helpful to know when you’re searching for a very specialized term in a field like medicine or anthropology. The word ‘significant’ has a different connotation to statisticians than laymen for instance.

  • Jargon
    Specialist language that’s either shorthand — or a wall keeping others out. The Urban Dictionary is a collection of all kinds of fun and off-color Jargon. Now you can figure out what these dang kids are talking about.

  • Codex
    The ancient upgrade from scroll to book — bound pages, the start of the “book” as we know it. I’ve named more than a few notebooks and fileshares, Codex.

  • Meta
    Something that refers to itself — this entry about “meta” is, well, meta. Everything is meta these days so it’s not a novel term but it comes up everywhere in computer science. To wit, the MIT CADR Space Cadet keyboard. I would love to own one of these. It has a Meta button as well as an infinity symbol and a Rub Out key.

The MIT Space-Cadet Keyboard
The legendary MIT Space‑Cadet Keyboard — complete with Meta, Super, and Hyper keys.
Image via Wikimedia Commons (CC BY‑SA 3.0)
  • Semiotics
    The study of signs, symbols, and how meaning is made. I went down this rabbit hole in school once. It’s a deep and fascinating subject. Semiotics is important to UX designers. Making an effective icon or logo or an entire operating system relies on a good working knowledge of this topic.

  • Apotheosis
    Elevating someone or something to divine or perfect status. Apotheosis is a semiotic event: something normal gets so loaded with meaning it becomes iconic or even sacred. From holy symbols to heraldic crests, from flags to tux the Linux mascot. Many symbols and even some people achieve apotheosis in their cultures.

    Tux the Linux Penguin mascot
    Tux — the Linux mascot, designed by Larry Ewing in 1996 using GIMP.
    Image via Wikimedia Commons (CC BY‑SA 3.0)
    Original design: Larry Ewing, “Permission to use and/or modify this image is granted provided you acknowledge me as the original author.”
  • Lacuna
    A missing piece, a gap — in a manuscript, a memory, or an argument. Interestingly, a gap can tell us a lot when we ask why it is missing. In modern times, where we record and track practically everything, a lacuna can indicate an attempt to conceal something. For example, a hacker might attempt to cover their tracks by deleting log files. The mere fact that entries are missing can be a big clue.

    A type of lacuna that I have always found fascinating are things like the ellipsis (…), placeholders that invite the reader to fill in meaning. Not to mention, there was an entire Seinfeld episode (season 8, episode 19) about the phrase “yadda, yadda, yadda”, which acts as a verbal elipse. Placeholders, unobtanium, and ’not yet invented’ signs abound and serve a useful function—there is information in the absence of information, sometimes.


Philosophy & Thought

“These words are the ones you stumble into in philosophy books, but they leak into tech, admin life, and just trying to make sense of the world.”

  • Liminal
    Being in between states or spaces — neither here nor there. Typically seen in reference to creepy spaces like a deserted playground or hotel corridors. Has to do with thresholds but can also refer to everything from adolescence to the state between waking and sleeping. This is most often encountered in the word subliminal, meaning something that is just below your awareness, like product placement in the new Marvel movie.

    A digital artwork depicting liminal spaces
    "Liminal Spaces" — digital artwork by neuralcanvas.
    Image via DeviantArt (© neuralcanvas, all rights reserved)
  • Praxis
    Where theory and practice meet — actually doing the thing, not just talking about it. I spent a lot of years doing support at every level and the worst jobs were the ones where you couldn’t get hands on. Reading manuals and case logs and wiki articles and doing training can only prepare you so much. For it to really click with me, I have to get my hands dirty. The lack of praxis is now a red flag for me. I just don’t enjoy the hands-off, solely academic approach.

  • Potemkin Village
    A pretty façade hiding a mess behind it — fake dashboards, anyone? I’m sure we’ve all encountered software that has a pretty interface but is buggy and poorly written. Named for Grigory Potemkin, a soldier, courtier, and lover of Catherine the Great in the 18th century, a Potemkin village refers to the hasty, surface-level beautification of villages undertaken along the route of a tour by Catherine. It only had to look good at a glance. You often see this when countries host the Olympics and put their best face forward with expensive stadiums and architecture that is never meant to last. North Korea is notorious for its Potemkin villages that it keeps around to show visitors.

    I present to you, a Potemkin Python script:

    # "Potemkin dashboard" generator: Looks real, does nothing
    def show_dashboard():
      print("CPU: 100% FREE | Disk: Unlimited | Uptime: ∞")
      # No actual metrics collected but it sure feels good at a glance!
    
    Castle and brewery in Kolín, Czech Republic
    Castle and brewery in Kolín, Czech Republic.
    Image via Wikimedia Commons (CC BY-SA 4.0, by ŠJů / Wikimedia Commons)
  • Samsara
    The endless cycle of birth, death, and rebirth. In Buddhist and Hindu traditions, samsara is what keeps souls trapped on the hamster wheel of existence—bound by karma, desire, and illusion.

  • Nirvana
    Release from samsara — ultimate liberation. The escape hatch from Samsara. To reach nirvana is to step off the wheel, unplug from the simulation, and dissolve all attachments. Not a place, but a state: the complete extinguishing of suffering, craving, and the illusions that fuel the cycle. That’s not to mention an amazing band who found the concept inspirational.

  • Shunyata
    “Emptiness” — the idea that things lack inherent, permanent essence. Pretty much the opposite of Plato’s ideal forms—Shunyata holds that nothing has a fixed essence. This isn’t meant as a bad thing, rather it holds that all things are open, relational, and free from rigid definition. I hope you enjoyed my ironically rigid definition of Shunyata.


Miscellany

  • Samizdat
    Underground, hand‑copied, often banned literature passed quietly between readers.
    a Russian word that referred to all manner of illicit material. I met a guy who grew up in Ukraine during the Soviet days and he told me about the first time he read the novel, ‘Dune’. It was photocopied and bound in the cover of a book about Socialist values. People had traded it around and even written in better translations and traced over faded parts.

    A related phenomenon (and an object I would dearly love to possess one day) was the X-ray record. Clever Soviet scofflaws figured out how to cut record grooves into discarded x-ray films that you could then play on a phonograph. Imagine hearing the Beatles for the first time on an old chest X-ray. These were sometimes referred to as Jazz on Bones (Джаз на костях) or Bone Music. The Stilyagi—or style-hunters—were especially fond of these.

    Samizdat and photo negatives of unofficial literature in the USSR
    Samizdat and photo negatives of unofficial literature in the USSR, circa 1984.
    Image via Wikimedia Commons (CC BY-SA 4.0, by Leonid Evdokimov)
  • Hemingway vs Faulkner
    Two poles of prose: Hemingway’s spare, staccato sentences vs. Faulkner’s winding, baroque tangles.
    I had a mentor once who explained the proper way to write a bug report: “Hemingway not Faulkner.” It made me a better engineer for sure.

  • NATO–1
    A term for a customer who almost uses NATO phonetics correctly—but throws in a “U for Umbrella.”
    It’s been suggested I clarify that the term is NATO minus one since jokes are always funnier when you explain them. Oy. So, the NATO phonetic alphabet (Alpha, Bravo, Charlie, Delta, etc.) was carefully designed so that each letter is distinct over noisy radio connections in a multitude of accents. It’s incredibly effective so of course it is a rare unicorn of a customer who uses it correctly, unless they were military or a pilot. It really, truly helps though.

    All too often a customer will spell out a serial number or some important piece of information with the worst possible choices rather than using Nato phonetics. Think “S as in See”, or “E as in Eye”, or “T as in Tea’. I even heard “C as in Czar” once!


Conclusion

Got a word, workflow, or mind-bender that changed your admin life?
Email me: feedback@adminjitsu.com
Or just send your best yak-shaving story.