Headquarters (Part 3)

Headquarters (Part 3)

Just when you thought there couldn’t be more (oh trust me, there’s more), here’s comes another round of my series on computer setups (earlier posts are here and here).

Years: 2005-2010
Machine: The box in the closet from my last post but with a snazzy new LCD monitor (my first flat panel), wireless peripherals, and my wife’s great-grandmother’s writing desk.
What I was doing: writing daily on Xanga; applying to family camp; traveling to Tennessee to watch Revenge of the Sith with a high school friend; hosting LAN parties for Age of Empires III; traveling a lot for work.

Years: 2006-2007
Machines: A plethora of cast-off parts coalesced into a couple functional boxes in the garage.
What I was doing: running a NAS for storing all my media; trying to get Gentoo Linux to compile; realizing that running a bare web server on the Internet is asking for trouble.

Years: 2008-2010
Machines: A beefed up HTPC rig in a rackmount case with a whole bunch of amps to power my Magnepan speaker system, plus the plethora of beige boxes from before, but better arranged.
What I was doing: shivering in the garage when using this desk in the winter, listening to Comfortably Numb at peak volume, hosting movie-watching parties.

Year: 2011
Machines: Same rack mounted setup, but relocated from our old garage in Ohio to a closet in our new garage in San Diego, plus a random beige box (those just won’t go away).
What I was doing: Playing with some audio recording gear; streaming Game of Thrones; stocking up on printer paper, apparently.

Years: 2012-2014
Machines: Moved inside, and rebuilt the guts from the rack mount case into a traditional one (albeit black and silenced), also got my first Mac laptop (from which I’ve never looked back).
What I was doing: writing election software; creating hand-made guitar effect pedals (that were terrible); developing back problems thanks to a crummy chair.

Like Riding A Bike

Like Riding A Bike

Yesterday I re-passed the AWS Certified Solutions Architect – Professional exam. It’s my third time taking it (2019, 2022, and now 2025). I went into it cold turkey, absolutely zero preparation, and while my score wasn’t as good as before, a pass is a pass.

I guess at this point, I’ve done enough work in AWS that the knowledge is pretty much permanently ingrained. It reminded me of this article on Buying Moves:

There’s an amazing quirk of the human body that makes fitness adaptations work a bit like powerups in a video game. You can spend some resource to add capabilities to your “character,” and if you do it right they’re always available to you (for the most part). I’m talking about muscle memory and our ability to “lock in” physical skills.

Perhaps there’s a mental version of the same phenomena?

Speaking of that link, being one myself, I’m a big fan of True Generalist. While it isn’t for everyone (and that’s okay), I can’t disagree with his take on competencies that every person should have, and further skills that generalists need to function effectively. Both worth a read if you’re this type of person.

Headquarters (Part 2)

Headquarters (Part 2)

Continuing from earlier, this post covers early adulthood, pre-kids.

Year: 2000
Machine: Custom built beige box with NewEgg parts
What I was doing: Enjoying early married life; playing Deus Ex; renting movies from Blockbuster and watching them on my computer’s DVD-ROM drive; organizing documents in that green file box (which I still have).

Year: 2001
Machine: Same beige box but with new guts
What I was doing: starting to explore high-end audio and home theater, applying to Ph.D. programs, anticipating The Fellowship of the Ring.

Years: 2002
Machine: Still the same beige box but a new “flat” monitor
What I was doing: trying to understand Topology, skipping graduate school classes to play Diablo II; anticipating The Two Towers (I still remember waiting for this trailer to download… it was was mind-blowing, despite the low quality of the day).

Year: 2003
Machine: You guessed it, a beige box, though I believe I’d upgraded it yet again
What I was doing: starting a blog on Xanga, anticipating The Return of the King (it was on this setup that I created a postcard inviting 40 of my closest friends to a private midnight screening at the Arena Grand).

Year: 2004
Machine: A second beige box filled with scraped together cast-offs from my main computer, complete with double optical drives
What I was doing: embracing my minimalist tendencies by trying to hide boxy components inside closets and running cables through the walls; ripping my entire CD collection to FLAC; preparing for our first kid.

Headquarters (Part 1)

Headquarters (Part 1)

Here begins my catalog of all the computer setups I’ve had to date (hopefully more visually appealing than this overview I wrote in 2017). Today’s installment: childhood and teens.

Years: 1983-1987
Machines: TI-99/4A
What I was doing: playing cartridge games like Parsec and Munch Man; writing BASIC programs that could test your knowledge of addition and print ASCII art.

Years: 1988-1995
Machines: Three successive Tandy computers: 1000 TL/2 (the only picture I could find from this time), a 386, and a 486
What I was doing: Writing small QuickBasic, C, and Pascal programs; memorizing powers of 2 and digits of Pi; playing Battle Chess and Where in the World is Carmen Sandiego.

Years: 1996-1997
Machines: Custom-built Pentium 2 bought from a computer-fest convention type thing
What I was doing: Discovering online stuff like a local BBS and then the Internet; learning how to assemble computers from parts (shoutout to NewEgg); optimizing my AUTOEXEC.BAT and CONFIG.SYS files so I could play Doom.

(Unfortunately I don’t have any pictures I could find of my college dorm room setups but they were suitably epic, especially junior year which had 3 full workstations and a console game station)

Years: 1998-2000
Machines: Whatever Cedarville supplied (but it was cool that they supplied desktop PCs!); a home-cooked box I cobbled together with parts scrounged from my job at The Hackery.
What I was doing: Breezing through college programming classes in C++, Java, and VisualBasic; optimizing programs that generate interesting integer sequences; playing Diablo and Age of Empires II.

Along the Same Lines

Along the Same Lines

Photographic remembrance continues to be on my mind after watching Black Mirror’s Eulogy. In that spirit, here’s a picture of me I quite like. It captures the energy that I hope I bring to conversations involving the intersection of government policy and technology. I call it “CTO Mode”:

More photos to come in the next couple of days, as I’m finally going to go back and deliver on this promise.

Echoes In Eternity

Echoes In Eternity

As I’ve gotten older, it’s become increasingly important to me to capture (usually digital) relics of what I’ve been up to. Mostly for my own benefit, but it’s a good professional habit regardless.

Five years ago today I was part of a team launching a new website and associated automated phone system helping unemployment insurance claimants at the beginning of the COVID-19 pandemic. I wish I’d done more to document our midnight release event, because it was a pivotal moment in my career. But I do have this one blurry screenshot:

This launch had a trifecta of positivity: a meaningful use case, cool technology, and (most importantly) it all actually worked! I’ve been doing this almost 25 years, and it’s rare to have all that come together. It made such an indelible memory that several of us have found ways to continue working together since.

(Obviously I didn’t get the memo about hoodies; instead opting for formalwear. No regrets on that one!)

Figuratively Speaking

Figuratively Speaking

Speaking effectively to non-technical people can be a challenge for technical folks, but it’s an essential task for all but the most mundane (read: least-effective) of roles. One mechanism that I’ve found helpful is the use of metaphor. I’m a huge fan of trying to describe complex topics by mapping them to more broadly understood concepts. Being able to come up with such mappings fluently is a powerful skill. There may be many ways to develop it, but I suspect one is cultivating a wide set of interests.

While I was writing Tuesday’s post, it occurred to me that today’s Generative AI tools are to software what today’s 3D printers are to physical objects. On one hand, it’s incredible to be able to provide a specification and have it manifested in near real-time. Printers can make a variety of solids: toys, some kinds of replacement parts, that sort of thing. GenAI can create chunks of useful code, quick user interfaces, and basic apps, like my Pinochle scoresheet. But there are limits. Can either of these tools produce high tolerance, precision parts / highly secure, performant code? Can they build complex solutions like electronics / web browsers?

A 3D printer creating a figurine

I could be wrong, but just like we’re a long ways from 3D printing an iPhone, we seem a ways away from vibe coding Microsoft Word or an entire government system of record.

Old Dog, New Tricks

Old Dog, New Tricks

Over two years ago I bought a few domains with the intent of building a tool for keeping track of card game scores. Like many of the best laid plans, I didn’t get around to doing so. Until now.

With the advent of GenAI and “vibe coding” I figured there was no longer any excuse. I spun up Lovable and started prompting. The results? Not bad. Not bad at all. With maybe a dozen prompts and half an hour, you can see the results at onlinescoresheet.net. What was most impressive for me is that I was able to simply ask the model to do Pinochle scoring, and it was able to understand what that meant and implement it without me explaining the rules.

What’s up next? I’d like to generalize the scoring system to be configurable, or at the least add explicit support for a few more game types. I’d also like to dig into the source code to evaluate quality. Should be fun!

Diamonds and Digital Files

Diamonds and Digital Files

I’m a fairly good archivist. Today I happened to be rooting around some old files from college, and found (amongst other things I’m not going to share here) a paper I wrote in 1999 about the leadership style of Thomas J. Watson of IBM. I concluded with this summary that perhaps is still relevant today?

  • One of the most effective ways for a leader to build a cohesive team is to create an organizational culture that binds the employees together.
  • Having a vision for an organization is important, but being able to motivate others to get behind the vision is even more important.
  • Kindness shown to followers goes a long way towards developing loyalty and trust.
  • An autocratic leadership style can be very effective if interpersonal relationships are not ignored.
  • A good leader must not fall into the trap of wanting recognition.

I can mostly still agree, though that bit about autocracy makes me wonder.

Quasi-related factoid: I remember this class well because I pulled an all-nighter right before the final, not to study, but to drive across the state to the Lennox Theater in Columbus to watch The Phantom Menace at midnight. Good times, but a poor choice in retrospect.