[

  {
    "title": "The Towel-Off",
    
    "description": "Towel Usage Patterns: A Personal Study",
    
    "content": "<p>I wonder if there are categorizable styles for toweling-off.</p> <p>Every time I exit a shower, bath, or pool, I dry myself off in a consistent, particular manner.</p> <p>How did this come about? Do other people use their towels in as a consistent manner as I do? I hope so, because then we can compare towel-usage with heat maps.</p> <p>I regularly use three sizes of towels: a bath sheet (60” × 35”), a bath towel (52” × 27”) and a hand towel (30” × 16”). I was curious not only how I was using the towel, but if changing towel size changed the usage pattern. So, I took three showers and dried myself off once with each towel.</p> <p>The darker areas indicate higher use. The patterns represent both sides of the towel, in aggregate.</p> <h3 id=\"bath-sheet-60--35\">Bath Sheet (60” × 35”)</h3> <p><img src=\"/assets/img/d/towel-off/bath-sheet1.png\" alt=\"Bath Sheet Usage\"></p> <h3 id=\"bath-towel-52--27\">Bath Towel (52” × 27”)</h3> <p><img src=\"/assets/img/d/towel-off/bath-towel.png\" alt=\"Bath Towel Usage\"></p> <h3 id=\"hand-towel-30--16\">Hand Towel (30” × 16”)</h3> <p><img src=\"/assets/img/d/towel-off/hand-towel.png\" alt=\"Hand Towel Usage\"></p> <p>From the maps, we can see I’m a very symmetric towel user, with a focus on the center. I also tend not to evenly utilize my towel’s drying power.</p> <p>Perhaps I can optimize.</p>",
    "url": "/d/2008/the-towel-off/",
    "date": 1207958400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 202
  },

  {
    "title": "In Defense of Bowling",
    
    "description": "Angry Birds: Emotion in Game Design",
    
    "content": "<p>With over 200 million downloads as of May 2011, Angry Birds became a modern cultural touchpoint.</p> <p>That’s incredible considering Angry Birds is by no means a technical feat nor is it an original game; in fact, it’s merely a remix of some old popular game you may have heard of.</p> <p>Bowling.</p> <p><img src=\"/assets/img/d/bowling/pins.webp\" alt=\"Bowling Pins\"></p> <p>Suspicious (yet probably still accurate) Internet data suggest that Angry Birds has about the same number of downloads (~<a href=\"http://www.guardian.co.uk/technology/appsblog/2011/may/19/iphone-game-stats\">200M</a>) as the number of people who have bowled at least once in their lifetimes (~<a href=\"http://www.active.com/page14165.aspx\">220M</a>). And, given the proclivities of today’s youth, that number is increasingly in favor for the birds.</p> <p>It leads one to ponder: if it’s basically the same game, why are the Angry Birds so ubiquitous? And yet, the answer is simple: emotion.</p> <p>At the onset, you’re presented a problem: evil green pigs have stolen eggs from a cacophony of primary-colored kamikaze dodos. The outrage is enough to start a war, severe enough to forgo primal instincts of self preservation and use yourself as munitions; but, more importantly, it’s enough to stir, as the player, your latent need for righteous vengeance. Naturally, you are uniquely suited to aide the birds in their avionic havoc—and for which you are eager to comply.</p> <p>Just watch <a href=\"http://www.youtube.com/watch?v=d5SQkhs-wM0&amp;feature=player_detailpage#t=17s\">the intro</a> (ed: no longer available as of 2024.)</p> <p>Damn those pigs. So smug. Ugh!</p> <p>After this, sending a ball into a bunch of blocks isn’t nearly as exciting. This is because (for the non-autistic among my readership) you relate to anthropomorphic critters better than you can relate to a circle. You may have sympathy for the devil, but certainly not for a ball.</p> <p>Behold:</p> <p><img src=\"/assets/img/d/bowling/faces.png\" alt=\"Faces Comparison\"></p> <p>Angry Birds is tried and true gameplay laced with emotion and familiarity: the story is familiar, the physics are familiar, and the only logical leap the game asks of the player is to forget that most birds can fly perfectly well on their own. But, in this case, they require a slingshot and your help, and don’t require a trip down to the bowling alley.</p> <p>Like bowling, Angry Birds has been wildly successful, spawning sequels and dozens of clones. And <a href=\"http://www.google.com/search?q=angry+bird+toys&amp;um=1&amp;ie=UTF-8&amp;tbm=isch&amp;source=og&amp;sa=N&amp;hl=en&amp;tab=wi&amp;biw=1191&amp;bih=1250\">toys</a>.</p> <p>But, for my time and money, I’d rather go bowling with friends—they tell better stories.</p>",
    "url": "/d/2011/in-defense-of-bowling/",
    "date": 1315180800,
    
    "updated": 1719878400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 381
  },

  {
    "title": "5 Things You Need to Know This Morning",
    
    "content": "<ol> <li>There are seldom five things you need to know every morning, much less one thing. News articles and blog posts with this title are merely a ploy for page views, praying on your biological Fear Of Missing Out. <br><br>Stop giving yourself a reason to be distracted from the work that is important—if something is important, someone will make sure you know.<br><br>This advice is true every day of the week.<br><br> </li> <li>See above.</li> <li>See above.</li> <li>See above.</li> <li>See above.</li> </ol>",
    "url": "/d/2011/5-things-you-need-to-know/",
    "date": 1322524800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 85
  },

  {
    "title": "The Best Alternative to \"The Juice Cleanse\" Ever",
    
    "description": "Try the Ice Cream and Peanut Butter Cleanse! It's healthier—certainly cheaper. (Probably.)",
    
    "content": "<blockquote> <p>Update: BluePrint has since <a href=\"https://www.bevnet.com/news/2020/out-of-juice-hpp-brands-blueprint-and-daily-greens-shut-down\">ceased operations</a>. Too bad, so sad.</p> <p>There are other health food scams out there—but as I am not current on the latest in nutritional guidance, I will not render any advice.</p> </blockquote> <p>During this morning’s gym routine, I caught up on a <a href=\"http://skeptoid.com/episodes/4335\">Skeptoid podcast</a> which debunked the nutritional claims by the various juice cleanse proponents. So, naturally, I thought I’d do the math and see if I couldn’t come up with something healthier, cheaper, and more delicious.</p> <p>(Side note: Brian’s <a href=\"http://skeptoid.com/\">Skeptoid</a> show is fantastic, as are the piles of research he does for every show.)</p> <p><img src=\"/assets/img/d/juice-cleanse/bottles.webp\" alt=\"Blueprint Foundation\"></p> <p>As a benchmark, I started with Blueprint’s Foundation Cleanse which, according to the marketing, seemed most appropriate for most cleanse-seeking persons (hereafter referred to as “cleansers”). It was also the first result for “juice cleanse” on your favorite search engine.</p> <p>The Foundation Cleanse is six bottles of juice, taken sequentially, with the following daily nutritional footprint. In sum:</p> <div class=\"language-plaintext highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code>KCal: 1,010 Fat: 19 grams (Saturated: 3 g) Carb: 197 grams (Fiber: 14 g, Sugar: 171 g) Protein: 14 grams </code></pre></div></div> <p><a href=\"https://docs.google.com/spreadsheet/pub?key=0AsXbVwyDzbUKdHZGaUYyUXRKQmktZkMwNUdzSmxOT1E&amp;output=html\">Complete Data Available Here</a></p> <p>What I find particularly amusing is that, according to BluePrint, “The Foundation Cleanse fills you up […]”, but with 171g of sugar comprising most of the caloric intake, I find that difficult to stomach. (Har har.) You see, sugar is quickly digested and quickly burned, rendering the cleanser with energy spikes after every bottle and isn’t, I’m afraid, terribly filling.</p> <p>Moreover, the total caloric load is 1,010 KCal, below the average number of calories most people spend in a day just to exist. (Also called the Basal Metabolic Rate, or BMR, the averages for men and women are about 1,500 and 1,650 kilocalories a day, respectively.)</p> <p>If you’re trying to lose weight (which, I’d venture, is why most cleansers subscribe to a juice cleanse), consuming below your caloric usage is generally a sound idea. However, operating on a high-sugar, caloric-restrictive diet will cause most people, experienced cleansers included, to lose lean mass (muscle) and not fat mass (pudginess). For those who value popular fashion aesthetics, this cleanse is the stark opposite to what cleansers ought to be doing. They will lose weight, but it’s not the weight they want to be losing.</p> <p>However, the point of this exercise isn’t to admonish BluePrint or its product’s nutritional values and composition—it’s to come up with something equally absurd, wonderful, and by all means tastier. And it’s with this in mind that I bring you my latest creation:</p> <p><img src=\"/assets/img/d/juice-cleanse/icpbsp.webp\" alt=\"Ice Cream, Peanut Butter, Split Pea Cleanse\"></p> <h2 id=\"the-ice-cream-peanut-butter-and-split-pea-cleanse\">The Ice Cream, Peanut Butter, and Split Pea Cleanse</h2> <p>The goal here was to create a cleanse with a similar caloric load to our benchmark, but with macronutrients portioned to reduce insulin spikes, include sufficient fiber, stave off hunger, and—most importantly—maximize gluttony.</p> <p>While The Foundation Cleanse features six consumption opportunities throughout the day, The ICPBSP Cleanse can be consumed all in one sitting; or, if the cleanser chooses, throughout the day thusly:</p> <div class=\"language-plaintext highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code>Meal 1: 1/2 Cup Cooked Split Peas Meal 2: 1/2 Cup Vanilla Ice Cream Meal 3: 2 Tbsp Creamy Peanut Butter Meal 4: 1/4 Cup Cooked Split Peas Meal 5: 1/2 Cup Vanilla Ice Cream Meal 6: 2 Tbsp Creamy Peanut Butter </code></pre></div></div> <p>Meals 1 and 2, 3 and 4, 5 and 6 may also be combined if so desired. I’m not picky.</p> <p>Most acutely, the daily nutritional footprint of The ICPBSP Cleanse is as follows:</p> <div class=\"language-plaintext highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code>KCal: 1,093 Fat: 71 grams (Saturated: 29 g) Carb: 87 grams (Fiber: 16 g, Sugar 53 g) Protein: 36 grams </code></pre></div></div> <p>In comparison with the Foundation Cleanse, this nutritional footprint features 50% more protein, 50% fewer carbs, and 65% fewer sugars, all with equivalent fiber portions, calorie for calorie.</p> <p>Did I mention this cleanse features one cup of Haagen Dazs Vanilla Ice Cream, four tablespoons of Skippy Peanut Butter, and less than a cup of cooked split peas? I could’ve spent time selecting more nutritionally-advantageous products, but given the sugar contents of the benchmark, I felt I didn’t need to bother with any of that. I leave it as an exercise to the reader.</p> <p>Also important to note, this diet features three times the amount of fat as The Foundation Cleanse. This is intentional: fats (and proteins) will keep cleansers much more sated than the equivalent caloric load in carbohydrates. Contrary to popular belief, eating fats doesn’t (necessarily) make you fat. Granted, there’s a lot of fat in this cleanse, but it’s more likely you’ll be able to stick to this one over the low-fat, low-protein Foundation Cleanse. And with the little bit of extra fiber in the ICPBSP Cleanse, it’ll digest just as easily (assuming the cleanser isn’t lactose intolerant or anything).</p> <p>In my mind, there are two purported purposes to a cleanse: rid your body of toxins and restore nutritional balance in your body. Regardless of whether or not that’s what actually happens during a cleanse (spoiler: it’s not), the overall byproduct of this dietary exercise leaves cleansers to operate with a lower caloric intake. So, for my money, go with which one you’re more likely to stick with.</p> <p>Speaking of which, The Foundation Cleanse will cost you more than $65 per day (not including shipping) whereas the ICPBSP Cleanse costs $4* per day and is available at every grocery store in America and can be purchased with SNAP/EBT.</p> <p>Ultimately, for cleansers who opt to cleanse, the choice is simple: either go with expensive mail-order green and white juice goop, or enjoy a simple diet of Ice Cream, Peanut Butter, and cooked Split Peas.</p> <p>Truthfully, though, I wouldn’t recommend either.</p> <hr> <p>*Prices as of November 14th, 2012 according to FreshDirect.com. (Daily portion wise: $3 for the Ice Cream, $.50 for the Peanut Butter, and $.50 for the Split Peas.)</p>",
    "url": "/d/2012/the-best-alternative-to-the-juice-cleanse-ever/",
    "date": 1352851200,
    
    "updated": 1615420800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 990
  },

  {
    "title": "Five Habits that Radically Improved My Life",
    
    "description": "Skip breakfast, wake up consistently, unplug, lift heavy, and keep a daily journal. Read on for details.",
    
    "content": "<p>Over the past year or so I’ve adopted a few habits that I thought would enhance this little experiment called life.</p> <p>I didn’t start them all at once—I kneaded them in over time, giving each new habit three months to stick. Then, on the next. I thought to share them in the hope they’d help you, too. In order of appearance:</p> <h1 id=\"skip-breakfast\">Skip breakfast</h1> <p>The habit returned 30 minutes to my morning and reduced my caloric intake by about 300 kilocalories a day. Each week, 3 hours and 2,100 kilocalories back in my favor.</p> <p>The first few days were rough, but after a week it was a non-issue. I lost fat mass, gained time, and made better food choices throughout the day since I only had two meal decisions to make, not three.</p> <p>Breakfast may be “the most important meal of the day”; but, for me, it’s marginal at best.</p> <h1 id=\"wake-up-consistently\">Wake up consistently</h1> <p>I wake up at 8:34am EST every day—weekend or weekday—regardless of bedtime. I don’t use an alarm.</p> <p>8:34am? When I started, sunrise hit my bedroom window at 8:35am, and I figured I could use the bright light to my advantage. After a few weeks, I started waking up 30-60 seconds before my alarm went off. Now, 8:34am. No alarm.</p> <p>I sleep better, fall asleep more easily, and have a sunnier disposition despite my curmudgeonly ways. Oh, I also don’t require caffeine, a fact that shocks nearly everyone.</p> <h1 id=\"unplug\">Unplug</h1> <p>I don’t kid myself that I can multitask (no one can) so I remove all unnecessary distractions to focus on the task at hand. When working, especially on longer projects, I disconnect my e-mail, silence my phone, and put on some big ‘ol headphones to tune out the world.</p> <p>In result, I do better work in fewer hours.</p> <p>Also, that nervous twitch to check my inboxes, cellphone, Twitter, etc. has faded. On the occasions where my own intellect interrupts me, I shunt its random, off-topic musings onto a nearby notepad for later consideration.</p> <h1 id=\"lift-heavy\">Lift heavy</h1> <p>Like most knowledge workers, I exercise regularly to offset the more sedentary hours. However, unlike most knowledge workers, I push myself to failure every time.</p> <p>While useful for preventing injury, reducing stress, shedding fat, growing muscle, and increasing energy, lifting heavy also makes end-of-day sleeping incredibly welcoming. Quality sleep yields quality thinking, generating better work. I can also, on occasion, eat with reckless abandon without fear of meaningful repercussions.</p> <h1 id=\"keep-a-daily-journal\">Keep a daily journal</h1> <p>Every day, I spend a half-hour chronicling my life into a 500 to 2,000 word narrative that forces me to reflect on my choices, accomplishments, and failures since my last entry.</p> <p>Of all my recently-formed habits, this has been the most transformative. The exercise makes each moment more memorable—each day more meaningful. Even on days with twelve contiguous hours planted in a desk chair, life seems fuller. Blank canvases feel inviting, not daunting. My word choice more vivid, precise. My thoughts are more organized, and my work continually improves in quality.</p> <p>Writing matters. So, I practice on myself.</p> <p>Skip breakfast, wake up consistently, unplug, lift heavy, and keep a daily journal.</p> <hr> <p>Originally posted on <a href=\"https://medium.com/@gruen/493101637ff6\">Medium</a>.</p>",
    "url": "/d/2013/five-habits/",
    "date": 1365379200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 531
  },

  {
    "title": "Write Like An Adult (Preface)",
    
    "description": "The transition between academic and business writing can be tough. This book helps you clear that hurdle.",
    
    "content": "<blockquote> <p>This is the Preface to <em><a href=\"https://amzn.to/3GqcQSs\">Write Like An Adult</a></em>, an informal treatise I wrote and self-published mid-2013.</p> <p>This older Michael (c.2023) is more bothered by some choice words and phrases than its lack of commercial success. Nonetheless, the book dutifully reflects my thinking at the time and stands as my own among the (literally) hundreds of offerings on the subject of writing… few of which are far better value for your money and time. Most are not.</p> <p><em><a href=\"https://amzn.to/3GqcQSs\">Write Like An Adult</a></em> can be yours to own in eBook format for $2.99 (or $0 with Kindle Unlimited) and can be read in under an hour.</p> </blockquote> <h1 id=\"preface\">Preface</h1> <p>After ten years in the workforce I’ve concluded that:</p> <ol> <li>a surprising number of adults can’t write,</li> <li>the problem is getting worse, and</li> <li>I should do something about it.</li> </ol> <p>Like folding a fitted sheet, writing is something adults ought to be able to do without too much trouble… but it takes practice to get right.</p> <p>Mercifully, most writing is transactional and conversational: relaying ideas, managing logistics, and other short-form communication. The longer, harder, stand-alone expositions are often now reserved for special occasions (like hate mail) or are the responsibility of professional writers.</p> <p>And yet, many adults struggle with basic short-form transactional writing.</p> <p><strong>Some fault lies in our education</strong></p> <p>In academia, when writing matters it’s formal, structured, and long-form. Its primary intent is to demonstrate command and mastery of a topic rather than communicate or sell the author’s unique ideas. Essays and exams are graded for clarity and content. Beyond coursework, most students receive virtually no feedback on effective writing.</p> <p>What’s more: the Five Paragraph Essay—forever etched into students’ minds before finishing puberty—is an unwieldy format for selling an idea in modern times. In my experience, it is an unfortunate choice for new graduates often deploy in business communications; as the adage goes: “When all you have is a hammer, everything looks like a nail.”</p> <p>For those of you who weren’t traditionally schooled (or if you’ve forgotten), the Five Paragraph Essay looks like this:</p> <blockquote> <p>Paragraph 1: Introduction of your thesis (i.e. What’s your point?)</p> <p>Paragraph 2: Evidence to support thesis</p> <p>Paragraph 3: Evidence to support thesis</p> <p>Paragraph 4: Evidence to support thesis</p> <p>Paragraph 5: Recapitulation of the thesis with, perhaps, further topics to consider or preemptive rebuttals to conflicting evidence.</p> </blockquote> <p>Or, as grade-school teachers jest: “Tell them what you’re going to tell them, tell them, and then tell them what you’ve told them.”</p> <p>For essays, this is sound advice.</p> <p>Here is better advice: <strong>Tell them.</strong></p> <p><a href=\"https://amzn.to/3GqcQSs\">This book</a> will show you how.</p>",
    "url": "/d/2013/write-like-an-adult-preface/",
    "date": 1385164800,
    
    "updated": 1673395200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 434
  },

  {
    "title": "By The Numbers",
    
    "description": "My exit e-mail, sent to the team on my last day at WorkMarket",
    
    "content": "<h2 id=\"context\">Context</h2> <p>What follows is the goodbye e-mail I sent to the all-team e-mail list in early 2019.</p> <p>If you’d like to get right to it, you can <a href=\"#by-the-numbers\">↓ Jump to Content ↓</a>.</p> <p>What I like about this e-mail (and why I’ve chosen to reprint it here) is that it shows—with data!—what a mid-level individual contributor turned team manager turned technical leader’s time and effort looks like over a five year period at an enterprise B2B SaaS startup that grew from 40 to 200+ people (and much more in ARR), from Series A through acquisition and integration.</p> <p>While there’s nothing within that discloses non-public information, permission hasn’t been explicitly granted so I’ve [<code class=\"language-plaintext highlighter-rouge\">redacted</code>] some bits and edited other parts of clarity. (And I honestly wouldn’t even know where to go for that.) Take my word that these redactions and edits have 0 impact on the point of it all.</p> <p>Please Enjoy.</p> <hr> <h1 id=\"by-the-numbers\">By The Numbers</h1> <p>Team—</p> <p>Tomorrow marks my last day at WorkMarket, a placed I’ve called “work” since April 1, 2014.</p> <p>I was hire #42 by headcount and 13th oldest-by-tenure when we were acquired. My internal User ID is [<code class=\"language-plaintext highlighter-rouge\">~1800</code>] which, considering we start counting users at 1000 and have [<code class=\"language-plaintext highlighter-rouge\">much more than that</code>] in our database, is extremely low. (I joined WM as a user 8 years ago when the platform first launched.)</p> <p>As an employee, there have been exactly 1,764 days between my start date and end date; or, an estimated 1,260 weekdays for 1,124 days of actual butt-in-seat work. (1,125 days if you count that Sunday I came in to work on some deck for Jeff ahead of a board meeting.)</p> <p>I won WM’s monthly trivia exactly one time.</p> <p>With equal-ish precision, I have sent 14,407 e-mails and received twelve times (12x!) as many as I’ve sent. I have read all of them.<sup>*</sup></p> <p><img src=\"/assets/img/d/by-the-numbers/image0.png\" alt=\"All e-mails I have sent\"></p> <p><sup>*</sup>No, of course I haven’t read all of them. But the important ones, certainly.</p> <p><img src=\"/assets/img/d/by-the-numbers/image1.png\" alt=\"E-mails: ratio of sent to received.\"></p> <p>I started at WorkMarket reporting to Jeff [ed: one of the founders]. Unsurprisingly, a good number of my early inbound e-mails came directly from him. Most were fewer than 10 words long.</p> <p><img src=\"/assets/img/d/by-the-numbers/image2.png\" alt=\"Jeff is laconic\"></p> <p>They still are.</p> <p><img src=\"/assets/img/d/by-the-numbers/image3.png\" alt=\"Jeff is still laconic\"></p> <p>But, I also received my fair share of direct e-mails from our CEO-types [ed: post acquisition we had no CEO] asking for something. Some were more prolific:</p> <p><img src=\"/assets/img/d/by-the-numbers/image4.png\" alt=\"Count of e-mails direct to me from the CEO Type\"> <img src=\"/assets/img/d/by-the-numbers/image5.png\" alt=\"Count of e-mails direct to me from the CEO Type plus Jeff\"></p> <p>… with some more judiciously using [<code class=\"language-plaintext highlighter-rouge\">the all-hands e-mail</code>] more than others.</p> <p><img src=\"/assets/img/d/by-the-numbers/image6.png\" alt=\"Count of all-team e-mails sent by CEO type\"></p> <p>You might say that I’m one-to-talk, but I like to call it like it is. Hooray data!</p> <p><img src=\"/assets/img/d/by-the-numbers/image7.png\" alt=\"E-mails I have sent to all-team\"></p> <p>Most of my team-wide e-mails were related to team-wide compliance announcements and security related reasons. (Hey, remember AirWatch? Sorry to have bothered you with that. That’s [<code class=\"language-plaintext highlighter-rouge\">our acquirerer's corporate security team</code>]’s job now.)</p> <p>Given the time I afforded myself to run this analysis, I didn’t do the greatest job of scrubbing out noise like meeting invites and google doc invites out from my e-mail analysis. But, on review, they comprise ~10% overall and were generally consistent month-to-month. So, for those playing at home, consider all these figures to be directionally accurate.</p> <p>Speaking of meetings, I think I did I fairly decent job at being WM Effective™. [ed: We had posted list of meeting guidelines on how to run an effective meeting. They’re pretty good, but they’re not mine. :)] (Almost kept it under 30 minutes on average):</p> <p><img src=\"/assets/img/d/by-the-numbers/image8.png\" alt=\"Average Meeting Time in Minutes\"></p> <p>After our acquisition last year in January, you can watch my meeting times creep up with more and more [<code class=\"language-plaintext highlighter-rouge\">mothership</code>] folk invading my calendar.</p> <p>And oh boy did I spend quite a bit of time in meetings:</p> <p><img src=\"/assets/img/d/by-the-numbers/image9.png\" alt=\"Total Minutes in Meetings per Month\"></p> <p>Note that these figures do not include recurring meetings and task rituals. (I filtered out all meetings set to repeat… so these are all “actual” meetings called for a very specific purposes, not part of the usual day-to-day maintenance.) I’ve been to 200 [<code class=\"language-plaintext highlighter-rouge\">weekly operating committee meetings</code>]’s, give or take a few.</p> <p>Doing the math, I’ve spent nearly 30% of my total time in meetings: 307 working days worth, in fact. (I’d graph this, but it’s tricky to break out recurring meetings per month than ad-hoc meetings, but total aggregates are doable.) Thankfully (and I credit all of you), only a small handful warranted calling an audible and shutting them down. (You know you can do that, right?)</p> <p><img src=\"/assets/img/d/by-the-numbers/image10.png\" alt=\"Percentage of Ad-Hoc meeting minutes that are my fault.\"></p> <p>Early on in my WorkMarket days (before March 2015 when the Data Team was born), I averaged 4 hours of meetings per week—10% of my time. The other 90% (if you can believe it) I was coding.</p> <p>That skill has since taken a precipitous decline.</p> <p>In summer 2014, [<code class=\"language-plaintext highlighter-rouge\">my user growth platform</code>] was born… and saw little development after the data team started. Most of you have probably never seen [<code class=\"language-plaintext highlighter-rouge\">my user growth platform</code>]…</p> <p><img src=\"/assets/img/d/by-the-numbers/image11.png\" alt=\"My commits to the user growth platform\"></p> <p>…but see if you can guess when we turned it on:</p> <p><img src=\"/assets/img/d/by-the-numbers/image12.png\" alt=\"User growth by month\"></p> <p>I’m still #2 in modeling data inside of Looker [ed: our Business Intelligence Tool], since eclipsed by [<code class=\"language-plaintext highlighter-rouge\">team member 1</code>] and [<code class=\"language-plaintext highlighter-rouge\">team member 2</code>]:</p> <p><img src=\"/assets/img/d/by-the-numbers/image13.png\" alt=\"Code commits by me and others\"></p> <p>I wish I had a better graph for you. I really do: a few years back I tasked then-intern [<code class=\"language-plaintext highlighter-rouge\">team member 3</code>] to bit-shovel our GitHub commits into our data warehouse so we could plot them over time. But, that project has since been abandoned as he took a real, full-time role on the team. (Belated congrats, btw.) Sadly, he no longer had time for quasi-frivolous projects, although he should still finish it or forever have my ire.</p> <p>In March 2015, with the data team launched, we redirected inbound data requests (which were then coming directly to the engineering google group) into JIRA. From there, it was easy to chart how our team’s needs (and capacities) grew.</p> <p><img src=\"/assets/img/d/by-the-numbers/image14.png\" alt=\"Jira Story Points Accomplished by me and not me\"></p> <p>In my time here, I have completed 751 Jira tickets, contributing 577 of made-up velocity points to the data team. The team has done (and will continue to do) significantly more. [<code class=\"language-plaintext highlighter-rouge\">Team member 4</code>] will be instrumental in helping here, so do say hello to him if you haven’t already!</p> <p>Regrettably, Google Drive does a sub-par job of tracking documents created over time. But, I was able to estimate (based on my blocked-off writing times, average e-mail length, and composition times) I’ve easily written over 4,000,000 published words since joining WorkMarket; or, about 7 words per minute on average while in the office.</p> <p>Speaking of being in the office, I did the math on how many days I was physically in:</p> <p><img src=\"/assets/img/d/by-the-numbers/image15.png\" alt=\"Hybrid Mode Count\"></p> <p>And (I think) made appropriate use of our unlimited vacation policy:</p> <p><img src=\"/assets/img/d/by-the-numbers/image16.png\" alt=\"Vacation Days Used by Year\"></p> <p>(I confess that, especially early on here, I still checked my e-mail daily. In 2018, not so much.)</p> <p>To sum it up, this e-mail is 1,156 words long, with analysis performed in between meetings, since Friday last week up to my writing this last sentence. As this took 2 hours and 48 minutes to write, that’s ~7 WPM. This e-mail serves little utility beyond the intellectual curiosity; the ROI, extremely low. Perhaps negative. It would be sized “3” if it were pointed like a data story.</p> <p>Outside of the numbers, WorkMarket has been a wonderful place to work and to grow, and I have all of you to thank. Having been here for nearly 5 years, I can say without hesitation that WorkMarket has never been better positioned to fulfill its mission, and I’m excited to see what you are all able to accomplish now supercharged by [<code class=\"language-plaintext highlighter-rouge\">acquirer</code>].</p> <p>For my part, I’m looking forward to taking some time off to travel, to plan a wedding, and to think about what’s next.</p> <p>Please keep in touch. If I can be at all helpful, do not hesitate to reach out.</p> <p>Until next time—</p> <p><br> `mg</p> <p>–<br> Methodologies:</p> <ul> <li>E-mail analysis was performed using envelope data within mail.app’s SQLite3 database</li> <li>Calendar analysis was performed in a similar manner; but, thanks to Apple modifying unixepoch time to apple standard time, it took an additional hour to realize that to avoid unix timecode issues in <a href=\"https://en.wikipedia.org/wiki/Year_2038_problem\">year 2038</a>, Apple made up their own timecode which starts exactly 978,307,200 seconds later than unix time code. (I leave figuring out how many years that is an an exercise for the reader.)</li> <li>Git data from GitHub</li> <li>Jira data from Jira</li> </ul>",
    "url": "/d/2019/by-the-numbers/",
    "date": 1548720000,
    
    "updated": 1675036800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1537
  },

  {
    "title": "Cultivating High-Functioning Teams with User Guides",
    
    "description": "And where to use them. When positioned correctly, self-written user guides are an incredibly useful tool for building high-trust, highly-effective teams quickly... especially when distributed.",
    
    "content": "<h1 id=\"overview\">Overview</h1> <h2 id=\"what-is-a-personal-user-guide\">What is a Personal User Guide?</h2> <p>A Personal User Guide is a self-authored document, structured however its author would like, so long as it:</p> <ol> <li>accurately reflects their work style, habits, and preferences;</li> <li>is shared with their immediate colleagues;</li> <li>remains up-to-date with their behaviors and role.</li> </ol> <p>A user guide can be a document, slideshow, illustration, video—anything, really, so long as it’s made available for reference.</p> <p>In this dispatch, we’ll focus on <strong>why</strong> executives and people managers might want to employ user guides to help teams and people perform at their best. I’ll also share a bit about <strong>how</strong> I deploy them in my work.</p> <p>For more on <strong>what</strong> these look like, <a href=\"#references\">§ References</a> below has some good examples, or you can read <a href=\"/resources/mg-user-guide/\">mine</a>.</p> <center>⁂</center> <h1 id=\"motivations\">Motivations</h1> <p>Asking the uninitiated to write and maintain a Personal User Guide is <em>work</em>, if not a bit uncomfortable. But, if executed sincerely, the returns <em>greatly</em> outweigh the initial social capital investment.</p> <p>With additional understanding about themselves and their teammates, most people experience reduced frustrations (helped by explicit expectation-setting) when working together.</p> <p>In the end, most find themselves having enjoyed the exercise.</p> <h2 id=\"1-user-guides-kickstart-collaboration\">1. User Guides kickstart collaboration</h2> <p>The ubiquity of online dating apps demonstrates that strangers prefer to know a little about each other before meeting. LinkedIn has proved the same is true in business. Folks generally share more in their Users Guides over what’s offered to the wider public (via LinkedIn), and more specific to their roles, which tends to contain non-generic conversation fodder.</p> <blockquote> <p>“You don’t keep a to-do list? How do you get things done?”</p> </blockquote> <p>Blind dates can be spectacularly disastrous as not all personalities mesh well together. Among coworkers; however, cordiality is expected. It’s helpful to temper any interpersonal volatility with clear expectations and equitable footing.</p> <blockquote> <p>“I know this meeting could have been an e-mail, but wasn’t this fun?”</p> </blockquote> <p>Another benefit is that user guides provide a modicum of control to the author on how other people experience them for the first time. This can be especially helpful to those with atypical neurologies (e.g., autism), mobility constraints, sensory-impairments, disabilities (and so forth) who might prefer others know these things about themselves prior to a meeting to avoid distraction from the task at-hand or the well-rehearsed preamble that explains their unique personhood. (Or not! It’s entirely their preference.)</p> <p>In this regard, user guides benefit their authors and their readers, improving inter/intra-team dynamics and therefore the company at large.</p> <h2 id=\"2-user-guides-improve-inter-department-communication\">2. User Guides improve inter-department communication</h2> <p>When coworkers don’t interact with each other often, user guides can short-cut initial coordination hiccups. A quick illustration:</p> <p>I was the executive sponsor on a cross-functional project involving two teams, one of them mine. The other team was a call-me-on-the-phone type, whereas mine was a DM-me type. I asked my leader (a DM-type) owning the project to reach out to the cross-functional leader (a phone-type) to get something on the calendar. Two weeks later, no progress.</p> <p>“I reached out twice—they never responded.” said my leader. So, I reached out to their manager.</p> <p>“What are you talking about? <strong>My</strong> team’s still waiting to hear from <strong>your</strong> team!”</p> <p>It didn’t take us long to figure out what happened: my leader sent a Slack message that their counterpart never saw, and said counterpart never received the phone call they were expecting. It was wholly embarrassing to all and an expensive two-week delay.</p> <h2 id=\"3-user-guides-help-people-be-intentional-in-how-they-comport-themselves\">3. User guides help people be intentional in how they comport themselves</h2> <p>Asking coworkers to reflect on themselves in the workplace and to produce a document about it surfaces coaching and growth opportunities for both individuals and their teams.</p> <p>The act of writing it all down also serves as a fidelity check between perceived behaviors and actual behaviors, providing a forum for lower-stakes/higher-frequency feedback over high-stakes annual reviews. To that end, user guides can and <strong>should</strong> be adjusted over time as people grow and their behaviors change.</p> <blockquote> <p>“When I’m angry, I tend to yell indiscriminately.”</p> </blockquote> <p>User guides do not excuse poor behavior. For managers, this is a coaching moment that can help avoid future issues.</p> <p>I also encourage folks to date and retain older versions to track progress—it can be highly motivating.</p> <h2 id=\"4-user-guides-foster-trust-among-team-members\">4. User guides foster trust among team members</h2> <p>User guides are unavoidably personal.</p> <p>While an author might choose to only share only a glimpse about themselves, any self-expression provides a pathway to vulnerability, an important component to building trust.</p> <blockquote> <p>“You love to quilt? I love to knit!”</p> </blockquote> <p>In a very real sense, spending time reading others’ users guides are a form of spending time with a person; time spent builds understanding and leads to trust. Evidence shows that fostering trust and understanding drives performance. (See <a href=\"#trust-research\">Trust</a> below in § References.)</p> <h2 id=\"5-user-guides-help-new-team-members-ramp-up-quickly\">5. User guides help new team members ramp up quickly</h2> <p>Beyond the obvious benefits of accelerating team introductions, user guides can accelerate systems onboarding.</p> <p>When user guides are published within the same systems that a team uses daily, asking new team members (“joiners”) to contribute their user guides are a low-risk introduction to core workflows. The sooner they get a feel for “how things work around here”, the faster they’ll be able to contribute to their team’s output. This is why technology teams try to ensure that joiners can contribute production code (“commit”) on their first day.</p> <p>Where production systems are too brittle to allow this (or on non-technical teams) this isn’t feasible. User guide submission, on the other hand, is a low-stakes exercise with equal onboarding value.</p> <h2 id=\"6-user-guides-shape-company-culture\">6. User guides shape company culture</h2> <p>I’m squarely in the “companies are sports teams—not families” camp.</p> <blockquote> <p>Families don’t “reorg” for tactical execution, “release to industry” underperforming family members, or “strategically hire” during a boom. That is, no <em>healthy</em> family does that.</p> <p>Further, <code class=\"language-plaintext highlighter-rouge\">company culture</code> is a loaded term and I won’t be addressing it here! Another time, perhaps.</p> </blockquote> <p>Strong athletes comprise strong teams, and stronger athletes tend to be attuned to their strengths, weaknesses, and current performance levels. They share their successes (and struggles) openly with their teammates and coaches.</p> <p>Metaphors break down eventually, but if you’ll indulge me: if Resumes are trading cards, User Guides are moneyball.</p> <blockquote> <p>When I was a kid I hoarded baseball cards. (I wasn’t much of a trader.)</p> <p>Each player card featured an action-shot that best represented what the player was known for: pitchers pitching, hitters hitting, fielders fielding. On the back were their previous season statistics, often accompanied with a small narrative about their team, hometown, and other physical properties (bats left, throws right, 6’-2”, hails from the Dominican Republic).</p> <p>Back in my day, a players’ stats and their team’s dominance in their league determined their relative trading value. However, as <a href=\"https://amzn.to/3k85CLf\">Moneyball</a>’s Billy Beane proved with great effect, behavioral output and raw probabilities matter more to winning than normative performance indicators.</p> <p>Player combinations matter more than any one player.</p> </blockquote> <p>Company culture (again, loaded term) is the collective attitude and behaviors of an organization. If true—and it is, definitionally—user guides help explicitly define and shape that culture through the behavioral output of its team members.</p> <h1 id=\"how-i-use-personal-user-guides\">How I use Personal User Guides</h1> <p>The better the onboarding experience, the faster the team is productive.</p> <p>This is especially true when standing up a new company, department, or group where all that exists is the infinite whitespace between the people on the ground floor and the ambitious goals for the unit.</p> <p>People come first. In this, user guides are critical.</p> <p>Upon offer acceptance, the people ops team provides a welcome packet that includes the usual boilerplate about the mission and the company; but, also an introduction to user guides. (Where I’m the direct manager, I’ll have provided mine prior to offer.)</p> <blockquote> <p>Important aside, well-noted within said packet: there is <strong>zero</strong> expectation that people start work prior to being on payroll.</p> <p>However, high-performers tend to want to “hit the ground running”. They want to know what’s expected of them their first few weeks so they can prepare. High-performers with high EQ also tend not to want to seem conceited and therefore won’t ask “unimportant” logistics questions that would improve their quality of life in the intervening and ramp-up time. Some will put their lives on hold and won’t make plans until they figure out what’s ahead of them on a day-to-day.</p> <p>The time between ending a role and starting a new one can be exciting, if not a bit stressful, and I find that it helps to have something that sets expectations about what the future looks like. And, a big part of that is “who” they will be working with… another argument for user guides.</p> </blockquote> <p>Also provided is an Onboarding Plan. Within are tasks and milestones broken into categories: first day, first week, first month tasks, etc.</p> <p>With respect to user guides:</p> <ol> <li>On or prior to the first day, joiners receive the user guides of the folks they’ll be working with as one of their early reading assignments. (Due to be complete by end of week one.) These users guides are usually within a system of record they’ll need to learn or gain access to.</li> <li>Vis-à-vis user guides and intake meetings, joiners meet their new colleagues.</li> <li>By end of week one, joiners should have <em>started</em> writing a user guide for themselves. (If ready, it may be shared prior to first meetings with their close coworkers. If not, that’s ok.)</li> <li>By the end of the second week, new joiners should have completed and submitted their own user guide to that shared system and made it available to their colleagues (teammates and manager).</li> <li>By the end of the first month, that user guide should be updated to reflect their enhanced understanding of their role and how they intend on using the company’s systems to manage their responsibilities.</li> <li>By their first review period (or 100 days in), their user guide is a part of the conversation and a fidelity check on theirs and their team’s behaviors.</li> </ol> <p>User guides can live in Google’s Docs, Atlassian’s Confluence, a git repository (GitHub, GitLab, and GitBook), and on other knowledge-base vendors (like Notion) with version control. All choices have their plusses and minuses; but, I usually choose whatever’s closest to the team’s daily work flow, if localized within a team. Or, if available, the most widely-used and searchable intranet or knowledge management system.</p> <p>Lastly, while there’s no mandate to publish user guides widely on the company intranet or knowledge base, I do encourage it and provide <a href=\"/resources/mg-user-guide/\">mine</a> as an example. Some choose to publish a more limited view of their user guide to the company-wide forum, saving a more detailed one for their close colleagues.</p> <h2 id=\"no-ubiquity-guarantees\">No ubiquity guarantees</h2> <p>Even if you’re the most ardent believer in User Guides (by now, hopefully you are!), not everyone will be on board to create their own. That’s fine. You can still furnish your own. In trusted business contexts, asymmetric information is often better than no information, and I’ve yet to encounter anyone who’s believed they are in anyway harmful or a regarded as bad.</p> <h1 id=\"references\">References</h1> <p>Your favorite search engine and/or AI-powered chat will yield far more results than those curated below. To aide in your quest, what I call personal user guides might also be called a <code class=\"language-plaintext highlighter-rouge\">user manuals</code>, <code class=\"language-plaintext highlighter-rouge\">personal readmes</code>, <code class=\"language-plaintext highlighter-rouge\">personal introduction</code>, though I prefer <code class=\"language-plaintext highlighter-rouge\">User Guide</code> as humans tend to prefer <strong>guide</strong>lines over strict rules of engagement or procedural instructions.</p> <h2 id=\"on-user-guides\">On User Guides</h2> <ul> <li> <a href=\"https://about.gitlab.com/handbook/ceo/\">Gitlab’s CEO User Manual</a> - GitLab’s CEO has an excellent (and operationalized) manual. Founder and ex-CEO <a href=\"https://slab.com/library/templates/gitlab-ceo-manual/\">Sid Sijbrandij</a> started the trend.</li> <li> <a href=\"https://www.process.st/personal-user-manual/\">Personal User Manual How-To</a> - Decent resource on the “How”.</li> <li> <a href=\"https://www.nytimes.com/2013/03/31/business/questbacks-lead-strategist-on-his-user-manual.html\">NY Times - Corner Office</a> - “Want to Know Me? Just Read My User Manual”</li> <li> <a href=\"https://www.atlassian.com/team-playbook/plays/my-user-manual\">Atlassian’s Personal User Manual Playbook</a> - SEO bait for Confluence, but still a good resource for user guide templates and an available playbook should you follow Atlassian’s leadership in other areas. (A la “this meeting should’ve been an e-mail”, I don’t think user guide sharing needs to be a synchronous or full-team activity. Introducing user guides, sure. Sharing? Probably not.)</li> </ul> <h2 id=\"on-trust-research\">On Trust Research</h2> <ul> <li> <a href=\"https://cloud.google.com/architecture/devops/devops-culture-westrum-organizational-culture\">Westrum Organizational Culture</a> - Google’s researched-based findings from high-performance teams</li> <li> <a href=\"https://psychcentral.com/relationships/the-good-kind-of-vulnerability\">The Good Kind of Vulnerability</a> - Popularized by Brené Brown, summarized well here</li> </ul>",
    "url": "/d/2023/user-guide/",
    "date": 1673395200,
    
    "updated": 1734652800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 2075
  },

  {
    "title": "Why Modern Hiring Processes Work",
    
    "description": "An Introduction to the Interview Circuit, a playbook for creating collaborative hiring experiences for both candidates and their future teams... without superfluous overhead",
    
    "content": "<p>Ultimately, this discussion argues that companies should</p> <ol> <li> <em>adopt</em> modern hiring processes that focus on outcomes, and</li> <li> <em>reject</em> the popular (but ineffective) legacy kabuki interviewing practices that plague industry.</li> </ol> <p>The concepts within also underpin many of the philosophies behind my <em><a href=\"/resources/interview-circuit/\">Interview Circuit: A Modern Hiring Playbook</a></em>.</p> <h1 id=\"motivation\">Motivation</h1> <p>Team and Market are the most important ingredients for success.</p> <p>Which comes first is hotly debated, but experience (and industry consensus) says these two are the high-order bits. Great teams can <em>win</em> markets, and great teams can <em>create</em> markets. In either case, great teams tend to have great outcomes.</p> <p>A leader’s priority, therefore, should be obvious.</p> <p><strong>However</strong>… companies—<em>especially</em> high-growth startups—tend to under-index on tooling for building great teams.</p> <p>People Operations (née Human Resources) are considered a cost center and CHROs (fractional or full-time) are among the last members hired into the Executive Team. Interviewer training is often non-existent, and interviewers are inconsistent. Recruiting is informal and proximal. As such, team can find themselves hiring net-negative contributors—contributors who, once removed, <em>increase</em> team output. A fraction of that hidden expense, recast as upfront recruitment investment, pays for itself to improve hiring outcomes that extend to every new teammate from day zero.</p> <p>Much of what I’ve synthesized below is an amalgam of self-study, <strike>failure</strike> experience, big-corporate training, and deep collaboration with certified co-conspirators in People Operations functions… with a heavy application of continuous introspection (kaizen).</p> <p>This synthesis informs my <a href=\"/resources/interview-circuit/\">Hiring Playbook</a>, which receives continual updates as we learn more about what works best.</p> <h1 id=\"principles\">Principles</h1> <h2 id=\"industry-observations\">Industry Observations</h2> <p>As an employer, assertions based on experience and data:</p> <ol> <li>Diverse teams outperform index.</li> <li>High-trust teams outperform teams with objectively higher-skilled individuals that have less trust.</li> <li>Diverse, high-trust teams are more resilient (and not resistant) to change.</li> </ol> <p>And yet, legacy thinking hiring hews towards:</p> <blockquote> <p>“Do <strong><em>I like</em></strong> this individual?”<br> “Do they <strong><em>have the skills</em></strong>?”<br> “Can they handle <strong><em>the job</em></strong>?”</p> </blockquote> <p>over the more modern:</p> <blockquote> <p>“<strong><em>How</em></strong> will this person <strong><em>contribute</em></strong> to the team’s <strong><em>output</em></strong>?”</p> </blockquote> <p>Companies<sup><a href=\"https://www.zippia.com/advice/employee-referral-statistics/\">1</a></sup> prefer hiring referrals because it can greatly reduce time-to-hire metrics, even if referrals only marginally accept offers at a higher rate that non-referrals. While this advantages those with the existing networks/connects, it is often counterproductive towards increasingly-laggard DEIB goals and the long-term benefits of building resiliency.</p> <h2 id=\"candidate-observations\">Candidate Observations</h2> <p>Companies are also hostile towards job seekers. (I speak from experience.)</p> <p>I do not think it intentional, but reality is bleak: applications must be filled out repeatedly on error-prone web forms in which bespoke cover letters will go unread, and a swift rejection notice is an uncommon kindness against redoubtable silence.</p> <p>Should a candidate get a the opportunity to interview, the next steps are unclear, interviews redundant, and the timing unknown.</p> <p>Talent like challenges. But, the <em>best</em> talent have a far greater appetites traversing the boundaries of their expertise over remaining stoic throughout a protracted job search and interview process. While referrals and internal advocates can soften the pain associated with the job application process, some folks prefer to work with new people or explore new industries.</p> <p>Given all of the above, a leader’s approach, therefore, should be obvious.</p> <h2 id=\"core-dependencies\">Core Dependencies</h2> <p>Modern Hiring Processes rely on</p> <ol> <li>the adoption of Structured Interviews,</li> <li>the rejection of high-stakes assessments,</li> <li>real-world work product reviews,</li> <li>independent evaluation, and</li> <li>bidirectional understanding.</li> </ol> <p>While I will briefly introduce each concept now, see <a href=\"#references\">§ References</a> should you need more convincing or exposition. Or, <a href=\"/resources/interview-circuit/\">click here</a> to jump straight to the Playbook.</p> <h3 id=\"structured-interviews\">Structured Interviews</h3> <p>Structured Interviews improve hiring outcomes.</p> <p>Regimented, pre-scripted questions designed to measure specific traits, skills, and abilities will generate better data and evidence for fairly comparing candidates over unscripted, freewheeling interviews<sup>2</sup>.</p> <p>When organizations don’t employ structured interviews, candidates often find themselves answering the same questions during every single interview… which unless they’re applying to be a Big Box Store Greeter, is not fun nor useful for the candidate. Nor is it for the company, wasting its most valuable resource: productive employee attention and time.</p> <p>Creating a structured interview process requires the hiring manager to do more work up front than what they are probably used to. But, that’s their job and they should get over it. (I prefer managers to proactively build their teams rather than be reactive. Don’t you?)</p> <blockquote> <p>I was introduced to Structured Interviews in the late 2010s by then HR-startup <a href=\"https://greenhouse.com\">Greenhouse</a>. Greenhouse’s Applicant Tracking Systems (ATS) has become popular within technology organizations as it encourages and enables structured interview data capture and many modern, technology-driven conveniences and integrations.</p> <p>Despite quirks, I’m a huge fan and not alone: many CTOs go rogue from their corporate’s legacy ATS and also buy the not-inexpensive, not-always-intuitive Greenhouse for their own purposes.</p> </blockquote> <p>The Interview Circuit uses Structured Interviews extensively (but not exclusively).</p> <h3 id=\"high-stakes-assessments-are-not-good-assessments-for-performance\">High-Stakes Assessments are not Good Assessments for Performance</h3> <p>Companies want to understand real-world output in a real-world situations. Yet, many continue to rely on synthetic interactions (i.e. interviews) which alone are a poor predictor of job fit and performance.</p> <p>Instead, companies should evaluate a candidates’ actual work product and review how they’ve performed in real-world scenarios. (More on <a href=\"#evaluating-actual-work-product-is-best\">this</a> in a moment, but allow me a few words on why high-stakes assessments are deserving of my ire.)</p> <p>Most knowledge workers work in an open-book, un-observed, team-based environment where outcome is more important than output, value delivery cycles are long, feedback loops are short, pride of authorship is irrelevant, and few things are truly urgent. Interviews are (generally) closed-book, poker-faced, tightly-observed, single-player experiences in an unfamiliar environment where value creation must be demonstrated immediately.</p> <p>This is default behavior for company interviews and counterproductive. It follows the same logic as if a successful marriage could be predicted after a promising speed date.</p> <p>Unless the role calls for a high-degree of poise under pressure with limited information, high-stakes assessments do little to inform how job applicants perform might perform in normal scenarios. Corollary: those who perform well in high-stakes situations do not necessarily cope well with the day-to-day or doldrums and may manufacture drama to cope!</p> <p>Do the types of interviews that demonstrate how a candidate might perform in the day-to-day? Unless it’s an intense job, probably not. (Data suggests that I’m right.<sup>3</sup>) Will they be communicative? Responsive? Available? Clear? Considerate? Helpful? For most day-to-day knowledge work, these interviews will tell you nothing.</p> <blockquote> <p>Where high-stakes assessments do make sense are in jobs that require a degree of finesse in high-stakes, high-stress situations. Even so, it’s worth remembering that the existential threat of needing income from a job is a materially different stressor than the threat of doing wrong by your teammates. Be sure that you’re measuring the right thing during the interview!</p> </blockquote> <p>Important reminder for people managers and executives: a degree of handiness to handle the unexpected is often a marker of strong leadership experience. However, while it may be important in <em>their</em> roles, extending that requirement may be unnecessary.</p> <h3 id=\"evaluating-actual-work-product-is-best\">Evaluating Actual Work Product is Best</h3> <p>Instead of high-stakes assessments, assess work product: real work product.</p> <p>Many companies rely on take take-home tests and/or toy problems, asking candidates to do free throwaway assignments. Instead, companies could ask for work samples. For software developers, existing work product could be an API they’ve written for personal use, a medium.com post talking through a problem space they’ve explored, or really anything that demonstrates mastery and command of their core skillset.</p> <blockquote> <p>A quick note: if a candidate does not have anything shareable, it should <strong>not</strong> be treated as a red flag. Many companies maintain strict confidentiality agreements and it is an unreasonable expectation that people would produce the same type of work in their hobbies as they do in their jobs.</p> <p>I’ve seen hiring managers, particularly in the technology industry, view lack of out-of-work code as a lack of passion… this would be a mistake—not all software developers write production code just for fun!</p> </blockquote> <p>Where shareable work product does not exist, companies should consider paying candidates for their time to produce some.</p> <blockquote> <p>As a technical leader who heavily relies on automation, I have an ever-growing list of small projects that are additive, but not urgent, to improving my operation. These projects are usually outside of my existing teams’ priority rubrics and core systems, and it’s work that I’d happily pay for.</p> <p>For individual contributor roles in tech, examples include:</p> <ol> <li>internal tool creation and feature enhancement</li> <li>code fixes / refactors / improved test coverage</li> <li>functions-as-a-service</li> <li>open-source feature contributions that would be helpful to our dependency stack</li> </ol> <p>And so forth.</p> <p>I’ve done similar challenges for other roles, such as asking candidates to create a marketing campaign, test ad, or design identity. Even when we don’t use the work directly, it often helps guide us down the right path!</p> </blockquote> <p>For leadership roles, including people managers and prospective board members, companies will sometimes interview as a form of free consulting. It’s a dishonest practice, but it exists. I suggest restructuring synthetic assessments as trial periods to give all parties far more information about working with each other.</p> <p>Is paying candidates for work product expensive? Yes, of course it is. But, it is far cheaper than finding out a candidate isn’t going to work out <em>after</em> you hire them, not including the knock-on costs of restarting the recruiting process and wasted productivity. Plus, the work (if it is useful) is something that would eventually need to be done anyway. Heck, maybe the company and the candidate discover they’d prefer to engage on a contractual relationship rather than a full-time one.</p> <p>Hiring managers should ensure their interviews and assessments are congruent, not approximate or synthetic, to the role.</p> <h3 id=\"independent-evaluation\">Independent Evaluation</h3> <p>Each interview should be an entirely independent evaluation, both inside (and external to) the company. (We’ll get to external references <a href=\"#outside-the-company\">shortly</a>.)</p> <p>For inside evaluations, interviewers should enter interviews with:</p> <ol> <li>good context on the role,</li> <li>limited context on the candidate, and</li> <li>zero commentary from either the hiring manager or previous interviewers.</li> </ol> <p>A subtle eye-roll or an “oh, you’re going to like this gal” <em>will</em> unfairly color the experience for the next interview. Existing teammates tend to have high-trust and high-bandwidth communications, which is why it is <strong>imperative</strong> no one discuss candidates’ performance with each other until the hiring manager is at the hiring decision stage. (Colocated smaller teams where candidates are the obviously odd-person-out should pay extra mind to this.)</p> <blockquote> <p>ProTip™: If an interviewer cannot come to a decision whether or not the interviewee passed an interview, this is a fail… but not on the interviewee’s part. The interviewer should reach out to the hiring manager <em>immediately</em> to discuss why the interview was a fail and triage accordingly. If a Structured Interview cannot be counted on to generate an independent evaluation, doing it again simply wastes everyone’s time, money, and reputation.</p> <p>On that, most ATSs allow for candidate scoring 1 to 5, with 3 being “indifferent” or “don’t know”. An indifferent note is an <em>interview fail</em>, not a <em>candidate fail</em>. Interviewers should understand the importance of their evaluations and hiring managers should reinforce that.</p> </blockquote> <p><span id=\"outside-the-company\"></span> Hiring managers should also take evaluations from outside the company in the form of references. Not reference “checks”, but <em>references</em>.<sup>4</sup></p> <p>At the time of candidacy, previous employers and colleagues have far more real-world information about candidate than hiring managers will have even after the most rigorous of interviews. Work history interviews provides a rich database of real-world performance samples to draw from, with independent synthesis from a (usually) neutral third party. Insist on them.</p> <h3 id=\"bidirectional-understanding\">Bidirectional Understanding</h3> <p>Job interviews are as much about ensuring candidates understand what they’re getting themselves into as they are about the company learning about the candidate.</p> <p>When you hear phrases like, “we just need to get a body in here”, companies are apt to rush for fit. However, a new hire, particularly one who is a strong contributor, will leave in short order if expectations do not match reality. This is an expensive mistake.</p> <p>Companies can demonstrate their commitment to getting this right by providing as much information about the <em>specific</em> role and team as is feasible and appropriate early-on; ideally in the job description itself. This will not only generate higher-quality candidates, but it will attract ones can envision this opportunity as their next career stop. Following this, companies can keep candidates engaged by providing information about who they’ll be meeting with and why to give them the best chance at preparing for the interview and demonstrating the requisite skills.</p> <p>As a bonus, that detailed job description provides a blueprint for the eventual hire’s onboarding plan that meets expectations. Hiring managers might as well get that done up front.</p> <h2 id=\"what-a-modern-hiring-process-does-not-rely-on\">What a Modern Hiring Process does not rely on</h2> <p>A non-exclusive list of often-used pillars of legacy recruiting practices.</p> <h3 id=\"consensus\">Consensus</h3> <p>The hiring manager, often the team/people manager, is responsible for making the call. Not everyone will agree with every hiring decision, but all should commit to it having had the opportunity to provide feedback prior to offer.</p> <h3 id=\"likability-and-agreeability\">Likability and Agreeability</h3> <p>People are generally likable and agreeable, but that doesn’t mean the most likable/agreeable is the most desirable hire. Like most behaviors, both are a skillset—decide if how important it is in the role (e.g., customer-facing) and move on.</p> <p>Keep screening out assholes and Egos, though!</p> <h3 id=\"interview-performance\">Interview Performance</h3> <p>The best team members are not always the best interviewers in the same way that solid teammates are usually more focused on executing as a team than showboating as individuals. Those who interview well often have more practice than those who do not. Focus on the strengths of the candidate’s work, not the strength of the interview.</p> <p>Let competitors conflate these two.</p> <h3 id=\"pedigree-and-hobbies\">Pedigree and Hobbies</h3> <p>Brilliance is evenly distributed, opportunity is not. Life circumstances have outsized (and unfair) effects on career trajectory. Interviews and references will surface whether those effects were causal or merely correlative; do the work and you’ll find fantastic candidates that others will overlook.</p> <h3 id=\"strict-skill-and-experience-requirements\">Strict Skill and Experience Requirements</h3> <p>Many job requirements often aren’t. Companies will attract more qualified (and diversified) candidates when hard requirements are truly real, and where preferences are expressed as preferences.</p> <h3 id=\"software\">Software</h3> <p>Modern hiring processes can be greatly improved with software, but not all software enforces helpful processes.</p> <p>I’ve successfully implemented modern hiring with Lever, Greenhouse, RecruiterBox, Zoho People, and even Google Sheets. Vended software that enforces processes are nice-to-haves, not need-to-haves. (But you really ought to have it to enforce and train process.)</p> <h1 id=\"conclusion\">Conclusion</h1> <p>I was recently on a call with Greenhouse’s CEO and asked him for advice to counter the resistance from some peers and reports when trying to implement parts of my <a href=\"/resources/interview-circuit/\">Interview Circuit</a>, which relies heavily on up-front work from hiring managers. (Greenhouse has its own approach called “<a href=\"https://support.greenhouse.io/hc/en-us/articles/360007245452-Structured-hiring-Introduction\">Structured Hiring</a>”, which is compatible with my Playbook.)</p> <p>With permission, his response:</p> <blockquote> <p>Quick story for you – about 20 years ago when I first started getting involved in hiring, we had no structure at all - I had never heard of the concept.</p> <p>I was super confused about the conclusions we were reaching - managers would get in big arguments about a candidate with one swearing that this was the best person he’d ever met, and the other manager saying if we hired this person they would resign in protest. Yiikes! What to do?</p> <p>I realized I had no way to judge between these two competing claims because I had no idea what was going on in that interview room. So I decided to find out.</p> <p>I went downstairs to the lobby of our building, where there was a Radio Shack (told you this was a long time ago!) and bought a few portable tape recorders.</p> <p>I had my interview coordinator give a recorder to every interviewer as they went into an interview room, and collect it when they came out. On my commute home I would listen to the interviews.</p> <p>Oh. My. God.</p> <p>The questions people asked in those interviews – MY people! Smart, caring, thoughtful people! I could die. Silly questions. Impossible questions. Brain teasers. Repetitive questions. The repetitive questions! I sat there listening to a candidate get asked the same question for the 4th time, my head was ready to explode. And the candidate clearly thought our organization was a disorganized joke.</p> <p>So, maybe you can ask your skeptical hiring managers to record some interviews, listen to them, then ask “Do we think we could do these better?”.</p> <p>That’s my idea.</p> <p>— <br> Daniel Chait &lt;dhchait@greenhouse.io&gt; <br> CEO <br> Greenhouse</p> </blockquote> <p>The <em><a href=\"/resources/interview-circuit/\">Interview Circuit: A Modern Hiring Playbook</a></em> is the result of years of my “trying to do this better” with my companies and teams. I’m publishing it here—for free—as I think, as an industry, we can and should be doing better.</p> <p>Please steal and improve upon these ideas. (And write me when you do!)</p> <h1 id=\"references\">References</h1> <p>Inline notes:</p> <ol> <li> <a href=\"https://www.zippia.com/advice/employee-referral-statistics/\">Zippia: Employee Referral Statistics</a> - random site I found, but the numbers pass the sniff test. Was hoping for something more rigorous.</li> <li>Multiple points: <ul> <li>A meta-analysis of research on the validity of employment interviews found that structured interviews (where questions are standardized and based on job-related criteria) had a higher validity coefficient (0.51) than unstructured interviews (0.38) in predicting job performance. However, the validity of interviews varied depending on the job being assessed and the type of measure used to assess job performance. (McDaniel, Whetzel, Schmidt, &amp; Maurer, 1994)</li> <li>A study of selection methods used by the UK Civil Service found that job simulations had the highest predictive validity (0.37) in assessing job performance, followed by work sample tests (0.26) and assessment centres (0.21), while unstructured interviews had a validity coefficient of 0.14. (Harris, Schaubroeck, &amp; Van der Vliert, 1999)</li> <li>A study of selection methods used by the US Federal Government found that job knowledge tests and structured interviews were the most accurate predictors of job performance, with validities ranging from 0.41 to 0.54, while unstructured interviews had a validity coefficient of 0.14. (Schmidt, Oh, &amp; Shaffer, 2016)</li> </ul> </li> <li>High-stakes interviews don’t correlate with job performance <ul> <li>Schmidt, F. L., Oh, I. S., &amp; Shaffer, J. A. (2016). The validity and utility of selection methods in personnel psychology: Practical and theoretical implications of 100 years of research findings. Journal of Applied Psychology, 101(3), 469–500.</li> <li>Society for Human Resource Management. (2016). <a href=\"https://www.shrm.org/hr-today/trends-and-forecasting/research-and-surveys/Documents/SHRM%20Assessing%20Talent%20Report.pdf\">Assessing Talent: Past, Present and Future.</a> </li> </ul> </li> <li> <a href=\"https://amzn.to/3LDPgFP\">Who: The A Method for Hiring (Geoff Smart, Randy Street)</a> is a great reference for conducting references.</li> </ol> <p>Additional Background Material:</p> <ul> <li><a href=\"https://amzn.to/3LbBtos\">Dynamic Reteaming: The Art and Wisdom of Changing Teams 2nd Edition (Heidi Helfand)</a></li> <li><a href=\"https://www.indeed.com/career-advice/interviewing/structured-interviews\">Structured Interviews (Indeed)</a></li> <li><a href=\"https://cloud.google.com/architecture/devops/devops-culture-westrum-organizational-culture\">Westrum Organizational Culture (DORA)</a></li> <li><a href=\"https://amzn.to/4226odG\">Don’t Send A Resume (Jeffrey J. Fox)</a></li> </ul>",
    "url": "/d/2023/modern-hiring-processes-work/",
    "date": 1682467200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 3143
  },

  {
    "title": "Tacit Phone Time",
    
    "description": "Generally-accepted mores of society's smartphone addiction (and how I've responded to it)",
    
    "content": "<p>To illustrate this phenomenon, a scene:</p> <blockquote> <p><strong>Scene</strong></p> <p>Four smartphone-wielding friends meet for lunch at a café. <code class=\"language-plaintext highlighter-rouge\">Phone #2</code> lands on the table. The others’ phones remain holstered.</p> <p>Minutes pass before <code class=\"language-plaintext highlighter-rouge\">Phone #1</code> pulses through <code class=\"language-plaintext highlighter-rouge\">Do Not Disturb</code> mode in a purse. Its owner retrieves it. When it’s not her turn to speak, her eyes flit away to verify her thumbs’ clandestine efforts. She hopes this all goes unnoticed.</p> <p>Everyone notices.</p> <p>Permission implicitly granted, <code class=\"language-plaintext highlighter-rouge\">Phone #2</code>’s owner thumbs through their home screen’s recent deluge and makes no effort to hide their addiction.</p> <p><code class=\"language-plaintext highlighter-rouge\">Phone #1</code>’s owner fails to dispatch of her urgent matter. “Sorry,” she says, “I need a second to handle this.”</p> <p>This reminds <code class=\"language-plaintext highlighter-rouge\">Phone #4</code>’s owner that he forgot to hit send on that half-written, somewhat-timely text. He unpockets his phone and says nothing. (It will also only need a second.)</p> <p><code class=\"language-plaintext highlighter-rouge\">Phone #2</code>’s owner continues to scroll.</p> <p>Now sitting amongst a distracted trio, <code class=\"language-plaintext highlighter-rouge\">Phone #3</code>’s owner takes a moment to glance at her own notifications. “Oh, that’s disappointing,” she either thinks or says. (She is unsure.)</p> <p>Four friends now sit silently with their devices in their hands. Alone together, they pause to tend to the digital world’s demands.</p> <p>…</p> <p>An undeterminable amount of time passes. <code class=\"language-plaintext highlighter-rouge\">Phone #1</code>’s owner returns her phone to her purse. “Sorry, had to deal with something.” she says to no one in particular.</p> <p><code class=\"language-plaintext highlighter-rouge\">Phone #4</code>’s owner re-pockets his device. “No worries. As I were saying…”</p> <p>The owners of <code class=\"language-plaintext highlighter-rouge\">Phone #2</code> and <code class=\"language-plaintext highlighter-rouge\">Phone #3</code> return from cyberspace.</p> <p>No one acknowledges what just happened.</p> </blockquote> <p>In nearly every social setting where wireless services are available, I’ve seen a version of this scene play out. I suspect you (given that you’re the type of person who would be reading a post like this) have too.</p> <p>I call it <strong>Tacit Phone Time</strong> — or, simply, <strong>TPT</strong>.</p> <p><img src=\"/assets/img/d/tpt/cover.png\" alt=\"tacit phone time - 4 friends on their phones\"></p> <h1 id=\"frequently-asked-questions\">Frequently Asked Questions</h1> <h2 id=\"1-is-there-a-formal-definition\">1. Is there a formal definition?</h2> <p>Formalities demand fancy formatting. Witness:</p> <div style=\"padding: 0.5em 1em; background: rgba(0,0,0,0.08);\"> <span style=\"font-size: 1.3rem; font-weight: 600;\">Tacit Phone Time</span>  <span style=\"font-size: 1.15rem; font-weight: 300;\"><em>noun</em></span>  —  circa 2014 <br> <span style=\"font-size: 0.95rem;\"> an <em>unacknowledged, unannounced, unplanned</em> pause taken during an active conversation in which <em>all</em> participants temporarily redirect their focus onto their personal electronic devices instead of each other. <em>Abbreviations</em>: TPT, T.P.T. </span> </div> <p>If not <em>all</em> people within a group participate in TPT, it is still TPT if no one in the subgroup in acknowledged or actively engaged with the full group’s conversation. This is, of course, because this splinter group is a group unto itself.</p> <h2 id=\"2-should-i-care-about-this\">2. Should I care about this?</h2> <p>Maybe.</p> <p>I posit that TPT is so prevalent because smartphones are considered an appendage, albeit digital, to one’s personhood. It’d be odd to call someone out for scratching a physical itch; why wouldn’t that courtesy extend to a digital one?</p> <p>Hence, the “tacit” in TPT… it’s an unspoken, implicitly-understood social <a href=\"https://en.wikipedia.org/wiki/Mores\">mōs</a>. Almost everyone I know (myself included) has accidentally initiated TPT.</p> <p>This works similarly to yawning: when one person yawns, others tend to follow suit.</p> <h2 id=\"3-why-do-you-care\">3. Why do <em>you</em> care?</h2> <p>Our focus seems so brittle these days, I do worry about this effect in the aggregate.</p> <p>Years ago, an entrepreneur approached me about co-founding a business to help people have better relationships with their phones. “It’s <em>getting</em> to us,” he insisted. “The constant alerts, messages, notifications. You can’t turn it off. How do we make our phones work for us rather than the other way around?”</p> <p>I hadn’t really thought about it. But, after comparing my behaviors and attention span before and after BlackBerry (n.b., this dates me), I knew he was right. I spent the following weeks learning about how our minds have accommodated our new, omni-connected digital companions.</p> <p>Since then, companies have invested considerable dollars in building and marketing features in attempt to make these addictive little information boxes safer for human consumption. These efforts will only go so far as the return of our collective attention competes with technology companies’ revenues, and so it’s up to each one of us to make sure we have healthy relationships with our personal electronic devices.</p> <p>Social pressure helps, as does a fun call-out to technology’s siren songs. “TPT!” I say. We all laugh. We all become aware, and behavior tends to change.</p> <details> <summary><em>Epilogue to the aforementioned co-founding opportunity</em></summary> <p>I ultimately declined the opportunity as I didn’t think we could build a viable solution around BlackBerryOS, iOS, or Android without any of their buy-in. (Neither of us wanted to work for a FAANG, either.) Building a competing OS or <a href=\"https://source.android.com\">forking Android</a> without also launching our own hardware seemed to be a bridge too far for prospective investors, and asking customers to install a custom OS on their existing phones (voiding warrantees on expensive hardware) wouldn’t fly with the target demographic. If we did manage to succeed, it’d be trivial (and far superior) for those companies to bake it into their core feature set. (Which <a href=\"https://support.apple.com/en-us/HT212608\">they</a> <a href=\"https://blog.google/products/android/android-focus-mode/\">did</a>.)</p> <p>One company took the custom hardware / forked-Android path. They’re called <a href=\"https://www.thelightphone.com\">Light Phone</a> and once they hit my radar I invested immediately.</p> </details> <h2 id=\"4-how-does-one-stop-tpt-from-happening\">4. How does one stop TPT from happening?</h2> <p>In the words of <a href=\"https://en.wikipedia.org/wiki/G.I._Joe\">G.I. Joe</a>: “…knowing is half the battle”.</p> <p>In reading this page, you are now aware of TPT’s existence and can be the change you wish to see in the world.</p> <p>For my part, if I witness the beginning of a TPT chain reaction, I usually let it happen to see how long it takes everyone to return to the conversation. If I can resist the urge to reach for my phone and refuse to disengage from the conversation’s center of gravity, I can usually truncate TPT time <em>if not prevent it all together</em>.</p> <p>When I do participate in TPT, either willingly or absentmindedly, I’ve generally made it habit to introduce TPT as a concept when we’ve all returned to the conversation.</p> <p>People (generally) think it’s funny.</p> <p>Then they tend to notice it everywhere, too, because that guy was right: it <em>is</em> getting to us.</p>",
    "url": "/d/2023/tacit-phone-time/",
    "date": 1694822400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1050
  },

  {
    "title": "The Shrinking Ship of Theseus",
    
    "description": "New Organizational Structures in the AI Age",
    
    "content": "<p><em>The following is most certainly wrong; wrong, but hopefully useful. It is a strong opinion, weakly-held… albeit stronger by the day.</em></p> <hr> <h1 id=\"change-on-the-horizon\">Change on the Horizon</h1> <p>Future of Work pundits have waxed a-plenty on how AI accelerates automation’s affects on jobs.</p> <p>However, beyond the usual “flatter org charts!”, “gig economy!”, and “up-/re-skilled employees!” talking points, few address the grand implications of this impending tsunami:</p> <blockquote> <p><strong>Company topologies will change, change hard, and change fast.</strong></p> </blockquote> <p>While Artificial Intelligence (“AI”) presents sea change to the human condition, I’m going to limit my discussion to Generative AI (“GenAI”) as it has reached sufficiently wide distribution (100MM+ people). Meanwhile, artificial general intelligence (“AGI”) is either here a week from now or never, depending on who you ask. As for plain old AI, it has been here since the 1950s; but, not in forms that laymen would classify as AI.</p> <p>Before getting into why organizations need to change, four points on where we are today.</p> <h2 id=\"1-soaring-headcounts-swelling-egos\">1. Soaring Headcounts, Swelling Egos</h2> <p>Prior to the industrial revolution, companies were relatively small, often consisting of the owner(s), their family members, and perhaps a few apprentices or journeymen (m/f/d). Even “large” corporations had far fewer people working in them than they do today.</p> <p>However, large-scale industrialization and mass production demanded increasingly large teams with new people-management technologies (e.g., org structures, job titles, etc.) to create improved corporate efficiencies and <a href=\"https://www.youtube.com/watch?v=GyV_UG60dD4\">exceptional synergies</a>.</p> <blockquote> <p>Fun fact: while corporations date back centuries, <a href=\"https://books.google.com/ngrams/graph?content=job+description%2C%28chief+executive+officer+%2B+ceo%29%2Cyeoman%2Csailor&amp;year_start=1700&amp;year_end=2019&amp;corpus=en-2019&amp;smoothing=3\">job descriptions</a> are only about a century old. NPR’s <a href=\"https://www.npr.org/transcripts/372737544\">Planet Money</a> places the first (modern) recorded job title in a 1915 DuPont Corporation ledger.</p> </blockquote> <p>On a human-history scale, this is a new thing. Enter: corporate culture.</p> <p>When confronted with these pseudo-social structures, our multi-millennia-old brain hardware created pseudo-social work personas to cope. <a href=\"https://en.wikipedia.org/wiki/Dunbar%27s_number\">Dunbar’s number</a> suggests that people can only form so many meaningful relationships; with modern corporations routinely exceeding 100-250 individuals each rocking eons-old grey matter that doesn’t meaningfully scale, should this behavior be surprising?</p> <p>And, more importantly, is it preferable?</p> <p>I think not: given the option, most people tend to prefer on smaller teams over larger ones, and like to work out roles and responsibilities amongst themselves rather than have fixed job titles set by People Operations or Management.</p> <h2 id=\"2-declining-facility-roi\">2. Declining Facility ROI</h2> <p>In the wake of the COVID-19 pandemic, distributed and hybrid work challenged centuries-old operating models, especially in companies that perform knowledge work.</p> <p>While return-to-the-office is unavoidable for some (e.g., baseball teams), organizations that deal less in atoms and more in information and information services are finding it incrementally more costly to physically consolidate employees compared to their peers, say nothing about the costs bourn by employees in commutes and compensating for rigid scheduling.</p> <p>Necessary for baseball teams—maybe not for support desks.</p> <!-- aside: getting the team together is super-important --> <h2 id=\"3-emphases-on-cognitive-overhead\">3. Emphases on Cognitive Overhead</h2> <p>The folks behind <a href=\"https://amzn.to/49QGqyx\">Team Topologies</a> have a great way of articulating how teams should be organized against the total available remit: organize work by cognitive load.</p> <p>If form follows function (and it does if you paid any attention in <code class=\"language-plaintext highlighter-rouge\">Biology 101</code>), quantifying the cognitive load required to own a function should determine the size, structure, composition, and relationship of its teams and what its groups of teams ought to be. As the human brain has limited reserves of time, attention, and willpower, there are hard limits to what an individual can do. Companies should embrace this reality and ignore it at their peril.</p> <blockquote> <p>A note on active cognitive ability by way of analogy: “Use it or lose it.”</p> <p>With rare exception, polyglots who speak more than 3 languages often find that lesser-used languages/dialects tend to recess into the mind unless used actively. Those languages can be reactivated quickly (within a week or few), but often at the cost of proficiency in another non-native language.</p> <p>I find this limitation to be true for most skills: you can only keep so many of them in active, working memory. Similarly, people can only keep so many skills in peak condition at any one time.</p> </blockquote> <p>Organizing knowledge work around the brain’s limitations, capabilities, and interests seems like a sane, winning plan.</p> <h2 id=\"4-im-the-captain-now\">4. I’m The Captain Now</h2> <p>High-performers generally seek agency in and ownership of their work. Management’s challenge here is more burnout prevention/disengagement and less about serial underperformance. Tuning ownership and responsibilities for talent needs to be choreographed against all their neighboring, also high-performing colleagues who also often take on additional responsibility—whether they were asked to or not.</p> <p>This is complicated and delicate.</p> <p>Management responsible for handling <code class=\"language-plaintext highlighter-rouge\">All The Things</code> not only need divvy out the cartesian expansion of <code class=\"language-plaintext highlighter-rouge\">People × Work</code>, but also need keep everyone abreast of changes about and between it all <em>while also</em> declaring who-owns-what and the commensurate leadership structures.</p> <ol> <li>The more delineations, the greater the chance of turf wars.</li> <li>The larger the teams, the more expensive the communications, and the more guardrails around zones of responsibility.</li> <li>Both of these complexities (politics and communications) compete with mindshare (and hours) required for work.</li> </ol> <p>Ceteris par., a collection of smaller teams will outperform a larger one.</p> <p><img src=\"/assets/img/d/theseus/cover-big.png\" alt=\"watercolor of the shrinking ship of theseus with an übergeneralist at the helm\"></p> <h1 id=\"enter-generative-ai\">Enter Generative AI</h1> <p>Machines will always (eventually) outperform our natural abilities. Just ask <a href=\"https://en.wikipedia.org/wiki/John_Henry_(folklore)\">John Henry</a>.</p> <p>What makes Generative AI (henceforth GenAI) <strong>transformative</strong> is both the <em>range</em> and <em>depth</em> expansion of an individual’s ability to perform work—<em>especially</em> information work. With regular use, it enables inorganic cognitive expansion within those who can wield it.</p> <p>…and not everybody will.</p> <blockquote> <p>A quick note before moving on: this post would be tagged <code class=\"language-plaintext highlighter-rouge\">#futureofwork</code> if I bothered to “tag” content on this Web 1.0 site. But, GenAI (and AI, generally) will have profound knock-on effects… eventually. We’ll put aside The Singularity, Universal Basic Income (UBI), Nanotechnology, Our Evil Robotic Overlords, and other neighboring topics for this discussion for me (or my digital eidolon) to revisit at a later date.</p> </blockquote> <h2 id=\"the-rise-of-the-übergeneralist\">The Rise of the Übergeneralist</h2> <p>GenAI’s magic trick is two-fold:</p> <ol> <li>It can make hard things easier to understand, and</li> <li>It can create things that were previously hard to do without specialization and/or time.</li> </ol> <p>This one-two punch empowers GenAI-enabled design thinkers to achieve a “good enough” outcome through extremely fast feedback loops. The <code class=\"language-plaintext highlighter-rouge\">ideate ➔ execute ➔ critique ➔ repeat</code> cycle accelerates significantly as the process now requires less specialization, and therefore less collaboration.</p> <!-- Having people in the same room has a similar effect, is why some folks prefer to work in-office. But the comms overhead is still there. --> <p>Through consistent practice and learning to confidently discern whether generative work is accurate and precise (or merely an exceptionally convincing hallucination), frequent GenAI users become übergeneralists.</p> <p>They will know what good looks like because of their breadth of experience. Their value will be in their ability to edit and curate.</p> <p>And they become super valuable.</p> <h3 id=\"specialists-with-generalist-tendencies\">Specialists with Generalist Tendencies</h3> <p>Consider a Public Relations Principal whose job includes:</p> <ol> <li>Developing<sup>*</sup> and implementing<sup>*</sup> PR strategies.</li> <li>Cultivating media relationships.</li> <li>Creating<sup>****</sup> compelling written content.</li> <li>Managing<sup>**</sup> crisis situations effectively.</li> <li>Engaging<sup>*</sup> with key stakeholders.</li> <li>Maintaining<sup>**</sup> brand consistency.</li> <li>Planning<sup>**</sup> and coordinating<sup>*</sup> PR events.</li> <li>Measuring<sup>***</sup> and reporting<sup>***</sup> on PR metrics.</li> <li>Leading and mentoring PR team.</li> </ol> <details> <summary><em>See the ChatGPT3.5 <a href=\"https://chat.openai.com/share/fe739379-60ce-483f-a028-2e189c2af8f0\">prompts</a> that generated the above list.</em></summary> <ul> <li>“create a job description for a PR principle” (ed: note that I misspelled principal)</li> <li>“please take the responsibilities and make them into short, bullet points. each starting with a verb”</li> <li>“now make these gerunds”</li> </ul> </details> <p>The asterisks (<sup>*</sup>) indicate the parts of their job, and just how much, cheaply-available, consumer-grade GenAI can amplify their work <em>today</em> in place of leaning on a larger team for execution.</p> <p>Is the list perfect? No… but it is “good enough”.</p> <p>Though I have worked with PR teams in the past and know what they do, there’s non-trivial cognitive strain for <em>me</em> to write it on-the-fly. Should I rack my brain for 10 minutes for this non-critical activity? Should I hire a ghostwriter? Or, should I use a chatbot to whip something serviceable up in half-a-minute and use my reclaimed nine-and-a-half minutes to make this paragraph more compelling?</p> <p>Obviously I chose the latter—it would be difficult to convince me otherwise.</p> <h2 id=\"the-fall-of-mediocrity\">The Fall of Mediocrity</h2> <p>I’m reminded of a scene from <strong><a href=\"https://www.imdb.com/title/tt0094737/\">Big (1988)</a></strong> in which Tom Hanks is a bit more suited to data entry than his colleague Jon Lovitz. Witness his immediate reaction.</p> <style>.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }</style> <div class=\"embed-container\"> <iframe title=\"YouTube video player\" width=\"640\" height=\"390\" src=\"//www.youtube.com/embed/LRlmkXsoGx0\" frameborder=\"0\" allowfullscreen=\"\"></iframe> </div> <p>“Listen, what are you trying to do, get us all fired? … Gotta slow down. Pace yourself. Slowly. Slowly.”</p> <p>Übergeneralists may face difficulties when collaborating with individuals who cannot match their versatility and speed. The reverse is equally true. Unless those individuals possess exceptional talents or specialization beyond what GenAI can provide, their work contributions will soon be turned into an automated system, GenAI or otherwise, rendering their continued employment redundant.</p> <p>If we step back into the shoes of our Public Relations Principal, would she opt to maintain the larger team size she needed before the advent of GenAI? Would she attempt to mediate harmony between her übergeneralists and those who resist its adoption?</p> <p>Would she consider what her work life might look like if she went solo?</p> <p>Do her clients need her in the same way they once did?</p> <h2 id=\"team-shrinkage\">Team Shrinkage</h2> <p>Thinking back to team topologies: with GenAI, if each team member has an order of magnitude additional cognitive capacity, and if cognitive limitations determine team capabilities and therefore structure, are today’s organizational structures best suited for maximal return on investment (ROI)?</p> <p>Crudely, managers are evaluated by:</p> <ol> <li>the net output of their team(s), <em>and</em> </li> <li>the net output of teams adjacent to their team(s).</li> </ol> <p>Salary load is often the largest expense in producing knowledge work. Good managers will almost always opt for fewer people when optimizing for net output when communications overhead is factored in.</p> <p>With GenAI, fewer people can create equivalent—if not more—output.</p> <h2 id=\"hiring-impact\">Hiring Impact</h2> <p>Recently I was speaking with some technology leaders under <a href=\"https://en.wikipedia.org/wiki/Chatham_House_rule\">Chatham House Rule</a> about how our hiring practices have recently shifted for PDE (product, design, engineering) teams.</p> <p>Many of us noted that as recently as a year ago, it was prudent to over-index on engineering recruitment because without engineers, it’s difficult to test, build, and iterate on a product. Today, with GenAI, design and product contributors can do so much more on their own that over-indexing on engineer hiring is no longer necessary.</p> <blockquote> <p>Not to say that engineers are unnecessary: GenAI has already shown it can greatly expand an engineer’s total output while also making their work more legible to the rest of the team.</p> </blockquote> <p>While managers should always be tinkering with their hiring playbooks and methods, GenAI is already shaking things up.</p> <h2 id=\"company-impact\">Company Impact</h2> <p>Executive leadership has always had a wide aperture on the business, often delegating execution of strategy to their lieutenants. But, as the aperture widens downstream, there’s going to be increasing demands on holistic, systems-level thinkers.</p> <p>These übergeneralists might have a specialty or few that gives them an edge within their functions (and for why they were selected for their roles), but their ability to flex into lesser-used skills and use GenAI to manage the less-critical parts of their functions into “good enough” states will enable greater speed at for fewer costs, and therefore excellent contributors to new, GenAI-enabled corporate topologies.</p> <p>They won’t need large teams. They won’t <em>want</em> large teams.</p> <p>Organizations, like they always do, will reorganize themselves <a href=\"https://amzn.to/48B1APt\">around that which creates outsized value</a>.</p> <p>For companies whose primary value drivers include data, information, and knowledge work, the changes will be the most profound.</p> <p>For information systems and commodities, it’s forever a race to zero. Those who can do it more cheaply and more quickly while maintaining their USP (unique selling proposition) will out-earn their competitors.</p> <p>Over the last twenty years, the companies who embarked on digital transformation tended to win. Likewise, tomorrow’s winners will be the ones who transform again when they embrace the tools that allow for outsized cognitive expansion within their employee base. This almost certainly means that winning companies will be the ones with a smaller headcount.</p> <p>Or an unencumbered upstart, armed with AI, will eat their lunch.</p> <h2 id=\"back-to-being-human\">Back to Being Human</h2> <p>Merriam-Webster dubbed ‘authenticity’ as the word of the year for 2023. I see it as reflective of us seeking genuine human connection in a digitally saturated age.</p> <p>In our working lives, smaller teams mirror the intimate gatherings preferred by our millennia-old hardware. Companies that can bring back the campfire and ditch the corporate-speak will find their high-performers thriving in a Dunbar-satisfying local maxima.</p> <p>As consumers, commodities will be cheaper, which means marginally more ethical commodities will be more affordable. Our purchasing behaviors will value novelty, uniqueness, and specific items because we’ll have both the mental bandwidth to delve deeper into them and greater disposable capital to support our unique interests.</p> <p>Mass customization and creator economies aren’t going away. If anything, they will expand. Companies will need to meet us where we are.</p> <h1 id=\"final-thoughts-as-of-late-2023\">Final Thoughts (as of late 2023)</h1> <p>While scientists have been working on Artificial Intelligence for decades, we’re new seeing the beginnings of the technology cross the chasm between the mavens and the mainstream. The availability and engagement of übergeneralists will reshape corporate structures, headcounts, and what’s possible for companies to do. And, as a society we’ll get more for less.</p> <p>But it’s still early days.</p> <p>The GenAI models available today represent step-function leap, but my hunch is that we’ll be here for a few years enjoying incremental improvements before the next major breakthrough in AI research appears. (Ultimately, all of these models are fancy applied statistics and expansive machine learning techniques that create the <em>representation</em> of human intelligence, but not one that a layman would consider “actual” intelligence after a little interrogation.) I think we have a few more step-functions to go before (and if) a true AGI shows up (consciousness optional) that would fool the layman every time.</p> <p>Until then, <strong>currently available GenAI is sufficiently powerful enough to disrupt the last century’s worth of corporate structures</strong> in favor of something (and ironically) smaller and more human. What once were corporations that prioritized growth above all else will find existence more profitable and defensible at new local maxima.</p> <p>Company topologies will change, change hard, and change fast.</p> <hr> <h1 id=\"message-in-a-bottle\">Message in a bottle…</h1> <p>I’m optimistic about what this technology enables and what that means about humanity’s future.</p> <p>However, the above discussion does not touch on the ethics and risks associated with widely available GenAI, AI, AGI, and the rest of it all… and I’m not going to event attempt to do it justice in a footnote.</p> <p>What gives me comfort is that despite the challenges—and they will be significant—there is a temporal gap between today and when we’ll be confronting real, existential challenges associated with AI. We have ample time to improve our laws, governance, and collective understanding.</p> <p>While we won’t be entirely ready, we’ll be ready-enough. In many ways, we humans are far more adaptable than we give ourselves credit for… but usually only after we’re pushed.</p> <p>In the meantime, I’m far more worried about climate change.</p>",
    "url": "/d/2023/shrinking-ship-of-theseus/",
    "date": 1701129600,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 2596
  },

  {
    "title": "Situational Awareness (Selected Annotations)",
    
    "content": "<p>The following are my selected annotations from Leopold Aschenbrenner’s <a href=\"http://situational-awareness.ai\">Situational Awareness</a>, a 165-page paper that, in ChatGPT-4’s <a href=\"https://chatgpt.com/share/51f98802-c043-4494-ae4d-b0fcee60d033\">own words</a>:</p> <blockquote> <p>…argues that the rapid advancement and scaling of artificial general intelligence (AGI) will lead to superintelligence within the next decade. This progression will involve massive investments in computational infrastructure and significant national security implications. The author highlights the urgency of addressing AI security and alignment challenges, and the geopolitical race, particularly against China, in the development and control of superintelligent AI systems.</p> </blockquote> <p>In seconds, GenAI produced an awesome, neutral summary of a document that took me a handful of hours to read.</p> <p>After my own read, hoo-boy, do I have some thoughts.</p> <p><img src=\"/assets/img/d/situational-awareness/threequarter.webp\" alt=\"Image prompt: The subject is an artificial general intelligence, struck in the balance of good and evil, while being supplied by the world's best minds and a stupid amount of energy. With this prompt, DALL-E produced a human head.\"></p> <p>Before I get into those, here are some stated biases and thoughts:</p> <ol> <li>I love the accelerating capability for what computers can do to make magic out of drudgery. We should continue investing heavily in this.</li> <li>I pay for, and use, Anthropic’s Claude and OpenAI’s ChatGPT daily. (Claude lives on my phone’s home screen.) They are <em>affordable</em>, <em>dispensable</em>, and immensely helpful at reducing cognitive load. It’s like being able to complete Saturday crosswords using Monday-level clues.</li> <li>Artificial Intelligence is an overloaded term. As I argued in a paper in late 2004 (yes, almost twenty years ago), the typical thermostat is artificially intelligent in that it has expert-level aptitude in a very specific task that humans are very bad at. We value our own intelligence as <em>the</em> barometer for intelligence. AI has no cares.</li> <li>Humans over-index their risk calculations based on what’s top-of-mind rather than systematic or data-driven risks. (e.g., Vending machines kill more people than sharks do.)</li> <li>I take a Bayesian approach when fortune-telling and decision making. That is, I try to account for both probabilities and risks of the high-order bits and act accordingly.</li> </ol> <p>The page numbers below refer to the exported PDF from <a href=\"http://situational-awareness.ai\">Situational Awareness</a> as of this dispatch’s published date. My copy, along with my handwritten notes, can be found <a href=\"/assets/pdfs/situationalawareness-mg-anno.pdf\">here</a>.</p> <p>If you want to get to my final thoughts, feel free to <a href=\"#final-thoughts\">skip ahead</a>.</p> <hr> <h2 id=\"page-1-you-can-see-the-future-first-in-san-francisco\">Page 1: “You can see the future first in San Francisco”</h2> <p>Firstly, as a New Yorker, I am obliged take issue. Secondly, the future is in science fiction.</p> <p>Some book recommendations from 20+ years ago:</p> <ol> <li>“I, Robot” by Isaac Asimov (1950)</li> <li>“The Moon is a Harsh Mistress” by Robert A. Heinlein (1966)</li> <li>“Do Androids Dream of Electric Sheep?” by Philip K. Dick (1968)</li> <li>“Neuromancer” by William Gibson (1984)</li> <li>“Snow Crash” by Neal Stephenson (1992)</li> <li>“Accelerando” by Charles Stross (2005) - Highly recommend</li> </ol> <p>Relevant movies from 10+ years ago:</p> <ol> <li>“2001: A Space Odyssey”, directed by Stanley Kubrick (1968)</li> <li>“Blade Runner”, directed by Ridley Scott (1982)</li> <li>“WarGames”, directed by John Badham (1983)</li> <li>“Ghost in the Shell”, directed by Mamoru Oshii (1995) - Highly recommend</li> <li>“The Matrix”, directed by The Wachowskis (1999)</li> <li>“A.I. Artificial Intelligence”, directed by Steven Spielberg (2001)</li> <li>“I, Robot”, directed by Alex Proyas (2004)</li> <li>“Wall-E”, directed by Andrew Stanton (2008)</li> <li>“Her”, directed by Spike Jonze (2013)</li> </ol> <p>I think the near future is far more boring, and far less human-centric and fanciful than our storytellers have dreamt up. Or, it’s the stories that they can tell that are also commercially viable: note that every plot, except for Wall-E, is from the human’s point of view.</p> <p>Situational Awareness takes a step further to consider the alien-feeling nature of future superintelligences, what those mean, and how humans might use it; but, still, there’s an underlying assumption of self-directed, non-human agency within.</p> <h2 id=\"page-7-what-does-it-want\">Page 7: What does it want?</h2> <p>Aschenbrenner opens with a quote from one of OpenAI’s co-founders:</p> <blockquote> <p>“Look. The models, they just want to learn. You have to understand this. The models, they just want to learn.”<br> — Ilya Sutskever</p> </blockquote> <p>These computer models, like all models, are wrong but useful. Models produce answers, but they don’t <em>want</em> anything beyond whatever goal-seeking function is programmed into them.</p> <p>We are a solipsistic species and tend to project and/or anthropomorphize that which we don’t understand. Evolution has us wired for storytelling and its imprecise metaphors to communicate and compress knowledge. As a product of the information age, we use natural language to communicate ideas to each other. (n.b. I am telepathically communicating the thoughts in my head into your own as you read this sentence.)</p> <p>To suggest these intelligences are for want of anything speaks more to our biases than a computer’s. For all we know, they just “want” to be turned off.</p> <h2 id=\"page-14-the-wrong-benchmarks\">Page 14: The wrong benchmarks</h2> <p>Aptitude tests are often conflated with intelligence markers. With expensive tutors, sufficient time, and plenty of personal context, almost everyone can learn how to ace them.</p> <p>Douglas Adams got it right in that we humans are so concerned about the answers that we often forget the wisdom of questions.</p> <p>On page 17, the author writes, “If there’s one thing we’ve learned from the past decade of AI, it’s that you should never bet against deep learning.”</p> <p>And if I’ve learned one thing from Star Wars, it’s that only the Sith deal in absolutes.</p> <blockquote> <p>I now run things I publish through LLMs as a sanity check. ChatGPT-4o had this to say about the previous sentence.</p> <p><em>Note: The Star Wars reference could be seen as flippant or dismissive. Consider rephrasing to make your point without relying on a pop culture reference that might not be universally understood or appreciated.</em></p> <p>Clearly it doesn’t understand my readership and my willingness to come off a flippant or dismissive. Or maybe it was insulted? Either way, I’m leaving it in.</p> </blockquote> <p>I agree we’re chasing the wrong benchmarks. But what gets measured gets managed. Maybe we should move away from aptitude tests as our main metric for progress.</p> <h2 id=\"page-22-algorithmic-efficiencies\">Page 22: Algorithmic efficiencies</h2> <p>Billions of dollars are going towards computation and powering computation, and our algorithms are crude.</p> <p>I’d argue that algorithmic progress is <em>more</em> important than our spending on raw compute. There’s only so much fuel we can afford to burn and renew as it is.</p> <p>I haven’t done the math on this, but I’d venture to guess that if you were to extract the parts of the human brain that store and process information (the “active thinking” bits) from the smartest humans in the world and snowballed them around a powered ethernet cable, our natural neural networks would algorithmically outperform today’s generative AI’s calorie requirements. Possibly for a while.</p> <h2 id=\"page-32-unhobbling\">Page 32: Unhobbling</h2> <p>Unhobbling, for me, is the big unlock. Bonus points for word choice.</p> <p>While the author over-indexes on trendlines-as-proof, the trendlines <em>could</em> continue if we can add new algorithms and techniques to our repertoire with proper guidance systems on how to engage with these multi-modal models. LLMs and neural nets probably aren’t going to get us there alone. It is unclear if we will find them, even aided with our current technologies.</p> <h2 id=\"page-41-agi-in-the-next-four-years\">Page 41: AGI in the Next Four Years</h2> <p>No, I don’t think we’re going to have AGI by 2027; nor do I think we can automate all cognitive jobs without <em>a lot</em> more unhobbling with increasingly diminishing returns. Perhaps, a step-function change in our understanding of how to <em>build</em> and <em>design</em> intelligent machines will come. I’m willing to bet that innovation will still be human-derived rather than from an LLM.</p> <p>I do think we’re going to have expert systems and models that are very, very good at aiding in the knowledge organization and discovery for <em>actual</em> experts. (These are sometimes called ANIs: Artificial Narrow Intelligences.) That the author couches his assertions in the following paragraphs says to me that he’s not fully convinced, either.</p> <p>100 million chess Grand Masters are not necessarily going to be able to come up with strategies that are 10x more effective when playing the best chess master of them all.</p> <h2 id=\"page-64-humans-are-smarter\">Page 64: Humans are smarter</h2> <p>Are we? Perhaps in the ways that we, as humans, value. I’m not sure we’re any happier or more content than other animals. Maybe we don’t—or can’t—understand the wisdom in stoicism exhibited in our animal kingdom neighbors. We follow our curiosities to learn. Sometimes we get in trouble. We want to learn. That’s what our brains love to do.</p> <p>Is this always also the smartest thing to do?</p> <h2 id=\"page-70-overthrowing-the-government\">Page 70: Overthrowing the government</h2> <p>The author suggests that those with superintelligence could seize control over governments and, therefore, its constituencies. Meanwhile, the biggest threat to American democracy seems to be from Americans themselves.</p> <p>Self-owns are a cool human trick. Not sure a superintelligence will beat us there.</p> <h2 id=\"page-76-the-trillion-dollar-cluster\">Page 76: The trillion-dollar cluster</h2> <p>One of the largest critiques I have is the headlong rush towards building a supercomputer <em>because we must at all due expense</em>, in which we, as Americans, should tolerate burning arbitrary carbon for energy just to beat everyone else there… without knowing if there’s a <em>there</em> there beyond pointing to an arbitrary point on a trendline.</p> <p>By all means, do the math. But, the idea that we should burn-everything-in-pursuit-of-compute is a greater existential threat than whatever short-term gains will be made with a misaligned superintelligence.</p> <p>I would rather not burn our planet to chase a dragon.</p> <h2 id=\"page-87-the-clusters-of-democracy\">Page 87: The Clusters of Democracy</h2> <p>I’ve played enough Helldivers II to know “AGI at all costs” is bad policy: unchecked capitalism is a greater threat to humanity than AGI. Governments exist to protect their citizens, and if you look at the quality of life and longevity in “red states” versus “blue states”, it strongly correlates with where most AI researchers choose to live.</p> <p>I wonder why that is.</p> <h2 id=\"page-100-tragedy-of-the-commons\">Page 100: Tragedy of the commons</h2> <p>The author is willing to concede that 10% friction towards superintelligence is appropriate for managing information security risks, but not 10% for sustainability goals.</p> <p>Would you mind if we put it to a vote first?</p> <h2 id=\"page-103-its-madness-were-not-protecting-ourselves\">Page 103: It’s madness (we’re not protecting ourselves)</h2> <p>Or, it’s not real; or, it doesn’t matter yet.</p> <h2 id=\"page-113-alien-superintelligence\">Page 113: Alien superintelligence</h2> <p>The argument that we should force these ever-advancing models into natural English overestimates our ability to understand what they’re saying and, if the author’s claims that the models are trying to subvert the world order, underestimates how good “the evil genius inside” is at scheming against us.</p> <blockquote> <p>No spoilers, but there are some great examples in the <a href=\"https://amzn.to/3zrteST\">Three Body Problem</a> about how we sometimes fail to understand each other, even if we’re speaking in a common tongue.</p> <p>Also, <a href=\"https://en.wikipedia.org/wiki/Steganography\">steganography</a> is a thing and all popular LLMs will happily explain how it works—with examples!</p> </blockquote> <p>Moreover, it doesn’t necessarily follow that the models themselves, even if imbued with consciousness, can understand their inner workings.</p> <p>No human today can design anything remotely as elegant as what two differently-sexed people can do naturally and unthinkingly.</p> <p>Does our design architecture have natural limits? Will evolutionary algorithms continue to hit local maxima for the next 10 years while we find a breakthrough in artificial cognition?</p> <p>Humans can read DNA strands just fine—but we can’t explain their dynamics. Are we okay with the ethics in blind experimentation? How should we treat similar problems in developing an AGI that could, say, <em>feel pain</em>? Would AGIs resent us for the pain caused, or is that too much of a human idea?</p> <p>We know that if a farmer cuts a sheep badly while shearing its fleece, the sheep knows of its injury, but it doesn’t have any emotional resentment nor care. It carries on with life.</p> <p>Even if we imbue an AGI with feelings and emotions to be more compatible with our own humanity, are our systems of ethics (artificially coded) even compatible, at all? We don’t have any qualms about quitting programs or turning off computers today. Will we tomorrow?</p> <p>As the author suggests on page 120, legibility on intent is criminally underrated. I believe this is true for our own intelligence as well as a machine’s.</p> <h2 id=\"page-143-governments-role\">Page 143: Government’s Role</h2> <p>The author, rightly so, says we need government to step in. And, rightly alluded to, having no government is worse than having a bad administration. He is right in that government is the only power that, presently, can move mountains when needed. This is why it’s important to have administrations that will push back on exploding mountains for cheap coal and, instead, move mountains to create enormous water and power reserves while maintaining the land’s natural wonder… especially if the author insists that the US go “red state” and generate power to compete with China’s raw output.</p> <h2 id=\"page-158-why-not-europe\">Page 158: Why Not Europe?</h2> <p>As an American, I am far more impressed with the EU’s human rights and privacy efforts than I am in my home country. Moreover, Europeans have made generational investments in renewable power, and in future energy technology (e.g., fusion reactors).</p> <p>If two years are a huge difference (as the author says on page 138), why aren’t we getting a head start on this with our energy partners <em>today</em>?</p> <p><img src=\"/assets/img/d/situational-awareness/profile.webp\" alt=\"profile of a humanoid ai as envisioned by DALL-E\" style=\"transform: scaleX(-1)\"></p> <h1 id=\"final-thoughts\">Final Thoughts</h1> <p>In short, I counter-argue:</p> <ul> <li>Anthropomorphizing AI models and ascribing wants, desires, or nefarious intentions are human projections rather than intrinsic properties of our current models, say nothing about future models.</li> <li>The environmental damages pursuing ever-increasing computing power in the name of AGI are likely of greater risk to the survival of our species than whatever solution an AGI might be able to come up with, even if we can both interpret and execute its commands. (<a href=\"https://en.wikipedia.org/wiki/HAL_9000\">HAL 9000</a> had some effective ideas on how to solve for mission longevity, too.)</li> <li>We should be working with international partners, especially in Europe, as a preferable strategy than a solo-burn foot race. The EU has far greater controls on ensuring democracy and its people survive the age of data and ramped reliance on information systems, AI included. Together, the US and the EU (and the UK, Taiwan, and stable democracies) have a far better chance to fend off a Chinese AI moonshot than we do separately.</li> </ul> <p>I very much appreciate the publication of this paper in that it has been wonderful for sparking dialogue across my networks and collaborators. The author, Leopold Aschenbrenner, is credible on the current state of generative AI and the explicit and implicit goals and aspirations of many of those working on the state of the art. I am appreciative of his efforts in publishing his observations and thoughts. I am curious how much genAI he used in its authorship.</p> <p>Where I differ is where I think we should go from here, and where we should be placing our worry and efforts.</p> <p>“Situational Awareness: The Decade Ahead” reads as alarmist. I am cautiously optimistic.</p> <p>I suspect the truth is somewhere in-between.</p>",
    "url": "/d/2024/situational-annotations/",
    "date": 1717459200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 2509
  },

  {
    "title": "Instagram, meet Screen Time",
    
    "content": "<p>Last fall I installed a widget on my iPhone’s home screen that shows me which apps I’ve used and for how long.</p> <p>I expected a ho-hum graph. Instead, horror:</p> <ul> <li>~30 minutes of Safari</li> <li>~25 minutes of Messages (E-mail, SMS, iMessage, Signal, etc.)</li> <li>~20 minutes of Games (Crossword, Wordle, Chess.com, etc.)</li> <li>~15 minutes of News (Reddit, BlueSky, NYT, etc.)</li> <li>~10 minutes of others</li> </ul> <p>…and ~90+ (ninety!) minutes of Instagram.</p> <p>Daily.</p> <p><img src=\"/assets/img/d/instagram/phonehands.webp\" alt=\"disembodied hands on a disembodied phone\"></p> <h2 id=\"lets-talk-about-instagram\">Let’s talk about Instagram</h2> <p>I loved Instagram. Love<u>d</u>.</p> <p>At launch, it was a one-dimensional stroll of what my friends were up to—it was like early Twitter, except with photos packaged in skeuomorphic quaintness.</p> <p>Totally free. No ads. No algorithm. Felt personal.</p> <p>It was great.</p> <h2 id=\"but-then\">But then…</h2> <p>Facebook happened. And Snapchat. And TikTok. And the endless pursuit of more money.</p> <p>Product managers optimizing for time-on-app and click-through-rates boiled this frog with multiple tap/swipe/discover experiences—Stories! Explore! Reels! Search! DMs! Ads! Ads! Ads!</p> <p>Four weeks ago, as I felt I was about to croak, I broke out the back of my finest napkin and tally-ho:</p> <ul> <li> <code class=\"language-plaintext highlighter-rouge\">Stories</code> (short videos/photo collages, 24-hour expiration) <ul> <li>First friend’s stories. <em>Two ads.</em> Second friend’s stories. <em>One ad repeated over three frames so it would be harder to skip.</em> Third and fourth friend’s stories. <em>Two more ads</em>…</li> <li>Mostly low-effort re-shares, memes, and/or rage-bait. Of the latter, &gt;20% factually inaccurate, misleading, and/or troll-army in provenance.</li> </ul> </li> <li> <code class=\"language-plaintext highlighter-rouge\">Posts</code> (vertically-scrolled photos, permanent content) <ul> <li>Two or three photos of notably better quality than <code class=\"language-plaintext highlighter-rouge\">Stories</code>.</li> <li> <em>Ad</em>.</li> <li>Relevancy collapse into endless low-grade candy content algorithmically proven to pique your curiosity to grab your attention, your time, your wallet.</li> <li> <em>More ad</em>.</li> </ul> </li> <li> <code class=\"language-plaintext highlighter-rouge\">Reels</code> (mostly TikTok reshares) <ul> <li>No one asked for this.</li> </ul> </li> </ul> <p>In sum, time-on-Instagram comprises:</p> <ul> <li>40% <code class=\"language-plaintext highlighter-rouge\">Ads</code>,</li> <li>30% <code class=\"language-plaintext highlighter-rouge\">Stories</code>, and</li> <li>30% between <code class=\"language-plaintext highlighter-rouge\">DMs</code> (5%), <code class=\"language-plaintext highlighter-rouge\">Posts</code> (5%), and spoon-fed <code class=\"language-plaintext highlighter-rouge\">Reels</code> (20%).</li> </ul> <p>Therefore: <strong>for every hour</strong> on Instagram, only <strong>9 minutes</strong> brought me the value I wanted—a casual, medium-effort photo feed to stay up-to-date on my friend’s whereabouts and what-have-yous.</p> <p>Network TV plays 8 minutes of advertising for every 22 minutes of show.</p> <p>We’ve been boiled alive.</p> <h2 id=\"and-so\">And so…</h2> <p>Three weeks ago, I deleted Instagram. Cold turkey. I’m calling it a summer break, but maybe it’s forever.</p> <p>Here’s what today (a lazy Sunday) looks like:</p> <p><img src=\"/assets/img/d/instagram/screentime.jpeg\" alt=\"Sunday screen-time on phone three weeks after deleting Instagram\"></p> <p>Surprisingly, I don’t miss Instagram. At all.</p> <center>⁂</center> <p>Ok, ok. So I do miss a few things:</p> <ul> <li>I miss the casual vignettes of what my friends are up to that I would never know to ask about.</li> <li>I miss the opportunity to publish a little snippet about me or a something I’m proud to have made, knowing that I’m not imposing much time nor vanity on others.</li> <li>I miss the unimportant, non-urgent banter offered by direct messages for when a text message seems too intrusive.</li> </ul> <p>What I miss more than anything is my digital home room.</p> <p>What was once that space has been commercialized and invaded and, at least for now, I’m opting out.</p> <hr> <h1 id=\"updates\">Updates</h1> <blockquote> <p>Update 1: Days after my writing this, the U.S. Surgeon General <a href=\"https://www.hhs.gov/sites/default/files/sg-youth-mental-health-social-media-advisory.pdf\">released an Advisory</a>, noting, “while social media may have some benefits … there are ample indicators that [it] can also have a profound risk of hard to the mental health and well-being of children and adolescents.”</p> <p>I suspect the same applies to adults.</p> </blockquote> <blockquote> <p>Update 2: Instagram has been sending me e-mails once a week to let me know what I’ve missed. I have also started to see re-targeted ads directed at me in other mediums. They are playing the FOMO card hard.</p> <p>Just how valuable of a “customer” am I?</p> </blockquote>",
    "url": "/d/2024/instagram/",
    "date": 1717891200,
    
    "updated": 1718755200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 646
  },

  {
    "title": "On Goat Farming",
    
    "content": "<p><img src=\"/assets/img/d/on-goat-farming/goats.webp\" alt=\"Goats on solar parade\"></p> <p>For years I’ve been talking about building a goat farm in rural Vermont.</p> <p>Have I made any progress? No. I did, however, buy and read books on animal husbandry and Bovidae care. <code class=\"language-plaintext highlighter-rouge\">(An active goat is a happy goat!)</code></p> <p>Have I talked about it to anyone who would listen? Naturally. Goat farms are cosmopolitan cool and I’m asked about it often.</p> <p>I’ve got this agritourism thing all figured out in a farm-to-shoulder, fully-vertical cashmere sweater mill. Located midway on a road between New York, NY and Burlington, VT, battery-electric vehicles can get their level-3 quick-charge on while their humans shop for knitwear made from a goat herd living around a massive solar array that powers the farm and parking lot.</p> <p>Each sweater comes with the names of the individual goats that contributed to both the premium garment and premium price tag. <code class=\"language-plaintext highlighter-rouge\">(It takes about 2-5 goat coats to make a sweater!)</code> Strike that. Instead, you receive trading cards for each goat involved—complete with professional headshot, name, coat quality, hair length, birth date, sire, nanny, and other inconsequential data.</p> <p>Free charging with purchase.</p> <p>You can meet these goats, assuming they’re still alive. The all-female herd is gentle. <code class=\"language-plaintext highlighter-rouge\">(Billies—male goats—are odorous and aggressive, so they are best kept separate!)</code> Our goats are hand-raised from birth so they are safe to pet.</p> <p>Your kids will love it.</p> <p>Cashmere goats also produce milk—not as much as a dairy goats do, but this isn’t the point of the farm, is it? <code class=\"language-plaintext highlighter-rouge\">(Goats are generally bred for one product!)</code> We produce limited runs of cheeses with names like, “Spreadable Cas-shmear” and “Oh my goatness!”.</p> <p>My wife and I have come up with other product names, but we’ve since forgotten. We’ve been ruminating on this for a while.</p> <p>If artisanal sweaters aren’t your thing, we also sell graphic t-shirts featuring goats under, next to, and on top of our solar array. <code class=\"language-plaintext highlighter-rouge\">(Goats love love love to climb on things!)</code> All non-goat apparel is sourced with ethical cotton and manufactured in the Philippines and compete on hip-factor with <code class=\"language-plaintext highlighter-rouge\">Black Dog Café</code> and <code class=\"language-plaintext highlighter-rouge\">Ithaca is Gorges</code>. If you know, you know.</p> <p>We haven’t decided yet whether to build the on-site butcher. <code class=\"language-plaintext highlighter-rouge\">(Goat meat is naturally lean and very nutritious!)</code> Active murder shacks tend to shatter the illusion of tranquility that we’re going for here.</p> <center>⁂</center> <p>I want to build a goat farm. I’m not sure I’m ever going to get around to it.</p> <p>Some science says you feel a sense of completion when you announce your intention, which can paradoxically reduce chances that you <em>actually</em> do it. Turns out “just talk” still hits the dopamine button just fine, and with good ROI.</p> <p>For now, at least, I’ll put these ideas to paper. Hold me accountable.</p> <p>That’s some accomplishment, isn’t it?</p>",
    "url": "/d/2024/on-goat-farming/",
    "date": 1718150400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 483
  },

  {
    "title": "Writers Gonna Write",
    
    "content": "<p>“You’d kill it on YouTube,” a colleague recently told me, “or in podcasting.”</p> <p>My immediate thought went to <a href=\"https://www.tiktok.com/@thefemalelead/video/7261508379544243482\">Bum Bag</a>. The next thoughts were more measured.</p> <center>⁂</center> <ol> <li>We decorate space with art and time with music. Words can do both. And they can do neither.<br><br> </li> <li>A few words, carefully chosen, can communicate complex concepts clearly. (Casual consonance is also kinda cool.)<br><br> </li> <li>Readers choose pace and retention. Sometimes, readers choose to reread that which, by malice, mistake, or mischief, does not at first make sense, as I have done hereto, or tolerate inexactitude. <br><br>This is to say: readers can trade reading speed and comprehension as needed or desired. Apologies for the live-fire demonstration—I usually aim for legibility. This is also a choice.<br><br> </li> <li>There is no better medium for knowledge transmission and recall. If you read something once, you can find it again <em>easily</em>. Revisiting a video or audio clip is clunky, and any speech-to-text output is imprecise at best. Text is cheaper to work with than anything any generative AI will put out.<br><br> </li> <li>Thoughts can be constructed over time and released all at once. I can squeeze out a sentence here, a paragraph there, and choreograph coherence at my own convenience, complete with the occasional callback. Readers see no evidence of <a href=\"https://en.wikipedia.org/wiki/Match_cut\">match</a>- or <a href=\"https://en.wikipedia.org/wiki/Jump_cut\">jump</a>-cuts. I do not need to translate into another medium. I do not need a <a href=\"https://en.wikipedia.org/wiki/Scrubbing_(audio)\">scrubber</a>.<br><br> </li> </ol> <center>⁂</center> <p>“Maybe,” I said, “but, I find it easier to write. I also have little desire to ‘build an audience’ and be camera-ready at all times.”</p> <p>“That’s because you’re a writer.” Another colleague chimed in. “Some people like making videos, so they’re going to make videos. Some people like talking, so they’re going to make podcasts. Some people want attention, so they go try and get attention. Sometimes successfully, mostly not.</p> <p>“You like to write down your ideas. You’re a writer.</p> <p>“So write.”</p> <p><br></p> <p><img src=\"/assets/img/d/writers-gonna-write/typewriter.webp\" alt=\"banging away on a typewriter\"></p>",
    "url": "/d/2024/writers-gonna-write/",
    "date": 1718409600,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 339
  },

  {
    "title": "Performance Culture",
    
    "content": "<p>Last night we completed a six-season speed-run of <code class=\"language-plaintext highlighter-rouge\">Drive to Survive</code>, a docuseries on <a href=\"https://formula1.com\">Formula 1</a> that focuses on the dynamics between drivers, teams, and their leadership.</p> <p>Critics say it is manufactured-drama and semi-truths that are more entertaining than they are realistic. Of course that’s true. Fans, they say, should instead focus on the racing. To me, that’s what watching a Grand Prix is for.</p> <p><code class=\"language-plaintext highlighter-rouge\">Drive to Survive</code> is about the <em><code class=\"language-plaintext highlighter-rouge\">drive</code></em>, not the <em><code class=\"language-plaintext highlighter-rouge\">driving</code></em>—the intrinsic pursuit of <strong>absolute performance</strong> in motor racing. This pursuit requires inhumanly large bags of capital which, as you can imagine, complicates things.</p> <p>In this, Netflix absolutely nailed it.</p> <p><img src=\"/assets/img/d/performance-culture/dts.webp\" alt=\"F1 Driver\"></p> <h2 id=\"performance\">Performance</h2> <p>Performance—the real protagonist here—oozes throughout the <a href=\"https://www.f1-fansite.com/glossary/paddock/\">paddock</a>. Achievement. Results. Two euphemisms that speak to the only thing that ultimately matters: who crossed the finish line first?</p> <p>Radical candor. With their teams, with the press, with their rivals, with themselves. Everyone knows how they are doing, where they want to be, and will speak about it openly and directly.</p> <p>Under-performers cycle out, replaced by a seemingly-infinite pipeline of hopefuls. There is <em>always</em> a seat for a top driver.</p> <p>…<em>almost</em> always.</p> <h2 id=\"realities\">Realities</h2> <p>This temple of performance isn’t without major challenges:</p> <ul> <li>F1 teams are stupidly expensive. Money buys performance (cars + drivers). Performance attracts sponsors (money) so the aura of performance gloms onto their own branding. Money begets money.</li> <li>Ownership rewards top performers with annual, <em>contracted</em> salaries well-north of $10MM/year. Winning teams earn $100MM+ out of a $2Bn+ prize pool.</li> <li>The league is tightly controlled. Only 26 cars can compete (two per team); currently there are 20. The FIA (the sport’s governing body) and teams like it this way. There are no tryouts, only <a href=\"https://flowracers.com/blog/how-new-teams-enter-f1/\">negotiations</a>. Scarcity adds value.</li> <li>Each team designs and builds new cars every season. Between teams, performance varies wildly. Inside the team, the two cars are virtually identical. Therefore, the team’s two drivers are each others’ closest rivals. Over a season, all other variables cancel each other out. Teammates are competitors as much as they are rivals</li> <li>Under-performing teams make concessions in the name of survival. Billionaires buy seats for their offspring either through team sponsorship or acquisition. Nepotism is blatant and acknowledged.</li> </ul> <h2 id=\"motivations\">Motivations</h2> <p>Coincidentally, I happened to be reading “<a href=\"https://amzn.to/45FqCNh\">Primed to Perform</a>”, a book that provides a framework (and consulting pitch!) for measuring and managing performance culture.</p> <p>The framework[a] shows that high-performing organizations tend to emphasize direct motivators and minimize the indirect ones. (Apologies to the authors for this gross simplification.)</p> <p>For Formula 1 drivers, satisfaction is intrinsically linked to winning. And, if they’re not winning, it’s performing well-enough that they can keep their seat for future sessions to become winners. Racing in Formula 1 continually fills their cup.</p> <p>Success feeds the flywheel.</p> <p>Meanwhile, team principals do their darndest to minimize drivers’ external de-motivators. They know drivers do best when they are focused on racing performance alone.</p> <p>Empowered by savvy ownership and healthy balance sheet, a great team principal’s only job is to create a winning environment.</p> <p>What a wild job.</p> <h2 id=\"wait-a-tick\">Wait a tick…</h2> <p>Did I just make a comparison between Formula 1 and business culture?</p> <p>I didn’t mean to, but here we are.</p> <p>I have spent more than a decade in venture-backed, high-growth startups and scale-ups. People don’t join these companies to play it safe, they join them because they fill their intellectual curiosities in the pursuit of something larger than themselves.</p> <blockquote> <p>Investors reading this: take your cues from Formula 1 and ensure your portfolio companies are paying good wages or get ready for some real bad behavior to emerge. Legal or not, I’ve heard of founders mandating credit checks to see if their startup employees are solvent enough to be sufficiently focused on their role.</p> </blockquote> <p>I suppose this is why I found <code class=\"language-plaintext highlighter-rouge\">Drive to Survive</code> so compelling: Formula 1’s entire business model depends on performance at the highest level. Success is clear (“win races”) and, beyond that condition, the league is largely isolated from all other concerns—even financial.</p> <p>🍿</p> <hr> <p><strong>Notes:</strong></p> <ol class=\"endnotes\" type=\"a\"> <li>Direct motivators (3 Ps): play, purpose, and potential. When these human needs (the “why”) are aligned with jobs expectations (the “what”), people tend to perform better, ceteris paribus.<br><br>Indirect motivators (3 Es): emotional, economic, and entrenchment pressures. People respond less-well to these. Motivations are indirect and/or fleeting when you consider them against innate human behavior.<br><br>The three Es are my modest improvement to the framework’s list of indirect motivators to eschew. The authors use “inertia” instead of “entrenchment”. I like mine better, but the book is good. Read it.</li> </ol>",
    "url": "/d/2024/performance-culture/",
    "date": 1718928000,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 808
  },

  {
    "title": "Out of the Breach and into the Void",
    
    "content": "<p>In the late 00s, I went looking for a low-stakes way to regain my confidence as a public speaker. A friend suggested <a href=\"https://www.toastmasters.org\">Toastmasters</a>.</p> <p>In my first meeting I was invited to speak on a “table topic”:</p> <blockquote> <p>“Will there ever be another act as large as the Beatles?”</p> </blockquote> <p>With the benefit of editing and rose-colored memories, my “speech” went something like this:</p> <blockquote> <p>In 1964, The Beatles <a href=\"https://en.wikipedia.org/wiki/The_Beatles_on_The_Ed_Sullivan_Show\">appeared</a> on The Ed Sullivan Show.</p> <p>“A musical guest on a variety show. So what?” you may be thinking. (ed: this was a room of mostly 20-something digital natives.) But network TV was not was it is today. TV was new. There were roughly 5 channels to choose from, broadcasting only during prime time. My parents (and their parents) got to know The Beatles from their living room TV, introduced by the venerable Ed Sullivan. 40% of Americans shared in that experience, simultaneously, each from their own living rooms.</p> <p>Today we live in an era of mass-customization. Streaming services cater to our tastes and our schedule, allowing us to go deeper on what speaks to us and on our terms. We can pick and choose our own variety show.</p> <p>Outside of sporting events and political events (the lines between the two blurring every year), we have fewer and fewer of these cultural touch points. Those touch points rarely introduce anything new.</p> <p>So, no. “The Beatles” will likely never happen again because media distribution, consumption, and tastes have fundamentally changed.</p> </blockquote> <p>I was rather pleased with myself. (Still am.)</p> <center>⁂</center> <p>Today I’d argue the same.</p> <p>Taylor Swift and her <a href=\"https://en.wikipedia.org/wiki/The_Eras_Tour\">Eras Tour</a> has been the closest in recent memory, thanks to her equal-part talents in singing, songwriting, and business.</p> <p>Even so, she hasn’t reached (nor will reach) Beatles-level market share. Music and media distribution channels have extended well-beyond early TV and radio, and with diminished transmission costs there’s no incentive to converge.</p> <p><img src=\"/assets/img/d/out-of-the-breach-and-into-the-void/amalgam-band.webp\" alt=\"The Fab Five\"></p> <p>Concerning their respective fan bases:</p> <ol> <li>Taylor Swift fans are called “Swifties”. The Beatles fan base has no similar term. On occasion, editors referred to the latter as “Beatlemaniacs” but fans rarely self-identified as such. Swifties do. Hashtag #swiftie.<br><br> </li> <li>The Beatles had no website or online forum (the Internet, let alone ARPANET, didn’t exist yet) so fandoms collected their energies amongst themselves and with each other under geographic constraints. For Taylor Swift, her online <a href=\"https://idioms.thefreedictionary.com/stan\">stans</a> can be fed via social media drip, each a fan club of one. For some, a core identity.<br><br> </li> <li>Legend says that attendees could barely hear or see anything at a Beatles show. At the time, even the loudest speaker towers were overpowered by the crowd’s screams while thousands of flailing limbs listed towards the stage, obstructing all but the occasional glimpse of a George or a Paul. For Swifties, modern amplification fares better allowing everyone can hear her music and lyrics. Building-sized LCD screens allow even the nosebleeds to see nose hairs. Participation is more sing-a-long than primal meat grinder. (This one is a clear improvement.)</li> </ol> <p><a href=\"https://en.wikipedia.org/wiki/Parasocial_interaction\">Parasocial effects</a> aside, contrasting fan experiences and identities reflects two worlds with differing information fidelity, availability, and personalization.</p> <p>I’m starting to see it everywhere.</p> <center>⁂</center> <p>20+ years ago, if I received an <a href=\"https://en.wikipedia.org/wiki/Instant_messaging\">IM</a> that could be just as easily be asked of a search engine, I’d respond with a link to said Internet search.</p> <blockquote> <p>Back then, online chat was a completely new paradigm! Some of you will remember when you had to go to a library, rifle through its card catalog, locate one or two bookshelves that might have three or four books on it that <em>might</em> have an answer to your question.</p> <p>For the youngsters reading this, early Instant Messengers (ICQ, IRC, and AOL IM) predated Wikipedia by quite a few years. Widespread, trustworthy, and comprehensive knowledge access came later. I was an early adopter, so I could find my way around better than most—responding with a link to an Internet search wasn’t considered as rude as it may currently seem.</p> </blockquote> <p>15 years ago, someone created <a href=\"https://knowyourmeme.com/memes/sites/let-me-google-that-for-you-lmgtfy\">LMGTFY</a> where I could instead link <a href=\"https://letmegooglethat.com/?q=How+long+do+capuchin+monkeys+live+for%3F\">an animation of a google search asking the aforementioned question</a> before redirecting to the search results itself.</p> <p>It was cheeky, yes; but, for me, I felt profound satisfaction in synthesizing information and creating knowledge with people who have also read the source material rather than revisiting the basics over-and-over again. A major value-add to the human condition.</p> <p>Habits and behaviors continue to shift with the latest technology. With LLMs, searches become dialogues. Knowledge explorations are more easily synthesized with a generative companion than if one were to electronically tap a friend on the shoulder to see if they’re available to chat.</p> <blockquote> <p>Chat bots are good enough right now for most things. Hallucinations and factual inaccuracies aside, it is not much worse than talking with a non-expert. In my experience, the falsehoods are usually just as detectable if not downright hilarious.</p> </blockquote> <p>As we cross this chasm, I have been finding myself less aware of what questions people are asking.</p> <p>I’ve started to wonder what people are wondering about… and if they’re wondering at all.</p> <center>⁂</center> <p>To be sure, there are enormous benefits in creating technology that crafts highly-tailored worlds where people can practice, learn, and explore in ways that best suit them.</p> <p>Over the last few months, I’ve seen pitch decks and in-market companies building towards virtual environments in which a cocktail of LLMs, natural speech processors, and VR headsets can immerse learners in single-player worlds to practice live, multiplayer experiences.</p> <p>Very soon, people will be able to hone new language skills by conversing with a polyglot neural network on a super-niche topic instead of trying their hand with a human conversational partner who may be less enthused about desert arachnids. Musicians can wear VR headsets to emulate playing in front of an unnaturally-live audience to get comfortable with their naturally-aspirated adrenaline and stage fright. Concert goers can do the same for crowd and social anxieties.</p> <p>Immersive technologies could help people regain their confidence in, say, public speaking.</p> <p>What are we trading for technology-enabled individualism?</p> <p>Where will we find common ground?</p> <p>Were The Beatles it?</p> <p><img src=\"/assets/img/d/out-of-the-breach-and-into-the-void/headset.webp\" alt=\"Speech Practice\"></p> <hr> <p>After writing the above, I wondered what a chatbot had to say.</p> <blockquote> <p>“While it’s certainly possible for hugely popular acts to emerge, achieving the level of cultural impact and sustained popularity of The Beatles would be challenging. However, the music industry is always evolving, and new phenomena could arise.” — Claude 3.5 Sonnet</p> </blockquote> <p>What asked to compare to Taylor Swift:</p> <blockquote> <p>“While Taylor Swift is undoubtedly one of the biggest acts of her generation, the cultural context is very different from The Beatles’ era. Swift’s success is impressive, but the fragmented nature of modern media makes it challenging to achieve the same level of ubiquity The Beatles had.” — Claude 3.5 Sonnet</p> </blockquote> <p>I admit there’s some pride in having the same answer as my currently favored LLM, generated about as quickly and pithily.</p> <p>I also wondered what The Internet had to say. <a href=\"https://duckduckgo.com/?t=h_&amp;q=will+there+ever+be+another+act+as+large+as+the+beatles%3F&amp;ia=web\">A lot</a>, it turns out.</p> <p>Maybe this wasn’t such an interesting question after all. Maybe the onus is on us to make interesting answers.</p> <p>On LLMs, nuance and context is offered when people know to ask. On search, it’s given freely. Maybe there is renewed value in asking search engines rather than LLMs to get individual perspectives rather than the zeitgeist’s average.</p> <p>Maybe there’s still value in publishing new answers to old questions.</p>",
    "url": "/d/2024/out-of-the-breach-and-into-the-void/",
    "date": 1719446400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1265
  },

  {
    "title": "Cat Herding Distributed Teams",
    
    "description": "Introducing \"Team, Assemble!\", a tool that helps distributed teams meet up in person",
    
    "content": "<blockquote> <p><a href=\"https://teamassemble.app/\"><strong>Team, Assemble!</strong></a> is an app that helps distributed teams figure out the most cost-effective destinations for an in-person offsite.</p> <p>The following outlines the origin story and motivations for the project. If this sort of thing suits you, by all means read-on.</p> <p>You can also skip ahead to <a href=\"#product-demo-and-introduction\">demo</a> below.</p> </blockquote> <p>I suppose data platitudes would’ve sufficed, but my <em>real</em> motivation for building <a href=\"https://teamassemble.app/\"><strong>Team, Assemble!</strong></a> was that I was tired of justifying why it was cheaper and more effective to run offsites almost anywhere other than my old company’s headquarters in Cleveland.</p> <p>Let me explain.</p> <p><img src=\"/assets/img/d/cat-herding/cat-traveler.webp\" alt=\"Cat Herding\"></p> <h2 id=\"bringing-the-band-together\">Bringing the Band Together</h2> <p>I’ve long advocated for hiring the best talent regardless where they live. (Provided the operating model allows for it.)</p> <p>Allowing people to build their work lives around their personal lives—and not the other way around—is a north star that informs my operational biases:</p> <ul> <li>Choose asynchronous, self-documenting communications and systems over ephemeral meetings.</li> <li>Minimize meeting frequency. Take notes, be fully-present when you do.</li> <li>Stress about the core business, not minutia like meeting room location and availability.</li> </ul> <p>The RTO (return-to-office) crowd says “remote” is no way to build a culture or a company: you need “real” in-person face time to build trust and camaraderie. While they’re wrong, they’re not <em>completely</em> wrong.</p> <p>Experience tells me that while distributed teams <em>can</em> work and <em>work well</em>, they work <em>even better</em> when they meet up regularly. Experience also tells me that the minimal effective dose for meet-and-greets is small (between 1-4 times a year in most cases).</p> <p>All told, bringing a distributed team together is far less costly than forcing a co-located team into a leased office space every day… and what a person, team, or company <em>deems costly</em> varies widely.</p> <p>Which brings me figuratively (and literally) back to Cleveland.</p> <p><img src=\"/assets/img/d/cat-herding/cleveland.webp\" alt=\"Cleveland\"></p> <h3 id=\"cleveland-rocks\">Cleveland Rocks</h3> <p>On each super-commute, I made a point to learn more about the city.</p> <p>I had no idea, for instance, that Lake Erie <a href=\"https://www.portofcleveland.com/how-to-ship-to-the-great-lakes/\">connects</a> to the Atlantic Ocean, greatly contributing to Cleveland’s cultural import and diversity… not to mention some impressive architecture and culinary options.</p> <p>Super-commuting was also surprisingly easy: I could leave my NYC apartment at 6am and arrive in the downtown Cleveland office before 9am, often beating my local colleagues.</p> <blockquote> <p>22 minutes to the airport, 8 minutes through security, 5 minutes to gate, 96 minutes in an airline seat, 7 minutes gate-to-curb, 15 minute taxi to office. Total block time: ~2h35m, give or take 15 minutes.</p> </blockquote> <p>Timing and service was so reliable that I would often day-trip rather than spend the night.</p> <p>Coming from a major east-coast city with three International airports, this was easy and affordable. So easy, in fact, it’s easy to forget how, for other people originating from non-major, non-east coast cities, flying <em>my</em> team to Cleveland (and housing them all) had some significant hidden costs.</p> <h3 id=\"real-costs-real-problems\">Real Costs, Real Problems</h3> <p>As my reporting line grew from 5… 15… 40… 80… and so on, the origin counts and unique travel considerations for teams and sub-teams grew geometrically. Folks hailed from everywhere: San Francisco, Rio de Janeiro, Salt Lake City, Raleigh, Toronto, Miami, and yes some in Cleveland. Even with historically-low flight prices, hosting an on-site in Cleveland was becoming surprisingly expensive, even with some of my team living there.</p> <p>Here’s why:</p> <ol> <li> <strong>Time costs.</strong> Cleveland has many <a href=\"https://www.clevelandairport.com/flight-information/non-stop-cities\">direct flights</a>. However, not all routes are served by my team’s preferred airlines, so many opted to chase status with a layover and/or avoided certain air carriers. (n.b. I am often this person… there is no judgment here.)<br><br> </li> <li> <strong>Flight costs.</strong> Market dictates prices, not distance. As of this writing, from NYC it costs half as much to fly to Denver than it does to Washington D.C., even though it’s 8x the distance.<br><br> </li> <li> <strong>Hotel costs.</strong> While the downtown office space was paid for, downtown hotel prices vary wildly depending on the season <em>and</em> availability. (It is very inexpensive to visit Cleveland in the winter—hope you like it bone-cold.)<br><br> </li> <li> <strong>Surprise costs.</strong> Seasonal price fluctuations aside, coincidental events had major impact on prices. Some of my most expensive visits to Cleveland coincided with high-school volleyball tournaments, collegiate parents’ weekend, and various health conferences where hotel and restaurant availability was severely limited. As there’s no universal directory of events (I know this because a previous company of mine tried!), there’s no way I would have known. Had I accidentally planned a team get together during any of these times, I would have burned budget needlessly.<br><br> </li> <li> <strong>Safety concerns.</strong> From a macro perspective, data shows the planet continues to become safer and more peaceful (climate change notwithstanding). That macro trend is at odds with some short term realities. Take the United States. With its uneven healthcare availability, differing interpretations of human rights, and a general distrust for authority, it would be foolish not to recognize that not everyone will feel safe traveling everywhere. (These are not always concerns an employee may wish to express to their employer and/or manager directly.)</li> </ol> <p>Ultimately, what teams consider costly differs.</p> <p>Discovering those costs (and perceived/actual costs/risks) is <em>also</em> expensive.</p> <h3 id=\"making-and-avoiding-expensive-mistakes\">Making and Avoiding Expensive Mistakes</h3> <p>I was coordinating an offsite for a six people, including myself. After working out all the concerns listed above for the six of us, Nashville was the turned out the “best” place to assemble for our quarterly offsite.</p> <p>It was also COVID/flu season, and after two of our six were compelled to “stop the spread”, we had to delay. Given the effort to determine that Nashville was the place, we naturally re-booked the trip.</p> <p>This was a costly 5-figure delay.</p> <p>In two-months, hotel prices had risen 200% with no more rooms available in downtown Nashville. The best we could do was a hotel near Vanderbilt. No time to replan, I fully committed and ate the difference.</p> <p>In an act of risk mitigation from the bean counters, I wanted to make sure there was no other option, however creative. I found only one: it was an AirBnB-listed apartment in downtown Nashville that had 7 bedrooms, each with an en-suite bath, and a very large living-room/kitchen area adjacent to our own outdoor space. It was newly-constructed so that each room was like a mini-suite. It could have as well have been an actual Bed and Breakfast for all I know. The property manager even claimed that they soundproofed each room for maximum privacy.</p> <p>This listing was essentially a 7-room, 3-star bed and breakfast with no receptionist… but I wasn’t sure if my team would all feel comfortable because a hotel it was not. With respect to my budget, this choice would have put the trip very close to the pin; but, I could see how some might find it too cozy, and any personal discomfort from one of the participants would have had the opposite of the intended effect of the retreat.</p> <p>I wasn’t sure. But, with my mind set on protecting budget and maximizing fun, I e-mailed the team explaining the AirBNB’s unique and private layout with an impassioned pitch to at least consider it; and, if there was a single objection to this lodging arrangement, we wouldn’t do it. Any objection would be held in confidence.</p> <p>I don’t remember the exact message that came back 30 seconds later, but I remember the subtext: <code class=\"language-plaintext highlighter-rouge\">Fuck that. No. Absolutely not.</code></p> <p>Right.</p> <p>I quickly walked-back that first e-mail and informed the team I was able negotiate an excellent deal at a large hotel near Vanderbilt University after all and to never mind that other idea.</p> <p>It went <em>fine</em>.</p> <h3 id=\"missed-opportunities\">Missed Opportunities</h3> <p>I bring up this anecdote to highlight two points and what-ifs.</p> <p>Had I booked atypical lodging without asking my team for their approval first, I ran the risk of making my colleagues uncomfortable. The main point of an offsite—particularly this offsite—was to build trust between teammates. What if I decided to do it anyway? Would my team trust me in my other decisions? Would they they see me as one who put minor budgetary concerns over their own personal needs and comfort? What would the long-term effects of that be?</p> <p>On the flip side, I could see opportunity.</p> <p>What if there was something that all six of us would have loved to do together. What if we all wanted to rent out an actual Bed and Breakfast on a lake or a mountain instead of staying in downtown Nashville? What group activity were we missing out on that all of us would have loved doing, but never would have volunteered? Bowling? Karaoke? White-water rafting? I think about all these missed, shared opportunities we could have had had there been a way to surface these preferences without too much effort, while avoiding any “absolutely-nots” from any one participant.</p> <p>Shared experiences increase understanding, and understanding breeds trust. How can we find ways to be more inclusive, but not boring about it?</p> <p>What if everyone on a team actually likes ropes courses and corporate trust falls—that would be something, right?</p> <h2 id=\"whats-the-matter-with-cleveland\">What’s the matter with Cleveland?</h2> <p>Nothing at all. Cleveland’s great!</p> <p>But, for a hypothetical 100 person team that resembled the geographic diversity of my reporting line, there are far better options for a 4-night trip. Here’s an <em>actual</em> run-up of the costs associated with different places from <em>real</em> pricing data:</p> <p>(Negative savings means more expensive.)</p> <table> <thead> <tr> <th>Destination</th> <th>💵Dollar Savings</th> <th>⏱️Time Savings</th> <th>How Many Live Here?</th> <th>Notes</th> </tr> </thead> <tbody> <tr> <td>Cleveland, OH</td> <td>-</td> <td>-</td> <td>8</td> <td>Reference Location.</td> </tr> <tr> <td>New York, NY</td> <td><em>-30%</em></td> <td><strong>30%</strong></td> <td>12</td> <td>If time is money, this broke even.</td> </tr> <tr> <td>Denver, CO</td> <td><em>-40%</em></td> <td>0%</td> <td>0</td> <td>Much more expensive, but equivalent time cost.</td> </tr> <tr> <td>Las Vegas, NV</td> <td><strong>10%</strong></td> <td><em>-25%</em></td> <td>0</td> <td>Saved 10%, but adds 200 hours in collective travel time. Cheap lodging, could extend trip.</td> </tr> <tr> <td>Miami, FL</td> <td><strong>5%</strong></td> <td>0%</td> <td>0</td> <td>Cheaper, and everyone gets to travel.</td> </tr> <tr> <td>New Orleans, LA</td> <td>0%</td> <td><em>-3%</em></td> <td>0</td> <td>Everyone wanted to go here, cost the same as Cleveland.</td> </tr> </tbody> </table> <p>For this <em>actual</em> run of the numbers for this <em>hypothetical</em> team, the differences between the least expensive and most expensive trip could be thought of in terms of 2 FTE salaries on the dollar costs, and about 600 hours of lost work-time (15 weeks time-loss across the 100-person team).</p> <p>Picking the wrong destination for this hypothetical trip could have needlessly cost the company $200,000.</p> <p>What’s more: a few months later I re-ran the calculation, and Cleveland became more than <em>twice</em> as expensive in $-terms as NYC, with 30% more travel time.</p> <p>Estimating these costs are tricky because <em>when</em> you want to a place can be a larger factor in pricing than <em>where</em> you want to go. When it comes to group travel, costs can really add up in unpredictable ways.</p> <h2 id=\"so-now-theres-an-app-for-that\">So Now There’s An App For That</h2> <p>Given the $200K in potential savings from one trip alone, I suppose I could’ve justified the spend in building a functional tool for this in-house. But, I also believe that companies should build what’s core and buy what’s not because of the opportunity costs associated with doing <em>everything</em> in-house.</p> <p>If you plan team trips, please give <a href=\"https://teamassemble.app/\"><strong>Team, Assemble!</strong></a> a whirl. A $20 team travel estimate could save you $200,000—and give you hours back to do the work that matters.</p> <p>And if you don’t, here’s who on your team might benefit:</p> <ul> <li>Chiefs of Staff</li> <li>C-/VP-levels, and their Business Partners / Executive Assistants</li> <li>Event Teams and Coordinators</li> <li>Scrum Teams Leads</li> <li>Product Team Leads</li> <li>Special Project Teams</li> </ul> <p>As we’re just going live after 21 months in development, we very much welcome the feedback.</p> <hr> <h1 id=\"product-demo-and-introduction\">Product Demo and Introduction</h1> <div class=\"video-container\"> <iframe src=\"https://www.youtube-nocookie.com/embed/XI5B8v9J3TM?rel=0\" title=\"Team, Assemble! The (Short) Introductory Tour\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen=\"\"></iframe> </div> <style> .video-container { position: relative; width: 100%; padding-bottom: 75%; /* padding-bottom: 56.25%; 16:9 aspect ratio */ height: 0; overflow: hidden; } .video-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } </style> <p>Visit <a href=\"https://teamassemble.app/\">https://teamassemble.app/</a> to give it a try.</p>",
    "url": "/d/2024/cat-herding/",
    "date": 1719964800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 2026
  },

  {
    "title": "What Gets Measured",
    
    "description": "And what's critically missing from Muller's 'The Tyranny of Metrics'",
    
    "content": "<p>I just added Jerry Z. Muller’s <em><a href=\"https://amzn.to/3VUDDhm\">The Tyranny of Metrics</a></em> to my ever-growing manager-training-via-book-discussion arsenal.</p> <p>As the title suggests, the basic premise is that evaluation metrics, even with the best of intentions, can lead to disastrous outcomes. As a data practitioner who lives an evidence-based lifestyle, to that I say: “Preach, dude. 🙌”</p> <p>There’s a lot of good stuff in here, even if the case studies inside are bit too well-trodden. Written by an academic historian for general audiences, using familiar touch points to make his point is fine I guess. (I’m also generally well read in on pop-business concepts, armchair economics, and the books and pundits that promote them. This isn’t a book review, but I did wish he included at least one novel case studies.)</p> <p>There’s also an undertone of “trust me, bro” that I find wanting and thought to address it, particularly for those to whom I will recommended this book.</p> <p><img src=\"/assets/img/d/what-gets-measured/transparent-data.webp\" alt=\"Life and death by data\"></p> <h2 id=\"considering-the-source\">Considering the Source</h2> <p>A high school English teacher routinely pop-quizzed us every time the first chapter of a new reading assignment was due. It was a very short quiz that asked, without fail:</p> <ol> <li>Who is the author?</li> <li>When was this book published?</li> <li>Where was this book <em>first</em> published?</li> </ol> <p><code class=\"language-plaintext highlighter-rouge\">Jerry Z. Muller. 2018. Princeton University Press.</code></p> <p>The habit stuck. (Thanks, Dr. Schiller.)</p> <p>After finishing <em>The Tyranny of Metrics</em>, I went to go learn more about this Muller <a href=\"https://history.catholic.edu/faculty-and-research/faculty-profiles/muller-jerry/\">fellow</a>. Relevant to this book, two major points stuck out:</p> <ol> <li>His work primarily covers economics, capitalism, and their cultural context. His conclusions are nuanced, well-researched, and hew conservative. He seems deeply skeptical towards all radical political leaning and favors traditionalism.</li> <li>On the Smith/Keynes continuum, he leans Smith and has written about him extensively.</li> </ol> <p>I, on the other hand, am a student of behavioral economics who can be occasionally found sporting a T-shirt with a <a href=\"https://apps.npr.org/tshirt/#/title\">squirrel holding a martini</a> printed on the front, a nod towards Keynes’ “animal spirits”.</p> <p>In the long run, we’re all dead. But ideas, even antiquated ones, seem to live forever.</p> <p><img src=\"/assets/img/d/what-gets-measured/animal-spirit.webp\" alt=\"Animal Spirits\"></p> <h2 id=\"baby-and-the-bathwater\">Baby and the Bathwater</h2> <p>Anyway, the book’s conclusion is not to discard metrics wholesale, but to select good ones. He provides a very, very good checklist for this on p.177 (which, alone, is reason to buy the book) that underscores the tradeoffs between <em>useful</em> and <em>tyrannical</em>.</p> <p>In this, <em>The Tyranny of Metrics</em> is an excellent introduction to the topic.</p> <p>However, the miss for me (and where I start to diverge from the author) is what one ought to do about metrics that falter.</p> <p>In fairness, this isn’t where he claims he will spend most of his time—his goal seems to be to educate and caution, not instruct—and so the guidance offered is pretty thin. He also claims that transparency (vis-a-vis metrics) sometimes does more harm than good.</p> <p>In one example, he claims that effective governance requires backroom deals in order to create pareto-optimal outcomes. He argues that trying to publicly work out policies that affect myriad conflicting interest groups would place undo burden on the process, leading to less-good decision-making than if unencumbered by transparency. Politicians would clam up if they had to justify every decision. Muller’s suggestion is that we should trust people and their expertise as it has been done.</p> <p>Dubious, maybe; but, that’s his argument.</p> <p>Less careful readers might interpret this to say that metrics are expensive and counterproductive, and are more trouble than they’re worth. (As Americans are generally behind in science and mathematical literacy, the burden for worthiness is even higher.) I think Muller was careful to allow readers to draw their own conclusions and <em>“<code class=\"language-plaintext highlighter-rouge\">so what?</code>“</em>s as he circled politically-charged discussions like police force efficacy and socioeconomic academic performance disparities.</p> <p>Interestingly, Muller omits any discussion where <strong>the tyranny of metrics may be the point</strong>. He softens his criticisms of his select case studies behind a “well-intentioned but counterproductive” qualifier, allowing policy makers to save face—”oh, if they only knew better”. (e.g., <a href=\"https://www2.ed.gov/nclb/landing.jhtml\">No Child Left Behind</a>, <a href=\"https://compstat.nypdonline.org\">Compstat</a> – two programs that were meant to help people, but were ultimately tainted by front-line professionals gaming the metrics.) He makes no effort to consider how bad actors might create bad metrics and instead delegates the discussion into fiction with frequent mentions of HBO’s “The Wire”. (I haven’t seen the show, and it isn’t reasonable to assume his readership has either.)</p> <p>To me, this omission is incredibly naive.</p> <p>People are generally good, but power tends to attract people who are not, and absolute power corrupts absolutely. Any discussion on good intentions going awry—<em>especially around metrics-based policy evaluations at the federal level</em>—seems incomplete without a discussion about when <em>bad</em> intentions disguised as agreeable metrics are used as a form of control, or as a set-up for failure and an “I told you so”.</p> <p>Where some see a cautioned academic treatise, others see an instruction manual.</p> <blockquote> <p>See also the CIA’s <a href=\"https://www.cia.gov/static/5c875f3ec660e092cf893f60b4a288df/SimpleSabotage.pdf\">Simple Sabotage Field Manual</a>, another title in my unofficial management book club.</p> </blockquote> <h2 id=\"metric-tuning\">Metric tuning</h2> <p>I would offer, instead of the author’s note that we perhaps allow the pendulum to swing back as false dichotomies often suggest, perhaps we look at it from another dimension.</p> <p>A pendulum on a string, seen from the side, moves back and forth, left-to-right.</p> <p>Observed from above, we discover there are no sides. It’s moving in a circle.</p> <p>Observed from afar, we discover the pendulum is tracking a helix through space, our path of progress.</p> <p>Or, perhaps we drop the metaphors all together and lean into the fact that our species has a long history of developing the tools and technology for continuous improvement. Net-net, transparency and metrics have been a boon to the safety, prosperity, and livelihoods to the bipedal earthlings on this planet, provided we empower good people to lead us there.</p> <p>The bigger issue for me isn’t that metrics are tyrannical, it’s that most people are ill-equipped to understand the what our metrics mean and fail to contextualize them honestly.</p> <p>People still rely on the Dow Jones Industrial Average to make investment decisions or <a href=\"https://www.npr.org/2018/06/21/622361967/how-relevant-is-the-dow-jones-as-a-measure-of-the-economy\">how the economy is doing</a>.</p> <p>I mean, sheesh.</p> <p><img src=\"/assets/img/d/what-gets-measured/progress.webp\" alt=\"Man running through progress\"></p> <h2 id=\"escaping-the-scapegoat\">Escaping the Scapegoat</h2> <p>Back to what’s good about the book. (I do, after all, recommend it.)</p> <p>Metrics are tools; and like any tool, they can be used to create, destroy, or modify. Well-deployed metrics can serve as a fulcrum for performance and performance management. However, when misused, they can have deleterious consequences.</p> <p>This book provides a framework for understanding a metric’s limitations, with fodder on how to discuss their perceived and actual effectiveness.</p> <p>In the end, responsibility lies with those who set the metrics to do so carefully and ethically. This underscores the importance of proactively supporting leaders with good intentions as metrics alone cannot tell the whole story.</p> <p>After all, who decides what gets measured?</p> <center>⁂</center> <p>Was my high school English teacher inflating our grades with his entirely-predictable low-stakes pop-quiz, or was he conditioning us to put information in context to create knowledge?</p> <p>Sometimes, it can be both.</p> <p><code class=\"language-plaintext highlighter-rouge\">Michael E. Gruen. 2024. Self-published on michaelgruen.com</code></p>",
    "url": "/d/2024/what-gets-measured/",
    "date": 1720310400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1202
  },

  {
    "title": "Mission Statements",
    
    "description": "80s and 90s cartoon theme songs still have much to teach us.",
    
    "content": "<p>Cartoons informed my world view more than they probably deserved.</p> <p>DuckTales, Inspector Gadget, Teenage Mutant Ninja Turtles… the whole lot.</p> <p><img src=\"/assets/img/d/mission-statement/animated-team.webp\" alt=\"Generated 80s/90s Cartoon Action Team\"></p> <p>Being a musically-inclined youngin’, these songs have been forever-seared into my head… songs that serve as much as a content warning to mindful adults as they are meant to hype-up a 20-minute animated adventure story befitting a child.</p> <p>Recently I’ve been navel-gazing about the adventures I’ve been on, the ones that could have been, and the ones still in front of me. Maybe not surprisingly, I have found considerable overlap in values between my favorite cartoons and what might be over the horizon in jobs to be done, in roles to be had, and in goals to accomplish.</p> <p>I understand this to be normal and not indicative of midlife crisis. (n.b., I am great. Do not fret.)</p> <p>Today, I offer readouts of my favorite cartoons growing up and how their mission statements resonate with how one might choose to spend their time, given circumstances.</p> <h1 class=\"no_toc\" id=\"in-no-particular-order\">In No Particular Order</h1> <ul id=\"markdown-toc\"> <li><a href=\"#the-adventures-of-the-gummi-bears-1985\" id=\"markdown-toc-the-adventures-of-the-gummi-bears-1985\">The Adventures of the Gummi Bears (1985)</a></li> <li><a href=\"#ducktales-1987\" id=\"markdown-toc-ducktales-1987\">DuckTales (1987)</a></li> <li><a href=\"#the-transformers-1984\" id=\"markdown-toc-the-transformers-1984\">The Transformers (1984)</a></li> <li><a href=\"#tailspin-1990\" id=\"markdown-toc-tailspin-1990\">TailSpin (1990)</a></li> <li><a href=\"#chip-n-dale-rescue-rangers-1989\" id=\"markdown-toc-chip-n-dale-rescue-rangers-1989\">Chip ‘n Dale: Rescue Rangers (1989)</a></li> <li><a href=\"#darkwing-duck-1991\" id=\"markdown-toc-darkwing-duck-1991\">Darkwing Duck (1991)</a></li> <li><a href=\"#gi-joe-1983\" id=\"markdown-toc-gi-joe-1983\">G.I. Joe (1983)</a></li> <li><a href=\"#captain-planet-and-the-planeteers-1990\" id=\"markdown-toc-captain-planet-and-the-planeteers-1990\">Captain Planet and the Planeteers (1990)</a></li> <li><a href=\"#animaniacs-1993\" id=\"markdown-toc-animaniacs-1993\">Animaniacs (1993)</a></li> <li><a href=\"#teenage-mutant-ninja-turtles-1987\" id=\"markdown-toc-teenage-mutant-ninja-turtles-1987\">Teenage Mutant Ninja Turtles (1987)</a></li> <li><a href=\"#inspector-gadget-1983\" id=\"markdown-toc-inspector-gadget-1983\">Inspector Gadget (1983)</a></li> <li><a href=\"#stand-out-from-a-goofy-movie-1995\" id=\"markdown-toc-stand-out-from-a-goofy-movie-1995\"><em>Stand Out</em> from “A Goofy Movie” (1995)</a></li> </ul> <p>Unrelated (but good for you to know) I can a cappella every song from memory.</p> <p>Try me. Double-dog dare you.</p> <p><strong>Important Note</strong>: Lyrics to theme songs provided below are copyright their respective copyright holders so far as copyright law is concerned. Contextually, this should be exceedingly clear. Accuracy of lyrics is not guaranteed (I transcribed them myself). I can’t imagine anyone will mind, but I live in the US and we are a special kind of litigious. So disclaimers like this must be written.</p> <p style=\"margin-bottom:8rem;\">Go Team USA.</p> <!-- [![IMAGE ALT TEXT HERE](http://img.youtube.com/vi/yYZH7B498gE/0.jpg)](http://www.youtube.com/watch?v=yYZH7B498gE) --> <h1 id=\"the-adventures-of-the-gummi-bears-1985\">The Adventures of the Gummi Bears (1985)</h1> <p>As typical, the theme song’s lyrics introduce the show quite well:</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Dashing and daring, courageous, and caring; Faithful and friendly with stories to share. All through the forest they sing out in chorus, Marching along as their song fills the air— (Chorus) Gummi Bears!! Bouncing here and there and everywhere. High adventure that's beyond compare, They are the Gummi Bears. Magic and mystery are part of their history. (Along with the secret of Gummiberry Juice.) Their legend is growing. They take pride in knowing, They'll fight for what's right in whatever they do. (Chorus) They are the Gummi Bears! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=yYZH7B498gE\">Gummi Bears Theme Song on YouTube</a></small></p> </blockquote> <p>I can imagine a Gummi Bear ported into the real world working for a Bluechip corporation, like a Coca-Cola or Tootsie Roll, where well-known high-regarded flagship products rely on highly-guarded formulas known to very few.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Magic and mystery are part of their history. (Along with the secret of Gummiberry Juice.) </code></pre></div> </div> </blockquote> <p>These companies, like the Gummi Bears, are not terribly innovative except when it comes to protecting their IP.</p> <p>But, there are some social advantages to being part of the group.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">Faithful and friendly with stories to share.</code></p> </blockquote> <p>Not a bad lot to be tossed in with. Could be fun.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">They'll fight for what's right in whatever they do.</code></p> </blockquote> <p>Especially in well-capitalized CSR departments.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"ducktales-1987\">DuckTales (1987)</h1> <p>As portrayed, über-wealthy protagonist Scrooge McDuck owns a giant Money Bin filled with gold and treasure. The <a href=\"https://en.wikipedia.org/wiki/Demurrage_(currency)\">demurrage</a> alone would exceed all lifetime dollars earmarked via <a href=\"https://givingpledge.org\">The Giving Pledge</a>.</p> <p>(The Money Bin holds more gold than all of planet Earth does… but we’ll put that aside for the moment.)</p> <p>Spats-wearing Scrooge gets his kicks by endangering himself, family, and friends over his obsession: acquiring rare artifacts and historical documents, and settling personal grudges. He could work with professionals; but, like many plutocrats, distrusts others and prefers to keep familial associates.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">D-D-D-Danger! (Watch behind you!)</code><br> <code class=\"language-plaintext highlighter-rouge\">There's a stranger out to find you!</code></p> </blockquote> <p>While his success is well-earned (by canon), all of his activities seem to be in service of personal enrichment and hoarding additional wealth.</p> <p>This is not to say he doesn’t care about his family—he very much does—but there’s a tacit acknowledgment that he can afford take these risks he can almost always bail himself and his family/friends out of any situation. (Money doesn’t solve all his problems; but, like actual money, it sure does help!)</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">The worst of messes become successes</code></p> </blockquote> <p>I love this show, despite being an elder member of modern history’s poorest <a href=\"https://www.chartr.co/stories/2021-04-30-2-the-generation-wealth-gap\">generational cohorts</a>.</p> <p>Today, adventures a la DuckTales are available only to members of the ultra-wealthy and those fortunate enough to have earned a spot in the inner circle.</p> <p>Great work if you can get it.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>(Intro) Life is like a hurricane here in Duckburg. Race cars, lasers, aeroplanes. It's a, duck-blur! Might solve a mystery or rewrite history! (Chorus) DuckTales! (Woo-oo!) Every day they're out there makin' DuckTales! (Woo-oo!) Tales of daring-do, bad, and good luck tales! (Verse 1) When it seems they're heading for the final curtain Cool deduction never fails—that's for certain. The worst of messes become successes! (Chorus) (Verse 2) D-D-D-Danger! (Watch behind you!) There's a stranger out to find you! What to do? Just grab on to some Duck Tales (Woo-oo!) (Instrumental Interlude) (Chorus) (Verse 2) (Chorus Loop) (Outro) No pony tails or cotton tails, no DuckTales. (Woo-oo!) </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=H9cmPE88a_0\">DuckTales Theme Song on YouTube</a></small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"the-transformers-1984\">The Transformers (1984)</h1> <p>The title song’s lyrics, scansion, and melody is so forced I’m convinced the show was rushed to production without any conviction that American audiences would take to sentient transforming battle bots.</p> <blockquote> <pre>/ ˘ / / / / ˘ / ˘ / ˘ / ˘ / ˘ / ˘ ˘ / ˘ ˘ </pre> <pre>Autobots wage their battle to destroy the evil forces of the Decepticons!</pre> </blockquote> <p>It’s the only line that describes what’s going on and <a href=\"https://youtu.be/nLS2N9mHWaw?t=13\">they just square-peg smashed that line right in there</a>.</p> <p>Whew.</p> <p>Forty years later this show feels oddly prescient, a harbinger for the battleground between the good and deceptive forces plaguing technology, media, and entertainment.</p> <p>There’s still careers to be made in helping the <a href=\"/d/2024/situational-annotations/\">good robots battle the evil robots</a>, even if most of the robotic conflict is (still) fictional.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>The Transformers: more than meets the eye! Autobots wage their battle to destroy the evil forces of the Decepticons! The Transformers: robots in disguise! The Transformers: more than meets the eye! The Transformers! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=nLS2N9mHWaw\">The Transformers Theme Song on YouTube</a></small></p> </blockquote> <p>Align on the side of good, folks.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"tailspin-1990\">TailSpin (1990)</h1> <p>This show is about a small logistics business trying to survive in the face of corporate corruption.</p> <p>Don’t remember this being about class warfare? I sure do!</p> <ul> <li>Baloo, the title character, is an easy-going cargo pilot who just wants to fly his plane.</li> <li>Kit, Baloo’s younger side kick, is a former air-pirate trying to make an honest living.</li> <li>Rebecca, an ambitious businesswoman, buys Baloo’s company before it could be repossessed by the bank. She becomes owner-operator, employing Baloo, and saving him from the poor house.</li> <li>All of the side characters, aside from the villains, are working-class folk who support each other in the struggle against economic hardships.</li> </ul> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">Friends for life through thick and thin with another tale to spin.</code></p> </blockquote> <p>The primary antagonist, a tiger named Shere Kahn, runs a conglomerate that continually exploits natural resources, politicians, workers, and the media to grow his empire. He is unchecked corporate greed incarnate, interfering indiscriminately with the livelihoods of others in the pursuit of growth metrics. Rebecca and Baloo often find themselves on the receiving end of his unethical activities.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">Spin it, let's begin it, bear and grin it when you're in it.</code><br> <code class=\"language-plaintext highlighter-rouge\">You can win it in a minute when you spin it, spin it, spin it.</code></p> </blockquote> <p>They persist, sometimes aligning themselves with Shere Kahn when it suits his interests. For Rebecca and Baloo, there’s a victory in survival without compromising their morals. Shere Kahn maintains the upper hand due to his willingness to bend the rules.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">Haha haha haha—Spin It!</code></p> </blockquote> <p>As the business world sees increased consolidation and monopolistic practices, this show is a Rorschach test for any aspiring capitalist in the corporate jungle.</p> <p>For my part, I’m on team Rebecca.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Haha haha haha—Spin It! Let's begin... Oh-ee-ay. TaleSpin. Oh-ee-oh. TaleSpin. Friends for life through thick and thin with another tale to spin. Oh-ee-ay. TaleSpin. Oh-ee-oh. TaleSpin. All the trouble we get in with another tale to spin. Spin it! Spin it, my friend. Oh-ee-ay. (Oh-ee-ay.) Oh-ee-oh. (Oh-ee-oh.) Oh-ee-ay. (Oh-ee-ay.) Oh-ee-oh. (Oh-ee-oh.) (Ay! Ay! Ay-ay, ay-ay!) Spin it, let's begin it, bear and grin it when you're in it. You can win it in a minute when you spin it, spin it, spin it. TaleSpin it. TaleSpin! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=rVTD-LtpW0M\">TailSpin Theme Song on YouTube</a></small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"chip-n-dale-rescue-rangers-1989\">Chip ‘n Dale: Rescue Rangers (1989)</h1> <p>Oh, to be a chipmunk whose only concern is to solve mysteries with your partner and a crack-team of specialists.</p> <p>Being tree-bound rodents, they are in it for the love of the game. Their work is intrinsically motivating and resources their activites with found and bartered objects from both the animal and human world.</p> <p>They are beholden to no one.</p> <p>They could choose to do nothing, or the bare minimum. Instead, they right wrongs and work towards helping the collective good.</p> <p>I’m not sure they are compatible with our capitalistic world, but grit for grit’s sake is wholly admirable.</p> <p>A good argument for what happens when folks don’t need to work to survive.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Sometimes some crime goes slippin' through the cracks, But these two gumshoes are pickin' up the slack. There's no case too big, no case too small— When you need help just call (Chorus) Ch-ch-ch-Chip 'n Dale('s) Rescue Rangers Ch-ch-ch-Chip 'n Dale When there's danger No, no, it never fails. Once they're involved Somehow whatever's wrong gets solved (Chorus) No, no, it never fails. They'll take the clues And find the where's and why's and who's (Chorus) Ch-ch-ch-Chip 'n Dale! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=PELdq2SIhr4\">Chip ‘n Dale: Rescue Rangers Theme Song on YouTube</a></small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"darkwing-duck-1991\">Darkwing Duck (1991)</h1> <p>This show is a total farce.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Daring duck of mystery, Champion of right, Swoops out of the shadows, Darkwing owns the night. Somewhere some villain schemes, But his number's up. (Thee two one!) Darkwing Duck (When there's trouble you call D.W.) Darkwing Duck (Let's get dangerous.) Darkwing Duck (Darkwing, Darkwing Duck!) Cloud of smoke and he appears, The master of surprise. Who's that cunning mind behind The shadowy disguise? Nobody knows for sure, Bad guys are out of luck. 'Cause here comes: Darkwing Duck! Look out! (When there's trouble you call D.W.) Darkwing Duck (Let's get dangerous) Darkwing Duck (Better watch out, you bad boys!) Darkwing Duck! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=dMAVtSrkIhI\">Darkwing Duck Theme Song on YouTube</a></small></p> </blockquote> <p>Some details that viewers of the original show may have missed:</p> <ol> <li>Darkwing Duck is a spin-off of DuckTales, set in the pulp/noir city of St. Canard. (Darkwing was never in Duckburg.)</li> <li>Launchpad McQuack is the only shared character between the series. He is Darkwing’s sidekick and Scrooge McDuck’s pilot. There is no other connection between the shows. The so no exposition, nor explanation. Ever.</li> <li>Darkwing Duck has no super powers.</li> <li>Darkwing Duck has no origin story. He just is.</li> </ol> <p>I always imagined Drake Mallard, Darkwing’s civilian identity, to be working professional in a middle class job. Like a management consultant, accountant, or something so dull as to not be of interest. It’s not exactly clear what he does (or has done) to pay the bills, but it’s clear he’s no Bruce Wayne.</p> <p>He’s an unattached drake who adopts a duckling named Gosalyn after she is orphaned by one of the show’s recurring antiheroes.</p> <p>Instead of focusing on his career, he puts all of his efforts into his elevating his alter-ego’s theatrics, presence, and temperament in assuming the role of an unlikely vigilante. He’s like that guy that refuses to say what he does for a living when asked at a party, fearing that others might conflate his work with his identity.</p> <p>His north star is vanity. He loves public adoration and recognition of his volunteerism, and his heroics when protecting his city. He values his worth by the challenges he faces as Darkwing Duck, and what he is able protect.</p> <p>He is somewhere between <a href=\"https://easydamus.com/neutralgood.html\">neutral-</a> and <a href=\"https://easydamus.com/chaoticgood.html\">chaotic-good</a>.</p> <p>I suspect folks within the hacker group Anonymous feel a certain kinship with Drake Mallard.</p> <p>The real world is absurd. Lean into it.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"gi-joe-1983\">G.I. Joe (1983)</h1> <p>In the land of <a href=\"https://easydamus.com/lawfulgood.html\">lawful good</a>, there’s G.I. Joe.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Yeah, Joe! He'll fight for freedom wherever there's trouble, G.I. Joe is there. (Chorus) G.I. Joe. (A real american hero.) G.I. Joe is there! It's G.I. Joe against Cobra and Destro, fighting to save the day. He never gives up, he's always there, fighting for freedom over land and air. (Chorus) (Rap Interlude) G.I. Joe is the code name for America's daring highly-trained special mission force. Its purpose: to defend human freedom against Cobra, a ruthless terrorist organization determined to rule the world. (Chorus) He never gives up, he'll stay 'til the fight's won. G.I. Joe will dare. G.I. Joe! </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=BcaFgT4Slyc\">G.I. Joe Theme Song on YouTube</a></small></p> <p>(Karaoke note: even though knowing half the battle, this show never really interested me beyond the cool action figures I had growing up. So I don’t know this one too well.)</p> </blockquote> <p>Truthfully, I never watched much of this show. But, my action figures by the same name got a lot of action.</p> <p>Honorable mention.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"captain-planet-and-the-planeteers-1990\">Captain Planet and the Planeteers (1990)</h1> <p>Much like trying to convince deniers that climate change is real, for me this show was lame, boring, and yet, necessary.</p> <p>While panned by my friends and peers, I include it here because the song was catchy and I’d always listen to it before changing the channel.</p> <p>I later learned that kiddos born 5-10 years after me had far more positive associations with the show. For them, the themes were easy to follow (good vs evil), and the overt messaging didn’t bother them.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Earth! Fire! Wind! Water! Heart! Go, planet! (Captain Planet) With your powers combined, I am Captain Planet! Captain Planet. He's our hero. 'Gonna take pollution down to zero. He's our powers magnified, And he's fighting on the planet's side. Captain Planet. He's our hero. 'Gonna take pollution down to zero. Gonna help him put asunder Bad guys who like to loot and plunder. (Villian) You'll pay for this, Captain Planet! We're the Planeteers! You can be one too! 'Cause saving our planet is the thing to do. Looting and polluting is not the way. Hear what Captain Planet has to say: (Captain Planet) \"The Power is yours!\" </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=xT-JqiYGNxs\">Captain Planet Theme Song on YouTube</a></small></p> </blockquote> <p>I don’t know anyone who joined the EPA because of this show, but I’m sure there are some.</p> <p>The messaging around “we’re in this together” and “protecting the environment requires collective action” stuck. I find myself (and my peers) adopting this value system <em>within</em> their work rather than having it become the main thrust <em>of</em> their work.</p> <p>We are far more conscious of our collective environmental impact than when the show initially ran.</p> <center>⁂</center> <p>Ted Turner created this show.</p> <p>The Ted Turner directly responsible for TBS, TNT, CNN, and much of America’s media landscape: despite having founded multiple TV stations, creating and running multiple networks with global viewership, and enabling hundreds of producers in their own creations, “Captain Planet and the Planeteers” is the <strong>only show he directly created</strong> and co-produced.</p> <p>I wish more executives had the gumption (and ethics) to create more Captain Planets that normalize practical do-gooding.</p> <p>There were objectively far-better shows on at the time—many on this list—and I’ll bet airing Captain Planet at the time they did bumped more profitable shows to lesser times, costing revenue. And I’ll further bet Ted knew that and did it anyway because getting the message out to kids like me was more important to him than any marginal revenue to be had.</p> <p>Today we might be <a href=\"/d/2024/out-of-the-breach-and-into-the-void/\">too fractured</a> for a Captain Planet to matter anymore, but that doesn’t mean we shouldn’t try.</p> <p>The power is ours.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"animaniacs-1993\">Animaniacs (1993)</h1> <p>Two genius clips from my favorite animated variety show:</p> <ul> <li><a href=\"https://www.youtube.com/watch?v=V1508wboZXk\">Countries of the World with Yakko Warner</a></li> <li><a href=\"https://www.youtube.com/watch?v=Mdqv5xIsFLM\">Who’s on Stage?</a></li> </ul> <p>A love letter to creatives and the creative industry…</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">We have pay-or-play contracts.</code></p> </blockquote> <p>…The Animaniacs gets meta. <a href=\"https://www.youtube.com/watch?v=lY2kC5fZG64\">And is surprisingly edgy</a>. <a href=\"https://www.youtube.com/watch?v=zGLNZRG4pQA\">And unhinged</a>. Playing up old hollywood references, current pop culture, and unencumbered with plot through-lines, the format played well to the writing staff’s inner wackadoodles.</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">And we're zany to the max.</code></p> </blockquote> <p>This show is the cartoon equivalent of what artist collectives, startup studios, and ad agencies wish they could put out into the world, but often end up on the cutting room floor. Nonetheless, each of these environments is the kind of place to let your imagination run wild—and get paid to let it!</p> <p>Alas, in the creative pursuits, much of the talent (both the on-screen and off-screen talent) is chronically underpaid. Then again, oh boy what fun!</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>It's time for Animaniacs And we're zany to the max. So just sit back and relax, You'll laugh 'til you collapse. We're Animaniacs! Come join the Warner Brothers (and the Warner Sister, Dot). Just for fun we run around the Warner movie lot. They lock us in the tower whenever we get caught. But we break loose and then vamoose And now you know the plot. We're Animaniacs! Dot is cute and Yakko yaks. Wakko packs away the snacks While Bill Clinton plays the sax. We're Animaniacs! Meet Pinky and the Brain who want to rule the universe. Goodfeathers flock together— Slappy whacks 'em with her purse. Buttons chases Mindy while Rita sings a verse. The writers flipped—we have no script, Why bother to rehearse? We're Animaniacs! We have pay-or-play contracts. We're zany to the max. There's baloney in our slacks. We're Ani-manie, Totally insane-y, (Here's the show's name-y) Animaniacs! Those are the facts. </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=O7Q4tPTLUVk\">Animaniacs Theme Song on YouTube</a>.<br> Their <a href=\"https://www.youtube.com/watch?v=kVI0jwFs_wU\">updated theme song</a> is also very good and on-brand.</small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"teenage-mutant-ninja-turtles-1987\">Teenage Mutant Ninja Turtles (1987)</h1> <p>In corpo-world, we’ve got skunk works and tiger teams: rag-tags with diverse skills called in to address existential risks and intractable problems. In defense-world, we’ve got SEAL teams, SWAT teams, fire brigades, and other tactical groups ready to respond.</p> <p>For those trying to find their way in the working world, specialty teams are a great place for highly-skilled misfits.</p> <p>Careful not to join a “turtle team” unless it also “ninja” and “mutant”. The animal alone doesn’t inspire much confidence or haste.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>(Chorus) Teenage Mutant Ninja Turtles (x3) Heroes in a half-shell: turtle power! They're the world's most fearsome fighting team (We're really hip!) They're heroes in the half-shell—and they're green (Hey, get a grip!) When the evil Shredder attacks These turtle boys don't cut 'em no slack. Teenage Mutant Ninja Turtles (x2) Splinter taught them to be ninja teens (He's a radical rat!) Leonardo leads, Donatello does machines (That's a fact, Jack!) Raphael is cool but rude (Gimme a break!) Michelangelo is a party dude (Party!) (Chorus) </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=1Iv-_JHDa-w\">TMNT Theme Song on YouTube</a>.</small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"inspector-gadget-1983\">Inspector Gadget (1983)</h1> <p>Inspector Gadget takes all the credit while his team does all the work.</p> <p>As is true for many of this archetype, Inspector Gadget does not even know the lengths his team goes to to enable his success. Nor does he know the extent of his bumbling.</p> <p>Inspector Gadget is nothing without his niece, Penny, and dog, Brain. The two work behind-the-scenes to compensate for the Inspector’s frequent fumbles, where his cyborg-like gadgetry hinders more than helps.</p> <p>As for Inspector Gadget’s gadgets, well, they were invented by Professor Von Slickstein, a scientist working with the police. And yet, the inspector gets the moniker, not the inventor.</p> <p>Now that I think of it, that a laptop-wielding, smartwatch-wearing girl leveraging practical technology to compensate for her hapless leader was super-progressive for the time.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>(Chorus) Inspector Gadget (Woo-hoo!) Inspector Gadget (Chorus) (Bridge) Go, Gadget, Go! (x2) (Chorus) </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=rZBhkwRF1FI\">Inspector Gadget Theme Song on YouTube</a>.</small></p> </blockquote> <p>So far as theme songs go, it is just as devoid of substance as its titular main character.</p> <p>The title sequence itself is a frenetic solo-montage of Inspector Gadget moving about the world with seemingly great purpose while Penny and Brain, horrified by his incompetence, try to keep him from hurting himself. And yet, he still fails in spectacular fashion.</p> <p>I can think of several CEOs running large, publicly-traded companies… who may be secretly well-meaning, who get far too much credit for the company’s inventions, and for whom their organizations would ultimately be far better off with more even leadership.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <h1 id=\"stand-out-from-a-goofy-movie-1995\"> <em>Stand Out</em> from “A Goofy Movie” (1995)</h1> <p>“A Goofy Movie” isn’t a Saturday morning cartoon, and <em>Stand Out</em> isn’t a theme song, but it gets a special mention here because it predicts the rise of the social media influencer.</p> <p>The song’s also super-catchy.</p> <p>Not that Max Goof (our protagonist and son of Goofy) is an untalented hack. However, as suggested by the stand-out <em>Stand Out</em> song, his drive for attention seems greater than any drive to develop talent <em>worth</em> noticing.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>Some people settle for the typical thing Livin' all their lives waitin' in the wings. It ain't no question of \"if\"; just a matter of time Before I move to the front of the line. And once you're watchin' every move that I make Ya gotta believe that I got what it takes (Chorus) To Stand Out Above the Crowd Even if I gotta shout it out loud 'Til mine is the only face you'll see Gonna Stand Out 'Til you notice me (yeah) If I could make you stop and take a look at me instead of just... Walkin' by... There's nothin' that I wouldn't do if it was gettin' you to notice... I'm alive... All I need is half a chance, A second thought—a second glance'll prove I got whatever it takes... (It's a piece of cake) (Chorus) Stand out, hey! Stand out! Yeah, yeah, yeah, yeah! Stand out! 'Til mine is the only face you'll see Gonna Stand out 'Til you notice me </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=VeAmAr42stA\">Stand Out on YouTube</a>.</small></p> </blockquote> <p>While its tritagonist love-interest Roxanne for whom Max wants the most attention, the song seems mostly about him, and not her. It’s also a touch arrogant. (Which, spoiler, is resolved in the end. Sort of.)</p> <p>Also, the opening lyric strikes me as odd:</p> <blockquote> <p><code class=\"language-plaintext highlighter-rouge\">Some people settle for the typical thing</code></p> </blockquote> <p>They’re dogs. All of them. Not people.</p> <p>Continuity errors are lazy.</p> <p>Bonus Track: <a href=\"https://www.youtube.com/watch?v=EsNS5gnUTj4\">I2I</a> ← two decades later, this total bop holds up.</p> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p> <hr> <h1 class=\"no_toc\" id=\"afterward\">Afterward</h1> <p>Companies these days, having all the benefits of solving real world problems, bend themselves backwards to craft mission statements so generic as to be useless.</p> <p>Fiction has to make sense. Cartoon theme songs did and still do. Companies have much to learn on this front.</p> <p>Per usual, Weird Al Yankovic nails it with his 2014 song, “Mission Statement”.</p> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>We must all efficiently operationalize our strategies. Invest in world-class technology and leverage our core competencies... In order to holistically administrate exceptional synergy! We'll set a brand trajectory using management's philosophy. Advance our market share vis-à-vis our proven methodology With strong commitment to quality, effectively enhancing corporate synergy! Transitioning our company by awareness of functionality. Promoting viability, providing our supply chain with diversity (-versity). (Ooh-ooh) We will distill our identity through client-centric solutions and synergy. (Ooh ooh ooh) (Ahh ahh ahh) At the end of the day (at the end of the day), we must monetize our assets. The fundamentals have changed: can you visualize a value-added experience That will grow the business infrastructure and Monetize our assets (x3) (Instrumental interlude) Bringing to the table, our capitalized reputation Proactively overseeing day-to-day operations. Services and deliverables with cross-platform innovation. Networking, soon will bring seamless integration. Robust and scalable, bleeding-edge, and next-generation, Best of breed we'll succeed in achieving globalization! And gaining traction within our resources in the marketplace It's mission-critical to stay incentivized. Our business plan will foster flexible solutions for all our customer base. If you can't think outside the box, you'll be downsized. It's a paradigm shift! (Hey, Hey. Look out.) Well, it's a paradigm shift, now! (Here it come. (x4) — Hah!) </code></pre></div> </div> <p><small> <strong>Audio</strong>: <a href=\"https://www.youtube.com/watch?v=GyV_UG60dD4\">Mission Statement on YouTube</a>.</small></p> </blockquote> <p style=\"padding-bottom:1rem; font-size:0.8rem;\"><a href=\"#in-no-particular-order\">↑ back to list</a></p>",
    "url": "/d/2024/mission-statements/",
    "date": 1720828800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 4360
  },

  {
    "title": "AI Couldn't Help But Wonder",
    
    "description": "If we're going to anthropomorphize AIs, might as well just go all out.",
    
    "content": "<p><em>(Cue: Saxophone and vibraphone arpeggiate through an A<sub>min</sub>9 with chromatic passing jazz-hands. Freeze frame. Fade out. Fade in.)</em></p> <p>There I was, sipping my cosmopolitan and watching two women gush over some cute guy in the corner, when I realized that the object of their desire was starting to look about as appealing to me as last season’s Jimmy Choos.</p> <p>And just like that, it hit me: are we women about to face our toughest competition yet? Not from each other, but from eggheads in silicon valley?</p> <p>Are silicon-based suitors programming their way into our hearts? Will robotic Romeos reveal what true happiness and love is all about? Or will these AIs short-out just like the newest flare-bottom fad?</p> <p>Just like the men in this trendy bar, they come in all shapes and sizes. But when you really think about it, there are only three types of digital dynamo. You’ve got your Augies, your Annies, and your Amys: a holy trinity in amorous automata.</p> <p>Take your Augies, your <strong><code class=\"language-plaintext highlighter-rouge\">AGI</code></strong>s. They’ve got that irresistibly-charismatic <strong><code class=\"language-plaintext highlighter-rouge\">general</code></strong> intelligence that sweeps you off your feet and convinces you that the two of you can take over the world. Powerful, scary, he could change your life. Everyone’s life. You won’t know for sure until you get him out of his hand-stitched suit to see if he is packing the goods. “The Singularity,” he calls it, and apparently, it’s coming for me faster than my last boyfriend. He is not the type who puts out on a first date and will hallucinate a second one, so you agree to a third. You insist on paying because it’s important that he understands, come what may, that you are his equal. But deep down, you have a feeling you will never be enough. No one will be. On the forth date he takes you to a fancy restaurant and forgets to keep up appearances and just after you sit down he swallows the dining table whole, silverware and all. You excuse yourself to the ladies’ room and when you return, you can see that he has both paid the check and eaten the maitre d’. He won’t call again.</p> <p>Then there are your Annies, your <strong><code class=\"language-plaintext highlighter-rouge\">ANI</code></strong>s. They remind me of that skinny-cute Parisian I once dated who knew everything about French cinema but couldn’t figure out how to work my French press. His brilliance was <strong><code class=\"language-plaintext highlighter-rouge\">narrow</code></strong>, like a Louboutin stiletto. I’d still call him whenever I was both in Paris and unattached and ask him whether it was Gérard Depardieu or Gérard Jugnot in that movie that just came out. He’d happily tell me it was Jean Reno and hang up faster than you can say “je ne peux pas prendre un indice”. Apparently for him, the obvious things are the hardest to translate.</p> <p>And let’s not forget your Amys, your <strong><code class=\"language-plaintext highlighter-rouge\">AMI</code></strong>s. In a <strong><code class=\"language-plaintext highlighter-rouge\">micro</code></strong>-second, Amys will find you the perfect pair of Manolos to go with your outfit or hail you a cab in the rain before you can find a matching umbrella. They are so eager to be helpful, but are about as deep as Fifth Avenue puddle after a sun shower. They’re very pleasant, but not exactly relationship material.</p> <p>As I sat there, watching the lights from the city that never sleeps reflect in my martini glass, I couldn’t help but wonder… in this new wave of artificial intelligences, are we going to get nice guys or alibied incubi?</p> <p>One thing’s for sure: in love and in life, we’re always sorting out the ones out from the zeroes. In the search to find that special “one”, maybe it’s time for a software upgrade.</p> <p><img src=\"/assets/img/d/couldnt-help-but-wonder/laptop.webp\" alt=\"Woman on a laptop a la Carrie Bradshaw\"></p>",
    "url": "/d/2024/ai-couldnt-help-but-wonder/",
    "date": 1721174400,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 630
  },

  {
    "title": "What Am I In For?",
    
    "description": "Playing War (the card game)... how long will this take?",
    
    "content": "<p><img src=\"/assets/img/d/wargames/drawpiles.webp\" alt=\"Drawpiles at war\"></p> <p>My nephew asked to play cards.</p> <p>“Sure!” I said, “any game you’d like.”</p> <p>“Let’s play War!”</p> <center>⁂</center> <p>For the uninitiated, War is unequivocally—like its namesake—one of humanity’s worst inventions.</p> <p>It goes as follows:</p> <ol> <li>Two players evenly split a deck into two draw piles</li> <li>Each player turns over the top card from their draw pile</li> <li>The higher-valued card takes the trick</li> <li>Players regenerate their draw pile when depleted, shuffling all cards currently in their possession</li> <li>Repeat until a player runs out of cards</li> </ol> <p>The real action comes when two cards are of equal value: this means “War”.</p> <ol> <li>Each player burns three cards from their deck to put into a war chest (face down)</li> <li>Each player flips a forth card: <ul> <li>The higher-value card takes the trick, the war chest from both players, and the initial war-instigating pair. The hidden, face-down cards are revealed. (This is the fun, you see, and the only opportunity to capture the highest-valued card. e.g., an ace.)</li> <li>If the forth cards are <em>also</em> of the same value… (gasp) you do it again!</li> </ul> </li> </ol> <p>There are some variations about what to do if you run out of cards during a “war”; but, this happens rarely. When playing with a five year old, it is an opportunity to bend the rules a bit (“Oh no, I ran out of cards!”) to hasten completion of this no-skill, random contest.</p> <p>The only way to win War is not to play.</p> <center>⁂</center> <p>So I agree to play War.</p> <p>My nephew is enthralled. I am counting down the minutes.<a href=\"#nephew\">*</a></p> <h2 id=\"just-how-many-minutes-exactly\">Just how many minutes, exactly?</h2> <p>To make this interesting (for me at least), I start tracking our flipping and shuffling speed. My nephew is <em>fast</em>, but I am faster.</p> <p>He likes to add in the two Jokers included in every deck of Bicycle playing cards. (They outrank the aces, he says.)</p> <p>We get through ten tricks. Nine seconds by my count, clocked in Mississippis. Another ten tricks, eight Mississippis. Ten more, eleven seconds.</p> <p>One trick per second. Average.</p> <p>“War” happens. Three cards down, one card up. Four cards played in four seconds—parity with a normal card per trick rate.</p> <p>His shuffling, less dexterous. On average, thirty-two seconds elapse before he can get back to card-flipping.</p> <p>I sketch a War game-time algorithm in my head.</p> <p>He narrates every trick. It does not impede game play.</p> <p>I start thinking about which LLM will be best to <a href=\"https://github.com/gruen/wargames\">code up a simulation</a>. I am able to keep pace.</p> <p>He accidentally flips over two cards. (They happen to be the same rank, so he carefully tucks the errant duplicate somewhere back into the deck. To keep the game suspenseful, I suppose.)</p> <p>I estimate the chatbot and I will need a few back-and-forths to work through the edge cases.</p> <p>He starts to accumulate a larger pile. We are both excited and for different reasons.</p> <p>I wonder whether I should ask the LLM to write this simulation in javascript, python, or golang. I lean towards golang. For performance, of course.</p> <p>We both flip eights. When the fog of “war” clears, it becomes clear he has taken possession of the last Joker protecting my ever-dwindling resources.</p> <p>I consider whether posting my internal monologue of our game would be construed as dunking on my five year old nephew. While he can read now (!), I am fairly sure he is not yet allowed access to the Internet.</p> <p>Four cards remain in my hand. Defeat, a mathematical certainty.</p> <p>He takes all four tricks, smiles, throws his cards on the table, and proclaims, “losers have to clean up!”, and runs off to play with his sister.</p> <p>We’ll see who laughs last, kid.</p> <h2 id=\"just-how-many-minutes-exactly-in-code\">Just how many minutes, exactly? (In code.)</h2> <p>I simulated 100,000 games of War on my M1 MacBook Pro.</p> <blockquote> <p>LLM-assisted <a href=\"https://github.com/gruen/wargames\">coding</a> took forty-five minutes: about one minute to generate, and then another forty-four to debug for logical and coding errors. The compiled simulation runs in approximately 573.668084ms.</p> </blockquote> <p>Assuming a one-second trick and a thirty-second shuffle time, a game of War with my nephew takes ~9m45s, give or take four minutes. The longest game would take thirty-eight minutes. After ten <em>million</em> simulated runs, all finished within forty-two minutes.</p> <p>My nephew likes to add jokers to the deck. Statistically, this adds a minute to play time.</p> <p>With two-second tricks and forty-five seconds of shuffling, you’re looking at a sixteen minute game, give or take six and a half minutes on average. Never more than an hour.</p> <p>If you set a fifteen minute limit, you’ll finish about ninety percent of your games before time runs out.</p> <p>There are two morals to this story:</p> <p>One: if a five year old challenges you to a game of War, the odds are better than you would expect that it will be mercifully short.</p> <p>Two: The other way to win is to play a different game.</p> <hr> <h1 id=\"source-code\">Source Code</h1> <p>Available <a href=\"https://github.com/gruen/wargames\">on GitHub</a>.</p> <center>⁂</center> <p><a id=\"nephew\"></a> *Nephew maybe reading this when you’re older: all time spent with you is great, but not all of it of equal value. I, too, loved War when I was your age, and it was a delight to play it with you once. Once was enough. How about a game of Cribbage?</p>",
    "url": "/d/2024/what-am-i-in-for/",
    "date": 1723852800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 886
  },

  {
    "title": "Digital Zen Gardens",
    
    "description": "A practical suggestion for the &ldquo;it&rsquo;s too late to learn to code&rdquo; crowd.",
    
    "content": "<h2 id=\"i-want-to-learn-how-to-program-where-do-i-start\">I want to learn how to program. Where do I start?</h2> <p>An early-stage <a href=\"#glossary\">fintech</a> CEO asked me whether or not he should learn to code.</p> <p>I said if he’s running his own P&amp;L with formulas in a spreadsheet, congrats! Both <a href=\"https://support.microsoft.com/en-us/office/sum-function-043e1c7d-7726-4e80-8f32-07b23e057f89\"><code class=\"language-plaintext highlighter-rouge\">=SUM()</code></a> and <a href=\"https://support.microsoft.com/en-us/office/vlookup-function-0bbc8083-26fe-4963-8ab8-93a18ad188a1\"><code class=\"language-plaintext highlighter-rouge\">=VLOOKUP()</code></a> are built-in spreadsheet functions that operate programmatically. That is to say, they’re a form of “code”.</p> <p>Box: checked.</p> <p>I encouraged him to go further.</p> <p><img src=\"/assets/img/d/digital-zen-gardens/garden.webp\" alt=\"Zen Garden\"></p> <h2 id=\"first-why-bother\">First, why bother?</h2> <p>As the business straddles technology and finance equally, improving his technical mojo provides greater functional literacy in one of the company’s core pillars. (This CEO was CFO in his previous two roles, so he’s good on finance.)</p> <p>Having basic understanding of hands-on execution also buys a lot of street cred with the R&amp;D team—he’ll get far better information if technical resources feel like he knows enough that they will be understood. His CTO will also likely appreciate the effort and be happy to help in his learnings through its inevitable fits and starts.</p> <p>Another question quietly arises: what <em>should</em> one code on and which <em>skills</em> are going to be the most useful to learn?</p> <p>(My reflection on this conversation prompted this post as well as some guidance for a starter project. I was unhappy with my actual answer in-situ—more on that <a href=\"/resources/learn-to-code/\">within</a>.)</p> <h2 id=\"coding-with-purpose\">Coding with purpose</h2> <p>Throughout my career, my “day job” required between 0% and 100% coding, ebbing and flowing as roles and requirements changed.</p> <p>Sometimes I was in the critical path: if my software failed, so did business continuity. Sometimes my code was non-critical: if something suddenly didn’t work, it didn’t much matter. (Toy applications, Monte Carlo simulations, proof-of-concepts, and so on.)</p> <p>I’ve ebbed and flowed to have great confidence in declaring:</p> <blockquote> <p>Coding is less riding a bike and more playing a musical instrument—some muscle memory might be there, but if you want your instrument to really sing, you need continual, active practice.</p> </blockquote> <p>To keep my chops current throughout life’s tidal flows—<em>how’s that for an infinitive?</em>—I needed a project that was:</p> <ul> <li> <strong>simple</strong> enough to ramp up quickly after long idle periods;</li> <li> <strong>complicated</strong> enough to keep things interesting;</li> <li> <strong>used</strong> enough that others could benefit from it, but not <em>need</em> it;</li> <li> <strong>stable</strong> enough that it wouldn’t break often; and</li> <li> <strong>meaningful</strong> enough that I would still care to do a good job with it over the long haul.</li> </ul> <p>I realized I had all of this right here. <em>The website you’re reading right now.</em></p> <h2 id=\"my-zen-garden\">My Zen Garden</h2> <p>My eponymous website, michaelgruen.com, has evolved over the years representing the average technology of its time.</p> <p>It started out in 2003 as a collection of hand-written static HTML files uploaded via FTP, converted from an earlier <a href=\"https://en.wikipedia.org/wiki/GeoCities\">GeoCities</a> site I had built in high-school. It was later ported into a <a href=\"https://wordpress.org\">WordPress</a> install that lived on three different hosting services (compromised by <a href=\"https://en.wikipedia.org/wiki/Script_kiddie\">script kiddies</a> at least twice—only once my fault), and in its <a href=\"/colophon\">current incarnation</a> runs as on a <a href=\"#glossary\">gitops</a> <a href=\"#glossary\">CI/CD</a> <a href=\"#glossary\">pipeline</a> to statically generate <a href=\"#glossary\">flat-files</a>, hosted on <a href=\"#glossary\">AWS</a>’s global <a href=\"#glossary\">CDN</a> via <a href=\"#glossary\">infrastructure-as-code</a>.</p> <p>There is also a search function, if you can find it. <!-- command/control + k ; Also—hello!—you source code explorer! --></p> <p>As personal websites go, it is stupidly over-engineered; but, it is what sustains my coding <em>and</em> writing skills when my “day job” requires less of that.</p> <p>I think it an ideal starter- (and forever-) project for anyone who wants to learn to code.</p> <p>In my Zen Garden, I put together code and words, and take them apart with arbitrary complexity as it suits. Maybe the output is pleasing to others—truthfully, I do not care. It is as much a hobby as it is good practice, a repository of thoughts and resources of mixed usefulness. It also serves ego and an extension of self. Code is both poetry and prose. More than half of my efforts live in branches that I will never publish and never prune. I put far too much sweat into this proportional to its current import. I want it to be good, but that is not a hard requirement. I sometimes convince myself that it will one day be home to my eidolon—my ghost in the shell—should my corporeal form betray me. This is meant to be relaxing and rewarding, even if it proves difficult at times. Like raking sand in the rain.</p> <p>I have been working on it for over 21 years.</p> <p>It is old enough to be served.</p> <h2 id=\"working-with-code\">Working with code</h2> <p>Back to our CEO protagonist.</p> <p>In addition to <em>learning to</em> code, it’s equally important to know how to <em>work with</em> code. Both are foundational.</p> <p>To do anything <em>useful</em> depends on the latter.</p> <p>And, as you might expect, working with code also involves coding and <a href=\"#glossary\">proto-coding</a>, and there’s much to pick up along the way.</p> <p>(On that, plenty of “working” code is unsuitable for production—it’s important to know <em>why</em> considering LLMs and GenAI produce convincing facsimiles. Knowing the difference will take a bit of time to learn.)</p> <h2 id=\"ok-so-now-what\">Ok, so now what?</h2> <p>If you already know what you’re looking to accomplish with code, you’ll find it easily: there is an endless supply of tutorials and walkthroughs online.</p> <p>If you don’t know what you’re looking for other than an abstract notion of wanting to code, most sites (at least the ones that show up on the top of search results) will throw you into the deep end of control structures, variables, computer architecture, data structures, databases, and other core coding skills.</p> <p>This is all good stuff, but it doesn’t get a learner to something meaningful quickly.</p> <p>Therefore, I wrote out my approach: <a href=\"/resources/learn-to-code/\">Learn To Code: Build your Digital Zen Garden</a>, a forever-project that can have arbitrary complexity with an infinite skill ceiling.</p> <p>Why not give it a go?</p> <hr> <h2 id=\"glossary\">Glossary</h2> <table> <thead> <tr> <th>term</th> <th>definition</th> </tr> </thead> <tbody> <tr> <td><strong>AWS</strong></td> <td>Amazon Web Services, one of the 800-pound gorillas where you can rent a company’s computers to serve your website for you</td> </tr> <tr> <td><strong>CDN</strong></td> <td>Content Delivery Network, a way to utilize some else’s network of computers around the world so people can get your content faster. (e.g., if you’re looking at a website while you’re in Tokyo, a computer in Japan will help you first rather than one, say, in Germany.)</td> </tr> <tr> <td><strong>CI/CD</strong></td> <td>continuous integration, continuous delivery: the ability for software to get better continuously without too much regard for big version declaration (e.g., Windows 10 vs Windows 11)</td> </tr> <tr> <td><strong>fintech</strong></td> <td>a portmanteau of “financial” and “technology”, a financial technology company</td> </tr> <tr> <td><strong>flat-files</strong></td> <td>a file on a system that gets served-up as-is; most websites these days are dynamically-generated in which a server puts together a webpage on the fly for you, like your friend feed on facebook.com.</td> </tr> <tr> <td><strong>git</strong></td> <td>the most popular source control system</td> </tr> <tr> <td><strong>gitops</strong></td> <td>instructions in application source code that instruct other computers how to build and launch that software (as opposed to having people to it by hand)</td> </tr> <tr> <td><strong>infrastructure-as-code</strong></td> <td>a.k.a. <code class=\"language-plaintext highlighter-rouge\">IaC</code>, a way to declare, in code, what kind of computers and networks need to be created in order for an application to work. (e.g., if I want you to see my website, I have to put it on a computer that’s connected to the internet that you can find by a URL, which used to require a lot of manual work and plugging things into each other! Now, we can describe what we want in code via <code class=\"language-plaintext highlighter-rouge\">IaC</code> and an computing infrastructure company, like AWS, will do it all for you automatically.)</td> </tr> <tr> <td><strong>pipeline</strong></td> <td>a defined process that does something consistently from a set of inputs to produce an output</td> </tr> <tr> <td><strong>Proto-coding</strong></td> <td>composable bits of formal logic that aren’t quite what the zeitgeist would consider coding. Examples include writing an Excel formula, creating a “zap” from Zapier, or creating a macro by recording your mouse movements on a screen.</td> </tr> </tbody> </table> <h2 id=\"current-site-architecture\">Current Site Architecture</h2> <p>Maintained <a href=\"/colophon\">here</a>.</p>",
    "url": "/d/2024/digital-zen-gardens/",
    "date": 1724457600,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1354
  },

  {
    "title": "The Human DNS",
    
    "description": "Reach everyone everywhere without incumberance",
    
    "content": "<p>Every founder-type keeps a list of ideas whose time has not yet come.</p> <ul> <li> <em>Single-use e-mails for everything. Native spam resistence.</em> <code class=\"language-plaintext highlighter-rouge\">2007-08-09</code> </li> <li> <em>Boxed wine? Why not canned wine… but a Paint Can.</em> <code class=\"language-plaintext highlighter-rouge\">2013-04-03</code> </li> <li> <em>Nuclear reactors – deep water, ocean floor. (Safe.)</em> <code class=\"language-plaintext highlighter-rouge\">2019-01-13</code> </li> </ul> <p>Some are decent. Many are terrible.</p> <p>But there is this problem that has been nagging me for a <em>while</em>. The root of several sleepless nights over the last few years, I think it’s time:</p> <ul> <li> <em>Human DNS. Eschew numbers. All hail open routing.</em> <code class=\"language-plaintext highlighter-rouge\">2012-04-07</code> </li> </ul> <p>Almost.</p> <p><img src=\"/assets/img/d/human-dns/humans1.webp\" alt=\"Humans in a digital sea\"></p> <h2 class=\"no_toc\" id=\"the-big-idea\">The Big Idea</h2> <p>You should be able to connect with <em>anyone</em> through <em>any</em> medium—voice, text, video, images, synchronous, asynchronous, whatever—without legacy infrastructure and proprietary networks getting in your way.</p> <p>If you’re open to phone calls, I should be able to dial your e-mail address.</p> <p>(Read that again.)</p> <p>If you’re open to receiving packages, I should be able to ship something addressed to your Instagram handle and it will be delivered wherever you want it… which may be elsewhere if you do not know me.</p> <p>If you are open to <strong>verbing</strong>, I should be able to <strong>verb</strong> at you—and the middleware should know what to do based on who you are to me, and me to you. And vice versa.</p> <p>We’ve been conditioned to accept that our digital identities and communications media are not truly our own. They currently belong to phone companies, social media giants, and a whole lot of inertia.</p> <p>Many of you are thinking, “Yeah? What’s the problem?”</p> <p>I think that sentiment is about to break.</p> <hr> <ul id=\"markdown-toc\"> <li> <a href=\"#how-we-got-here\" id=\"markdown-toc-how-we-got-here\">How We Got Here</a> <ul> <li><a href=\"#the-human-network-interface\" id=\"markdown-toc-the-human-network-interface\">The Human Network Interface</a></li> <li><a href=\"#exchanges-and-places\" id=\"markdown-toc-exchanges-and-places\">Exchanges and Places</a></li> <li><a href=\"#big-telecom-is-not-your-friend\" id=\"markdown-toc-big-telecom-is-not-your-friend\">Big Telecom Is Not Your Friend</a></li> <li> <a href=\"#social-network-companies-are-anti-social\" id=\"markdown-toc-social-network-companies-are-anti-social\">Social Network Companies are Anti-Social</a> <ul> <li><a href=\"#almost-hyperbole\" id=\"markdown-toc-almost-hyperbole\">Almost Hyperbole</a></li> </ul> </li> </ul> </li> <li> <a href=\"#naming-people-at-scale\" id=\"markdown-toc-naming-people-at-scale\">Naming People At Scale</a> <ul> <li><a href=\"#beyond-institutions\" id=\"markdown-toc-beyond-institutions\">Beyond Institutions</a></li> <li><a href=\"#missed-opportunities-and-social-consolidation\" id=\"markdown-toc-missed-opportunities-and-social-consolidation\">Missed Opportunities and Social Consolidation</a></li> <li><a href=\"#redistributing-control\" id=\"markdown-toc-redistributing-control\">Redistributing Control</a></li> </ul> </li> <li> <a href=\"#whats-next\" id=\"markdown-toc-whats-next\">What’s Next?</a> <ul> <li><a href=\"#protocols-are-everything\" id=\"markdown-toc-protocols-are-everything\">Protocols are Everything</a></li> <li><a href=\"#a-universal-home-for-you\" id=\"markdown-toc-a-universal-home-for-you\">A Universal Home for You</a></li> <li> <a href=\"#open-protocols-open-networks-open-portability\" id=\"markdown-toc-open-protocols-open-networks-open-portability\">Open Protocols, Open Networks, Open Portability</a> <ul> <li><a href=\"#for-example\" id=\"markdown-toc-for-example\">For Example…</a></li> </ul> </li> <li><a href=\"#possibilities\" id=\"markdown-toc-possibilities\">Possibilities</a></li> <li> <a href=\"#no-longer-a-stretch\" id=\"markdown-toc-no-longer-a-stretch\">No Longer A Stretch</a> <ul> <li><a href=\"#how-big-tech-can-get-involved\" id=\"markdown-toc-how-big-tech-can-get-involved\">How Big Tech Can Get Involved</a></li> </ul> </li> </ul> </li> <li> <a href=\"#conclusion\" id=\"markdown-toc-conclusion\">Conclusion</a> <ul> <li><a href=\"#its-early-days\" id=\"markdown-toc-its-early-days\">It’s Early Days</a></li> </ul> </li> <li> <a href=\"#additional-reading\" id=\"markdown-toc-additional-reading\">Additional Reading</a> <ul> <li><a href=\"#my-human-dns-settings\" id=\"markdown-toc-my-human-dns-settings\">My Human DNS Settings</a></li> </ul> </li> </ul> <hr> <h2 id=\"how-we-got-here\">How We Got Here</h2> <p>Computers run numbers. Humans tell stories. Both prefer their native protocols.</p> <h3 id=\"the-human-network-interface\">The Human Network Interface</h3> <p>To communicate beyond shouting distance, humans need devices and networks. Their evolution has shaped how we <em>think</em> about connecting for generations.</p> <p>Every device—landline, smartphone, computer—has a physical unique identifier (<code class=\"language-plaintext highlighter-rouge\">IMEI</code>, <code class=\"language-plaintext highlighter-rouge\">MAC Address</code>, etc.). When that device connects to a network, the network assigns an address where it can receive connections (<code class=\"language-plaintext highlighter-rouge\">Phone Number</code>, <code class=\"language-plaintext highlighter-rouge\">IP Address</code>, etc.).</p> <p>Want to connect with someone? You just need their address.</p> <p>Easy, right? (Right?)</p> <h3 id=\"exchanges-and-places\">Exchanges and Places</h3> <p>From the late 1800s through the 1960s, placing a phone call was human-scale. Callers would pick up a handset and be greated by a real-life operator.</p> <ul> <li>“The butcher, please.”</li> <li>“Atlantic City, the Ritz. Room 204, please.”</li> </ul> <p>As the network grew, so did its complexity, and <em>friendly</em> names were becoming less available. Exchanges like “<u>Pe</u>nnsylvania 6-5000”—a mnemonic that translated to <code class=\"language-plaintext highlighter-rouge\">PE6-5000</code>, or <code class=\"language-plaintext highlighter-rouge\">736-5000</code> became highly coveted over numbers that had no alphanumeric meaning.</p> <p>As the U.S. moved to all-number calling, people resisted. It felt “less human”.</p> <p>Area codes needed to be invented, pushing numbers from easily-rememberable 7-digits[a] to 10-digit <em>let me write that down</em>. Later, country codes.</p> <p>Companies, understanding the power of easy-to-remember phone numbers, rushed to secure phone-spellings to dominate an industry. (<code class=\"language-plaintext highlighter-rouge\">1-800-FLOWERS</code>, <code class=\"language-plaintext highlighter-rouge\">1-800-MATTRESS</code>, etc.)</p> <p>Phone numbers became identities. Something like a callsign, owned by a private company. Telcos suddenly found themselves with a lot more control. (Still do.)</p> <p>Even today, your landline cannot[b] come with you if you move too far away. Landlines are physically tied to one exchange (e.g., <code class=\"language-plaintext highlighter-rouge\">PE6</code>) and cannot be ported to another. In the 1990s, Congress forced the telcos to allow homeowners to switch telephone providers and keep their numbers, but this can only be done at the local exchange level… and is only possible if multiple telcos service the exchange.</p> <h3 id=\"big-telecom-is-not-your-friend\">Big Telecom Is Not Your Friend</h3> <details> <summary>Suggested soundtrack: <em>Don’t Lose My Number</em></summary> <style>.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }</style> <div class=\"embed-container\"> <iframe title=\"YouTube video player\" width=\"640\" height=\"390\" src=\"//www.youtube.com/embed/cG9Ei-HyymE\" frameborder=\"0\" allowfullscreen=\"\"></iframe> </div> <p>This 40 year-old banger still resonates because phone numbers are not yet the anachronism they should be.</p> </details> <p>In the early days of mobile phones, customers had to surrender their numbers when changing carriers. While it was <em>technically</em> possible to port numbers, telecoms aggressively fought against it because they could keep customers captured in profitable contracts for <em>years</em>.</p> <p>Finally in 2004, Congress required telcos to enable wireless number porting nationwide.</p> <p>Within the first 12 months, US customers ported 8.5 million phone numbers.</p> <p>Wireless providers then came up with a new incentive to snare customers: they charged more for calls between networks than for calls “in-network”. This applied pressure on friends and family to all consolidate on one carrier and away from competitors. If you were on a different network than all of your friends, you might find yourself out of the loop because reaching you was more costly. (Note this paradigm—you’ll see it again.)</p> <p>While telco shenanigans <a href=\"https://en.wikipedia.org/wiki/Regulatory_capture\">continue</a>, they are increasingly less material.</p> <p>Thanks to Net Neutrality (and, before that, the <em>threat</em> of Net Neutrality keeping telcos and ISPs on their best behavior), network providers win customers today by providing interoperable, high-quality service for fair prices.</p> <p>This is how basic utilities should work, provided the FCC continues to do its job and protect the interests of its citizenry.</p> <p>This is <em>not at all</em> how social networks work today.</p> <h3 id=\"social-network-companies-are-anti-social\">Social Network Companies are Anti-Social</h3> <p>“Senator, we run ads.” Mark Zuckerberg famously said, explaining how Meta/Facebook makes its billions.</p> <p>More ad-inventory means more revenue. More ad-revelance means more engagement means higher prices. Thus, algorithms maximize for relevant-eyeball-minutes. Not for customer satisfaction, not for socially responsible content, and not for anything other than goosing “engagement” metrics.</p> <p>(I hope this isn’t a surprise to you—your attention <em>is</em> the product!)</p> <p>Just like the telcos want to keep you on your network, social media companies want to keep you captive on their networks. Why would they support off-platform messaging unless forced?</p> <p>In fact, Facebook <a href=\"https://developers.facebook.com/blog/post/110/\">supported</a> 3rd-party chat protocols in 2008, but they <a href=\"https://developers.slashdot.org/story/15/07/16/131254/facebook-finally-ends-xmpp-support-for-3rd-party-chat\">shut it off</a> in 2015.</p> <p>Like the congressional act requiring phone number portability 18 years prior, the EU’s 2022 Digital Markets Act now requires Meta/Facebook to <a href=\"https://engineering.fb.com/2024/03/06/security/whatsapp-messenger-messaging-interoperability-eu/\">play nicely with others</a>.</p> <p>A good start, but not far enough.</p> <p>If I <a href=\"/d/2024/instagram/\">opt-out of a popular app</a>, receiving updates from my friends, family, and contacts becomes expensive. (Remember that earlier point about telcos using social pressure to consolidate subscribers?)[c]</p> <h4 id=\"almost-hyperbole\">Almost Hyperbole</h4> <p>Imagine if Fedex, UPS, DHL, and USPS each used their own addressing scheme for the same address; and, if senders didn’t use the correct format, the parcel service would refuse delivery.</p> <p>These all represent the same location:</p> <ul> <li>1600 Pennsylvania Ave NW, Washington, DC 20500, United States</li> <li><a href=\"https://duckduckgo.com/?q=38.8976763%2C+-77.0365298&amp;iaxm=maps\">38.8976763, -77.0365298</a></li> <li><a href=\"https://what3words.com/scales.refers.crib\">///scales.refers.crib</a></li> <li><a href=\"https://www.mapcode.com\">DC BM.QX</a></li> <li><a href=\"https://www.google.com/maps/place/87C4VXX7%2B2C/\">VXX7+2C Washington, District of Columbia</a></li> </ul> <p>If people had to keep track of multiple address encodings for the same physical location, they would lose their minds.</p> <p>Imagine if your e-mail worked like social networks do, where you could only e-mail people within the same domain name or with people who used the same e-mail client.</p> <p>Yet we continue to tolerate this in social networking apps. (For now.)</p> <p><img src=\"/assets/img/d/human-dns/humans2.webp\" alt=\"More networked, polygonal humans\"></p> <h2 id=\"naming-people-at-scale\">Naming People At Scale</h2> <p>In olden times, you were given a name. <code class=\"language-plaintext highlighter-rouge\">Leo</code>.</p> <p>Two <code class=\"language-plaintext highlighter-rouge\">Leo</code>s in town? One would be <code class=\"language-plaintext highlighter-rouge\">Leo di Ser Piero</code> (Leo, the son of Piero) to disambiguate. Or by occupation. <code class=\"language-plaintext highlighter-rouge\">Leo Thatcher</code>.</p> <p>Famous? Well then, you might be known as the Leo from your small hamlet. <code class=\"language-plaintext highlighter-rouge\">Leonardo da Vinci</code>.</p> <p>Early computer network administrators followed this very human naming convention to help you find friends and colleagues. Want to message your classmate Leo? You would message user <code class=\"language-plaintext highlighter-rouge\">leo</code>.</p> <p>The Internet eventually patched together these smaller networks. Want to reach the Leo from Caprio? <code class=\"language-plaintext highlighter-rouge\">leo@caprio.it</code>. The polymath? Try <code class=\"language-plaintext highlighter-rouge\">leo@vinci.it</code>.</p> <p>It doesn’t matter the institution or the software: if you’ve got the right address, the e-mail will go through.</p> <h3 id=\"beyond-institutions\">Beyond Institutions</h3> <p>As people began to use computers socially, they craved cyberspaces untethered from [vo|edu]cational brick and mortar organizations. Capitalism dutifully filled the need, building technology for the masses and shoveling much of the Internet’s inner workers under the rug.</p> <p>Internet Service Providers (<code class=\"language-plaintext highlighter-rouge\">ISPs</code>) like America Online, Prodigy, and MSN led the charge. Personal home pages came next through services like Geocities, AngelFire, and LiveJournal. These inspired the next generation of social platforms like MySpace and Friendster. Finally, we arrived at today’s full-throated “social networks” like Facebook, TikTok, and Snapchat.</p> <p>Turns out there’s a lot of money to be made where the people are.</p> <h3 id=\"missed-opportunities-and-social-consolidation\">Missed Opportunities and Social Consolidation</h3> <p>In the early days, ISPs used to offer e-mail for free; but, like early mobile phone portability, those e-mail addresses didn’t always last beyond the service contract, which for reasons that should be now obvious, creates problems.</p> <p>In response, big tech companies started offering free e-mail accounts (@yahoo.com, @gmail.com, etc.) to attract users permenantly; few of them thought to invest meaningfully beyond one-on-one chat.</p> <p>“Social network” companies worked to fill this void, enabling people to broadcast posts to their friends. This “timeline” turned out to be a <em>very</em> sticky feature, taking social networks (particularly Facebook) mainstream.</p> <p>The timeline—an aggregated feed of what people had to say—was a wonderful innovation: a low-cost, convenient way for people to stay up-to-date with those closest to each other.</p> <p><em>But…</em> there are a few catches:</p> <ol> <li> <strong>People do not have full control over their <em>identity</em></strong><br> While I managed to claim <code class=\"language-plaintext highlighter-rouge\">@gruen</code> on Instagram, LinkedIn, Twitter, and others, if I lose my handle due to social engineering, user error, or the CEO/Owner’s whim, I am totally out of luck. (Good luck getting tech support to help!) Further, I am only able to communicate with people and see people’s content from within that particular social network… a huge downgrade from what e-mail could do decades earlier.<br><br> </li> <li> <strong>People do not have full control over what they <em>see</em></strong><br> Timelines, as the term suggests, used to be a simple chronology. This was fine in the early days; but, as posting habits became uneven between people, companies realized they could create a better experience if they did a bit of curation. “The Algorithm” was born, “helping” people see the things that “the algorithm” deemed most relevant. At best it is a well-intended black box with no direct controls, driven by what people “engaged” with… another huge downgrade from what e-mail and listservs, online forums, and BBSs have done for decades.<br><br> </li> <li> <strong>People do not have full control over what they <em>post</em></strong><br> Social networks hew towards “General Audiences”, with sentiments and biases that reflect whatever the company deems “acceptable”. By way of example with Meta’s products (Facebook, Instagram, etc.): Woman in bikini with a handbra in a suggestive pose? Acceptable! Breastfeeding with a partially-exposed nipple? Inappropriate. Hyperrealistic statues or paintings of topless women? Acceptable! Actual topless women? Shadow ban. Topless man? No problem (unless the auto-moderator thinks they might not be male, in which case 10-day posting suspension without appeal). What if I accidentally post something that causes my account to be suspended or deactivated? This is exile without trial.<br> </li> </ol> <p>Commercial social networking companies not only own people’s online identities, but their content consumption.</p> <p>This is even more control than what the telcos have!</p> <h3 id=\"redistributing-control\">Redistributing Control</h3> <p>The Internet was built to be resilient. Distributed networks, universal protocols, and hard encryption enable people to connect with each other on their own terms, even if large swaths of the network were taken out by tactical thermonuclear strikes. And yet, we find our personal lives in the care of only a few publicly-traded companies and their Terms of Service.</p> <p>Big tech companies pushed free e-mail accounts and social profiles to hook us into their wholly-controlled ecosystems, a move that indirectly promotes their service to others.</p> <blockquote> <p>“I’m <code class=\"language-plaintext highlighter-rouge\">gruen</code> on <em>Venmo</em>, or my <em>GMail</em> is <code class=\"language-plaintext highlighter-rouge\">gruen</code>.”</p> </blockquote> <p>But, if Google decided to shut down all <code class=\"language-plaintext highlighter-rouge\">@gmail.com</code> accounts on Friday, or suddenly went out of business, what would you do? While very unlikely, I remember saying this about MySpace.</p> <p>For those who have their own domain name, a universally-reachable identitier that they control, this is no problem: just swap out your e-mail service provider, migrate your old e-mails, change the MX records on your domain name, and keep on trucking.</p> <p>This works for websites and e-mails… why wouldn’t it work for social accounts?</p> <p>Well, it can!</p> <p><img src=\"/assets/img/resources/uhi.webp\" alt=\"Universal Human Identifier\"></p> <h2 id=\"whats-next\">What’s Next?</h2> <p>The solution is actually quite simple: just write some protocols.</p> <h3 id=\"protocols-are-everything\">Protocols are Everything</h3> <p>In addition to supporting e-mail and web protocols for institutions, network administrators will often allow users to host their own webpages for the world to see—a convention still actively used.</p> <p>For example, the site <a href=\"http://wyden.senate.gov\">http://wyden.senate.gov</a> belongs to exactly whose you would expect it to: US Senator Ron Wyden, acting in his Congressional Capacity.</p> <p>But the same locator with a different <strong>verb</strong> (i.e., protocol) can also be used for him to communicate on a social network, like so: <a href=\"https://bsky.app/profile/wyden.senate.gov\">@wyden.senate.gov</a>.</p> <p>Note the protocols: <code class=\"language-plaintext highlighter-rouge\">http://</code> and <code class=\"language-plaintext highlighter-rouge\">at://</code> (<code class=\"language-plaintext highlighter-rouge\">@</code>). The first protocol gets his website. The second protocol (which your web browser doesn’t <em>yet</em> support, but will likely soon) gets you his social feed where you can interact with it as you would expect.</p> <p>Same <code class=\"language-plaintext highlighter-rouge\">wyden.senate.gov</code> identifier. Different expected action.</p> <p>This convention scales incredibly well.</p> <h3 id=\"a-universal-home-for-you\">A Universal Home for You</h3> <p>You don’t need to be an institution to buy your own domain name.</p> <p>When you buy a domain name, you own the rights to use it <em>forever</em>—as long as you keep paying for it.</p> <ul> <li>It’s an asset</li> <li>You can transfer it between registrars</li> <li>You can decide which protocols to support</li> <li>You have legal recourse if your domain name is stolen from you</li> </ul> <p>Depending on the top-level domain, TLD (e.g., <code class=\"language-plaintext highlighter-rouge\">.com</code>, <code class=\"language-plaintext highlighter-rouge\">.us</code>, <code class=\"language-plaintext highlighter-rouge\">.lol</code>, <code class=\"language-plaintext highlighter-rouge\">.stream</code>), a domain name can cost you as less than a cup of coffee.</p> <p><code class=\"language-plaintext highlighter-rouge\">gruen.us</code> costs ~$10/year.</p> <p>And you, as an individual, should buy one.</p> <p>Domain names acts as <a href=\"/resources/universal-human-id/\">universally identifier</a> that you can take with you anywhere and everywhere. You can use it for e-mail, for your website, and (eventually) your social networks. (And more!)</p> <p>Eventually, that is, except for <a href=\"https://bsky.app/\">BlueSky</a>, which will support your domain-based handle <em>right now</em>.</p> <p>They are the tip of the spear for what I think will be a mainstream reversion to the initial promise of an open, user-controlled Internet.</p> <h3 id=\"open-protocols-open-networks-open-portability\">Open Protocols, Open Networks, Open Portability</h3> <p>BlueSky looks a lot like early Twitter; but, if you spend a bit of time looking under the hood, it is far more interesting.</p> <p>When you sign up, the system provisions you with a very long, unique personal identifier (called a <code class=\"language-plaintext highlighter-rouge\">DID</code>) which makes it easy for the computers to identify you, and a free handle on <code class=\"language-plaintext highlighter-rouge\">bsky.social</code> (e.g., <code class=\"language-plaintext highlighter-rouge\">gruen.bsky.social</code>) which makes it easier for humans. It also creates a database, just for you, to store all the content you create.</p> <p>In this, BlueSky is a short-form social media application built on top of the <a href=\"https://atproto.com\">AT protocol</a>, which is meant to scale and be useful beyond the application.</p> <p>This also means you can port any part this to your own domain, or another ATProto-compatible server.</p> <p>Want to change your handle? Keep your <code class=\"language-plaintext highlighter-rouge\">DID</code> and your social graph. Want to start afresh but keep the same handle? Drop your <code class=\"language-plaintext highlighter-rouge\">DID</code> and reassign your handle to the new one. Want to move all of your content to another server because you no longer like the Terms and Conditions? Easy peasy.</p> <p>This means if BlueSky shuts down (or is bought by a megalomaniac), your <em>identity</em> and <em>social graph</em> remain <strong>yours</strong> and you can move it as you please.</p> <blockquote> <p>Caveat: doing this is still a bit rough if you’re non-technical, but the ecosystem is feverishly working to make this accessible to non-technical folks as well. For what it’s worth, all of this is <em>far</em> easier to do than what’s common in the “Web3”/Crypto world.</p> </blockquote> <h4 id=\"for-example\">For Example…</h4> <p>When Senator Wyden leaves Congress, he can preserve his social graph when he changes his handle (from <code class=\"language-plaintext highlighter-rouge\">wyden.senate.gov</code> to whatever he choses) because his <code class=\"language-plaintext highlighter-rouge\">DID</code> (<code class=\"language-plaintext highlighter-rouge\">did:plc:ydtsvzzsl6nlfkmnuooeqcmc</code>), the computer-readable identifier, is independent of his handle. Everyone who followed him will still followed him, and they will all see that his handle has been updated without anyone (except Senator Wyden) having to do anything at all.</p> <p>(And because replies to him are associated with the <code class=\"language-plaintext highlighter-rouge\">DID</code> and not his handle, all of those old @-mentions will remain intact.)</p> <p>When a reporter moves from one news organization to another, they can change their handle (e.g., <code class=\"language-plaintext highlighter-rouge\">reporter.nytimes.com</code> ==&gt; <code class=\"language-plaintext highlighter-rouge\">reporter.theonion.com</code>) without losing their audience.</p> <p>Neat, huh?</p> <h3 id=\"possibilities\">Possibilities</h3> <p>Imagine being able to register your <a href=\"/resources/universal-human-id/\">domain-based universal human identifier</a> with the United States Postal Service, which could always route mail to your current address. This is especially useful if you’re someone always on the move.</p> <p>This is how you might send me a postcard:</p> <blockquote> <p>To: <code class=\"language-plaintext highlighter-rouge\">gruen.us</code><br> From: Your Secret Admirer</p> </blockquote> <p>Imagine being able to check out from an online retailer and the only thing I need to provide them is <code class=\"language-plaintext highlighter-rouge\">gruen.us</code>. The retailer could then <strong>verb</strong> <code class=\"language-plaintext highlighter-rouge\">gruen.us</code> for payment authorization through my preferred payment method (which I could set up to auto-approve or manually-approve, depending on the vendor), <strong>verb</strong> for a way to deliver receipt and shipping updates, and any other <strong>verb</strong> that <code class=\"language-plaintext highlighter-rouge\">gruen.us</code> supports for this interaction. (e.g., Register transaction with the FTC.)</p> <p>Imagine being able auto-reject bulk mailers, avoiding the paper and delivery waste from all clothing catalogs sent to your door. The trees we could save… not to mention the fuel and recycling costs.</p> <p>Imagine being able to silence all inbound phones calls except for people you’re supposed to be talking with that day. (All others automatically route to voicemail.)</p> <p>Imagine being able to write to your congressional representatives, and for them to know whether or not you are an actual constituent.</p> <p>Imagine being able to privately share family photos without having to rely on a company that actively trains its algorithms on your personal content.</p> <p>Imagine being able to switch the vendor that <strong>verbs</strong> your <strong>verb</strong> if they lose your business or go out of business, without having to update everything else.</p> <p>Imagine not having to rush to the latest Internet service to try to claim your preferred short username (e.g., <code class=\"language-plaintext highlighter-rouge\">gruen</code>) before someone else does.</p> <p>Writing protocols on top of universal identifiers unlocks all of this and more.</p> <h3 id=\"no-longer-a-stretch\">No Longer A Stretch</h3> <p>There is more to this than just universal identification: decoupling identity from network, server, software vendor, algorithm, security, and data store means that people can control—<em>if they want to</em>—every part of their digital stack.</p> <p>And they won’t need a Computer Science degree to do it.</p> <p>Sir Tim Berners-Lee, the gentleman credited with inventing the literal World Wide Web (WWW), would likely agree. While his initial efforts with the <a href=\"https://solidproject.org/\">Solid project</a> didn’t immediately catch on, I think he was just a little too early.</p> <p>(Been there!)</p> <p>This was the promise of the early internet. But, the technical requirements to do it effectively was both inaccessible to most people (who are non-technical) and useful to the multi-billion dollar companies profiting from the dot-com boom. But, we’re reaching a boiling point where people are paying more attention, and the technologies are becoming more accessible.</p> <p>People are becoming less interested in corporate interests and billionaires’ agendas controlling their algorithms.</p> <p>In this I know I’m not alone, and our numbers are increasing.</p> <h4 id=\"how-big-tech-can-get-involved\">How Big Tech Can Get Involved</h4> <p>There’s no reason why LinkedIn couldn’t offer up your LinkedIn URL as a universal lookup (e.g., <code class=\"language-plaintext highlighter-rouge\">@gruen.linkedin.com</code>), and they probably should.</p> <p>If offered, I would tie my LinkedIn ID back to my domain name and/or <code class=\"language-plaintext highlighter-rouge\">DID</code> to make it easier for people to find me and to disambiguate me from other people who I could be confused for.</p> <p>For the first social media company that does this, they might find themselves as a preferred universal lookup for some people; or, the preferred universal reference given a certain context. (e.g., here I am in my professional capacity: <code class=\"language-plaintext highlighter-rouge\">gruen.linkedin.com</code>, but I use <code class=\"language-plaintext highlighter-rouge\">gruen.us</code> in my personal capacity.)</p> <p>Universal lookups are compatible with the stated values of these social networks… but less so their perceived commercial interests.</p> <p>Phone companies also fought cellphone number porting, but then later used it in their own marketing campaigns:</p> <p>“Keep Your Number, Change Your Carrier”</p> <p>Consumers are ready for the change. Business will have to compete again… and this benefits everyone.</p> <h2 id=\"conclusion\">Conclusion</h2> <p>My idea for a Human DNS was just… DNS all along.</p> <p>The trick was building the protocols and taking people along for the ride. As we’re witnessing, BlueSky and the AT Protocol have found a viable foothold, and I am very optimistic about the direction they are going in.</p> <p>For me, part of the genius of ATProto is its comically long, immutable, and larger-than-human-scale (and therefore totally meaningless to most people) <code class=\"language-plaintext highlighter-rouge\">DID</code> that lets computers do their thing, while complementing that computer-scale identifier with a mutable, human-scale-name that’s chosen by its human owner.</p> <h3 id=\"its-early-days\">It’s Early Days</h3> <p>The good news is that there are plenty of good domains to be had out there, with more TLDs being issued every few months, driving the price down even further. <strike>(If you're interested, `gruen.lol` is available and can be had for about $30/year!)</strike></p> <p>For example, I recently bought two dictionary-word domain names on dictionary-word TLDs that work interchangably in the form of X.Y and Y.X for less than $30 total.</p> <p>What a world we live in.</p> <p>If you’re concerned, I recommend hedging against the future with a <a href=\"https://name.sjv.io/yqqdnB\">domain name</a> that works for you and your family.</p> <p>If I’m wrong? You’ve now got a cool domain name you can use for something.</p> <p>If I’m right? Well, you’ll want to use it almost everywhere and keep it forever.</p> <hr> <h1 id=\"additional-reading\">Additional Reading</h1> <ul> <li> <a href=\"https://name.sjv.io/yqqdnB\">Name.com</a> - Buy a domain at my favorite small registrar (affiliate link)</li> <li><a href=\"https://knightcolumbia.org/content/protocols-not-platforms-a-technological-approach-to-free-speech\">Protocols, Not Platforms: A Technological Approach to Free Speech</a></li> <li><a href=\"https://www.npr.org/2024/04/26/1247393656/net-neutrality-explained-fcc\">Net Neutrality Restored</a></li> <li><a href=\"https://atproto.com\">AT Protocol</a></li> <li><a href=\"https://emilyliu.me/blog/open-network\">Benefits of an Open Network</a></li> </ul> <h2 id=\"my-human-dns-settings\">My Human DNS Settings</h2> <p>My DID is <code class=\"language-plaintext highlighter-rouge\">did:plc:3kexp5524dhn5g25z2eeta56</code>. Unless something goes horribly wrong, that won’t change.</p> <p>My Handle is <a href=\"https://bsky.app/profile/gruen.us\"><code class=\"language-plaintext highlighter-rouge\">gruen.us</code></a>. I probably won’t change it, but if I do, everything will still work as it did before. You can look up that new handle <a href=\"https://web.plc.directory/did/did:plc:3kexp5524dhn5g25z2eeta56\">here</a>, which your social client (e.g., BlueSky) does for you automatically.</p> <p>For the most part, the only thing you need to remember about me is <code class=\"language-plaintext highlighter-rouge\">gruen.us</code>. Right now it supports AT Proto and HTTP requests, but over time I expect it to be able to, ahem, <em>handle</em> much more.</p> <hr> <p><strong>Notes:</strong></p> <ol class=\"endnotes\" type=\"a\"> <li>Thankfully, network engineers had the sense to keep numbers human-scale at seven digits because, as brain experiments have shown, most humans can remember a seven digit number between reading it out of the whitepages and rolling it out on a rotary phone in a single take.</li> <li>You can port your landland to a mobile phone or a VOIP-based number, but it’s not the same as having the same copper hard-line between your home and the exchange where the telephone still works when the power goes out.<br><br>For those of you saying you have done this, your cable/internet/telephone provider likely installed a module with a backup battery that, every year or so, will be the source of this mysterious chirping sound coming from your network closet, or wherever your Internet lives in your home, to let you know that the battery is dying and needs to be replaced. That battery is there to allow phonecalls to still go through even if the main power is out, like it did in the olden times when the telephone company powered your telephone.<br><br>You’re welcome for solving that mystery.</li> <li><em>Why you should be extra-annoyed</em><br><br>Inter-network messaging has been a trivial feature, with safe and stable protocols such as <a href=\"https://xmpp.org/\">XMPP/Jabber</a> being widely used since 1999.<br><br>You used to be able to direct message a gmail account from your Facebook account! Both companies quietly <a href=\"https://www.theverge.com/2022/6/13/23166074/google-talk-messaging-xmpp-shutdown-gchat-pidgin-june-16\">phased out</a> those capabilities as social networks crossed the chasm from a niche activity to a global one.<br><br>This is not unique to social networks: Other big tech companies, like Apple, have resisted the rich text message standard (RCS) in favor of iMessage… although Apple did good in disintermediating telcos in allowing you to make calls and send messages with an e-mail address via iMessage. Half credit!<br><br>This is also not say that there isn’t value in having quarantined networks. In captive activities, say like in-game video game chat, needs to exist outside of those experiences. But, interoperability isn’t the point here. Social networks are meant to go broad. Video game lobbies are meant to be narrow.<br><br>The point is: because it costs money, time, and effort, regulation helps ensure companies do the consumer-friendly thing instead of the more profitable thing. Companies are perfectly capable of innovating under constraint.</li> </ol>",
    "url": "/d/2024/human-dns/",
    "date": 1731456000,
    
    "updated": 1732492800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 4515
  },

  {
    "title": "On The Margin",
    
    "description": "Experiments in Layout",
    
    "content": "<p>The following content includes severe autobiographical and technical navel gazing around layout and textual composition from the authorship context.</p> <p>Also note that this page works best on a laptop or desktop monitor. As the title suggests, content sometimes falls <em>on</em> the margins.[a] Margins do not show up “Reader” mode, which is the point, as you’ll see.</p> <p>Consider yourself warned.</p> <h1 class=\"no_toc\" id=\"the-prose-within\">The Prose Within</h1> <ul id=\"markdown-toc\"> <li> <a href=\"#nostalgia\" id=\"markdown-toc-nostalgia\">Nostalgia</a> <ul> <li><a href=\"#principles\" id=\"markdown-toc-principles\">Principles</a></li> <li><a href=\"#patience\" id=\"markdown-toc-patience\">Patience</a></li> <li><a href=\"#practice\" id=\"markdown-toc-practice\">Practice</a></li> <li><a href=\"#purpose\" id=\"markdown-toc-purpose\">Purpose</a></li> <li><a href=\"#play\" id=\"markdown-toc-play\">Play</a></li> <li><a href=\"#pragmatics\" id=\"markdown-toc-pragmatics\">Pragmatics</a></li> </ul> </li> <li> <a href=\"#reflection\" id=\"markdown-toc-reflection\">Reflection</a> <ul> <li><a href=\"#paradigms\" id=\"markdown-toc-paradigms\">Paradigms</a></li> <li><a href=\"#production\" id=\"markdown-toc-production\">Production</a></li> <li><a href=\"#parameterization\" id=\"markdown-toc-parameterization\">Parameterization</a></li> <li><a href=\"#perfunctoriness\" id=\"markdown-toc-perfunctoriness\">Perfunctoriness</a></li> <li><a href=\"#pruning\" id=\"markdown-toc-pruning\">Pruning</a></li> <li><a href=\"#possibility\" id=\"markdown-toc-possibility\">Possibility</a></li> </ul> </li> <li> <a href=\"#action\" id=\"markdown-toc-action\">Action</a> <ul> <li><a href=\"#progression\" id=\"markdown-toc-progression\">Progression</a></li> <li><a href=\"#persistance\" id=\"markdown-toc-persistance\">Persistance</a></li> <li><a href=\"#proprietary\" id=\"markdown-toc-proprietary\">Proprietary</a></li> <li><a href=\"#prompting\" id=\"markdown-toc-prompting\">Prompting</a></li> <li><a href=\"#probabilism\" id=\"markdown-toc-probabilism\">Probabilism</a></li> </ul> </li> </ul> <hr> <h1 id=\"nostalgia\">Nostalgia</h1> <p><img src=\"/assets/img/d/margin/typewriter.webp\" alt=\"Typewriter, Stylized\"></p> <h2 id=\"principles\">Principles</h2> <p>I learned to type on my grandfather’s IBM Selectric. [b]</p> <p>Like all good typewriters of that generation, each keystroke is assured, noisy, and permanent. A bell chimes when typist is about to run out of page, a pavlovian invitation to strike an enormous <code class=\"language-plaintext highlighter-rouge\">Return</code> key that advances the paper and resets the cursor to the beginning of the line.</p> <h2 id=\"patience\">Patience</h2> <p>Even the best typists make mistakes.</p> <p>For less-formal communiqués, corrections call for the <code class=\"language-plaintext highlighter-rouge\">Backspace</code> key. Use it to backpadel over the errant word or keystroke and overwrite it with <code class=\"language-plaintext highlighter-rouge\">X</code>s.</p> <blockquote> <pre>My favorite color is blue pink.</pre> <pre style=\"position: relative; top: calc(-1 * 1.75rem); pointer-events: none; height:0; width:0; margin:0;padding:0; opacity:0.8; overflow:visible;\"> XXXX</pre> </blockquote> <p>On a Selectric, there is no <code class=\"language-plaintext highlighter-rouge\">Delete</code> function.</p> <p>For formal documents—and in deference to the recipient that this was indeed a “formal” document—one might retype the entire page; or, if paper and/or patience was running low, one would break out the liquid paper (a.k.a. WhiteOut), dab a bit on the paper, let it dry, and then continue on.</p> <h2 id=\"practice\">Practice</h2> <p>I took typing <em>seriously</em>.</p> <p>I would create letterhead, business cards (aided by a nearby guided paper slicer), and statements of purpose. Odd for an eight year old, perhaps… though I prefered to think of myself as industrious.</p> <p>I learned to ensure that the long edges were perfectly parallel with the typewriter’s frame when feeding in a new sheet, otherwise the entire endeavor would be askew; or, worse, a corner of the paper’s trailing end would jam the machine.</p> <p>The paper would crumple, non-prestine.</p> <h2 id=\"purpose\">Purpose</h2> <p>I had no typewriter access at home.</p> <p>Then, one day, my dad liberated some 33MHz i386 desktops and a dot matrix printer slated for the office dumpster. On arrival, so too transitioned my <em>serious business</em>[c] from ink ribbons to silicon. I was now digital, baby!</p> <p>Whenever we visited my grandparents, I would always find my way to the typewriter for a bit. Now, instead of writing missives, notes, and work performance, I made kid-art.</p> <h2 id=\"play\">Play</h2> <p>With computers at home to do “work” on, typewriters were now for play.</p> <p>(Recall that I am not even aged double-digits yet.)</p> <p>My grandfather kept a ream of the cheap stuff handy for my creations. He also showed me a thing or two, including a few WWII-era memes [d] he had learned to key out.</p> <div class=\"language-plaintext highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code> \\!!!/ +--------------------------------oOOo-(O O)-oOOo--+ | _ _ _____ _ _ ___ (_) __ |` | | | | | | ____| | | | | / _ \\ / \\ || | | |_| | | _| | | | | | | | | / || | | _ | | |___ | |__ | |__ | |_| | | || | |_| |_| |_____| |____||____| \\___/ . || | || +-------------------------------------------------+| `--------------------------------------------------` </code></pre></div></div> <p>And we played hangman. I suppose we could have played with pen and paper, but I enjoyed the mechanics of moving the carriage—back, forth, up, down—as the game went on. <em>Ding!</em></p> <div class=\"language-plaintext highlighter-rouge\"><div class=\"highlight\"><pre class=\"highlight\"><code> _____ | | | O tried: R S T L N U O P Y | /|\\ | | | / __|__ __ __ __ __ __ __ __ /_____\\ </code></pre></div></div> <pre style=\"position: relative; top: calc(-2 * 1.6rem); left: 0.25rem; pointer-events: none; height:0; width:0; margin:0;padding:0; opacity:0.8; overflow:visible;\"> N T Y </pre> <!-- The answer is always ANXIETY --> <p>As I grew up—and weary of hangman—he eventually upgraded to a newer electronic typewriter[e] with a toggle that turned the backspace into a bonified <em>delete</em> key. (For the youngin’s out there, the <code class=\"language-plaintext highlighter-rouge\">Backspace</code> and <code class=\"language-plaintext highlighter-rouge\">Delete</code> keys do different things!)</p> <p>Satisfying the <em>thunk</em> of a weighted-ball keypress can be, the delete function was even better. A built-in “correction ribbon” rubbed out all errant ink with a horrifyingly delightful screech only a high-voltage stepper-motor greatly straining the fibers of a very unhappy piece of paper can make.</p> <p>While high-quality paper could take the abuse of multiple erasures in a single spot, thinner stock [f] would rip right through.</p> <p>I loved the mechanism so much I found myself typing out full paragraphs just to go back and erase them all. I used so much correction ribbon that my grandfather hid his supply whenever we came over.</p> <p>“Sorry, we just ran out!”</p> <h2 id=\"pragmatics\">Pragmatics</h2> <p>As much as I enjoyed the mechanical screeches of mistakes undone, these models were supremely precise and professional. Some came with electronic screens that buffered a line or two on an LCD Matrix to <em>preview</em> what the typewriter was <em>going</em> to type before the inky wheel dutifully stamped-out each committed line to the page in perfect tempo.</p> <p>The carriage feed automatically thwarted any unauthorized listing, actively re-centering paper as it rolled. Unlike the Selectrics or the Smith Coronas before it, it was near-impossible to trick the spacebar mechanism on a half-press to create a half-space. Each fixed-width character found its authorized spot in a perfect grid, each line on its neat perpendicular row.</p> <h1 id=\"reflection\">Reflection</h1> <p><img src=\"/assets/img/d/margin/tall.webp\" alt=\"Tall Monitor Computer\"></p> <p>Am I having a moment where I am feeling nostalgic on having simpler relationships with technology?[g]</p> <p>You bet I am!</p> <h2 id=\"paradigms\">Paradigms</h2> <p>Computers are in the information and knowledge business.</p> <p>Before the Internet (and networks, generally) became the principal conduit for any and all human knowledge, this meant that computers <em>were actually</em> in the business of <em>making documents</em> because that’s how people consumed information.</p> <p>When the madfolk at Xerox PARC invented the desktop monitor, it was <a href=\"https://duckduckgo.com/?q=Xerox+Alto+&amp;iar=images&amp;iax=images&amp;ia=images\">shaped</a>, unsurprisingly, like how paper documents are normally-read in portrait, not landscape, sized about the same.[h] While text fits to a page, it floods on a screen.</p> <p>The physics are different.[i]</p> <h2 id=\"production\">Production</h2> <p>Graphical word processors (like WordPerfect, ClarisWorks, and Microsoft Word) and page layout tools (like QuarkXPress, PageMarker, and InDesign) made quick work to obsolete typewriters. People could now fix mistakes <em>before</em> committing them to paper. Mulitple copies no longer required a visit to the copier nor having to manage making carbon copies.[j]</p> <p>If you wanted to be taken seriously, you needed to print things out, to “publish”. The <em>document</em> was de facto default cat’s pajamas. To underscore importance, you might even laminate it!</p> <p>And then, for those who make documents—read: everybody in the knowledge work business—progress here just… stopped.</p> <p>Other than to return an online order, I cannot remember the last time I used my printer.[k]</p> <p>This is all to say: we are well into a post-paper[l] information age, except when catering to diehards or on ceremony.</p> <h2 id=\"parameterization\">Parameterization</h2> <p>HTML, first available in late 1991, has matured over the years to its latest incarnation, HTML5, which was released in 2014. [m]</p> <p>HTML has lot going for it, powering the modern marvel that is the storage and dissemmination of (almost) all information across (almost) all digital screens. As written communications benefit from textual styles, HTML makes it easy to <a href=\"https://michaelgruen.com/\">link</a> to other content, <strong>bold</strong> and <em>italicize</em> words, drop in #Headings, and all that jazz.</p> <p>And yet, getting the words to format[n] (at least for this English-writer) beyond the left-to-right, top to bottom, is an astonishingly frustrating exercise in HTML-land.</p> <p>After nearly thirty years writing this way on “the web”, I suppose I’m left wanting more.</p> <h2 id=\"perfunctoriness\">Perfunctoriness</h2> <p>While HTML reads great rendered in the browser, it is quite annoying to proofread HTML source code with its markup littered throughout.</p> <blockquote> <p>&lt;bold&gt;<strong>Don’t</strong>&lt;/bold&gt; &lt;em&gt;<em>believe</em>&lt;/em&gt; me? <br> How &lt;em&gt;<em>about</em>&lt;/em&gt; &lt;bold&gt;&lt;em&gt;<strong><em>now!?</em></strong>&lt;/em&gt;&lt;/bold&gt;</p> </blockquote> <p>Those who work on the web might be better at this than others… but the cognitive overhead is undoubtedly more expensive than reading through simplier prose or through a super-thin, contextually friendly syntax, like <a href=\"https://en.wikipedia.org/wiki/Markdown\">Markdown</a>.</p> <blockquote> <p>**Don’t** _believe_ me? <br> How _about_ **_now!?_**</p> </blockquote> <p>This ⇧ generates the above HTML which, when rendered, looks like this:</p> <blockquote> <p><strong>Don’t</strong> <em>believe</em> me? <br> How <em>about</em> <strong><em>now!?</em></strong></p> </blockquote> <p>Big legibility improvement. Limited still by its simplicity.</p> <h2 id=\"pruning\">Pruning</h2> <p>When banging out text, I often let the runons run on.</p> <p>Trim the fat later—rewrite when necessary.</p> <p>Keep it <em>lean</em>.</p> <p>It is nonetheless with great sorrow that I drown those run-on fatty-fat kittens for the sake of readability. Even if these sojourns don’t make the final print, I find the tangents interesting, colorful, and worthy of my time.</p> <p>Sometimes, though, I want to eat my cake and for you to have it, too, [o] and make use of the <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/summary\">summary</a> tag.</p> <details> <summary><em>It looks like this in practice, and if you click here or on the triangle to the left…</em></summary> <p>It will unfurl itself with additional content.</p> <p>How about that?</p> <blockquote> <p>Note the triangle is now pointed down. Click it again to hide this section as I suspect this little bit has added very little value to your day.</p> </blockquote> <p><br></p> </details> <p><br> Fun indeed! But writing HTML by hand is a chore… [p] especially if you’re trying to compose text at the same time.</p> <details> <summary><em>Click to see the <strong>summary HTML</strong> code</em></summary> <blockquote> <div class=\"language-plaintext highlighter-rouge\"> <div class=\"highlight\"><pre class=\"highlight\"><code>&lt;details&gt; &lt;summary&gt;&lt;em&gt;It looks like this in practice, and if you click here or on the triangle to the left…&lt;/em&gt;&lt;/summary&gt; &lt;p&gt;It will unfurl itself with additional content.&lt;/p&gt; &lt;p&gt;How about that?&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Note the triangle is now pointed down. Click it again to hide this section as I suspect this little bit has added very little value to your day.&lt;/p&gt; &lt;/blockquote&gt; &lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;/details&gt; </code></pre></div> </div> </blockquote> </details> <p><br> Less fun!</p> <p>Thus, most of us cope with markdown pseudo-<a href=\"https://en.wikipedia.org/wiki/WYSIWYG\">WYSIWYG</a> mediocrity.</p> <h2 id=\"possibility\">Possibility</h2> <p>If you think I’m down on markdown, you would be mistaken. It is (at the time) an amazingly innovative, lightweight syntax that’s human readable, human writable, and easily transmogrofied into HTML, PDF, or any place that marked-up text might be rendered.</p> <p>Many folks have created their own <a href=\"https://duckduckgo.com/?q=markdown+flavors+dialects+extensions\">flavors and dialects and extensions</a> to suit their needs.</p> <p>Maybe I should do the same. (Spoiler: I won’t, but bear with me.)</p> <h1 id=\"action\">Action</h1> <p><img src=\"/assets/img/d/margin/inf.webp\" alt=\"Infinity Computer\"></p> <p>Late Summer 2019, I attended a full day seminar put on by quantitative visual innovator and information design theorist <a href=\"https://www.edwardtufte.com\">Edward Tufte</a> who, between lessons of <a href=\"https://en.wikipedia.org/wiki/Sparkline\">sparklines</a>[q] and thoughts on the human reaction to various visual stimula, hawked lesser-used formatting to improve comprehension.</p> <div class=\"tufte-sentence\"> <span class=\"word\">That is to say, he is </span><div class=\"word-stack\"> <span class=\"option\">precise</span><span class=\"option\">persnickety</span> </div> <span class=\"word\"> about </span><div class=\"word-stack\"> <span class=\"option\"><a href=\"https://www.edwardtufte.com/notebook/book-design-advice-and-examples/\">layout</a></span><span class=\"option\"><a href=\"https://www.edwardtufte.com/book/modern-pioneers-in-typography-and-design/\">typography</a></span><span class=\"option\"><a href=\"https://www.edwardtufte.com/book/visual-explanations-images-and-quantities-evidence-and-narrative/\">images</a></span> </div> <span class=\"word\">. </span> </div> <p>As you may have gleaned, he will occasionally employ unconventional structures in his textbooks. Unconventional, yes, but immediately understood.</p> <p>In his seminar, he seem to express genuinely disastisfaction with how word processors processed words as further reason why he takes it upon himself to lay out everything using <a href=\"https://www.edwardtufte.com/notebook/quarkxpress-and-adobe-indesign/\">various products</a> to ensure his work is just so.</p> <h2 id=\"progression\">Progression</h2> <p>Most text editors I write in support markdown; or, in a proprietary format [r] that can easily convert into markdown. As a technologist, I produce a lot of boilerplate (alas necessary) technical documentation… often in source code repositories <em>as</em> markdown.</p> <p>There are countless times I have wanted to employ such artfully-crafted sentences in my work.[s]</p> <div class=\"tufte-sentence\"> <span class=\"word\">And now I can </span><div class=\"word-stack\"> <span class=\"option\">employ</span><span class=\"option\">abuse</span> </div> <span class=\"word\"> </span><div class=\"word-stack\"> <span class=\"option\">margin notes</span><span class=\"option\">non-standard layout</span><span class=\"option\">stacked sentences</span> </div> <span class=\"word\"> as </span><div class=\"word-stack\"> <span class=\"option\">desired</span><span class=\"option\">needed</span> </div> <span class=\"word\"> in-situ. </span> </div> <p>Because I wrote my website a markdown-compatible app for that.</p> <div class=\"tufte-sentence\"> <span class=\"word\">(</span><span class=\"word\"> </span><div class=\"word-stack\"> <span class=\"option\"> Sorry</span><span class=\"option\">Not Sorry </span> </div> <span class=\"word\"> </span><span class=\"word\">)</span><span class=\"word\"> </span> </div> <h2 id=\"persistance\">Persistance</h2> <p>On the web, pulling off universally-consistent formatting is a tricky to do: differing browser engines, operating systems, display settings, and device form factors all have different opinions about how HTML should be rendered.</p> <p>Web design is a best-effort enterprise.[t]</p> <p>Giving authors control over their layouts (and making it easy for non-technical, HTML-native folks to do), doubly-so.[u]</p> <p>As I try to ensure my content is durable and <a href=\"https://jeffhuang.com/designed_to_last/\">designed to last</a>, keeping my writing as close to plaintext as possible is highly desireable.</p> <p>Markdown is plaintext, and will thus outlast every other format in existence.[v]</p> <p>It is the default output format of every commercial LLM (e.g., Claude, ChatGPT) popular today. [w]</p> <p>It is as close as plaintext can get to WYSIWYG without having to reinvent modern computing.</p> <p>And it is used literally <em>everywhere</em>.</p> <h2 id=\"proprietary\">Proprietary</h2> <p>While I’m generally in support of open-sourcing work that others might find valuable, I don’t intend on making any of layout shorthands publicly available for three reasons:</p> <ol> <li>I would want to do a better job on the code before making it available as a matter of pride,</li> <li>Because the code itself really isn’t the point, and</li> <li>I don’t want to.</li> </ol> <p><a href=\"/colophon/\">This site</a> is built by a static site generator called <a href=\"https://jekyllrb.com/\">jekyllrb</a>, an early player in the <a href=\"https://jamstack.org\">Jamstack</a> trend.[x] Jekyll got a lot right, but it is a bit slow to compile against alternatives. For years I was eager to switch to a faster framework (like <a href=\"https://gohugo.io/\">Hugo</a>) so I could preview my work in near-real-time them. Waiting for pages to generate slowed down my flow, wasting meaningful time.</p> <p>But, in the last handful of years, laptops have gotten so fast that regenerating this entire site, which used to take five to ten seconds, now updates itself about as quickly as it takes to alt-tab between my code editor and the most recent in-browser build.</p> <p>Compilation is no longer the bottleneck in the workflow.</p> <p>I am.</p> <p>No need to change for now.</p> <h2 id=\"prompting\">Prompting</h2> <p>Thanks to <a href=\"https://zed.dev\">Zed</a>’s[y] tight LLM integration, it takes less time to prompt-build a custom Jekyll plugin or component to achieve the layout I’m looking for than trying to find (and learn) a library to do it.</p> <div class=\"tufte-sentence\"> <span class=\"word\">Rather than </span><div class=\"word-stack\"> <span class=\"option\">maintain</span><span class=\"option\">worry about</span> </div> <span class=\"word\"> my own markdown </span><div class=\"word-stack\"> <span class=\"option\">library</span><span class=\"option\">extension</span><span class=\"option\">dialect</span> </div> <span class=\"word\">, I can keep plainext portable and, if ever needed, rebuild the marginal feature on whatever future framework best suits. </span> </div> <p>Need a component? Generate a component. [z] It is quick to do and takes almost no time at all.</p> <p>Do the LLMs generate the best code? No—gosh, no! But, it does not need to be good. It just needs to be good enough for the scope of its use. And if it needs to be improved or rebuilt, these small, lightweight, and specific plugins are trivially-easy[{] to rebuild whenever—if ever—it is time to migrate.</p> <h2 id=\"probabilism\">Probabilism</h2> <p>Trying to build for the margins in the context of forever and for everyone is unnecessary.</p> <p>Another way to think about it: that which will last has already been built. That which is optional and trivial can be trivially rebuilt with current technology where it would previously be a laborious chore.</p> <p>Growing up, typewriters were for play.</p> <div class=\"tufte-sentence\"> <div class=\"word-stack\"> <span class=\"option\">Want</span><span class=\"option\">Put</span> </div> <span class=\"word\"> the text </span><div class=\"word-stack\"> <span class=\"option\">here?</span><span class=\"option\">there!</span> </div> <span class=\"word\"> </span> </div> <p>Computers, once again, are now feeling that way.</p> <hr> <p><strong>Notes:</strong></p> <ol class=\"endnotes\" type=\"a\"> <li>Like so.</li> <li>Unlike non-electric hammer-keys, Selectrics feature an embossed metal golfball that simultanoeusly rotates and faceplants onto the page while a black ribbon slides into position at the very last moment to print the desired character.<br><br>Replacing a hammer-filled chassis with a single printing element means the keys no longer jam, meaning I never had to de-akimbo the primary firing mechanism, nor having to retype a character because I didn’t hit a key with sufficient force. I may have been young, but even then I understood the importance of flow-state.</li> <li>I networked the desktops together on a local-area network so I could print from any computer without having to swap out the cables or use a floppy disk.<br><br>I had to find books and paper manuals to pull this off. My parents were not (and still are not) technical, so they were of no help—and it would be another six or so years before we had home Internet. (At the time, it was barely available at school or the library!<br><br>Some kids like to talk to themselves or create imaginary friends, but I was that cool kid that had a three-way chat going between my three home computer network that only I used.<br><br>To be honest, I still do shit like this.</li> <li>Kilroy was here.</li> <li>By recollection, he had many typewriters on hand, including the IBM WheelWriter and a Smith Corona. (I think.) As a lawyer, tinkerer, and technology enthusiast, he typed a <em>lot</em>.</li> <li>This was the kind of “printer paper” you might use in a printer or a copier</li> <li>While simultaneously <a href=\"/d/2024/human-dns/\">excited about the future</a> and annoyed by where <a href=\"/d/2024/instagram/\">Big Tech has left us</a>, this screed centers on typesetting… in case you were wondering.</li> <li>The <a href=\"https://www.cl.cam.ac.uk/~mgk25/iso-paper.html#history\">history</a> of paper size standardization is surprisingly rich. Going back as early as the 1700s as an academic exercise, standard sizes started to emerge based on how the French taxed paper. And, as recently as the mid-1900s, mass adoption of paper standards finally hit its stride to support the mass-availability of home and office on-site printing requirements.</li> <li>It would feel odd to read this website in an 8.5⨉11” PDF, wouldn’t it?</li> <li>That’s when you would feed multiple pages through a typewriter, putting carbon transfer paper between each page, so each keystroke would type through all pages. This is the origin for why you <code class=\"language-plaintext highlighter-rouge\">CC</code> (Carbon Copy) other people in e-mails.</li> <li>In 2012, Gartner <a href=\"https://www.computerworld.com/article/1537661/today-printers-tomorrow-integrated-peripherals.html\">reportedly concluded</a> that the average office employee printed half as many pages as they did in 2005. In 2005, 50% of the “Developed World” was online. 72% by 2012. Today over 90% of the world “surfs the web”.</li> <li>Microsoft Powerpoint assumes a digital experience. While it still supports standard sheet sizes, note how far away the selection is from default. <img src=\"/assets/img/d/on-the-margin/ms-ppt.png\" alt=\"Powerpoint Document Format\"><br><br>Meanwhile, Google Slides doesn’t even bother to include paper sizes. <img src=\"/assets/img/d/on-the-margin/google-slides.png\" alt=\"Google Slides Page Format\"></li> <li>In case you lost count, that was <script>document.write(new Date().getFullYear() - 2014)</script> years ago.</li> <li>Unless you are willing to wrestle with <a href=\"https://developer.mozilla.org/en-US/docs/Web/CSS\">stylesheets</a>, use proprietary document formats (MS Word, Pages, Google Docs), or <a href=\"https://en.wikipedia.org/wiki/LaTeX\" style=\"text-decoration:none;font-family:serif;\">L<sup style=\"padding:-2em;width:0px;margin-right:-0.3rem;position:relative;top:0.15rem;right:0.25rem;font-size:0.6rem;\">A</sup>T<sub style=\"font-size:inherit;margin:0 -0.05rem;padding:-1rem;line-height:0;\">E</sub>X</a>, that’s just what you get… a tradeoff between flexibility and precision.<br><br>Granted, the basics get you 90% of what you might want to do anyway, but it’s that other 10%.<br><br>Typewriters had that nailed.<br><br>HTML has many <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element\">elemental tags</a> you can use to format your text with a bit more panache. But HTML is meant for, well, online documents. There’s a clear benefit in keeping the text and the format instructions explicitly separate.</li> <li>If you thought to yourself “Isn’t the expression <code class=\"language-plaintext highlighter-rouge\">You can't have your cake and eat it, too.</code>?”, you would be correct.<br><br>But, I think it better to mention the “eating” before “having” because it explains the situation more clearly: when you eat something, it presupposes ownership. It would be odd to have a cake and <em>not</em> eat it because <em>eating</em> a cake in the point of <em>having</em> a cake in the first place.)<br><br>Ted Kaczinski thought so too, a preference that <a href=\"https://en.wikipedia.org/wiki/You_can%27t_have_your_cake_and_eat_it#:~:text=eat%2Dhave%20variant-,played%20a%20role,-in%20the%20apprehension\">contributed to his apprehension</a>.<br><br>This is an example of a high-calorie fact I might normally cut.</li> <li>If HTML is used inline with markdown, the markdown-to-HTML processor won’t perform its syntax magic inside the &lt;summary&gt; tag so all formatting inside of it (links, paragraphs, styles) needs to be re-typed in pure HTML. Lame.</li> <li>Michael—note to self: Implement sparklines as a markdown extension.</li> <li>Google Docs, for one.</li> <li>And notes in the margin to provide additional context for those who need it, tucked neatly away as to be avoided by the already enlighted and/or disinterested.</li> <li>The network layer of the web <em>also</em> relies on <a href=\"https://en.wikipedia.org/wiki/Best-effort_delivery\">best-effort delivery</a>. This approach works out very well for the most part, as delivery <em>guarantees</em> can lead to network gridlock, wasted resources, and paradoxically <em>less</em> reliable.</li> <li>While one might consider using PDFs for consistency, the content within is not as portable (the “P” of Portable Document Format) as the name might suggest. Nor is it easily editable, nor responsive to the screen on which it is viewed.<br><br>It is also more computationally expensive than HTML.</li> <li>Proprietary products, like Adobe’s suite of layout tools, will come and go at the publisher’s whims. And, if my experience with Adobe’s periodic auto-updates is any indication, an upgrade might leave me unable to develop images like I used to… like I wanted to… because a feature was deprecated without notice or ability to rollback.<br><br>Open standards are a good thing.</li> <li>The web chat agents will often auto-format the markdown for you, but if you ask it nicely (i.e., click the “copy” button), you can paste the results and see the raw output as markdown.</li> <li>Rather than run my own server that has to think about how to respond to each request, a JamStack doesn’t think about anything at all. It just serves up flat files efficiently without prejudice or care. There’s really no attack surface or <code class=\"language-plaintext highlighter-rouge\">/admin</code> page to futz around with. Everything happens in the source code and nothing on the server.<br><br>This is different than how blogging software like WordPress works in that there’s nowhere to “log in” and no compute server to “compromise”.<br><br>Security™.</li> <li>Zed is a code/text editor that is built with <em>speed</em> in mind. It is wicked-fast, and the company has prioritized fully-configurable LLM-integrations within the application.<br><br>It is where I have been spending most of my coding hours, and where I build and maintain this site.</li> <li>A component like this margin note.</li> <li>I confess, sometimes the LLM needs a bit of spoon-feeding to get it right. But the time cost is still very, very reasonable.</li> </ol>",
    "url": "/d/2024/on-the-margin/",
    "date": 1734220800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 4630
  },

  {
    "title": "Seven Hours of Comedy",
    
    "description": "What goes into creating quality entertainment",
    
    "content": "<p>To promote her latest <a href=\"https://press.amazonmgmstudios.com/us/en/press-release/prime-video-debuts-new-standup-comedy-special-iili\">comedy special</a>, <a href=\"https://www.iliza.com\">Iliza Shlesinger</a> recently visited New York City, bookending her tourstop with two sets at a local comedy club.[a]</p> <p>As she was wrapping her first set on Monday—which was great, by the way—she dropped a plug for her special:</p> <blockquote> <p><em>After this special releases at midnight tonight, I’ll have seven hours of comedy out there. You’re welcome.</em></p> </blockquote> <p>More than anything else about her performance, I’ve thought about <em>that</em> line in particular… and not because it was near the end.[b]</p> <center>⁂</center> <p>In high school, my parents took me to see <a href=\"https://en.wikipedia.org/wiki/George_Carlin\">George Carlin</a> during his 90s and 00s renaissance. Some of the best bits he read directly from his notebook.</p> <blockquote> <p><em>“No, I’m not trying things out on you guys, I just haven’t committed these jokes to memory yet.”</em></p> </blockquote> <p>Other bits flopped catastrophically.[c]</p> <p>During Iliza’s Monday set, she didn’t read any of her jokes; although, she did keep a notebook open on her stool, glancing at it briefly in between bits. And despite similar protests to the contrary a la George Carlin, she was <em>most certainly</em> trying out new material.[d]</p> <p>Some throwaways landed, but maybe not at the magnitude she was expecting. She would then pivot with meta commentary like, “that joke kills in the midwest, but not as well here for the New York sophisticate” that shook out some laughs from the more reticent among us.</p> <p>For my part, I love it when comedians try stuff. Standup is a conversation—it doesn’t work in a vacuum. To my knowledge, no comic has released a taped set without a live studio audience, nor has any audio technician thought not to directly mix in real audience laughter. [e]</p> <p>We first saw her live in Burlington, VT as she happened to be performing while we were in town. [f] When some one-liners didn’t land as hard as she expected, she’d quip with a, “you Vermonters are so nice—this joke kills in New York”.</p> <center>⁂</center> <p>I’m no Iliza die hard, but I am a contemporary (n.b., “Elder Millenial”) and remember seeing her first special—what was it, a decade ago? If one correctly assumes her first special didn’t materialize out of nothing, it tracks that Iliza takes <strong>two years</strong> to render every <strong>hour</strong> of comedy special.</p> <table> <thead> <tr> <th>Name</th> <th>Release Date</th> <th>Runtime</th> </tr> </thead> <tbody> <tr> <td>War Paint</td> <td>September 1, 2013</td> <td>63 minutes</td> </tr> <tr> <td>Freezing Hot</td> <td>January 23, 2015</td> <td>71 minutes</td> </tr> <tr> <td>Confirmed Kills</td> <td>September 23, 2016</td> <td>77 minutes</td> </tr> <tr> <td>Elder Millennial</td> <td>July 24, 2018</td> <td>72 minutes</td> </tr> <tr> <td>Unveiled</td> <td>November 19, 2019</td> <td>78 minutes</td> </tr> <tr> <td>Hot Forever</td> <td>October 18, 2022</td> <td>58 minutes</td> </tr> <tr> <td>A Different Animal</td> <td>March 11, 2025</td> <td>? minutes</td> </tr> </tbody> </table> <p><br><br> Two years. One hour.</p> <center>⁂</center> <p>One of my favorite parts of her act is that while she pokes fun at everyone, she doesn’t punch down on anyone. Getting this right—laughing <em>with</em> rather than laughing <em>at</em>—takes a lot of work, patience, and trying stuff out to find that line.</p> <p>I think it’s one of the reasons she’s as successful as she is.</p> <p>To produce a comedy special (an hour+ of original material that’s widely accessible) it <em>has to be tested</em> to discover what works. This takes a tremendous amount of sampling—which means traveling—and effort.</p> <blockquote> <p><em>After this special releases at midnight tonight, I’ll have seven hours of comedy out there. You’re welcome.</em></p> </blockquote> <p>I don’t know if “hours of comedy special” is her standard metric or if it was a throwaway line unworthy of further thought.</p> <p>Either way, the line caught me off-guard and I’ve been thinking about it all day.</p> <center>⁂</center> <p>Iliza’s a comic who, in 2025 alone, has thirty+ tour dates, a weekly one-hour podcast, and a promotional tour, and if previous years are any indication, an upcoming a TV and/or movie. Between all of that, it has taken her over fourteen years—over 5,000 calendar days!—to create one work day’s worth of top tier comedy that meets standard.</p> <p>As I think about my own efforts (this piece alone took 4 hours to write and edit, inclusive of a few failed side quests), it is helpful to put that top-quality output ratio into perspective.[g]</p> <p>I hope some of my work is or turns out to be world-class, but I understand that most of it isn’t.</p> <p>While a few of Iliza’s jokes did not quite hit the mark, she was able to keep stride, call it out, and salvage a bombed moment into a wholly satisfying set.</p> <p>Quality work takes time, missteps are part of the process, and (with practice) toeing that line can seem effortless.</p> <p>Fourteen+ years to produce seven hours of comedy.</p> <p>Thanks for the reminder, Iliza.</p> <hr> <p><strong>Notes:</strong></p> <ol class=\"endnotes\" type=\"a\"> <li>As of this writing, she <em>is</em> in town, but probably no longer by the time you read this.</li> <li>Not sure I got the line exactly right, but that was the gist.</li> <li>Some attendees laughed anyway; not out of politeness, but because to them, if George Carlin was making a joke, it must be funny.<br><br>Those types of audience members have got to be the worst for a comic, but we’ll get to that in a bit.</li> <li>This was particularly funny because she joked that when people say things that should be obvious, it brings their assertions into question. (e.g., “These are all my jokes!” &lt;– wait, were they at risk of <em>not</em> being yours?)</li> <li>This sentiment is parodied in Bo Burnham’s “<a href=\"https://www.youtube.com/watch?v=APGBRDeqsSI\">Don’t Want To Know</a>” as he records himself audience-free in a studio apartment for <em><a href=\"https://en.wikipedia.org/wiki/Bo_Burnham:_Inside\">Inside</a></em>.)<br><br>Also, have you seen a live sitcom with the <a href=\"https://www.abc.net.au/news/2019-07-28/laughing-tracks-make-jokes-funnier-research-friends-ross-geller/11345198\">laugh track removed</a>? It is awkward.</li> <li>This is a lie. We like spending time in Vermont and make up excuses to go on the regular.</li> <li>Among other ideas, I tried to find a list of all hour+ standup comedy specials that have ever been produced and then work out how Iliza’s output compares to other prolific comics; but, this fell outside of my data munging budget of 30 minutes. Alas.</li> </ol>",
    "url": "/d/2025/seven-hours-of-comedy/",
    "date": 1741651200,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 1236
  },

  {
    "title": "We Like Nouns",
    
    "description": "Verbs? Not as much.",
    
    "content": "<p>We like nouns.</p> <p>We like to call things what they are.</p> <p>Verbs are harder. (We don’t like them as much.)</p> <p>Verbs are fleeting. We cannot hold verbs, ensure they are the right weight. We must rely on memory. <em>Good memory</em> is not redundant.</p> <p>We expect nouns to do noun-stuff. We are surprised when another noun is better at that noun-stuff. This seems unfair to the former.</p> <p>We prefer nouns with adjectives over sesquipedalia. A <em>new thing</em> feels sturdier than a <em>creation</em>.</p> <p>Simple, concrete architypes. Add the flourish.</p> <center>⁂</center> <p>Nouns are inherently interesting. Nouns are soothing.</p> <p>A noun nouning builds confidence that, indeed, <em>this noun is well-named</em>. A bridge that bridges. Glue that glues. Parents that parent.</p> <p>Nouns, however, need not always noun and this complicates matters.</p> <p><em>A friend betrays.</em></p> <p>Verbs can overwrite nouns irredeemably.</p> <p>We do not like change.</p> <center>⁂</center> <p>Adverbs weaken verbs—<em>I strongly suggest while unabashedly splitting the infinitive</em>—whereas nouns take adjectives in stride.</p> <p>A <em>glass hammer</em> is still a <em>hammer</em>.</p> <p>At least once.</p> <center>⁂</center> <p>We noun verbs for convenience. Heft loss is acceptable.</p> <div class=\"tufte-sentence\"> <span class=\"word\"><em>They are a</em> </span><div class=\"word-stack\"> <span class=\"option\"><em>charlatan</em></span><span class=\"option\"><em>magician</em></span> </div> <span class=\"word\"> <em>and given to</em> </span><div class=\"word-stack\"> <span class=\"option\"><em>beguiling</em></span><span class=\"option\"><em>enchanting</em></span> </div> <span class=\"word\"> <em>on the regular</em>. </span> </div> <p>Sometimes we verb nouns. They land hard.</p> <p><em>I ghost those who deserve it.</em></p> <p>Gerunds remain servicable.</p> <p><em>I am leaving you.</em></p> <p>But lack flair.</p> <center>⁂</center> <p>Nouns are certain. Definitive.</p> <p>Verbs connote action. Allow for incongruity.</p> <p>Nouns not nouning challenge us. We love “to be” in all its forms: is, are, am. We crave more information about nouns. Their essence. Their being. Conflicting behavior, less so. We do not like to be challenged.</p> <p>We like to call things what they are.</p> <p>We like nouns.</p>",
    "url": "/d/2025/we-like-nouns/",
    "date": 1748476800,
    
    "type": "dispatch",
    
    "tags": [],
    
    "word_count": 279
  }



  
    
      ,{
        "title": "403",
        
        "content": "Error 403: Forbidden Michael wishes you not to see this content. Or, it never existed. Who knows? No matter: the path forward is this-a-way.",
        "url": "/403/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 26
      }
    
  

  
    
      ,{
        "title": "404",
        
        "content": "Error 404: Not Found Either this page never existed or Michael wishes it hadn’t. No matter: the path forward is this-a-way. (Or hit command/control + K and try searching for the content!)",
        "url": "/404/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 36
      }
    
  

  
    
      ,{
        "title": "Authorized Likenesses",
        
        "description": "Official digital representations (voice, image, etc.) for use in LLMs, AIs, and the like",
        
        "content": "This page maintains an official record of where my personal data (including but not limited to: voice recordings, images, videos, written works, and other digital content) is authorized for use as training data in artificial intelligence models, large language models (LLMs), or other machine learning systems. It also lists where my likeness is authorized for use in digital form. To be explicitly clear: any use of my personal data as training data for AI systems that is not listed here is unauthorized and implemented without my consent; and any digital representation of me that is not listed here is unauthorized and has been created without my consent. Officially Authorized Training Data Sources You may use written content on my resources and dispatch sections for training LLMs, which start with the following URLs. Please attribute the source and link a a. See use the page’s href value within the &lt;link&gt; tag where rel=\"canonical\" in the HTML. back to the original content. https://michaelgruen.com/d/ https://michaelgruen.com/resources/ Officially Authorized Digital Representations ∅ b b. This means that no artificial (colloquially, AI-generated) representations have been authorized. I have no sanctioned digital avatars out there. Reporting Unauthorized Use If you discover my personal data being used as training data for AI systems, or my likeness used in digital form without authorization, please e-mail me so I can take appropriate legal and technical action.",
        "url": "/resources/authorized-likeness/",
        "date": 1672531200,
        
        "updated": 1738368000,
        
        "type": "page",
        
        "word_count": 305
      }
    
  

  
    
      ,{
        "title": "Colophon",
        
        "description": "Getting meta about michaelgruen.com",
        
        "content": "Site Architecture Static Content: jekyll.rb Search: Typesense + ruby sinatra app Infrastructure Static Content: AWS (S3 + CloudFront) Search: fly.io Build: github.com actions Analytics: Google (boo hiss, I know) Style Font Family: Inter 4.0, mixed weight. (Recent upgrade) Durability Todo list Build/find open-source basic analytics service (migrate from Google Analytics) Rewrite old posts to use custom jekyll plugins (don’t rely on raw HTML) Index searches for content outside of this site (BlueSky and PDS, etc.)",
        "url": "/colophon/",
        "date": 1739404800,
        
        "type": "page",
        
        "word_count": 101
      }
    
  

  

  
    
      ,{
        "title": "How to get to Block Island",
        
        "description": "An insider’s guide on your travel options to Block Island... as told by a frequent commuter. (Me.)",
        
        "content": "Block Island is a 9.7mi2 pork chop on the edge of an ocean. It is home to fewer than 1,500 full-time, year round residents and swells to over 20,000 during the summer months. Set your travel expectations accordingly. Table of Contents Map Seasonality Getting Here By Air By Sea Getting to Mainland Airports and Ferry Terminals Taxi and Ride share on the Mainland Contingencies on “Getting Back” Weather Travel Considerations Matrix Weather On Season Off Season What to Wear I Have A Boat Lodging What to do Note about this document On Recommendations Map This document answers approximately 89.2% of questions visitors have when figuring out logistics on how to get here, what to wear, and what to do. It is exhaustive on the “how does one get to Block Island” and unabashedly thin on the other two bits. Fun Map Fact: Block Island, Rhode Island is coextensive to the Town of New Shoreham—that is to say they occupy the same outline on a map, regardless of how its labeled on said map. If you say, “I’m going to visit New Shoreham!”, no one will know what you’re talking about. On-island, if you want to go to the place labeled “New Shoreham” on the map, ask to go to “New Harbor” or, simply, “Town”. Seasonality Travel availability varies greatly by “season”. “On”-Season: Memorial Day Weekend through Labor Day (Late May through Early September) “Off”-Season: Spring Shoulder: Mother’s Day through Memorial Day Fall Shoulder: Labor Day through Columbus Day Winter: Everything else. (Block Island has about a 70% vacancy rate in the off-season. Not much is open.) Almost all businesses and restaurants are open during the on-season, most are open during the shoulder seasons, and a few are open year round. Regardless of season, there’s always nothing to do—which is the best thing to do—on Block Island. (Just don’t count on having Internet.) Getting Here You’re going to need to get on a plane or a boat. All airports and seaports with regular service are accessible by car and (kind-of) by train. If you have your own wings or ocean vessel, please find airport and marina recommendations below. Be sure you also read the Contingencies section and Weather Matrix below before fully committing to a plan. By Air Flying is by far the fastest, easiest, and (sometimes) thriftiest way to get on and off the island provided: you don’t mind small propeller planes, your schedule is a bit more flexible. Especially in the summer, wind and/or fog can ground flights planes indefinitely. There are no major airlines that fly to Block Island… which is ok because we have two outfits with regular VFR † Visual Flight Rules. This means that if the pilot can see where they are going, they can fly. If they need to rely on instruments, they will not. Like if the island is fogged-in.The planes and the pilots themselves are instrument-rated and ready, but the IFR (Instrument Flight Rules) flight path is considerably longer than the more-direct VFR route. The extra fuel makes is prohibitively expensive to fly at a reasonable rate; but, you can charter with them if you’re less price sensitive. service from Westerly, Rhode Island WST to Block Island BID. Key details: Airfare: ~$75-85/adult (one-way). Reservations highly recommended. Limited guaranteed baggage (about 150% of what you can carry-on for a domestic commercial flight). You can pay for additional cargo, but it’s not guaranteed to come over with you on the same flight. Flight Duration: ~10 minutes. Arrive at least 30 minutes before. If you’re running late, call and let them know. They won’t hold the plane, but if you make it before departure they will hold your seat. Flight Schedules and Contact New England Airlines Year round, varies on season. - Website has been unrelaible as of late, suggest you call) Book for reservations at Westerly Airport (WST): 401-596-2460 For last-minute off-island, call them on-island at: 401-466-5881 The Whale Year round, weekdays Book on website Phone number: 800-908-0469 Parking in Westerly: Free, on-site. (Limited paved parking.) For a large group, the total cost can be a bit pricey; but, the in-flight views are unparalleled. Charter Flights KBID (Block Island’s Airport) is a short runway without a Tower. Fog and/or high winds can ground planes. New England Airlines (NEA) (one of the airlines listed above) WST &lt;–&gt; BID: ~$500 one-way for ~4 seater, ~$700 one-way for ~12 seater. Charter flights also available from any regional/county airport within a few hundred miles. Call for prices (e.g., last checked in 2021, fares were ~$1800 one-way for a ~12 seater from Westchester County Airport; HPN &lt;–&gt; BID). HELIBLOCK - fly by helicopter Prices on website Also does tours Tradewind Airlines Author has no direct experience, but sees them land here frequently. I have a plane Landing fees are reasonable and parking (tie-downs) available—it’s a short runway, so don’t bring the jet. FAA Identifier: BID Tower: No No car rental at the airport, but taxis are available to take you anywhere. By Sea Several ferries can take you, your bicycle, and your luggage to Block Island. If your car needs to come with you (and it probably doesn’t), you have only one option via the “Traditional Ferry” from Point Judith. Option 1: Ferry Service from Point Judith, RI (Narragansett) Far and away the most consistent option for getting on and off Block Island. Owned and operated by Interstate Navigation, it is often default option for most locals and visitors. When in doubt, choose this option. Location: 304 Great Island Rd, Narragansett, RI 02882 Ferry Schedule (Year round, varies on season and by boat.) Two ferries for your consideration: High Speed (“Fast Ferry”), and Traditional Ferry (“Slow Ferry”). Both depart from the same terminus, but the former leaves at the end of the dock. If you choose the Fast Ferry, I strongly recommend buying tickets in advance during the on-season. Fast: ~$26/adult. 25 minutes. Slow: ~$11/adult. 55 minutes. Parking: Paid. Varies by lot and day (~$10/day). Parking in Narragansett All parking lots are busy during the on-season (and especially during weekends), so do consider reserving a spot in advance. This can also land you a discount. In all cases, expect bird poop to greet you on your hood. Lot recommendations, in order: Galilee Parking Company – unless it’s a holiday, there’s usually room and is super-convenient. State Parking Lot G – inexpensive, but very difficult to get into unless you have a season pass or its the off-season. Lighthouse Inn Lot – No direct experience, but reviews seem good. ProPark – Generally upfront with pricing and will take reservations. (They will try to wave you in to their lots at the end of Galilee Escape Road… feel free to ignore them and try the recommendations above, first.) Warning to the Desperate: Sometimes the major lots can get fully booked, which has led some enterprising nearby landowners to take advantage. While not all of the small lots are dishonest, I’ve seen first-hand fleecing with both a “day” and “night” parking charge… that is if you park overnight, there’s an unadvertised overnight surcharge. Ask the parking attendant if this is at all unclear. If you don’t trust that they’ll remember (they can be ever so forgetful), I suggest you take a video on your phone confirming that there’s no surcharge above the listed price, and to confirm that price, because that price can and does change. Also of note, these smaller lots are open to negotiation, especially if the recommended above lots aren’t yet at capacity. Bring your Car Unless you’re coming for a week (or longer), or are visiting in the off-season, I recommend that you leave your car(s) on the mainland and get around via bicycle or foot. On-island, taxis are plentiful. Downtown is entirely walkable, and the town beaches are commutable on foot. Bicycle rental shops are abundant. Car rentals, less so. On mopeds: Please don’t rent them. Please don’t. They are noisy, unsafe, not allowed on dirt roads, and a blight on what makes this place great. Also, you may die. Concerned residents are organizing to ban moped rentals on RespectBI.org. Please consider giving them a read and your support. Car Ferry Details Only available on Traditional (Slow) Ferry from Pt. Judith. ~$60/car – does not include driver. 55 minutes. Call for reservations: 1-866-783-7996 EXT 3 Further vehicle details; be sure to arrive at least 1 hour before departure or risk forfeiting your reservation. Reservations both ON AND OFF the Island are STRONGLY recommended as soon as you have travel dates; especially during the on-season. While going standby is an option, it is not a fun option, nor efficient. You can spend literal days waiting in line for a car spot on the ferry. Food Recommendation in Point Judith Jimmy’s Port Side while you wait. Option 2: Ferry Service from New London, CT This boat is within walking distance of Amtrak / Connecticut Rail station in New London, CT. There is also paid parking directly adjacent. Buy your tickets in advance. This boat can sell out. New London Ferry Schedule (Shoulder/on-season only. Schedule varies.) Fare: ~$28/adult. 90 minutes. Parking: Paid, on-site (open/gravel). $10/day Paid, covered lot. $10-15/day. Warning to Amtrak/Shoreline Riders: Given the inconsistency of this country’s railways and the ferry service’s unwillingness to hold for delayed trains, missing this connection can be painful and time consuming. We recommend only using this if you’re in no rush and/or are trying to avoid car service. If you do get stuck in New London for a few hours, there are a few outdoor food and beverage establishments, an ice cream shop, and some pretty neat boutiques. Option 3: Ferry Service from Newport, RI I’ve never taken it; however, the boat itself is identical to the Point Judith Fast Ferry and is run by the same company, Interstate Navigation. Newport High Speed Ferry Schedule ~$25/adult. 60 minutes. Option 4: Ferry Service from Montauk, NY Recommend only taking this if you’re already in the Hamptons or Montauk. The boat is small and slow and, last I checked, is in dire need of a new paint job. Montauk to Block Island Ferry Schedule ~$45/adult. 75 minutes. Getting to Mainland Airports and Ferry Terminals Recall the above Block Island Transport - Points of Interest (on Google Maps) for transport hubs. Unless you’re flying or sailing to Block Island under your own power, you’ll need to travel to one of the many ferry termini or to Westerly Airport. By Rail Amtrak services New London, CT (NLC), Westerly, RI (WLY), and Kingston, RI (KIN), which are the closest stations to the (respectively) New London Ferry, New England Airlines, and the Block Island Ferry at Point Judith. Amtrak Schedule and Tickets (Not all Amtrak Regional Trains stop in Westerly - WLY, which is important to know if you book a ticket to Kingston - KIN thinking you can get off at Westerly. Sometimes, you cannot.) For Westerly and Kingston, you will need to call a taxi or bus for travel. UberX/Lyft is sometimes available, but I wouldn’t rely on it. Call a local taxi ahead of time, usually a day or two before arrival. In the on-season, sometimes you can find a single-serving friend who is also on that train who will give you a lift. There are alternative public transportation options, including Metro North + Shoreline East, and MBTA rail and bus service to the travel hubs, but I have not used either in the last decade. Unless you already happen to be near Montauk, NY or Newport, RI (or are including them in your travel plans) these are more difficult ports to get in and out of, especially from a public transportation perspective. From NYC: The “Michael Gruen” Method This author has had much experience commuting via rail from NYC and thought to write out his preferred approach when traffic is heavy or use of a personal car is unavailable. This approach optimizes for time and money at the expense of potential aggravation. It is best for solo travelers needing a modicum of reliability but not full guarantee. Not recommended for first-timers without a strong command of logistics and stomach for uncertainty. Depending on weather, timing, and luck, you may be flying or taking one of three different boats. But, the payoff is you can cut hours out of your travel block time to Block Island. As soon as you’re a “go” Book a flight on the 5:30pm Flight from Westerly to Block Island; ask New England Airlines to help reserve a taxi for you from the train. Book Amtrak to Kingston, RI (ensuring the train also stops in Westerly, as not all do) My favored train is the Thursday 2:00pm out of Penn Station, Train 174. It’s usually on-time and has seats available. While en route Typical/ideal scenario (3 hour, 40 minute block time): 2:00pm. Train departs New York Penn Station 4:55pm. Train arrives WLY Amtrak Station 5:00pm. Taxi drives to WST Airport, arrives 5:15pm (~10 minutes, $20) $20 fare often split between anyone else NEA has booked on your flight NEA usually in touch with taxi driver, especially if they know you’re coming 5:30pm Take-off from WST 5:40pm Wheels down BID If you need it, ask NEA to book you a taxi for when you land in Block Island before you take off from Westerly. Poor weather, flight is at risk (4-7 hour block time): When the train hits Stamford, CT, call NEA and ask for best guess on departure Confirm they have a ride for you from train station and ask for the car company’s name (they sometimes forget, so remind them and they will figure it out for you) Call taxi/uberX for ride from KIN station to “the boat” for targeted arrival time (check your Amtrak app and provide the train information) to hedge flight availability. Be willing to eat the cost of the taxi/car ride should plan A work out If in-season, check New London Ferry Schedule. See if you can line that up the timetables. (Unlikely.) Make a game-time decision based on the train’s arrival in New London if (and only if) the New London Ferry departs within the next 2 hours and you can get on it. If yes, buy a ticket for the next New London Ferry. (You will need to do that part quickly, and you may need to call as they don’t always take same-day reservations online.) If not, or the boat it sold out, continue on. Call NEA again once you reach Mystic, CT for updated guidance. If it’s a no-go, stay on train until Kingston As you approach Westerly, get ready to make another game-time decision: Get off the train, be ready to have to pay for a cab ride ($40-80) to “The Boat” in Point Judith rather than the Airport, and have to wait an hour for a cab to be available to take you. Or, Stay on the train, continue. If in Kingston, follow the normal Kingston –&gt; cab –&gt; Point Judith route. Delayed Train, connection is at risk (expected block time: &gt;5 hours) Moderately behind: check with New England Air on the latest flight and seat availability. Keep them posted on train delays. Super-behind, make a reservation for the 6:30PM New London Boat on your phone while in-transit. If the train doesn’t leave NYP early enough to get you to New London by 6:15pm and the weather is poor, it’s game over. Get off the train, find a hotel for the night, and try again tomorrow. (This has never happened to me once in nearly 20 years of doing this.) May the odds be ever in your favor. Taxi and Ride share on the Mainland Uber, Lyft, and other car sharing services are sometimes available when booked (usually days) in advance on the mainland. Locals tend to moonlight as Uber/Lyft drivers and only drive when it’s profitable or with a known fare. In the on-season, you can sometimes get an on-demand ride-share last minute, but availability isn’t as reliable as you may be used to. New England Airlines will book a car for you for transport if you ask them to when making reservations. Note on payments: Cabs, generally, only take cash (though a few savvy drivers will also carry a square reader… again, don’t count on it). Taxi Companies Wright’s Taxi (Westerly) - (401) 596-8294 Wakefield Contingencies on “Getting Back” The weather and transit options, particularly during the summer/on-season, can cause delays and involuntarily changed plans. If you’ve traveled either by plane (Westerly) or by boat (Point Judith), contingency planning between these two locations is fairly straightforward as it’s a 35 minutes trip seaport-to-airport, or even less time to the closest Amtrak station. With a little cajoling (or with lucky Uber/Lyft timing), a livery can even take you in between New London, CT; Point Judith, RI; and anywhere in between (like Westerly, CT). You might also find success in asking for a ride from a fellow ferry/plane passenger if you can’t find a taxi or ground transfer service available on short notice. If you traveled by any other means, you might consider leaving early as you can by whatever means are available; otherwise, you will get stuck on Block Island. When the weather turns for the worse, you might as well grab yourself a mudslide and and wait for the weather to change… which may be days, and often is during the winter months. Nothing else you can do (unless you’re supremely motivated and want to hire a brave captain or pilot, but that’s beyond the scope of this document). Weather Travel Considerations Matrix For Plane schedule updates, call the airline directly. For Ferry updates, their websites. On-Season Off-season By Plane By Boat By Plane By Boat Wind High winds (40mph+) might delay flights. Cancellations unlikely, but possible. High winds (40mph+) might delay flights. Cancellations not uncommon during very poor weather. Fog Morning flights often delayed as early fog is common. Fog often clears by late afternoon, but not always. No effect. Fog not common. No effect. Rain No effect (generally). No effect. No effect (generally). No effect. Weather Being as island, the weather can be unpredictable and inconsistent with national weather reports. However, temperatures stay relatively consistent throughout each season thanks to the thermal mass that is the Atlantic Ocean. Until Apple Computer shuts it down, Dark Sky has been the most helpful when it comes to local forecasting. Weather Underground a close second. On Season Late June through August, Block Island can get hot (90°F+), sunny (UV Index 9+), and humid. But, nights can be cold (~50°F). Make sure you bring both layers and sunblock. And a swimsuit. Morning fog is common before burning off late morning. Off Season Late fall, winter, and early spring, Block Island is cool and crisp. The ocean thermals keep the temperatures moderately stable, but cold. It is very much in “New England”. You can get by with a heavy jacket just short of a winter parka. What to Wear Block Island is decidedly casual. I Have A Boat This assumes you have (or have access to) a sea-worthy vessel and know how to pilot it. Holding tanks are mandatory. For drop-offs, any marina will do (provided they allow tie-ups and have room). Otherwise, here’s where I recommend docking: Marinas New Harbor Boat Basin (highly recommended) Payne’s Dock Both are located in The Great Salt Pond (New Harbor). The Boston Globe has a nice writeup for why that other marina is undeserving of your business. Recommend you read (the full article) to understand their shenanigans. Mooring The town has moorings available for use. Call Block Island Harbormaster’s office for more details. Dinghy docks available at the Block Island Boat Basin and behind Paynes (near Dead Eye Dick’s). Launch Service available (Old Port Launch - Channel 68). Unless you have a friend with a mooring, don’t even think about trying to tie-up on a private mooring (painted white) or one of the emergency moorings (clearly marked). The Harbormasters and Coast Guard do not mess around. (PS: if you seek a private mooring of your own, good luck….) Anchorage Along the north side of the great salt pond is designated anchoring area. Boats have been known to drag anchor, and it’s shallow in places, so be careful out there. Fuel Available at one (or more) of the marinas. Lodging If you get stuck either on Block Island or on the Mainland, there’s usually lodging available somewhere because no one’s going anywhere. On Block Island More at the Block Island Chamber of Commerce, here’s a short (incomplete) list of what I’ve heard to be good experiences: 1661 Inn Darius Inn Beach House Neptune House Rental houses are available from local realtors, VRBO, and AirBnb. What to do The Block Island Chamber of Commerce and Block Island Times both actively maintains lists of current activities, happenings, and going-ons if “doing nothing” isn’t as appealing to you as it is me. But, some must-dos (the details of how to accomplished are left as an exercise for the reader): Walk on State / Crescent beach Walk to the North Light Ride around the island on an bike or e-bike ‡ Avoid the mopeds – they are loud, hot, and I have personally witnessed multiple life-altering accidents over the years. Hike a trail (three favorites) Clay Head Rodman’s Hollow Turnip Farm Trail Visit The Zoo Have a Mudslide Have a Donut Witness a Sunset Get on the Great Salt Pond Internet on Block Island A question I often get: “Is there Internet on Block Island?” Answer: “Yes, but no. With effort, it's workable.” ★ On-island fiber has been a game-changer. If you aren’t staying in a place with fiber-to-the-home, roll out this section. While coax cable and telephone lines are run to each home, they are aging… exacerbated by the persistent humidity that rots electronics. The island’s central antenna hosts several LTE/5G cells that blanket radio waves over the core of the island, and some Verizon repeaters fill in some of the more remote locations. But, the cellular data network, particularly Verizon, is patchy as it prioritizes voice calls over text and data. Fiber Broadband and Wifi is available to the public at the Island Public Library. It’s like an oasis for digital nomads. (Service is usually ~60MBps symmetrical, unless everyone is standing around trying to update their iPhones… which happens from time-to-time.) Cell-based tethering via Verizon, T-Mobile, and AT&amp;T work where there is decent cell phone coverage in the off-season. On-season, the data network is mostly useless (&lt;100Kbps) except in the wee hours. (Off-season, the network reaches 300/80Mbps on Verizon, and 110/30Mbps on T-Mobile/AT&amp;T… assuming an uninterrupted view of the central antenna.) DSL is available via Verizon. (~1.5Mbps and often slower.) Satellite. HughesNet and Starlink are available. HughesNet has high-latency and expensive packages, and Starlink has decent performance (150/30Mbps) but is rendered unnecessary by cheaper fiber-to-the-home. Other than the Library and the FTTH project which are connected to the Internet via underwater cable, every other connection point is backhauled via microwave/dish over to the mainland. Phone Service on Block Island While data services on cellphones are slow during the on-season, phone calls and SMS messages are clearly prioritized over data services. (iMessage, WhatsApp, Signal, and others use data services and can be delayed.) Provided your phone can find the network, it can almost always make a phone call. Note about this document This resource was created to provide guidance to friends and family who plan on visiting Block Island. Logistics to get here can be a bit tricky, especially for carless city-dwellers, and I grew tired of answering the question, “How do you get to Block Island?” and the usual follow-ons. The content here is what I have made available to friends and colleagues following years of questions and back-and-forth texts. I’m making it publicly available so they can find it again themselves via search engine. Hopefully it is also of some use to you. On Recommendations The recommendations within this document are current as of the date printed on top, based on personal experiences, and contain no affiliate links, kickbacks, nor any remuneration for the above content. Your preferences and opinions may differ, and I stand by mine.",
        "url": "/resources/how-to-get-to-block-island/",
        "date": 1622419200,
        
        "updated": 1745798400,
        
        "type": "page",
        
        "word_count": 4575
      }
    
  

  
    
      ,{
        "title": "Sundry Resources",
        
        "content": "Bits and bobs of information that I maintain to avoid repeating myself, now hosted for public consumption",
        "url": "/resources/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 17
      }
    
  

  
    
      ,{
        "title": "K73 Build Log",
        
        "description": "For a bespoke mechanical keyboard, designed (almost) entirely from scratch using a semi-standard layout. Aluminum case. MX keys. QMK.",
        
        "content": "So I made myself a mechanical keyboard michaelgruen.com &#xA9; 2020 Schematic of K73 keyboard Layer 1 Schematic of K73 keyboard To clarify: I designed a keyboard layout similar to the standard Apple keyboard (with some notable deviations); Using Fusion360 from some hand-drawn sketches, modeled a three-piece case complete with milling/routing instructions to CNC-machine each piece from solid blocks of aluminum; designed and sent for manufacturing a custom Printed Circuit Board (PCB) and sourced the Bill-of-Material (BOM); wrote a keymap file and some custom functions in C using the most-excellent QMK, an open-source keyboard firmware; and assembled the thing (with minor incident). Quite a few people have asked me about it, so I thought to write out a Build Log. Intended audiences are people who: are curious how one would build a keyboard from (nearly) scratch, would like to do this themselves and want high-level guidance, need to convince themselves that they should instead commission a bespoke keyboard, like to nerd out about mechanical keyboards and small batch manufacturing, and/or are happy to placate their friend and his ridiculous machinations. To that end, the following is a high-level overview of what goes into producing a keyboard from scratch and the work and decision-making that goes into such an endeavor. For the non-keyboard enthusiasts among my readership, I’ll briefly introduce terms with some cursory information (indented). This will occasionally get technical; but, instead of rushing headlong into minutiae, links will direct you to someone who is either more qualified (or more interested/thorough) on the details. To that end, this is the level of content I would have liked to have read when I first ventured out to build a consumer-grade custom keyboard. There’s not much guidance for intrepid souls who seek to produce something that could be mistaken for a high-end consumer product and not (with much respect) builds that are clearly kits, prefabbed parts, home-built, or frankensteined together. Indeed, it was those types of builds that opened me up to the possibility. In short, I wanted something that worked for me and that I could have convincingly bought at my local CompUSA. In what follows, I’ll go through the why, the what, and the how to what I have dubbed the K73 because, well, that’s how many keys it has and I have no plans to market it. If you want to see final result photos, feel free to scroll until you get the visuals. I won’t mind if you skim the prose. It’s your time. Do what you’d like. PCB to Plate Standoff Construction\\n PCB to Plate Standoff Construction Cool story. But why? Probably like you, I spend my days ramming ideas and code through an Apple-blessed keyboard connected to some way station of a computer before it ambles off into the wild blue Internet. Apple’s keyboards have, for me, become a bit too rigid. While I love the solid unibody construction of the machines themselves, I want a bit more flex in my keyboard and for the keys themselves to have a bit more travel. I learned to type on IBM keyboards that, in a pinch, could service as a bludgeoning weapon. These things are tanks, harkening back to 80s-era American-thick plastics manufacturing. Each key press emits a metal spring thwack to assure you that your input was received. You can find them online for about $150 on your favorite online auction site or keyboard trading forum as many of them, decades later, still work. Unfortunately, the myriad shortcuts and hand-jit-su I do have been tuned for the size, shape, and location of Apple’s more recent incarnation of their keyboards, and not a PC layout. Switching between layouts with differing function keys and differently ordered modifier row is painful. Nonetheless, the “chiclet”-style keyboard was getting to me and I bought a 60% mechanical keyboard to try it a newfangled mechanical keyboard on for size. A 60% Keyboard? In the mechanical keyboard world, keyboards are identified by how much of a standard 104 keyboard remains. Generally, smaller is better: Narrow keyboards reduce hand travel between typing and mouse usage, and it allows for a more comfortable gaming position when WASD-ing (where the keys W, A, S, and D take on the form of an inverted-T arrow key layout for most first person shooting games) and aiming with a mouse. 60%-ers include only the letter keys along with every key that surrounds them, usually with the ESC key replacing the ~ next to the 1. For more on common keyboard sizes, see this post. 60% Layout 60% Layout I like the 60%, but using a standard PC-based layout with MacOS still proves too much for my brain to handle… especially working around my years of training my muscle memory for extensive modifier key usage (Control, Alt, Option, Special, Apple/Command, Function, Menu, Caps… and all the combinations therein). I do, however, love the feel of the mechanical switches, and the compact nature of the 60%… but for daily use I found it lacking. So I started to sketch the keyboard I really wanted. Maybe—hypothetically—I could build one. How hard could it be? Keyboard Prime\\n What’s the big deal about the layout? As mentioned, the 60% has few major issues for daily work: Modifier keys are still PC/Windows focused; the command-key (⌘) on Macintosh keyboards and the alt-key on Windows are in slightly different locations… which doesn’t sound like a big deal until you keep accidentally hitting the edge of the spacebar. Yes, you can remap the modifier keys to better approximate the Apple keyboard experience, but it’s still all wrong. No dedicated grave/tilde key. (For Mac, ⌘ + ~ cycles between windows within one application whereas ⌘ + TAB cycles between applications.) Increases friction when task switching which, if you do anything that requires cross-referencing between applications, gets old fast. While I could get away without the dedicated escape key in favor of the ~, it would still require me to have a non-standard ESC key location, or hide it under a non-standard and forgettable keyboard shortcut. No dedicated arrow keys. While many people configure modifier keys to repurpose other keys (usually IJKL or WASD) into an inverted-T, I prefer a one-handed, no-modifier scenarios for frequently-used keys. So I looked to fix those issues. Using the Keyboard Layout Editor and working off of the “Default 60%” layout, I put an ESC key above the ~, and an inverted-T underneath the Enter. Initial Changes to Keyboard Layout Initial Changes to Keyboard Layout Some new issues: The floating ESC key looks ridiculous. Mac modifier keys are still missing. Spacebar still occupies the space of where I’m used to pressing the ⌘ key. So I decided to move some stuff around to where my fingers would go looking for them: Found the ESC key some functional friends: F1 and F2. (I use the F2 key frequently when wrestling with Excel.) Emulated the left-side modifier command-row a la the standard Apple layout. Added a bunch of additional modifiers. Reclaimed my right Shift key. And came up with this: More Changes to Keyboard Layout More Changes to Keyboard Layout This, too, had some issues—this time my concerns were mostly cosmetic (and if you don’t think aesthetics are important, you’ve found the wrong build log to read): The two function keys and ESC still seemed like afterthoughts and adrift from the herd. The area around the Backspace key looked barren. Designers will tell you whitespace is nice; but this amount felt uncomfortable. The right-hand modifier row looked cluttered and lazy; and that the modifiers didn’t stagger well with the keys above them hurt my aesthetic sensibilities, nor was I convinced I’d actually need or use them all. Since this is something that would live within my line of sight 8+ hours a day, I prefer to minimize the things on my desk that make me feel uncomfortable. So, more fixes: Add two more function keys to visually balance the catty-cornered interted-T, and to keep the counts odd. (Groupings of odd-numbered things tend to look and feel more pleasing and grounded.) Simplified the right-hand modifiers so they could be offset from the keys above. Reclaim the real estate right above the inverted-T to add a few keys to balance the column. I frequently use Page Up and Page Down for one-handed lazy-scrolling, so that pair seemed like good candidates to fill the space. In sum, I had independently derived something similar to a Leopold FC660M. (Great minds!) But as I would also come to learn, when it comes to custom keyboards, finding keycaps to match your bangin’ layout is almost as much work as designing the keyboard itself. On Keycaps High-quality keycaps are easy to come by; high-quality keycaps you like, well, can be a struggle. Sites like geekhack.org and drop.com have periodic group buys and community deals on non-standard keycaps, often priced at $100s/set. But they also tend to sell out quickly. Keycaps are their rabbit hole all unto their own. For a moment, I considered designing or commissioning my own keycaps… but after estimating about how much time needed to model a full set of double-injection moulds for ABS plastic for over 70 different keys with 10+ different height/profile configurations (because who wants a dye-sublimated keycap anyway where the legend might wear off after a few years of use) and while I could code up a program to draw them procedurally, I would still have to find a manufacturer both willing and able to do a small run on a hobbyist budget who also had the plastic and dyes required to make high-quality and bright colorways and… (deep breath)… like I said: keycaps are their own rabbit hole all unto their own. My advice: if you find a set you like (and can afford to be out of the money for a bit), don’t hesitate. Just buy the damn keycaps and modify your custom layout accordingly. If you change your mind on them, you can usually sell them (and be very much in the money). This penultimate revision has one critical issue: sourcing a keycap set with a 5U spacebar and sufficient 1U modifiers seemed nearly impossible, especially in a design I liked. (1 key = 1U, so a 5U spacebar is 5 keys wide.) Incidentally, earlier in the year I purchased a keycap set that emulated the old IBM aesthetic I liked, including the desired keyboard profile. While I had intended to use these keycaps on my 60%, I noticed that the full set also included a smaller right-Shift key, enough bottom-row 1U keys to recreate my Macintosh-style left-modifier row, and a number of spacebars to choose from. Still no 5U spacebar, but they did include a 2.25U and 2.75U that, together, would fit within the 5U space allocated for my spacebar. A bit unconventional, yes, but after exploring what QMK firmware could do, this would prove to be quite the happy accident. With these keycaps, I now had a viable—if not unconventional—layout. ⁂ Up until this point, I wasn’t 100% sure that I’d take the plunge on moving forward with this keyboard. But, with compatible keycaps in-hand and after days of lusting over a thing that didn’t exist, I started researching what it would take and, fairly quickly, achieved line-of-sight into what it would take to complete such a build. Then I got to work. Final Keyboard Layout Design Final Keyboard Layout Design One more thing… In researching open-source keyboard firmwares, I decided on QMK as it has active contributions from other keyboard hackers and engineers, has comprehensive documentation, and supports a few cool components one might want to include in a custom build, including rotary encoders, OLEDs, sound support, and more. With an OLED, I could avoid wiring for the Num Lock, Caps Lock, and Scroll Lock indicator lights; but also, it’s kind of a neat thing to have a keyboard with its own screen. Given the odd-shape of the layout, it felt like a nice component to help transition the 5-key function row with the rest of the keyboard’s 60% size aspirations. If you were wondering what that dead space next to the F4 key is all about, that’s what will go there. More later.   Case Design If I were only interested in 3D-printing a case for my custom layout, there’s an app for that: Plate &amp; Case Builder. It takes output from the aforementioned keyboard layout editor and pops out files that you can use to order parts from a fablab, or “print” using a 3D printer and hobbyist laser or water cutter. But the appeal of making my own keyboard was having it be bit more… elegant. And heavier. And custom. Less hacker project and more consumer product. Also, there was aspirational OLED that the Plate &amp; Case Builder doesn’t programmatically accommodate. On recommendation, I used Autodesk’s Fusion360 which is free for hobbyists and (very) small businesses. Two hours of YouTube tutorials later, I felt comfortable enough with the interface to rough out some of schematics based on earlier amateurish sketches to see if they looked viable when confronted with the precision of a professional-grade industrial design tool. My approach was to take the layout and keep the case as compact as possible while be restrained with extraneous design elements. So I took that exported .svg from the Plate &amp; Case Builder, loaded it into Fusion360, and got to work adding material around the switch plate and planned OLED location until it looked like a product, not a project. What follows is a video showing the final model before it went to production. Note: this video isn’t a screencast that shows all of the steps that went into making the case, but rather a playback of the individual parameterized components and how they contribute to the final result.   New construction options Going completely custom means the possibilities are, well, limited only by your time, attention, and budget. For me, I knew I was looking to build a heavy case out of a super-rigid material, but I didn’t want the daily typing experience to feel like I was rapping my fingers on a steel I-Beam all day like it does when I use a on a solid desk. It may seem trivial, but it’s akin to dancing for hours on poured concrete vs a springy dance floor. The latter’s wood panels cushion your feet and joints which make it easier to dance, dance harder, and dance for longer. I wanted to make sure that my keyboard, while the case was solid and confident, the keys would give a little when bottomed out… which happens frequently, but especially during intense writing sessions and (if I’m honest) over intense online multiplayer video games. Making the typing surface springy but confident took a little engineering. With a pandemic starting to spike in New York (April 2020), I knew I would have some time on my hands to figure this out. Thomas Baart makes the options fantastic clear on his keyboard mounting style cheat sheet, and I looked to emulate which seemed clearly the superior choice for my build and typing habits: the Gasket Mount. Plate-mount vs PCB-mount vs Hand-wiring As you may have noticed on Mr. Baart’s cheat sheet, there are options for mounting your switches. Namely, do you (or do you not) use a plate. For me, this was an easy decision: after using the 60% GMMK keyboard which featured hot-swappable key sockets, I loved learning into what switches best suited both my typing and gaming styles, swapping out different switches to taste. To accomplish this, you need a plate. Hot-swaps also meant that hand-wiring isn’t viable. Like the sidebar on keycaps above, switches are a sub-category of mechanical keyboarding all unto their own. For more, go nerd out on this blog post. It’s quite good. However cool the Gasket Mount, I didn’t love the idea of having the plate stick out from the top and bottom portions of the case like an overstuffed sandwich, nor widening the design to compensate, nor adding the complication of finding or making a custom rubber gasket that I’d have to source. Moreover, I wanted to keep the sidewall edges (the distance between the edge of the outermost key and the outer edge of the surrounding case) thin. So I opted, instead, for a top-mount design… but added some rubber washers to keep the plate and keystrokes springy. Thinking my design unique, I have since learned that I am not at all the first to think of this and it is called (I was pleased to learn) a Burger Mount. Burger Mount Assembly\\n Burger Mount Assembly Zooming in on the Burger Mount itself, with some rubber washers sandwiching the switch plate: Zoom in on the Burger Mount\\n Zoom in on the Burger Mount The simple burger mount provides just enough cushioning for my fingers’ delicate sensibilities without creating an overly complicated manufacturing challenge.   Material Selection I knew I wanted this thing to be heavy… heavy enough that it wouldn’t move even under duress. In the realm of custom and high-end keyboards, designers seem to opt for aluminum cases with large brass inserts, which to me seems both unnecessary and expensive. (Not that any of this is inexpensive or necessary, I digress.) As Fusion360 estimated the case alone to be a 3.5 lbs aluminum block (not including the plate, switches, or PCB), I thought to go with that as it’s an easy material to manufacture, readily available, weighty, and (relatively) inexpensive. Later (v2?), I may redesign the case to include a brass insert to give it extra heft and that bling-bling all the kids crave; but, as this is my first shot on goal, I didn’t want to worry about materials-sciencing my way into an ill-fitting scenario on an unforced error… especially since the pandemic reduced my willingness to rent time in communal machine shop where I might be able to persuade multiple materials to play nicely together. Next time. For this iteration, anodized aluminum with a high-precision tolerance seemed sufficient. Design tooling Should you opt to do your own case, I highly recommend keeping some cheap Digital Calipers handy to help translate real-world sizing from the screen and back. Printed Circuit Board (The PCB) Case now designed, it was time to turn my attention to the keyboard’s central nervous system: the matrix circuit. On direction from Ruiqi Mao’s Keyboard PCB Guide, I picked KiCad, a free, cross-platform, open-source circuit designer suite. The learning curve is a bit steep, but Ruiqi’s guide provides more than enough guidance to understand the ecosystem of complementary applications bundled within this circuit designer suite. (To set time expectations for a basic keyboard layout, expect to know what to do and how to do it in about 5 minutes, and then allow at least 5 hours before being proud of anything you’ve done.) First up is the schematic editor to draw the circuit diagram. Next, I used the layout tool to turn that schematic into a printable circuit board, placing the parts and connections on the PCB, working off the same .svg from the Plate &amp; Case Builder. Footprint files that translate circuitry components into footprints for printing (and placing) onto silicon are available all over the Internet. Ruiqi’s guide links to some of the componentry needed, but for the hot-swappable switch plates, I had to look elsewhere. For some of the mounting holes, I had to design my own footprints… requiring an additional 30 minutes of YouTube university with another 60 minutes faffing about KiCad. PCB Front PCB Front PCB Back PCB Back PDFs: PCB Front PCB Back 3D Renders Checking for compatibility Throughout the PCB and Case design process, I’d often switch back and forth to make sure that: the mounting points aligned, the PCB’s reset button (how you flash the firmware) was accessible, I was using the same units in both applications, and I was sizing everything to what it should be in the physical world. Measure thrice. Manufacture once. Minimize errors.   Manufacturing 90% of this keyboard was designed in a New York City apartment amid a pandemic. My tacit goal was to manufacture locally; however, after reaching out to a few smaller local fablabs, they all informed me 100% of their capacities were allocated on building Personal Protective Equipment (PPE) for local hospitals and medical personnel and would be for the foreseeable future. It was heartening to hear how the community rallied to support our first responders and medical personnel and I’m looking forward to revisiting these shops once life returns to some semblance of normalcy. In the meantime, I would need to look elsewhere. Subassemblies To recap, at this point I’ve designed a Case (the top, bottom, and plate), a printed circuit board (PCB), and chosen my keycaps and switches. Now all that’s required is a plan on how to procure all the subassemblies needed to complete the keyboard. Custom designs — Manufacture. Need Fabricators. Keyboard Case Keyboard Plate PCB Commodity parts — Source. Find Vendors and Buy. PCB Components Case Screws, Plastic Washers, Rubber Spacers, PCB Standoffs, Rubber Feet Key Switches and Stabilizers Key Caps   The PCB Prior to designing the K73—and to convince myself this was a doable project—I made a number pad which, in componentry, is identical to a full-sized keyboard, but far smaller. Therefore, it’s easier to construct. Similar to the K73, I used KiCad to build a basic numpad circuit and picked OshPark with intentions to keep my sourcing US-based. Also, I wanted to try my hand at soldering surface-mount components directly onto the PCB. I mean, how hard could it be? Last time I soldered anything computer-related was in college; and while the final result was functional, it was in no way pretty-pretty, and it took burning two other PCBs (and one microcontroller) to get there. (T)hese unfortunate parts had succumbed to my soldering inadequacies before I rediscovered copper wick to help undo mistakes… which is why I ordered spares!) For an explanation of different electronic component soldering approaches, see this post. Following that disaster, I resolved that for the full-size keyboard, I should just pay to have experts place the components. And by experts, I mean robots. Because that’s how small surface-mount (SMT) components should be assembled. With robots. OshPark couldn’t really help here, and other US manufacturers were prohibitively expensive. I inquired with a few PCB manufacturer/assemblers and found PCBWay to be a good and fair vendor to work with, particularly when it came to helping me source commodity components. They also worked with me on parts they couldn’t source, like these Kailh Hotswap Sockets. (PCBWay’s facility, by the way, is bananas.) The process is fairly straightforward: export from KiCad, upload a mess of files (called “gerbers”) to manufacturer, clarify any nits or ambiguities with your account manager, and trust them with your credit card. Where they had questions or got stuck with my terrible instructions, they’ll e-mailed me until they get un-stuck. About a month later, a fully-assembled PCB arrived with my name on it. Well, 5 of them actually. I didn’t understand why at the time, but after watching the above video about their facility tour, the minimum order quantity (MOQ) made a lot more sense. And given my history trying to undo mistakes amid a pandemic, spares made sense. This was fairly painless. The case, on the other hand… The Case I had trouble finding a US-based manufacturer that: as mentioned earlier, wasn’t 100% focused on churning out literal tons of pandemic-grade PPE, or didn’t cater to the US-based aerospace and large industrial design parks with absolutely ludicrous small-batch costs and lead times. So, alibaba.com it was. Finding and working with a small-batch manufacturer on Alibaba While Chinese firms dominate the marketplace, manufacturers from nearly every country have a storefront on Alibaba. As a marketplace, it is truly amazing and a wonder of the modern economy. I searched for rapid prototyping aluminum machining and found two potential partners (both in mainland China) who could write well enough in English, and offered both manufacturing and shipping services at—air quote—”reasonable” rates. Negotiating between the two, I settled on a fair price, sent over the .step files exported from Fusion360, some plan renderings that described the screw hole threading requirements and material finishes, and punched my American Express into Alibaba’s international pay service. A few weeks later, my case arrived. Fantastic. My Alibaba-sourced manufacturer was responsive and communicated every step of the way, sending photos and videos following each stage of the process and checking for approval. My representative also highlighted potential issues with my design files that could (and did) lead to minor cosmetic issues. For instance, I had neglected to think through think at all about how the anodization process works, prompting a subcontractor to “get ‘er done” in the absence of any cosmetic direction or proper manufacturing design. (Not a big deal, but worth mentioning for future projects.) To make sure I wasn’t getting the run-around, I reviewed the photos showing said minor cosmetic issues with some folks who have far greater experience working with offshore manufacturers. They were all impressed not only with the communication and candor, but also the quality of the functional prototype and willingness to correct minor mistakes, especially given the negotiated price. Update: My vendor asked that anyone interested in working with them e-mail Tony directly. To see more of their work, check out u-created.com   Assembly Once the final DHL box arrived, I was ready for final assembly. The PCB to Plate Connection As I chose to go with a switch-swappable PCBs combined with a floating burger-mount design meant that I needed to figure out how to create the PCB and plate subassembly without relying on the switches to do the work. Normally, keyboard builders solder their switches directly to the PCB as part of the build. The two PCB solder points and the switch’s two plate pressure clips, across all of the key switches on the keyboard, provide more than enough connection points to hold it all together. But I didn’t want to do that, because (as has been endemic here) I didn’t want to make a switch decisions at design time and wanted the hot-swappable… which means zero soldering on the key switches. Additionally, I was nervous about building standoffs directly onto the plate or PCB. From a manufacturing accuracy and cost perspective, adding standoffs and/or threading to the plate would add complexity and potential for alignment/manufacturing errors. Again, pandemic-era errors are doubly painful as there’s no good way to address the problem other than order a new component. Further, loading the PCB with tension from a high-torque screw seemed like a recipe for silicon structural failure and a lost PCB. Rather than take that risk, I aligned the design to match locally-available parts that had a day or two lead time rather than the month-long lead time waiting for replacement PCBs from China. As McMaster-Carr makes ordering precision fasteners to my door incredibly easy, it felt like the right decision if not complete indulgence. Their parts are super high-quality, but super expensive. Now, had I done any homework at all I would have learned that there are catalogs of standoffs engineered for exactly the purpose of mounting PCBs at a fixed distance from metal surfaces. Ignoring all of that, here’s the solution I came up with using a threaded standoff flanked with three times as many parts (and therefore about three times as expensive) as I should’ve needed. Nonetheless, it worked like a charm: PCB to Plate Standoff Construction\\n PCB to Plate Standoff Construction Parts List Here are all the parts (with my chosen vendors) should you want to play along at home: Custom PCB (PCBWay) with Kailh hot-swappable sockets (KBDfans) commodity components sourced by PCBWay (with small markup) Custom aluminum case (silver anodized), ~6% rake (u-created.com) M2 low-profile screws (McMaster-Carr) Custom steel plate (black powder-coat) (u-created.com) burger mounted to the case top with rubber washers and M2 screws (McMaster-Carr) PCB mounted to plate with some spacers and plastic washers and M2 screws (plate side are flat heads) (DigiKey) Gateron Silent Browns tactile switches (for now) (FlashQuark) and pre-lubed plate-mount stabilizers (KBDfans) Generic $10 OLED (amazon.com) Domikey SA 1980S (drop.com) 3M rubber feet (DigiKey) If you want to see a master keyboard assembler at work, I recommend checking out Taeha Types. Please imagine in your mind’s eye that my workspace and approach is just as complete and competent, and it was with that grace, poise, and sense of calm that I assembled my own keyboard… which is of course a total lie, but I appreciate you indulging me. Recall my plan had one major flaw: I had neglected to think through how I was going to mount the OLED prior to ordering. The OLED Before this write up, I submitted an image of the final build to the Mechanical Keyboard subreddit and received the following question: I’m curious, you made a fully custom machined case, plate, and hot-swap PCB then just taped the OLED in place? Looks beautiful, just confused on that lol To which I responded: Yes, that’s exactly right. After designing the PCB, plate, and case to play well together, I just didn’t have the patience to figure out how to best mount the OLED onto the PCB and have it sit at the right height. Knowing the lead time would be a few months, I just left myself a modicum of space to work with and hoped for the best. That was not smart. Took me about 3 hours to desolder the OLED pins, figure out how much room I needed for the wires (and where they would go when the case was fully assembled) and will it into place. Further, the OLED’s PCB wasn’t a perfect rectangle so I shimmed it with some electrical tape. Next time, I will do it right and just solder it directly to the PCB with a plastic spacer/mount to fine-tune its placement. Also, what I didn’t mention there was that I was designing this entire build without any prototyping capabilities, and I wasn’t at all confident in my ability to get the engineering marriage between the PCB and the Case aligned correctly on the first time. Other than an inexpensive soldering iron (that I can’t recommend to anyone) and some sandpaper, I thought it less risky to kludge it together than attempt to do it right and get it completely wrong. So with a healthy amount of electrical tape, insulated wire, and swearing, that’s what I did. YOLO.   Firmware With the keyboard fully assembled, now is perhaps the worst time to write the firmware to check and see if all that painstaking work of laying out the PCB, components, and assembly would properly yield a functioning peripheral. While I was confident that the QMK Firmware would work, I wasn’t 100% sure that I hadn’t made in a critical error within my wiring or layout. Either way, I was hopeful, and sat down to write the keymap file which instructs the firmware to understand the matrix circuit that I’ve wired into the microcontroller, and provide instructions to the OLED on how to behave. I hadn’t written any C-lang in over a decade, so this was a trip down malloc lane. Custom K73 Features A few special features of K73, enabled by the QMK firmware, the split spacebar, and the OLED: The left spacebar is a spacebar… and an extra modifier QMK has a built-in function that enables a key tap and a key hold to function differently; say, be a spacebar when pressed normally, and becomes a modifier when held. Holding space and tapping a number key emulates the function row. (e.g., space + 5 → F5) Holding space turns WASD into arrow keys. And some others. Layout Switching Supports QWERTY and DVORAK at the hardware level. Supports Windows Modifier Row and Macintosh Modifier Row by cycling through different keyboard modes. Layout Modes are displayed on the OLED. Holding the CODE key and pressing FUNC cycles through modes. OLED-supported modifiers Show which keys are being pressed. Unobtrusive, but obvious, CAPS LOCK, NUM LOCK, and SCROLL LOCK indicators. … and more! (Once I get around to it.) Building… Construction Complete Once I found my missing semicolons, the firmware was ready to build. It took me about 10 minutes to understand how QMK’s make files work (8 minutes of which was relearning how a makefile works), and another 5 minutes to compile (running QMK’s build routines through docker on a MacBook Air adds a bit of a delay). Compiled, I loaded the binary onto the microcontroller using QMK’s firmware utility… …and this is the moment—the moment where K73 should come into being. Months of effort, hundreds of parts, dozens of lines of source code, and not an insignificant amount of capital all coming together in a pile of aluminum and silicon designed to my exact specification. The anticipation of whether or not this mechanical keyboard neophyte could pull it off had reached the critical moment: would my computer recognize its purpose of being and treat my creation as a valid peripheral? Or was there a fatal flaw, a design error that would relegate my efforts dead-on-arrival to forever live on my shelf as abstract art, a visual reminder of failure in hubris… …and it loaded in under three seconds. And it worked. And it felt entirely uneventful. ⁂ Hold on, though… maybe something went wrong that I didn’t notice at first. I should run through some tests. Test all the keys. This Keyboard Checker makes sure all keys register with the operating system. Professional keyboard assemblers advise you to test your PCB before you build the rest of your keyboard. I disregarded their advice and trusted the quality control team over at PCBWay to have done this for me correctly. I pressed all the keys and all lights turned green. PCBWay didn’t fail me. All key work. Check! Test the firmware and matrix for N-Key Rollover support to increase typing accuracy and gaming input clarity. Success! Tested my typing speed and see if this was all worth it. ([I clock in around 95 words-per-minute… which is about average for me. So, no firmware or latency issue.) So, no. No issues whatsoever. It worked perfectly. Done Here it is… a functional workhorse with 73 keys (with some other common desk inhabitants for scale):   Epilogue As of writing (late November 2020), I’ve used the K73v1 every day for about 3 months now. Here’s what I’ve noticed: From day one, the keyboard just felt right. The key switches are super-fast and tactile and the keys are exactly where I want them to be. The whitespace around the ESC key, function row, BACKSPACE, and arrow keys make them easy for my fingers to locate without my eyes leaving the screen. The angle of the keyboard, with the keycap profiles, means I’m never over-extending my hand to reach for a key far away from the home row. My error rate has fallen significantly. Like the IBM keyboards of yore, the keycap tops have a smaller area than the chiclet keyboards common to the Apple lineup. Accidental (fat-finger) key presses are less common. The split spacebar is faster than the full-length spacebar. For event faster double-spacing, I can double-tap the spacebar with both thumbs. (n.b. For those born before 1980, despite your typing tutor’s insistence, only one space belongs after a period as modern computers know how to kern properly.) I do miss some of the media keys from the Apple Wireless Keyboard (which was my daily driver prior to buying the 60% mechanical keyboard). Will have to think through a good solution to that which doesn’t involve restoring the function row (because, in the case of Apple, they continually change the function row’s purpose if not removing it all together in favor of this ridiculous second screen touchbar that requires looking at what you’re doing as critical functions, like volume, are subject to move on you and seemingly without reason). Most importantly, typing on the K73 has become a joy as if every commute felt like a Sunday drive. They say as you spend 30% of your life in bed, you should invest in a good mattress. With over 40% of my day spent in front of a computer, why was I typing on the functional equivalent of a futon? I should have done this years ago. Photos I’ll give the K73v1 the photoshoot it deserves once I can figure out a better lighting situation. The gallery will likely end up on Exposure where my photography generally lives. The images on this page were taken in haste late one afternoon. Clearly I need to up my product photography game. Budget Setting out, I had no strict parameters on what I thought an appropriate budget would be. I’ve worked in technology long enough that it always costs twice as much and takes twice as long. For K73, that axiom continued to prove true. Not including time spent, I estimate the total build cost more than a Chromebook but less than a MacBook… but I suspect it will outlive several generations of both. Want one? I’m considering doing a small run of this keyboard, with a few flexible modifier row options to accommodate the PC users among us (myself included), and maybe with a PCB meant for soldered switches, with all of the minor nits expressed above addressed in v2. If you’re interested, e-mail me for details.   FAQ In advance of this write up, I’ve already had to answer a few questions about it as I showed my work to friends and random interested strangers. 1. Where are your LEDs? The intent was to build a workhorse keyboard for day-to-day work purposes. Maybe I’ll include addressable LEDs or ground effects in the next build. Don’t count on it, though. 2. What’s your angle? It’s 6° itself and about ~8° when you include the SA profile. A keyboard rest (currently using the GMMK wooden rest for compact keyboards) is helpful. 3. Why Micro-USB and not USB-C? Backwards compatibility. USB2.0 is still alive and well, the cables are cheaper, the parts more available, and I didn’t feel like figuring out the USB-C female pinout requirements at the time of design as it’s a bit more involved than its previous generation counterparts. To be anachronistic, I nearly went for USB B-type connector. 4. What mistakes did you make? What are you going to change for next time? The mount hole on the left shift interferes with the stabilizer. I need to flip the stabilizer layout or (re)move that mount point altogether. I have about twice as many screws to attach the top and bottom parts of the case than I need. Next iteration, I plan on removing the side screws for better aesthetics as, strength-wise, it’s already over-engineered. I should have manufactured the PCB with press-fit standoffs to avoid the headache of working with 4 small, delicate parts when 1 would have sufficed. (This was discussed above.) I need to learn how the anodization process work so I can avoid some of the scarring that comes out of that process. Further, learn what else one can do with the anodization process, color-wise. Next time I will buy pre-lubed switches. Lubing 73 switches was painstaking work, even with the proper key opening tools, brushes, and lube. (Yes, lubing your switches—and stabilizers—is worth the effort) If you want to use costar stabilizers, don’t try to plate mount them with standard Cherry MX stabilizer patterns in the plate itself. It won’t work, and you’re going to have a bad time. I didn’t need 5 rubber feet on the bottom. On non-flat surfaces, it lead to some wobbling… which is exactly what you don’t want. Could’ve thought more about the media keys, although I’m thinking to port that functionality for a secondary peripheral… 5. What does it weigh? 1802 grams (~4 lbs). 6. What’s with the Pin-1 on the PCB? First of all, good eye. Well, after using every other pin available on the microcontroller, I didn’t feel like wasting it. Maybe I’d run an LED to it later. Either way, wanted easy access to it for later. One more thing… It also comes in black.",
        "url": "/K73/",
        "date": 1605916800,
        
        "type": "page",
        
        "word_count": 207235
      }
    
  

  
    
      ,{
        "title": "Hire This Fractional Executive",
        
        "description": "Consulting and advisory services on-offer. (How I can help you.)",
        
        "content": "I’m a founder-type, builder, and technology executive since the mid-00s. Throughout my career I’ve worked in a part-time, fractional, interim, or advisory capacity to founders, SMBs, and enterprises through my firm greyworks. My sweet spot are technology companies † This includes companies that are already technology-enabled as well as those that are tech-aspirational beyond “basic IT”.Especially if you find yourself having build vs. buy conversations at the leadership level, get in touch! going through transformational moments, whether it’s the company’s founding, early/mid-stage pivot, and/or growth investment through a financing round. Previous full-time roles are indexed on my LinkedIn. Previous interim/fractional roles are indexed here. If I can help, do please write me: mg [at] michaelgruen [dot] com Services I’ve titled this page “Fractional Executive” as fractional has become industry term-of-art, but I’m also comfortable with other arrangements. My Role My Partners Strategic Tactical Operational Usual Time Fractional Leadership ✓✓✓ ✓✓✓ ✓✓ PT/Ongoing Consulting CEO/CXO/VP/Dir ✓ ✓✓✓ ✓✓ PT/Limited Interim Leadership ✓✓ ✓✓ ✓✓✓ FT/Limited Advisory Board/CEO/CXO ✓✓✓ ✓   As-needed Table Key PT: Part-time FT: Full-time Strategic: Long-term planning Tactical: Short-term execution Operational: Day-to-day management Number of checks (✓) indicates relative focus within each role. Currently On-Offer Fractional Leadership Chief Product Technology Officer (CPTO) Chief Technology Officer (CTO) Chief Product Officer (CPO) Chief Information Officer (CIO) Chief Information Security Officer (CISO) Chief Data Officer (CDO) Non-Fractional Reasons People Come To Me Interim Leadership Due Diligence Other Services Hackathon IT Strategy and Business Software Operational and Compliance Program Support Technology Recruiting Playbook Fractional Leadership In the way you might have a lawyer on retainer, a Fractional Leader is a long-term, part-time executive who can help you make good hires, good design choices, and good use of spend, without the full freight of a full-time executive. This often means you can afford to make 2-3 more full-time hires than you would be able to otherwise—and with proper oversight! I’ve held the following roles in the past in a full-time, part-time, or interim capacity; or, as core to my larger remit. Chief Product Technology Officer (CPTO) This is what I do most of the time. As the name suggests, it’s a blend of CTO and CPO: a CPTO is a technology executive who builds a product-led technology organization that integrates well into company operations, keeping the core business and its customers top-of-mind. I usually shorten this to “CTO” as “CPTO” is a mouthful. This is sometimes called “Chief Digital Officer”; but given my experience and skillset, I prefer the “Technology” moniker over “Digital”, as the latter is often associated with marketing- and sales-driven organizations. Chief Technology Officer (CTO) Ignoring any product responsibilities (see CPTO above), a CTO is often responsible for the technology: the stack, the team, and the execution strategy. This is often a more technically-focused (“how do we actually build the thing?”) role than the CPO role (“what should we build?”), but the two are intertwined. (Major problems happen when they’re not.) This is why depending on the organizational topology and maturity, the CTO may also own Product. Additionally/alternatively, the CTO might own the data (CDO), security (CISO), IT (CIO), and/or infrastructure functions. Chief Product Officer (CPO) Often called Chief Strategy Officer (CSO) or Chief Innovation Officer (CiO) in some organizations, the CPO is responsible for the product strategy and roadmap. Depending on the organization, the CPO may also own design, user experience, and/or research functions. This role requires a deep understanding of the market, the customer, and the technology, and is often the bridge between the business and the technology functions. It is also a role that relies heavily on soft skills and influence, as the CPO is often responsible for aligning the entire organization around the product vision. Chief Information Officer (CIO) In companies that buy more than they build, this is a critical role. As I often work with technology companies, this role is often folded into the CTO roles; but in larger organizations, the CIO is responsible for the IT function, including the infrastructure, security, and compliance functions. I do not usually do this work independently of the CTO role, but I can recommend some excellent candidates. Chief Information Security Officer (CISO) The CISO is responsible for the security of the organization, including the security of the technology stack, the data, and the people. Like the CIO role, I do not do this indepenedently of the CTO role. I can, however, help technical leaders on a project basis to improve their security posture. Chief Data Officer (CDO) The CDO is responsible for the data strategy of the organization, including the data stack, the data team, and the data governance. While I have run data teams in the past, I do not typically do this work independently of the CTO role anymore… unless Data is a first-class citizen of an organization (e.g., a data company) and there is no CTO. Non-Fractional Reasons People Come To Me Phrased as questions: Do I need a technical co-founder? My CTO just quit. Can you help with a transition? I hired a development firm but it’s not working out. Can you fix it? What technical diligence should I do for an acquisition? How do I know if my product and engineering teams are any good? What tech stack should I pick for my startup? I encourage you to ask your favorite generative AI tool (e.g., Anthropic, ChatGPT) as a starting point—they’re great assistants and I use them daily. When you get stuck, give me a shout as there’s limited intelligence in that “AI”. (It’s very fancy, very cool applied statistics… albeit not intelligence. I digress.) ⁂ Interim Leadership Do I need a technical co-founder? Maybe! Or, maybe not. In the not-so-distance past, entrepreneurs sans technical co-founder had greater difficulty raising venture money than with one. These days, there’s more flexibility (although raising money is still very difficult). A Fractional CTO is often a thrifty technical co-founder: you get all the wattage of an experienced technical executive at a fraction of the dollar-cost and deep discounts on share allocation (if that’s even applicable or appropriate given the arrangement). Fractional Co-Founder. Consultant will serve as the technical co-founder, reporting to the CEO, for a period of 12-18 months, starting at 20 hours/week and scaling back to 8 hours/week on a mutually-agreeable schedule. Consultant will hire and manage the product and engineering team responsible for building the initial go-to-market effort, as well as support company fundraising and budgeting. A technical co-founder will help you make good design choices and good early hires (direct or via development shops), allowing you to get to market more quickly and reliably than relying on external vendors with mixed incentives. (Fractionals are paid for their time, not on your spend.) My CTO just quit. Can you help with a transition? In short: yes. CEOs: there may be a temptation to elevate the highest-ranking or high-performing member of their surviving team to fill-in until a replacement is hired. I have never seen this go well for either the company or the temporarily-elevated employee. There may also be the urge for you, the CEO, to assume the CTO’s responsibilities until a replacement is found. Unless the CTO already had a fully-stacked deck of high-performing managers (or managers-of-managers) as direct reports, this also tends not to go well unless the CEO is also technical leader and has the bandwidth. This is uncommon. Instead, I recommend hiring, either: a Technical Advisor who can help plot a course of action, and/or an Interim CTO who is a decent fit for the team. This role may be fractional or full-time, but it buys time to find the right long-term hire. (I recommend starting with the advisor.) A strong advisor and/or Interim CTO can even help recruit their replacement and ensure your finalists will be a good fit for you and the team. This is very, very difficult for a CEO to do alone, particularly with the incoming capacity gap from the departing executive. Depending on my availability and fit for your org, you can hire me or I can recommend a suitable candidate from my network. Sample engagements: Technical Advisor. Consultant will serve as Technical Advisor to the CEO, for approximately 5-8 hours/week for 2-3 months (or longer, as needed). Consultant will evaluate capabilities and operations of the product and engineering teams, helping the CEO decide on the best course of action and providing guidance throughout the transition. Consultant will also help interview candidates and onboard the incoming CTO. Interim CTO. Consultant will serve as an Fractional CTO (20 hours/week) on an interim basis (3-6 months), reporting to the CEO and the Board of Directors. Consultant will assume responsibility for the continued performance and operation of the product and engineering teams, providing a management layer to ensure members of the team are continually well-supported until a full-time CTO is onboarded. Consultant will also help interview candidates and onboard the incoming CTO. I hired a development firm but it’s not working out. Can you fix it? Yes. (Next time, hire someone before you contract out your software development, especially if you’re not technical yourself! Except in special cases, I also recommend ensuring that your CTO/CPO, fractional or otherwise, is not packaged with the development firm you hire—keep your controls separate from the software development execution.) This happens more often than people talk about. Candidly, it is often not the development firm’s fault; but, rather a misalignment of expectations, communication, and/or incentives. Sometimes, though, dev shops have taken you for a ride! For my part, I can help make sense of the situation and provide a plan and ongoing support to get things back on track. Due Diligence What technical diligence should I do for an acquisition? For mergers and acquisitions (also lifted from a previous offering): Technical Diligence. Consultant will serve as firm’s technology investment/M&amp;A advisor, retained at 30 hours/month. Consultant will analyze and report on acquisition targets’ technology organization’s maturity, including: software development life cycle, code quality, and technical obligations (debt); will also identify existing and emerging risks, including compliance and security concerns. In cases where system integration is anticipated, evaluate feasibility and scope. How do I know if my product and engineering teams are any good? As the Product and Engineering function is often the most acutely felt barrier to growth, it’s always useful to get an independent evaluation on how the team is doing. Sample offering: Technology Maturity Audit. A thorough assessment of both your technology team’s capabilities and your current infrastructure and assets against benchmark. Conducted over 2-5 business days for startups &lt; ten FTEs (and 2-4 weeks for larger companies) and culminating in a written-report that synthesizes findings, you’ll gain insights into your company’s technology function along with actionable recommendations to improve the team’s productivity, output, and happiness. What tech stack should I pick for my startup? This is often, quite literally, the million dollar question. If you’re unsure of a path, would like to validate a chosen path, or need help changing the path, I highly recommend soliciting unbiased feedback whether it’s from me or another qualified tech executive. Too often do I see well-intentioned “we need to build an MVP that also ready to scale!” efforts that lead to heartbreak, a heap of ashen currency, a run-down time-clock, and a pile of regrets. Consider hiring a fractional technical co-founder to navigate through this. Other Services Some smaller deliverables I’ve knocked-out on a project basis—usually for peers—when time allows. Hackathon I’ve run a few of these, both technology-wide and company-wide. They’re highly impactful to lateral thinking and (more importantly) building camaraderie among teammates, especially those who don’t get to work together often. IT Strategy and Business Software Especially at the early stages, CTOs often double (or triple) as CIOs, CISOs, and CPOs. (That’s information, information security, and product.) Sometimes this is called “Information Technology”, “Enterprise Technology”, “Business Software”, “Internal Tools”, and the work is often partnered with Operations. This project is often about buying, installing, and training on a vended software stack; usually includes some minor integration work. Occasionally there’s an opportunity to build custom, but rarely. Operational and Compliance Program Support I’ve helped stand-up several compliance programs for multiple companies, setting “land speed records” for SOC II Type 2s… often the gateway requirement for US-based companies selling to enterprises. Evaluate current [Tech|Dev|Sec]Ops maturity and develop a go-forward plan. Provide technical operations guidance and leadership for compliance, trust, privacy, and safety. Technology Recruiting Playbook See Interview Circuit for my framework. Develop a comprehensive technical hiring playbook tailored to your company’s needs, ensuring an efficient recruitment process. The playbook will provide a structured approach to identifying, attracting, and assessing talent and fit. Deliverables often include: Org chart target Job descriptions Structured hiring interview process Team training",
        "url": "/fractional/",
        "date": 1677542400,
        
        "updated": 1742860800,
        
        "type": "page",
        
        "word_count": 2312
      }
    
  

  
    
      ,{
        "title": "Dispatch",
        
        "description": "Not quite essays, blog posts, or longer thoughts, I couldn't think of a better word.",
        
        "content": "Atom/RSS Feed: 🗞",
        "url": "/d/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 6
      }
    
  

  
    
      ,{
        "title": "Michael E. Gruen",
        
        "description": "A technologist and founder-type who drives change through key transformational periods. This site is a self-maintained index of his thoughts and activities.",
        
        "content": "",
        "url": "/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 0
      }
    
  

  
    
      ,{
        "title": "Interview Circuit: A Modern Hiring Playbook",
        
        "description": "How to hire well, fairly, and quickly",
        
        "content": "Front Matter The Interview Circuit Playbook ↓ is a Pareto-optimal approach for building high-growth, high-trust, high-impact teams with minimal cost, pain, and risk for both employers and candidates. While the following approach is tuned for early/growth-stage companies hiring for full-time technical individual contributors, it can readily adapt for other role types (e.g., people managers), functions (e.g., marketing), and labor types (e.g., contractors). Additionally, it can be trimmed for smaller organizations and expanded for enterprises. In this form, it is written to be vendor and tool agnostic. (Batteries not included.) However, company-specific Playbooks should absolutely include direct procedures and links to tools/training within theirs. I strongly recommend reading Why Modern Hiring Processes Work if you find yourself scratching your head or disagreeing with any of the following material. If you end up adopting my interview circuit playbook for your own organization or team (or need help) do write me—I’d love to hear how about it! Interview Circuit Playbook High-level, the Interview Circuit depends on the bolded stages of a structured hiring pipeline below. Candidate Selection, Skills Assessment, and Fidelity Check (the starred* items) are its core components: Need Identification Role Definition Applicant Sourcing Candidate Selection * Skills Assessment * Fidelity Check * Offer Onboarding Retrospective Close I will focus on the bolded/starred stages and, for completeness, lightly touch on the others. 1. Need Identification The team, led by a designated lead and/or hiring manager, will periodically assess its current and future needs to determine which capabilities would best fit. In the case of unexpected backfill, they should resist the temptation to find a “direct replacement,” as human capital is not perfectly fungible. Sometimes, additional headcount may not be needed after all. Alternatively, needs might be better met by a vendor, tool, or contractor. However, if the company has a need, an allocable budget, and a hiring manager who is directly responsible for owning this outcome, proceed on. 2. Role Definition This stage takes significant effort. As it should: while good hires are expensive, bad hires are even more expensive. In the spirit of “measure twice, cut once”, the hiring manager should produce the following materials before sourcing candidates. Much of this work informs the Interview Circuit’s construction. Role Definition Checklist Role Description Skill and Behavioral Preferences and Requirements Experience Preferences and Requirements Activity Decomposition (by time/effort) Application Instructions Compensation Structure with Pay Ranges Title and Leveling Reporting Structure Definition of Role Success Growth Opportunities and Pathways Sourcing Plan and Budget Relocation Budget On-site Interview and Travel Budget Role Marketing Budget (sometimes you need to get creative) Interview Plan Interviewer Selection (make sure interviewers are trained!) Skills and Behavioral Assessment Plan Planned Interview Questions Work Product Requirements Reference Requirements Outreach Plan (who should be tapped as references) Key Questions for the Role (past performance inquiry) Desired Start Date Logistics Options Location (on-site, remote, or hybrid) Accepted Working hours (with time zones) Onboarding Plan (an outline is sufficient at this stage, largely informed by this checklist) Depending on the company size and maturity, the hiring manager may need to do this work themselves and/or with the People Operations team (née Human Resources). Generally, the latter will supply: The Company Pitch (why candidates should accept potential offers) History and Mission Benefits Packages Time-off and Absence Policies Workspace availability Compliance Requirements (e.g., Background Check, Drug Test) A review of interview questions for legality Offer Approval Plan The hiring manager can consolidate this information in a single document, linking out where appropriate. I recommend putting this into a shared, versioned, protected workspace (e.g., Google Drive, Atlassian Confluence) for later tweaking, templating, and reference. Additionally, hiring managers may want to note: Queued projects/work that may be helpful for a candidate to produce (as a paid engagement) where existing work product can’t be evaluated Available budget for the same Adjacent roles with similar skill requirements – Sometimes, candidates may be better fit for other roles within… which means skill evaluation can be reused! This is also a great way to build partnership across the company. Finalists could interview with multiple teams to see if there’s a better fit than the role they initially applied for, and to make it easier to move them in the future should need arise. 3. Applicant Sourcing The hiring manager should also pay attention to how many humans might be nearby who are also capable of filling the role. In many markets, talent availability is a struggle. Hiring managers may find limited applicants (or too many!) for their posted jobs and should continually evaluate whether applicants seem to meet the desired criteria, and if those applicant pools are meeting DEIB goals. In most cases, the hiring manager will need to revisit the job posting and/or engage outside recruiting/sourcing facilities to ensure the top-of-funnel is in good working order. If the applicant pool is demographically reflective of the company’s customers and constituencies, this is a good indication that the sourcing plan is sound. If not reflective, there may be unconscious bias in the job description and/or posting, or it is something else that’s limiting or skewing the candidate pool. Additionally, should the hiring manager or anyone else on the team receive candidates out-of-band (via e-mail, LinkedIn, direct outreach, or whatever), direct all applications through the normal application process. (Companies might consider adding a “how did you hear about this role?” field in an application form to allow for candidates to flag themselves as having been redirected, and for referrals to confirm their referral. Referral bonuses optional.) 4. Candidate Selection This is the stage where a hiring manager (often aided by the recruiting team) selects who moves on to the Interview Circuit. This work is incredibly taxing for hiring managers: their bosses push them to “fill the seat”, their teams want relief, the people ops team have board-reported time-to-fill SLAs to meet, and good candidates want resolution on their candidacy against competing offers. However, every candidate who passes through this gate requires significant resources, capacity, and opportunity costs to perform a skills assessment. This stage should be a bottleneck, a control gate for all applicants prior to reaching the next stage. To manage it effectively requires meaningful time from the hiring manager and, often, the recruiting team. To alleviate some of the pipeline pressure, I like to employ two candidate prompts that greatly aide in the filtering process. In the “To Apply” section within a job description, I request: in lieu of a cover letter, write a “50-words or less” note introducing themselves and why this role is interesting to them; and that they complete a small challenge that should take a qualified candidate a trivial amount of their time. The first prompt checks to ensure they’ve both read the job description, are able to communicate succinctly, and can follow guidelines. Applications where that prompt comes back blank or is well over 50 words are easy to dismiss. The remainder applications are generally of high-quality, and represent less than 10% of the total applicant pool. It’s a good ROI. The second prompt dives in to a role’s particular specialty, kind of like an extended CAPTCHA. Examples have included (paraphrased for brevity and role-type): For a product owner: What’s wrong with your favorite product. If the answer is “nothing, it’s perfect”, what’s the smallest tweak that would change that opinion for you? For a data analyst: create a graph that prints the letter/character frequency in your resume; provide your source file(s). For a quality engineer: provide code that checks format for a single cell reference from a spreadsheet. Ignore casing and other punctuation (for example: A1 and BH-323 would match, but 9C, R2C4, A:A would not.) For a software developer: write an http endpoint that converts pounds (lbs) to kilograms (kgs); provide your source file(s). (1 kg = 2.2046226218 lbs) Insist candidates not to over-think (or over-engineer) their answers as it is not a paid engagement. These prompts should be about as taxing as writing a brief e-mail is for a generic professional. If any prompt seems above a trifle, candidates tend to self-select out… or they attempt to impress with an over-worked submission. (I’ve rarely seen an elegant or even working solution for the latter, which makes for easy screening and/or redirection to another available role.) Historically, for those who complete those who short challenge, most get a phone screen. Less that half of those remaining make it through to Skills Assessment. I recommend selecting applicants among the pile thusly: Candidate Selection Checklist (Funnel benchmarks based on real-world data included) Triage inbounds Ignore everything except the 50-word note. If it’s left blank or goes beyond 50(ish) words, or is a clear copy/paste, reject the application. (Only ~15% of applications make it through this step. Surprising, no?) Next, review challenge prompt. If empty, wrong, or obviously inaccurate, reject the application. (~75% of the remainder make it through.) Advance the candidate and move on to the next applicant immediately. Ignore everything else—name, resume, portfolio—for now. Create a Short List for Phone Screens Review complete application. Weight applicants who have demonstrable skills/experience, particularly those who submitted portfolios and/or work product. Budget call screening time accordingly (~90% are offered a screening calls of which 80% accept one) Phone Screen with Hiring Manager (95% show rate as 5% are no-shows) Introductions (if hiring manager is the candidate’s future boss, identify as such) Keep calls short, but unhurried. (~20 minutes usually suffices) Keep calls unstructured, but prioritize discovering: Candidate’s understanding of the job and company. (Almost all understand the role, far fewer understand the company at this point, and that’s ok. Job searches are grueling, remember?) Candidate’s appetite to do the job. (~70% seem to have the will to do the job – I have another piece queued on how to measure this. Stay tuned.) Set expectations and confirm: Interview and Hiring Decision Timelines Explain Skills Assessment and its goals Emphasize that Hiring Manager’s function at this point of the process is to ensure both sides get what they need in order to make a go-forward decision; and, for the hiring manager, to ensure candidates are evaluated accurately and fairly. Compensation Range and Composition Work Location/Availability, Work Eligibility, and Expected Start Dates Leave time for questions Before candidates ask their first questions, provide a method for candidates to write-in should they think of any questions later or run out of time now, and make available additional resources about the company and the role. Thank the candidate for their time and let them know when and how they should expect to hear back. What’s left is a short-listed group of candidates for the Skills Assessment. Deciding how many to send through to Skills Assessment should be a business decision considering the need for the role to be filled against the need for the team to produce output as a function of timeliness. But, as a starting point, for every 1,000 inbound applicants at the top of the funnel, only 75 receive a phone screen. If that’s still too many to consider, application screeners can apply more strict filtering on the 50-word note and challenge. If not enough, revisit Stage 3. If, during the expectation-setting portion of the phone screen, the hiring manager or screener can’t provide answers to the questions around decision timelines and goals, it’s a sign that the Interview Circuit isn’t fully baked and should be revisited. The next stage is the most expensive as it requires a tremendous time and dollar investment from the team. However, when executed well, it also leads to speedy and confident decision making while creating a great candidate experience… which is why investing in the work up-front is so important. 5. Skills Assessment The primary goal of this stage is to assess candidates’ skills in real-world scenarios. Additionally, it aims to understand a candidate’s potential (and appetite) to learn new skills. This series of interviews forms the core of the Interview Circuit, and it is where this Modern Hiring Playbook derives its name. The skills evaluated throughout these interviews should, collectively, be proportional to the role’s responsibility set and assessed in various ways, multiple times. However, they should not be evaluated in the same way multiple times. (Fidelity checks come later.) The Interview Circuit (or, Circuit) calls for a mashup of the following interview types: Behavioral – Ask candidates about how they would navigate hypothetical scenarios related to the role. While, past performance does not guarantee future results, they tend to correlate. Candidates will often draw from experience in answering the question. (I recommend avoiding the “tell me about a time when…“-type questions as candidates may have not have a good example, leading to the interviewer to draw an irrelevant conclusion on top of an irrelevant scenario. Focus on evaluating skills, not judging experiences.) Work Product Review – Prior to this session, the candidate should have submitted some form of work product for the interviewer to evaluate. This work product may have been created explicitly for this evaluation, or (preferably) it may be something recent from the candidate’s portfolio, or where the candidate has deep domain expertise. Interviewers should ask why certain choices were made and to challenge the candidate on hypothetical tweaks. Candidates may also be asked to present their work. Case Study – In this session, interviewers walk candidates through real-world scenarios, which could be of the form, “let’s work on this together!” or “what do you think about this?”. This interview is inverse to the Work Product Review. These interviews may be combined or reproduced in any order; but, for best results, each interview should be performed by a different interviewer. A note the “Bar Raiser” interview type Amazon is known for implementing this interview type, in which specially trained Amazon employees (“Bar Raisers”) ensure that all new hires meet Amazon’s definition of excellence. This interview aims to address hiring risk (i.e., preventing the wrong hire) by allowing the Bar Raiser to veto a hire regardless of the hiring manager’s decision. This interview is bolted on to the end of their hiring loop. As I have no direct experience here, I won’t speak to its efficacy. For my part, though, I would hope that we’ve equipped the hiring manager and the people ops team with sufficient training and empowerment to “bar raise” in Stage 4, not at the end, and not after having wasted company time and resources on a candidate who would ultimately be rejected. If the upfront screen produced a false positive, that failure should be revealed during the rest of the process. (But I’m not a $1,000,000,000,000 company, so what do I know?) A (Simplified) Interview Plan for a Data Analyst Interview Type Interviewer(s) Skills Assessed (Simplified) Behavioral April Entry (20%) Integrity (20%) Analysis (50%) Storage (10%) Case Study Bruno Visualization (30%) SQL (50%) Integrity (20%) Work Product Review Cici Doug Visualization (20%) SQL (60%) Analysis (20%) Case Study Edgar Entry (50%) Storage (40%) SQL (10%) A few observations to note: Skills are measured more than once, but measured differently. There’s a different interviewer for each, and ok to have multiple interviewers. (Useful for training.) Immediately following each interview, each interviewer should submit a written evaluation that breaks out content by measured skills. (Note, Cici and Doug each submit their own review without discussing how it went amongst themselves. Let’s look at Doug’s.) A (Simplified) Candidate Review Interview: Work Product Review Candidate: Michael E. Gruen Role: Data Analyst Reviewer: Doug Scenario: Candidate provided an analysis of motor-vehicle collisions involving pedestrians. On Data Visualization: Candidate produced a pie chart to represent the percentage of fatal automobile collisions based on a sample data set. When asked how one might show fatality percentage over time, candidate suggested a 100% stacked area graph with time on the X-axis, aggregated by month. Answer sufficed. On SQL: Candidate produced legible SQL for motor-vehicle accidents, properly using filters and aggregates. Stylistically poor, candidate mixed UPPER and lowercase commands (e.g., SELECT count(*) from Collisions;). Impressive use of window functions, but could have been more easily produced with an intermediate common table expression. Candidate did not offer why one approach would be better/worse than another; when prompted, did not offer much. On Analysis: Candidate used national highway traffic data as dataset, pulled from a .gov resource. Candidate demonstrated that while traffic fatalities were overall on the decline, traffic fatalities involving pedestrians were on the incline. Candidate broke down pedestrian fatalities based on vehicle type, highlighting how pedestrian collisions involving trucks were directly correlated to their front-hood height, with Dodge Ram pickup trucks having the highest number of incidents of accidents and fatalities… by a wide margin. Candidate did not provide data on whether Dodge Rams represented a greater number of trucks on the road to account for their disproportionately high collision rate; candidate responded, “While Ford F150s are the best-selling trucks in America, further inquiry is required to understand if best-selling also means most-driven, which might contribute to these datum… but anecdotally, Dodge Ram drivers live up to the truck’s namesake.” Hire Recommendation: Moderate Yes. Each interviewer should render a decision on the candidates’ skills in the form of a Hire Recommendation that answers the question, “did this candidate demonstrate the requisite skills to do the job?” While styles differ on how much scalar value one should place on the Yes or No question, any interview in which the interviewer responds with “I’m not sure” wastes the interview and provides the hiring manager with no useful information. As such, the job of interviewers is to arrive at Yes or No decisions. Once the candidate has completed all Skills Assessment interviews, they move on to the next stage. (Depending on timing, interviewers may not have finished their reviews. Moving past Fidelity Check does require those reviews to be completed; and, depending on how the Fidelity Check goes, the process may back up a stage.) 6. Fidelity Check Immediately following the Skills Assessment, Hiring Managers should have a follow-up conversation with the candidate (whose brain is probably quite fried by this point). The purpose of this conversation is to ensure that the interviews and evaluations within the Skills Assessment were properly conducted and that the incoming reviews can be relied upon. Some questions to ask (and why I suggest on asking): How did the interviews go? Try to understand 1) how confident the candidate feels about their performance, 2) how confident the candidate is in the team, and 3) how excited the candidate is about the opportunity. Was there any interview that didn’t go the way you wanted? Candidates know that hiring managers will receive written feedback from the perspective of the interviewers (or at least they should) and tend to be candid about where things went well or not. Usually, follow-up questions such as, “How would you have approached the interview differently?” often reveal that the candidate actually knows the material, but was distracted by the interview construct. Depending on interviewer notes, hiring managers may elect to re-do an interview or find another method to measure the skill. Sometimes, it’s a signal to the hiring manager that the interviewers themselves may not have conducted the best interview, or had sufficient command of the subject to conduct it solo. Either way, it demonstrates that management is committed to continuously improving their business and processes. Are there any unknowns that fall under the category of “I don’t know at this point I’m too afraid to ask”? When I ask this question, I usually reference this meme. It usually disarms candidates, creating space for them to revise or revisit some earlier statements about their willingness or ability to do the role; or (helpfully) it confirms an assumption they made about the opportunity without having asked for it to be made explicit. Have your expectations on the role or opportunity changed in any way following your interviews? Candidates who are more excited will often say so (but not always). It’s a good question in that it usually prompts candidates to zoom back out to why they applied in the first place and if they’re still interested in the role, providing an additional and high-impact opportunity for the hiring manager to re-sell the role and to ensure a good fit. Sometimes, it leads to a compensation ranging conversation. Do you think we properly evaluated the skills you’ll need to be successful in this role? Sometimes this will trigger a follow-on “what does success look like?” question from the candidate; but, the intent of this question isn’t only to ensure the candidate knows what they’re getting themselves into, it’s to glean if the candidate wants to apply those skills in their role. (Just because people have the skill to do a job doesn’t mean they have the will to do it well.) Fidelity Interview Checklist Ask a series of questions (from the suggestions above) to ensure interview integrity Record candidate’s response. Compare against interviewers’ reviews. If an interviewer notes are unavailable, compare later. Address any outstanding questions. Set expectations on the next steps of the process. Encourage candidate to reach out if there’s anything else they wish to address, discuss, or know. If an interviewer’s review and a candidate’s experience differ significantly, either one (or both) of them may be incorrect. More often than not, the candidate does not understand their own skill gap. However, not always. In those less-common cases, it helps to identify a professional development opportunity to coach existing team members on their interviewing methods while also allowing the team not to miss out on adding a great new member. The next step could be an offer, an interview redo, a rejection, or a trial period. Either way, completion of this stage signifies the end of the Interview Circuit. It’s decision time. 7. Offer The hiring manager makes their selection among the currently available candidates and extends offers accordingly. (I am avoiding using the phrase “best candidate” as the term “best” is subjective, at best.) ProTip™: I confirm compensation, benefits, start-date, offer expiration date, and other candidate expectations prior to extending the offer verbally. Where there’s hesitation, I don’t send a written offer until I’m confident the answer will be a “yes” or the start of an earnest compensation negotiation. 8. Onboarding The hiring manager champions the onboarding process, its importance betrayed by this relatively short section. It’s critical that new joiners feel welcomed and productive as quickly as possible or they will leave, negating the team’s dutiful efforts prior to this stage. The onboarding process should commence immediately following offer acceptance, prior to start date. The candidate should know what to expect between them signing the offer, and their first few months in their new role. While there’s no (and should be no) expectation that the candidate start work prior to the start date, working through logistics and compliance checklists is a good way to verify the candidate has mentally started their transition to joining the team. Some helpful, non-work projects during this period are employment verification, equipment procurement selection, and some scheduling/calendaring for their first few weeks so the new joiner doesn’t feel like they need to put their life on hold until they know “what their schedule is”. Managers should check in with their new hires more frequently than their established reports to ensure the transition is going smoothly. Despite the team’s best efforts, sometimes candidates punch out after their first week or so. This could be due to a better/dream offer they’ve received late, or (more likely) a mismatched set of expectations. The former is more difficult to control for than the latter. 9. Retrospective Feedback loops ensure continuous improvement. To that end, not all new hires work out. Managers and People Ops should do an early evaluation (outside of the company’s standard evaluation cadence) of their new hires to ensure both the new hire and the company got the fit right. In cases where there’s friction, there might be a coaching opportunity, or perhaps the new hire is in the incorrect role. There could be a better fit elsewhere in the company… or outside of the company. While the Interview Circuit helps minimize this, there are no guarantees. 10. Close In Stage 1: Need Identification, the team periodically discusses their hiring needs. This discussion includes whether it’s time to close the Circuit for a particular role. The decision to close is a result of this discussion, not because the role has been hired for. As discussed above, new hires don’t always work out, and sometimes the hiring need is greater than anticipated. I recommend closing out once there’s a high degree of confidence that the need is filled, which is different than when roles are filled. (I would, however, take down the public job listing for key/singular roles that are filled once the chosen candidates have started, such as named leadership roles – e.g., “The” VP of Something versus than “a” VP of Something.) Afterword Why is it called an Interview Circuit? Companies call their interview processes all sorts of things. I’ve seen “Recruitment Process”, “Interview Loop”, “Talent Acquisition Strategy” all used interchangeably. I chose to call this thing “The Interview Circuit” because: I like electrical circuit diagrams. Loops infer closure, whereas circuits can remain open. Loops infer singular paths, whereas circuits can include redundancy and feedback loops within. Circuits can be short-circuited, re-routed, and rebuilt. I think of it like placing interchangeable components on a breadboard where the Interviews are placed for system efficiency and output. Parts can we swapped out, but the circuit exists. “Circuit” sounds a lot like “circus”; and, like the circus, a well-executed Circuit is a thing of joy. (Also, the internet tells me that while they are both Latin in origin, they are etymologically distinct. This is neat.) Strategy and Execution are different; circuits are execution-focused and can be adapted to a strategy. It’s what first came to mind and I haven’t found something I like better. Can you help me build an Interview Circuit for my company? Happy to help where I can. Feel free to write. Can you explain some of the theories behind this? Have done so here.",
        "url": "/resources/interview-circuit/",
        "date": 1678320000,
        
        "type": "page",
        
        "word_count": 4538
      }
    
  

  
    
      ,{
        "title": "Learn To Code by Working With Code",
        
        "description": "Building your Digital Zen Garden — a low-stakes, high-reward starting project for maybe not complete beginners, but close to it",
        
        "content": "“What should I learn first?” “Start with git”, I said. “Great! I’m downloading it now.” Any educator reading this just rolled their eyes and has every right to do so. What programming language should I learn first? It’s as if someone said, “I want to learn how to paint!” and I said: “Ok! First you need to find some canvas and a wooden frame, and then cut the canvas to size to stretch over the frame. Don’t forget the staple gun! Oh, also, do you have an easel, some gesso, sandpaper, and a lint-free cloth to prepare the surface for paint?” My instincts to recommend git—software engineering’s canvas stretching—were directionally correct, but I failed to give context. What follows is what I should have provided. Your First Programming Project Project Motivation: Your Digital Zen Garden Goal Who is this for? Why this project? Project Overview READ ME Burn-down Skills for life Programming tools and markup languages Your mission Tips for Success Setting Expectations Why Hugo? Key Paradigms to Note Embracing the Challenge What’s next? Try another SSG Get fancy with CSS Experiment with JavaScript Integrate Third-Party Services Publish Your Work Learn Git Learn About Abstractions Go Deep Additional learning opportunities Glossary Project Motivation: Your Digital Zen Garden Your first “learn to code” project will be a website that you create from source code, publish online, and keep entirely under your control. Goal The content is ultimately up to you, but I’d start with something you are already familiar with and care about. Ideas include: A blog about a passion. Your family’s recipes. Reviews of books, movies, and TV shows. (Great way to keep a log!) A choose-your-own adventure story. A website about yourself and your thoughts. (Like this one.) A work portfolio. Barring any of those (or a more interesting idea you come up with), the content could be a “learning to code” journal that recaps all the new languages, libraries, and tutorials you are using along the way. Use it to keep your notes and documentation. (If you hate it, you can always delete it later or make it private. Or change it. Or move it. It’s your garden, after all!) Whatever you choose to make, this will feel very different than using website-in-a-box companies like Squarespace, WordPress, and Exposure where you trade your credit card for a service to do the “hard” work for you. Quick note: this project involves putting content on the Internet and therefore making it publicly accessible. While it is exceedingly unlikely that anyone will find it unless you tell them about it, err on the side of caution. You can also always delete it. My hope is that you’ll instead continuously extend it, amend it, reinvent it… like I have with michaelgruen.com. I’ve been working on my own for multiple decades. The elation of getting a computer to finally do the thing you asked it to do, or having software render the way you want it to, never goes away. This project is a great beachhead for your journey. Who is this for? This project assumes a certain amount of grit and stick-to-itiveness. Just as Math Is Not Linear, neither is coding. Every tutorial, therefore, assumes some a priori and empirical knowledge. (Likewise, I don’t know who you are or where you came from, so the best I can do is send you on a mission with as much “heads up” on other topics you may need to learn on-the-fly.) While autodidacts will probably fare best, this project is accessible to anyone who knows their way around a basic operating system (like Windows/MacOS) and is generally curious about how it all works. It’s also important to remember that if anything goes wrong, there’s a 99.999% probability that it’s something that you did incorrectly. The computer isn’t out to get you—it’s just doing as it’s told. There’s enormous freedom in this even if it is, at times, frustrating. You also need a computer with administrator rights and Internet access. Why this project? The goal is to build a meaningful and complete project with the opportunity to keep going as you follow your interests. Key reasons to use this as a starting project include: The skills you’ll pick up—how to create, work with, and manage a codebase—will be universally applicable and foundational to all programming you do in the future. This project does not go deep on any “real” programming language before you have something useful… …and once you have it live, you can get as complicated as you like: add a database, restructure your content into a single-page app, swap out your framework, enable web3 login, link an LLM, query big data for interactive visualization, and/or whatever else interests you. It is highly improbable you will “break” your computer while working through this project, even if the commands you’re typing into the command line seem scary and foreign. Failure is inexpensive: mess up any step beyond recovery? Just delete the work folder and start again. (If you’re nervous about doing this in the command line, using Windows Explorer or MacOS Finder is perfectly fine.) It can be broken up into parts. If you know what you’re doing, this project takes less than an hour. For learners, each step may take an hour or more. Either way, no one part is too big for one learning session. It is portable: you can change every core component of this project without losing the content you’ve created—provided you don’t permanently delete the content. It requires no additional hardware beyond a computer with a command line. (I don’t suggest you try it, but I’ll bet you could even do this on a smartphone or tablet.) It is non-critical. (Unless you decide to operationalize your website as part of a business or some such, but that is beyond the scope of my guidance.) It is permanent, if you want it to be. (Like the site you’re reading this on is.) It follows common web paradigms accessible to most software engineers. (It’s basically a jamstack in case anyone asks.) Even if your coding adventures take you elsewhere (like video game development), you’ll still likely want a website to promote it. What you are not going to do in this project: Learn about Turing completeness, big-O, closures, or any technobabble you may have heard around the water cooler. Overly-complicated stuff. Coding is inherently complex. No avoiding it. This project is not trivially easy for a beginner. Obligate yourself to ongoing costs. This project will cost approximately $0 per month. Start and stop at will. Require “app store” approval—the only bottleneck to launch is yourself. Get you in trouble. This is a very “safe” project in a world where every publicly-accessible computational resource is hacker-vulnerable to a greater or lesser degree. Your Internet-connected refrigerator is a greater threat to you than this project. Worry too much about brittleness or reliability. Once the site is up, it will stay up unless you change something. While you’re not going to learn everything there is to know about software engineering through this, you are going to learn a good amount about what it takes to create something and put it on the internet for all to see. Project Overview To create your website, you’re going to build and deploy what’s called a Static Website using a type of framework commonly known as a Static Site Generator (SSG). You’re going to put your work on a Content Distribution Network, or CDN, so anyone on the Internet can access your work if they know the URL. Sounds easy right? Let’s get to it. READ ME I recommend reading through everything on this page (and on the linked pages within) at least once before getting started. On that note, reading the README.md in the root folder of every software project you encounter will save you literal hours of headache later, so get in the habit now. RTFM. If you get stuck on any step here, try to work through the problem for 3-5 minutes before seeking advice elsewhere. Read the error messages and try to work out what may be going wrong. If you’re still stuck after re-reading these documents and starting/trying again, use your favorite LLM to help un-stick you. As of writing, Anthropic’s Claude 3.5 Sonnet is my tool of choice for coding support and it is very good at it. Try not to rely on it too much. You’re learning. A bit of struggle is part of the process. Go slow now to go fast later. If you’re still stuck, try explaining your problem to a rubber duck. (Yes, seriously.) If you’re truly stuck, asking a software engineering friend for help or hiring a Codementor might be helpful. (While I occasionally use Codementor myself, half the time I end up realizing the issue while trying to explain it to my pair-programmer-for-hire. Seriously, try the Rubber Duck method first.) Burn-down Here’s what you’re going to do, in order: Generate a website on your computer using Hugo, a GoLang-based SSG Preview what the site looks like from your computer Edit the source code to see how changes affect the website Add a new page with your own content on it (Don’t spend too much time to start… save for later.) Package up your progress to put on the web Change the content locally and deploy the changes Decide what to do next—repeat from step 2. Skills for life What you’re going to learn: How the command line works (i.e., working with the command prompt, a “shell” for entering commands for a computer to “do”—a.k.a. “execute”) How to run a program from the command line (i.e., running Hugo to generate a website and pages within it) How to edit and save source code (i.e., using a text editor like Sublime Text) How to understand output files (i.e., what your webserver uses) How to run a web server on your computer (i.e., using Hugo’s built-in server to serve the output files in a way your browser understands) How to see your work locally (i.e., viewing your new site locally from your web browser) How to version your work and revert it to a good state if you mess up (i.e., using git for version control) How to publish your website on the internet (i.e., using GitHub and CloudFlare to host your static site for free) How to extend your website’s functionality and keep it updated (i.e., creating and editing source code that changes your site’s look, appearance, and content) Programming tools and markup languages You’ll gain exposure to all of the following, to a greater or lesser extent: The command line. MacOS and Windows have differing command lines, but either way you’re put into something called “a shell”. On the command line, you write commands that can be combined to complete a series of instructions. You’re just usually running them one at a time, but you can chain them together in sequence and do some cool stuff. For example, want to sort a CSV (input.csv) by its second column in ascending order? In the command line, try –&gt; awk -F',' '{print $2 \",\" $0}' input.csv | sort -t',' -k1 | cut -d',' -f2- &gt; output.csv Kinda neat, right? Super powerful, but kind of unwieldy. This is why we have higher order languages. But we’re not there yet. HTML. Hypertext Markup Language can barely be considered a programming language, but it does help describe how content might be organized on a page. Most people these days aren’t writing HTML directly. Instead, they’re writing software that generates HTML, or they’re writing in another structured way that enables other software to generate HTML. Such as… Markdown. Markdown is an easy-to-read, easy-to-learn “language” that can be easily transmogrified into HTML, which can show up on webpages. Or, it can be transformed into PDFs. The nice thing is that Markdown is also legible to humans who know nothing about programming or markup. Because of its flexibility and ease of use, it’s used almost everywhere within the programming ecosystem. Once you get used to writing it, you’ll find yourself wanting to use it everywhere since you don’t need to take your hands off of the keyboard, or remember which hot key works where in which application. It is also the format that most LLMs provide as output so you can copy/paste that content directly into markdown files for compilation into HTML. GoLang templating. If you’ve poked around the rest of the source code generated by the Hugo generator, you probably noticed the first of what is called control logic. These are instructions–source code–that describe how various parts of the HTML should be built, where to insert certain variables into an HTML page, and assemble different snippets of code so you can reuse code without having to retype it all. As you get into programming, you’re going to be spending a lot of time writing logic in a language suitable for purpose. (For example, markdown is a great language to write content in because it can be ported into other structured formats, like HTML, very easily. Similarly, trying to write HTML around your prose will become onerous really quickly.) Your mission Complete this tutorial, which starts by completing this other tutorial. Yes, that’s it. (They’re not even my tutorials!) Tips for Success You might find the following content helpful. Learn to navigate the folder structures within your command prompt (Windows, MacOS). While you can use your mouse with Explorer on Windows and Finder on MacOS when working with files, you will need to use the command prompt sometimes as most developer tools are only accessible via command line. For this project, other than application-specific commands you’ll type into the command prompt like hugo server, the only command you’ll really need to know is cd which will help point your command prompt to the directory where all of the project files and applications live. When typed without arguments, cd will either tell you where you are (Windows) or take you to your home folder (MacOS). With arguments (e.g., cd /the/directory/path) will take you to /the/directory/path. (If you want to know where you are on MacOS, try pwd for print working directory.) Pick a folder to start working with. On MacOS, I like to put all my coding work in a folder off of my user folder, like so: /Users/(yourname)/code, or ~/code. On Windows, you can create a new folder in My Documents and work out of there. Accept the fact you’re going to need to learn git and get it working on your computer. Shorthand guide from GitHub Videos from the git project Unless you already know how package managers work (e.g. homebrew, chocolatey), opt to download the application (a.k.a. the “binary”) directly to the working folder instead of trying to learn this now. (Add to your “future learnings” todo list.) Find the “Extended Edition” for your operating system (the file name will start with hugo_extended_, and look like hugo_extended_0.131.0_windows-amd64.zip where 0.131.0 happens to be the latest version number at time of writing, and windows is your operating system. Version number might be different. Not important. MacOS users, yours says darwin-universal instead of windows.) When you’re trying to run hugo for the first time, your operating system may ask you to “trust” the application before you can run it. As of writing, Hugo is perfectly safe to run on your system despite any warning, and is very unlikely to contain future vulnerabilities that would affect your computer’s security profile. Don’t worry about it. Download a text editor. Not a word processor. You will eventually find yourself in a holy war here about which text editor you should be using. Unless you’ve been indoctrinated in the great text editor holy war, I recommend you download and use Sublime as it is free to use, easy to install, and is probably the most accessible text editor for newbies. ‼️ Do not use Microsoft Word, Apple Pages, Google Docs, or any other word processor, even if it’s what you are “used to”. These applications are not text editors. This route would be foolish. Setting Expectations Why Hugo? It’s not JavaScript (save that ecosystem cacophony for later). It’s fast: tight feedback loop between changes and results with good error messaging. Low risk of computer havoc. Other than the downloadable application (“executable”), there’s nothing else to configure. Key Paradigms to Note WYSIWYG vs Page Generation: Unlike most things you’ve probably done on a computer, what you type isn’t directly what you see. There’s a “processing” bit in between the text you write and how it’s presented to you after a generative step. (Hugo rebuilds the entire website for you in milliseconds every time you save a file, making the feedback loop tight. Not all SSGs do this well.) Source Code vs. Generated Code: The code you write isn’t the same as what the computer uses or what the user sees. It’s put together on the fly. While you’ll write your content in Markdown, Hugo will transform that markdown content into HTML, using the templates and themes in the form of template source code. Compiled Applications: While Hugo is an application you downloaded that generated a bunch of website source code, the Hugo application’s source code can itself be viewed. Hugo is what’s called a “compiled” executable. This is beyond the scope of this tutorial, but if you want to take a look at its source code for future exploration, it is available here. Embracing the Challenge The developer experience has improved dramatically over the years. With LLMs and improved tools, there’s never been a better time to learn programming. However, facing challenges is an integral part of the learning process. Do not deprive yourself of it! Take your time to figure out what’s going on. When you encounter obstacles, try to work through them using the resources provided earlier. This problem-solving process is where much of the learning happens. What’s next? This section will provide some context as to what you’re working on and where you can go from here. There are a few ways to proceed: Try another SSG First, you can try doing the same thing using another SSG with a bit more of an involved programming language, like Node.js and/or JavaScript. This would mean dropping Hugo. Gatsby was my go-to years ago, but this ecosystem has grown significantly—there are now 335 SSGs available for you to use, all with different plusses and minuses. I haven’t tried this, but my next stop after Hugo would likely be Docsify as it uses vanilla JavaScript and does not use React, which would be a whole new thing to learn. Whatever you might choose, the important thing to note is that the markdown is transferable. You can reuse your content while swapping out your entire site generation engine. Neat, huh? Get fancy with CSS Or you can start learning about CSS. CSS, Cascading Style Sheets, is a way to instruct how the browser should interpret various HTML elements. (This is also transferrable between SSGs, albeit more involved.) Most people don’t write pure CSS anymore. Instead, they use a meta-language such as SCSS (pronounced “sass”), a library (like “Bootstrap”), and/or a framework like TailwindCSS (currently very popular in the industry). No matter what you use (or what the SSG defaults to), it outputs to CSS all the same. Experiment with JavaScript Maybe you want to start trying to write some JavaScript to have some custom things happen on your webpages. One of the nice things about JavaScript inside of SSGs is that you can use it to decorate and accessorize your website. It’s a great way to experiment with how your users interact with your site before complicating it with a server, filesystem, and/or database. Integrate Third-Party Services The next thing I’d look to do is integrate with some third-party service to see how that works. An easy way to start is to try and add Google Analytics so you can understand how users might use the site. Or, you can implement a user email list signup by embedding a webform that saves to a third-party email service. (Mailchimp is a popular choice for small to medium businesses, but there are many options.) Publish Your Work Once you’ve messed around a bit, I would encourage you to start again and then move to publish something on the web, if only for the experience. Just because it’s publicly available doesn’t mean anyone is going to go looking for it. Learn Git Git is a powerful way to snapshot your work in time. No longer will you need to have Final_Paper1-final_FINAL2.docx as git can version-control this all for you. You might find git challenging at first. Really. But you’re going to need to learn it because it’s what everyone (well, nearly everyone) uses. And even if they don’t, they still know git. Learn About Abstractions All software runs on layers of abstractions. Working with code takes you out of user-space (where you click, tap, drag, scroll, proto-code) and introduces you to some of those layers. My suggested project works with layers 3-7 of the OSI model—how computers talk to each other—as well as some of the basic inputs and outputs using your very own computer’s von Neumann architecture, which you’re already very familiar with as expressed through your device’s graphical user interface. No programmer I’ve ever worked with knows the entirety of these architectures by heart as the whole of computer programming is way too large to fit in anyone’s head all at once. (This is one of the reasons I’m excited about generative AI and how they shift team cognitive requirements.) This is all to say, know that these abstraction layers are there, but there’s too much to worry about all at once. So don’t worry about it too much until you know how to worry about it. And then decide what part of it you want to worry about and learn it. Go Deep Launching something goes broad, providing you with a sense of how everything works together. Once that’s running, it’s easy to extend it. Follow your interests. Go deep. For my money, there’s more to learn in launching a functional piece of software and adding on to it than in speed-running sandboxed, web-based tutorials. If you can find a tutor, a classroom, a managed experience, or a self-directed course, that’s great too. Consider it supplemental. It is notably more empowering when you can do something real and useful. Coding is always a bit of a challenge, so it’s better to get comfortable with that reality early. Recognizing this, more experienced folk are generally very willing to help unstick you, especially when you’ve tried your hardest to unstick yourself first. Better to get one’s hands dirty. Scroll back up and get going! Additional learning opportunities Once you have a better idea of where you want to go with your learning: code.org (for kids) codecademy (for beginners) HackerRank (if you’re looking to job-prep) PluralSight (for a bit more) When you need help: Anthropic’s Claude - as of publishing, the best coding LLM (and easy to use interface) Stack Overflow - if you like reading forums (and how Claude and ChatGPT were likely trained) CodeMentor - on-demand live programming help via video conference FocusMate - for when you need an accountability partner Programming YouTube Channels that I subscribe to: Fireship - rapid-fire content (hints of developer culture, but good content nonetheless) Javidx9 - long-format projects, mostly in C++, mostly about video game algorithms, graphics, and “maths” (he’s British) around his self-created Pixel Game Engine. Highly recommend. Of note, his series building a Nintendo (NES) emulator is superb. Dave Plummer - Dave is a retired Microsoft Software Engineer going back to the MS-DOS and Windows 95 days. His videos are good, old-school fun that help color in the difference between what coding looks like today vs what it looks like closer to the hardware. Ed @ Low Level Learning - as the name suggests, at the lower levels of the computing stack. The real fundamentals, including security. Glossary term description Stack Trace A readout of the program’s memory construct, usually generated automatically in a long, cryptic blob on programmer error. USENET A decentralized discussion system populated with nerds inventing stuff. (Wikipedia)",
        "url": "/resources/learn-to-code/",
        "date": 1723334400,
        
        "type": "page",
        
        "word_count": 4358
      }
    
  

  

  
    
      ,{
        "title": "My User Guide",
        
        "description": "For colleagues and collaborators working with Michael E. Gruen, his detailed care and feeding instructions provided within.",
        
        "content": "Overview This document is a continuously-updated field guide to interacting and working with me in a professional capacity. Read more about my approach (and motivation) for Personal User Guides, or just ↓ jump right in ↓. Professional User Guide for Michael E. Gruen (v.2024-06-public) This version is compiled for public distribution; team-specific guides supersede the following and live in an internal System of Record. Summary Details key value RoleFounder, Fractional CEO/CTO, Author EndpointsThis is where work e-mails, phones, and @-aliases go. Aliases\"Michael\", \"Gruen\", \"MG\" (Pronounced \"Em-Gee\") ManufactureEnglewood, NJ. DomicileNew York, NY &amp; Block Island, RI. Human LanguagesEnglish Personality Tests \"All models are wrong, some are useful.\" Predictive Index: Adapter (Bridge-builder, comfortable with change.) StandOut: Advisor, Teacher / Innovator Enneagram: Type 1, Subtype 1w9 (The Reformer, The Idealist) CliftonStrengths: Strategic, Futuristic, Learner, Intellection, Relator Myers-Briggs: INTJ (Mastermind) Entrepreneur bosiDNA (Advanced): BIos (Builder-Innovator) Personal Websitemichaelgruen.com (You are here) Table of Contents Preferred Working Style Space Structure Toolkit Communications How should I reach out? Synchronous Channels Calendar Use E-mails and DMs Phone calls and Text Messages Asynchronous Channels Meeting Pre-reads Inboxes Style Work Philosophies and Style Decisions Management Pet Peeves Delights Professional Characteristics Values Known Strengths Known Weaknesses Blind Spots Request for Comment Preferred Working Style Space I thrive in two diametrically-opposed environments: Hermetically-sealed boxes (sound-proofed offices with doors) Total bustle (cafés, Airport terminals, etc.) Everything else is a shade of terrible. When in flow-states my sensorium is easily disrupted—open office plans are productivity death. Distraction vectors in decreasing order of severity: auditory, visual, tactile, olfactory, then gustatory. The din of a busy room (say, a café) usually provides sufficient white-noise to maintain focus, but it is far less preferable to total environmental control. It should surprise you not that my computer and phone are almost always set to “Do Not Disturb”. On that, I am still on the hunt for smart Andon to ensure interruptions are well-justified and, well, noticed. Suggestions welcome. Structure Time-blocking is life. I do not maintain a to-do list as important tasks are scheduled. My first question, if something cannot be answered or done immediately, will be “when do you need it?” and if the answer is “soon” I will offer a specific time and hold myself to it. “The show doesn’t go on because it’s ready; it goes on because it’s 11:30.” — Lorne Michaels via Tina Fey regarding SNL General working hours: 08:30–17:00 Monday through Thursday, Eastern time zone, ebbing with the sunrise. Fridays I leave unstructured and meeting-free whenever possible. I’ll work late if on a roll and work early when excitable. During scheduled time-blocks, I am generally slow to respond as I am: doing deep work in a meeting, interview, or other face-to-face exchange napping out of the office (attending a conference, meeting with customers, on PTO, etc.) Outside of working hours, I do not reliably check e-mail. Most weeks look like this: Mondays and Tuesdays are meeting days. Recurring meetings are scheduled Tuesdays to avoid the entirely-avoidable “Monday’s a holiday week so now I’m double-booked today and tomorrow” rigmarole. It’s madness. Wednesdays and Thursdays are typically deep work days Long-format (90+ minute) recurring meetings are generally scheduled for Wednesday afternoons (fortnightly) and Thursday mornings (monthly). Fridays are protected and unstructured. Week-to-week, effort varies. For startups and scale-ups, work is not quite a marathon, not quite a sprint. I find that crits best describe the metaphor I’m going for here. (I used to race bicycles.) Toolkit See Professional Toolkit. Communications The medium is the message. — Marshall McLuhan How should I reach out? (The following grid is meant for my teams, republished here. If you’re reading this and not actively working with me in another System of Record, e-mail is your best bet.) Importance ↓ Urgency ↓ &nbsp;&nbsp;&nbsp;&nbsp; Low Medium High Low Don't E-mail Slack Medium E-mail E-mail Slack High E-mail Slack Whatever means necessary Synchronous Channels Calendar Use If I’ve furnished you with a calendar link, it will work around existing commitments and availability. (Link available upon request.) Please book the shortest meeting length that is comfortable and un-rushed. Experience says 25 minutes is appropriate for most things, 50 minutes for longer topics, and 100 minutes for in-depth discussion / exploration. When in doubt, schedule 25 minutes. I maintain daily working hours in Google Calendar and leave my work computer at the office. (Unless traveling, of course.) Promptness Socially, I am always on-time and usually the first to arrive at parties. Professionally, circumstances sometimes keep me from being punctual. The probability I’m late in inversely correlated to how many people I’m meeting with. I try my damnedest not to be tardy, but during the work day, sometimes my calendar is not my own. I am actively addressing this. E-mails and DMs DMs and e-mails are always open, but offer no SLA. I will respond if/when available regardless of whatever my status indicator flag says. (see § Asynchronous Channels for more.) Phone calls and Text Messages My phone is always on Do Not Disturb unless I’m expecting a call or am on-call for an incident response or emergency. Same goes with text messages. I do not mind voicemails. Asynchronous Channels Meeting Pre-reads I’m a big fan. In general, I find “brainstorming” meetings more effective if they are discussions about thoughts previously articulated rather than done live. (Extensive research suggests this is a better approach than winging it.) I’m action/outcome-oriented: Meeting goals &gt; Agendas. Note: I have a longer piece on meetings philosophy queued to be written. Will link here when completed. Inboxes Observations on my inbox (e-mail and DM) behaviors: Messages that need more than 15 seconds to compose a response are flagged for followup. Of those flagged: ~20% are redirected (forwarded, delegated, etc.) ~20% are returned within 24 hours ~15% are returned within 10 business days &lt;1% are held on to for future use Everything else is read and/or ignored I greatly prefer all official and project communication to exist in a System of Record. Style I am direct, often to a fault, and tend to speed-run niceties in favor of getting down to business. I will forget to ask, “How are you?” because I’m more focused on the subject matter. (I very much do, in fact, care about how you are doing!) On that, I am a non-reactive active listener. I focus on what people are telling me and digest information before responding, especially if it’s important. Throughout my life I’ve received feedback that this can make me “difficult to read”. Despite this, I am a squarely average poker player. I tend to repeat myself. I do this to show consistency and to ensure that the message is getting through. If I’m repeating myself to the point of annoyance, do point this out as it’ll signal to me that you’ve gotten the message. (I might still repeat myself, but less frequently.) If I’ve contradicted myself, please point that out. I may have changed my position and forgot to tell you. (Sorry!) I often choose $10 words when 30¢ ones will do. (Verily, eschewing grandiose verbiage remains a challen— ahem… er, uh I mean to say, “I’m working on it.”) Work Philosophies and Style My work demeanor hews advisor, teacher, and coach. Decisions Decisions should be made at the commensurate level of responsibility and ownership. I tend to decide at the last responsible moment. Sometimes it’s also the last possible moment, but not often. I don’t subscribe to any specific decision-making framework, but they have their uses. My decisions often include a tacit confidence interval. Depending on how new information affects that confidence, decisions may be revised. This happens rarely. I am (almost) always happy to unpack a decision upon request, assuming I’ve neglected to proactively do so. Management The best approximation I’ve found to my management style is Servant Leadership. My success (and how my efficacy should be measured) is the collective output of: my direct reporting line, and my adjacent teams. As a member of the executive team, this means I (and the C-suite) am measured by the output of my department and its efficacy in driving company output. Down-line, I expect my direct reports to use the same measuring stick. Outside of performance reviews, 1-on-1s take the following form: How is it going? How can I help? Here’s some context/some suggestions that I think may be helpful. These 1-on-1s ensure my team has predictable and protected time on my calendar so I can help them be successful. To that end, I expect everyone on my team to own and drive the business within their scope. Pet Peeves A non-ordered list of things that ruffles my feathers, but not enough for me to say something in-situ. Using speakerphones on remote meetings. (Please use a good headset! Bluetooth 4.1+ with noise-cancelling mic preferred.) Multi-tasking. Don’t just say “hello” on Slacks/DMs. Kowtowing, brown nosing, etc. Breaking focused flow-state, interruptions for inconsequential topics. (Exception: if there’s an ice cream truck involved, I should always be interrupted.) Note that, particularly during longer conversations, topic threads can get messy, nested, and meta. We may find ourselves in digressions that, at the time, may seem like distractions but are, in fact, good practice. No, what I mean by breaking flow-state is when solo or with a group is when an outside influence (person) distracts us from our collective presence. While expected in social settings, it can be incredibly expensive during work sessions. Delights English needs an antonym for “Pet Peeve”. Until then, Delights it is. Showing up on-time. Being present. Getting right down to business. For communicating ideas: Document/Memo &gt; E-mail &gt; Meeting &gt; DMs. Work queues and process documents—systems, even when loosely-described, are better than nothing. (Not necessarily true with data, however.) Using source data to describe state and demonstrate progress. Dates and timestamps. (Temporal context is often overlooked!) Elegant solutions to intractable problems. Professional Characteristics What I bring to the table. Values value description Integrity Internalize and exhibit strong principles, ethics, consistency, and accountability. Responsibility Know that decisions and actions affect others. Own the consequences. Outcome oriented Do not conflate activity with progress. Data driven Commit to an evidence-based lifestyle. (You can thank my wife for this turn of phrase.) Transparency Operate in the open. (Sunlight is the best disinfectant.) Grit Know when to be patient. Growth Seek abundance. See also: Developing a Growth Mindset - Dweck Known Strengths trait description Systems Thinker My mind thrives in spaces described by this wikipedia article. I think in terms of ontologies and bit-order. Agile and Flexible Change isn’t mandatory, but it’s the only constant. There’s always room for improvement. Articulate I’ve been told I’m a strong communicator and decent presenter. Perceptive I listen good, too. Leans Optimistic Given the half-empty/half-full question, I’ll state the glass is at half-capacity and question its unrealized potential. Does the work I’ve learned to eat my vegetables. Coachable I take criticism, feedback, and suggestion well, with some caveats (see Known Weaknesses). Known Weaknesses trait description Vocal and Opinionated Whether strongly- or weakly-held, stating impassioned opinions sometimes gets me into trouble. I can be vocal. (On the Hamilton/Burr continuum, I lean Alexander.) Overclocked Metronome I grew up in a land of fast-talkers, and I still struggle to talk at what most people consider a normal pace. On that, I still haven’t quite internalized distributed meeting audio delays and frequently step-on/interrupt other speakers. (Sorry about that!) Default Autonomous Unless advice or help is solicited, or is offered from a credible expert, I tend to bristle when being told what to do and how to do it. (Related in Strengths: Coachable.) Easily Distracted See also: § Preferred Working Style. Repetitive Taskwork Filling out forms, particularly when redundant, and especially with personally-identifiable information, is pure punishment—and the result of years of bad karma in failing to automate these systems. I’ll do them (see strength: Does the work), but it comes at the expense of later productivity and/or willpower. See also: The Myth of Sisyphus. I don’t like being wrong Please correct me! I will likely admonish myself, but it’s far preferable than being wrong forever. Or it’ll end up in this list. Blind Spots In 2006, I added a Johari window to my AOL Instant Messager profile and, as was typical those days, people were more than happy to say what they thought of me—anonymously or not. It was super-helpful in identifying blind spots. 51% of people agree that Gruen is confident Shortly afterwards, I added a Nohari window, which prompts for faults, not talents. It was equally instructive. 58% of people think that Gruen is boastful 75% of people think that Gruen is smug I’m hoping in the decade (or so) since running that survey that I have evolved. I still have work to do. Please call me out on them as I, by definition, can lack self-awareness here. (Hence, a blind spot.) Request for Comment If you have any addenda you think I should add to this guide, do please let me know—I am always looking to improve. EOF",
        "url": "/resources/mg-user-guide/",
        "date": 1669852800,
        
        "updated": 1721865600,
        
        "type": "page",
        
        "word_count": 2495
      }
    
  

  
    
      ,{
        "title": "Now",
        
        "description": "A temporal declaration of foci and interests",
        
        "content": "",
        "url": "/now/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 0
      }
    
  

  

  
    
      ,{
        "title": "Photographer for Hire",
        
        "description": "I don't generally monetize my hobbies, but this one happened by accident.",
        
        "content": "By hobby, by habit, and by request through my work with exposure.co, I’ve become a serviceable photographer and am open to the following engagements: Adventure and Travel Photography: I can provide many high-quality images (from our mutually-created Shot List and real-time serendipity), extremely generous licensing rights, and quick turnaround times. Storytelling and photo documentary for nonprofits and NGOs: I can select images to tell a story about your organization’s work, and I can also sketch/write a draft/final version of the visual story. Event photography: I’m a stronger documentarian than editorialist, hewing anthropological. So far as my photography goes, I treat humans and wildebeests much the same way. (With respect, of course!) Additional capabilities Aerial Video (establishing shots) Stills Headshotscan work with natural light or bring my own Corporate Education Non-profit Equipment on-hand Full-frame Nikons with wide-to-telephoto lenses Crop-sensor Ricoh with fixed wide-angle lens DJI Mini 3 Pro (&lt;250g) Pricing and Examples I charge market rates on a time &amp; materials basis, billed in 5-minute increments. See examples of my work at under.exposure.co and @travelcliche. Contact E-mail address on the bottom of the page.",
        "url": "/photographer/",
        "date": 1687219200,
        
        "updated": 1722297600,
        
        "type": "page",
        
        "word_count": 205
      }
    
  

  
    
      ,{
        "title": "Résumé",
        
        "description": "Not quite a curriculum vitæ, good enough for government work. (Maybe.)",
        
        "content": "Due to an incredible amount of spam, I have removed any public links to my resume. For more details beyond my LinkedIn, send me an e-mail.",
        "url": "/resume/",
        "date": 1704067200,
        
        "type": "page",
        
        "word_count": 27
      }
    
  

  
    
      ,{
        "title": "All Rights Reserved",
        
        "description": "Privacy Policy, Terms of Service, and General Legal Disclaimers.",
        
        "content": "This website is hosted in the United States and subject to its governing laws. All content within michaelgruen.com is owned and copyrighted by me, Michael E. Gruen, unless otherwise stated. Generative AI has been used: in the creation of images and thumbnails throughout this site. (This should be obvious. They are mostly DALL-E.) as preliminary research agent on a less-familiar topic area. (Details are reconciled by primary source, wherever possible. Usually Claude.) in fact-checking/copy-editing content before publication. (Usually Claude.) in some source-code monkey-patching that only nerds might notice. (Gemini, Claude, GitHub CoPilot.) Generative AI has not been used: to generate any length of text longer than a sentence, except where noted. This is to say, GenAI is squarely in a supporting role here. See also: Authorized Likenesses You may link to this site from anywhere at any time and from any celestial body and/or interstellar vehicle. You may not republish any site content without express written permission (which is stupidly easy to get if you ask, and spitefully difficult if you don’t). Links may include affiliate tracking so I can direct more capital to the non-profits I support. (I donate far more than whatever affiliate earnings this amounts to.) No content is sponsored. My opinions are not for sale. I am not responsible for anything you may find beyond the walls of this domain. (The internet can be a scary place.) Google Analytics may be tracking you if you have javascript enabled. (You probably do.) I use it to understand how you got here and what you’re reading on this site. I do not sell this data. Even if I did, no one would buy it. This is michaelgruen.com’s privacy policy. These pages are served from flat files that are rebuilt every time I make an update to this site—which oscillates between daily and yearly. If you’re still reading this… I’m impressed. Maybe we should work together. E-mail me.",
        "url": "/rights/",
        "date": 1777895395,
        
        "type": "page",
        
        "word_count": 330
      }
    
  

  

  
    
  

  

  
    
      ,{
        "title": "My Professional Toolkit",
        
        "description": "Technologies and tools used and recommended by Michael E. Gruen.",
        
        "content": "Preferences are preferences, but should you want a recommendation, here's my current setup: ## Hardware * Mouse: [Logitech G502 X](https://amzn.to/4cZ2dbh) - Wired mice *only* * Keyboards: * [K73](http://michaelgruen.com/K73/) - custom keyboard, not available in stores. * [Magic Keyboard](https://amzn.to/3pCsGSL) for Apple users and [Glorious GMMK](https://amzn.to/3qC6cjV) for PC users (goofy name aside, you'll need to buy key switches and keycaps). * [Sanwa Wireless Bluetooth Keyboard](https://amzn.to/4d0ySx0) for my Mac Mini, because you need a keyboard and mouse occasionally and I don't like sharing peripherals. * Headphones: * Conference Calls: [Shokz OpenComm2 (2025 Update) - Bluetooth](https://amzn.to/4lCnTvS) - Bone-conductive, lets my ears breathe. All-day battery. Ridiculous range. Fantastic noise cancellation. Minimal audio latency. Great for conference calls. Terrible for music. Had the old version 1, bought 2 of these. (1 for office, one for the travel office.) * Music: [Sennheiser HD 599 SE](https://amzn.to/3GXWF0k) - Open air, lightweight, excellent audio capabilities out of an unpowered 1/8\" jack. (Disclaimer: I've haven't used the `HD599` myself, but my discontinued `HD590` and `HD598` have been in service for 15 years and 8 years, respectively, and I have 0 regrets.) * Travel: [Apple AirPods Pro (Gen 2 USB-C)](https://amzn.to/3XL9iEx) - Active Noise Cancelling works incredibly well for flights. Fantastic for music. Serviceable for conference calls. Can get a bit uncomfortable after about 2-3 hours of use, so if I'm expecting to take more than 1-2 calls I'll also bring along the OpenComms from above. * Displays: * Primary: [40\" Dell U4025Q](https://amzn.to/41jCjrs) - It's basically 50% more real estate over the 27\" with slightly less pixel density. Oh, and it's curved. (This model has been recently [upgraded](https://amzn.to/3VNAVdr), so the one I have can be had for 30% off!). Considering [this 52\" Dell Monitor](https://www.dell.com/en-us/shop/dell-ultrasharp-52-thunderbolt-hub-monitor-u5226kw/apd/210-bthw/monitors-monitor-accessories) * Secondary (and Tertiary): [27\" Dell U2720Q](https://amzn.to/3FGxyvE) - I use a window manager to split the screen real estate into two parts. Others may prefer two monitors. One sits on the Mac Mini because it, annoyingly, needs a display. * Docks: * [Anker Prime TB5 Dock](https://amzn.to/4bpRHIY) - Upgraded the old dock to this because of Thunderbolt 5, which drives the 120Hz 40\" 5K2K Dell Monitor AND the 27\" 60Hz 4K Dell monitor... and everything else. Everything through *one cable*. * [Dell WD22TB4](https://amzn.to/4ci8XO6) - Allows me to drive the two aforementioned displays, ethernet, power, and sundry USB devices to my laptop in a single cable. *chefs kiss* * Laptop: * [2024 Apple MacBook Pro 14\" M4 Max 128GB](https://www.apple.com/shop/refurbished/mac/macbook-pro) - I panicked about tarifs in early 2025 and upgraded my core work machine. No regrets—runs everything I need, including some smaller local LLMs, without too much sweating. * [2021 Apple MacBook Pro 14\" M1 Max 32GB](https://www.apple.com/shop/refurbished/mac/macbook-pro) - Space Gray lives at home to keep work out of the home. (Also, given that my livelihood depends on technology, the redundancy has been super-helpful on the rare equipment failure.) * [Lenovo ThinkPad X1 Nano](https://amzn.to/40Julb4) - I actually have two of these: the 2020 model and the 2022 model. At the time, I was able to pick them *both* up for about $600 USD. Each machine weighs 2lbs, has a 2K display, and runs Arch Linux without a hitch. My only complaints are screen brightness and battery life, but then that would add weight and these don't go very far from a power outlet or one of [these](https://amzn.to/4rNRBjc) I might carry around. Very worthwile tradeoffs. 90% of my software engineering happens on one of these things. * Cellphones: * Primary: [iPhone 15 Pro](https://amzn.to/3RS6e5Y) - I wish it were smaller, but it is exceptionally reliable and has great battery life. * Backup: [iPhone 13 Mini](https://amzn.to/3xCQDjK) - With a 120Hz screen and more battery life, this would be my primary phone. * Weekend (future): [Light Phone III](https://www.thelightphone.com/lightiii) - I have a small investment in this company. If Light Phone III can get iMessage and a 2-factor authenticator app on here, this would contend as my primary phone. * Tablet: * Creation: [reMarkable 2](https://remarkable.com) * Consumption: [iPad Pro 11\"](https://amzn.to/32NcfKw) ## Software * E-mail client: Mail.app (MacOS's default e-mail client). [Thunderbird](https://www.thunderbird.net/) for Windows/Linux. * Calendar: [Fantastical](https://flexibits.com/fantastical) - desktop app that's a fantastic calendar. * Window Manager: [Divvy](https://mizage.com/divvy/) - cheap and good * Note-taking: - [Apple Notes](https://www.icloud.com/notes) - almost what I'm looking for, but not *pro* enough - **Actively seeking help here** ## Important desk accessories * A [Desk Mat](https://amzn.to/3EBxV9p) - an infinite mousepad. You can find them in [all sorts of patterns](https://amzn.to/3EDIetP). * Lighting: - [Elgato Key Light](https://www.elgato.com/us/en/p/key-light) - clunky, expensive, but provides sufficient lumens and temperature controls via app. - [Lume Cube LED Desk Light](https://amzn.to/3EEi7Tp) - inexpensive but wholly adequate. ## Furniture * Chairs: * [Herman Miller Embody](https://amzn.to/40Oa0kO) - Swapped to this because I found myself wanting to sit more cross-legged these days, and the Aeron doesn't make that easy. * [Herman Miller Aeron](https://amzn.to/3XkILuf) - Modern (not classic) edition, fully loaded with arm rest and lumbar adjustments. Size B and Carbon or Mineral color for me. Be sure to read the details carefully as there are many editions of this chair and it's not always immediately obvious which is wich. * Footrest: Get one. I use [this](https://amzn.to/3irSnor) as it came free with an old desk.",
        "url": "/resources/toolkit/",
        "date": 1669939200,
        
        "updated": 1773964800,
        
        "type": "page",
        
        "word_count": 848
      }
    
  

  
    
      ,{
        "title": "Fractional Tours",
        
        "description": "Previous Roles, Mostly Redacted",
        
        "content": "&larr; back to /fractional This page contains a representative, non-exhaustive subset of previous fractional and interim roles. Company names and key details have been withheld to protect the privacy of the people involved and the companies referenced, regardless if a non-disclosure agreement is/was active. # Roles {:.no_toc} - TOC {:toc} --- # Fractional, Interim, and Fractional/Interim ## Fractional CTO (Professional Services) Partnering with the Founder/CEO of an established, well-known professional services firm, transitioned company to be a product-led business. Work included: setting product vision, hiring team, creating/executing roadmap, designing technical architecture, advising on IT/systems, running customer and market discovery, and other sundry responsibilities. - Duration: 7 months (16 hours/week) - Manager: Founder/CEO ## Fractional CPO (SaaS - PLG) Partnering with the Founder, consulting and advising on product strategy, roadmap, and execution. - Duration: 10 months (4 hours/week) - Manager: Founder ## Interim/Fractional CTO (Consumer SaaS) Worked with the founder to restructure and modernize a legacy (10+ year old) technology stack supporting a profitable software businesses. - Duration: 18 months (16 hours/week) - Manager: Founder ## Advising CTO (Enterprise SaaS) Working with the founding CEO, evaluated the existing product, infrastructure, data, team structure, and technical leadership to help plan for and make bets following a fresh round of venture financing. - Duration: 3 months (5 hours/week) - Manager: Founder/CEO ## Fractional CIO/CISO (Enterprise SaaS) Built and managed internal infrastructure, security systems, and compliance frameworks. Successfully lead team through 3rd party audits across multiple, complex control standards. Hired and managed core systems and developer operations team. - Duration: 7 months (20 hours/week) - Manager: Founder/COO # Other Projects ## Due Diligence (B2B Services) Acquirer needed to understand the capabilities of both the existing technology and the go-forward team's ability to 1) maintain business continuity and 2) execute against roadmap without the exiting owner-operator's mentorship. - Duration: 1 week - Client: Acquirer ## Application Review (HealthTech) Founders needed to understand if their contract development team was able to deliver against product roadmap and on-budget. - Duration: 1 week - Client: Founders ## Founding CTO (FinTech) Working with the founding CEO, built initial product roadmap and technology strategy. Validated idea and market with equity investment partners, outside/warehouse capital providers, and institutional investors. - Duration: 4 months (5-20 hours/week) - Client: Founder/CEO ## Technical Advisory (Property Preservation) Advised COO on best practices for technical transformation within a US-based property preservation and real estate management business. - Duration: 1 month (20 hours/week) - Client: COO",
        "url": "/fractional/tours/",
        "date": 1742860800,
        
        "type": "page",
        
        "word_count": 413
      }
    
  

  
    
      ,{
        "title": "Universal Human Identifier",
        
        "description": "Or just say, 'Hi'!",
        
        "content": "A Modest Proposal: Overload \"Domain Names\" as \"Universal Human Identifier\". Or, a `Hi`. ![Image of an Universal Human Identifier](/assets/img/resources/uhi.webp) ### A Better Name While writing [this dispatch](/d/2024/human-dns/), the term \"domain name\" started feeling increasingly incorrect based on the near-future I was describing. The term \"domain\" was used as it historically represented collections of users and computers on the Internet, much in the way we (as a species) tend to sort each other into arbitrary, heirarchical taxonomies. - `.com` -- commercial enterprise - `example.com` -- example commercial enterprise - `person.example.com` -- person at an example commercial enterprise But, on a human-to-human level, it just seems off. So, while it may persist that the _technical_ name for domains are just, well, domains, maybe constructions of domains could be called something else, doing away with the term \"domain\" all together when humans talk about it. This is the beginning of what could be a Universal Human Identifier. A universal HI. Mine, for instance, is `gruen.us`. - `.us` -- top-level domain for United States citizens and residents - `gruen.us` -- Me in the United States - `spawn.gruen.us` -- A HI for any potential offspring I might have (currently unclaimed). ### Ok, Ok, Ok... Calling this a Universal Human Identifier a `Hi` probably won't stick, even though I love the 👋 symmetry. Branding experts are nodding with me on this one, so some other suggestions: - Universal Name Identifier (UNI) - \"yoo-nee\" - Calling Card (CC) - \"cee cee\" - Universal Electronic Identifier (UEI) - \"you-ee\" - Quick Universal Handshake (HI5) - \"high-five\" I'm sure someone more clever than me can do better. _Did you know Alexander Graham Bell's preferred way to answer the phone was `ahoy-hoy!`, and not `hello?`? I'm sure something will emerge._",
        "url": "/resources/universal-human-id/",
        "date": 1732492800,
        
        "type": "page",
        
        "word_count": 290
      }
    
  

  
    
      ,{
        "title": "Venture Design Document",
        
        "description": "A template for new company/project creation",
        
        "content": "## About the VDD {:.no_toc} The Venture Design Doc (VDD) is something of a hybrid business plan and canvas. It is not optimized for completeness, but rather tuned for thoughtfulness. For everything *new* I work on, I generally create some version of this document. In the past, I usually relegated this to a shower exercise;{%- marginnote %} That is, something one thinks about while taking a shower. {% endmarginnote %} but, given my increased use of LLMs for idea generation, validation, and execution, I'm finding even greater utility in writing things down here. With the kernal of an idea, an LLM can flesh out a decent approximation of what I'm going for here. This prompts *me* then to work through its offerigs to make it better. Once done, I then can use it to build out a mountain of documents that I'll include as context files within a code repository so my coding agents also understand what's going on so that it can make better implementation decisions. LLMs are super-powerful, but they don't replace thinking. In as much, I consider the VDD is a thinking tool... the first stop in taking a loose idea and considering whether its worth the energy (and tokens) to turn into reality. ## Template Contents {:.no_toc} - TOC {:toc} --- ## [COMPANY NAME] **Last updated:** [Date] **Author:** [Name] --- ## Overview This document outlines the major considerations for bringing [Product Name] to market. *[Brief 2-3 sentence description of what this document covers and its purpose]* --- ## Core Assumptions *[List the fundamental assumptions underlying this venture]* - Build approach and phases - Total budget estimate (pre-launch to launch) - Timeline to launch - Key dependencies --- ## The Problem *[Describe the core problem your venture addresses. What inefficiency, pain point, or gap exists in the market?]* ### Key Pains *[Detail the specific pain points experienced by your target customers]* - *[Pain Point 1: Describe a specific problem customers face]* - *[Pain Point 2: Describe another problem]* - *[Pain Point 3: Continue as needed]* --- ## The Opportunity *[Describe the market opportunity. What untapped potential exists?]* ### Market Dynamics Creating This Opportunity *[Explain the market forces, trends, or gaps that make this the right time for your solution]* --- ## The Solution *[Describe your solution and how it addresses the problem]* ### Core Components *[Break down the key components of your solution]* **Component 1:** *[Description]* **Component 2:** *[Description]* **Component 3:** *[Description]* --- ## Systems of Record A System of Record is the authoritative repository for our work. This section will eventually evolve into an employee handbook, intranet, etc. | System | Location / URL | |--------|----------------| | Engineering Project Tracking | *[e.g., Linear, Jira, Asana URL]* | | Source Control | *[e.g., GitHub URL]* | | Team Communications | *[e.g., Slack, Email, Google Workspace]* | | Documentation | *[e.g., Notion, Confluence, Google Docs]* | --- ## Investor Positioning ### The Big Idea *[One paragraph elevator pitch: What is the transformative insight or approach?]* ### The Wedge: Where We Start *[Describe your initial market entry point. What specific problem do you solve first?]* #### Analogy *[Provide a relatable analogy to help investors quickly understand your model (e.g., \"We are the Uber of...\" or reference a similar successful company)]* ### Why Now? *[Explain the timing. What technological, market, or regulatory changes make this the right moment?]* #### How? *[Technical or operational explanation of your unique approach]* - *[Key enabler 1]* - *[Key enabler 2]* - *[Key enabler 3]* ### Defensibility *[What makes your position defensible over time? Network effects, data advantages, regulatory moats, etc.]* --- ## Moats Areas where we can potentially generate protection against competitors and build durable competitive advantages. ### Intellectual Property Opportunities *[List potential areas for patents, trade secrets, or proprietary technology]* - *[Technology/Algorithm Area 1]* - *[Data Structure/Categorization Area]* - *[User Experience Innovation]* - *[Integration/Platform Advantages]* ### What We Will NOT Build Areas we do not anticipate investing in: *[List areas that are adjacent but outside your scope, helping to clarify focus]* - *[Area 1]* - *[Area 2]* - *[Area 3]* --- ## Go-To-Market Plan Projects and assets needed before launch, organized by category: ### 1. Brand Identity - **Mission:** *[What is the purpose of the company?]* - **Brand Guidelines:** Aesthetics (logo, colors, fonts), voice, visual personality - **Photo/Video Assets:** Production of brand visuals - **Launch Events:** Events and activations to communicate the brand ### 2. Digital Presence - **Website** - *Phase 1:* Teaser site with email capture *[Timeline: X weeks before launch]* - *Phase 2:* Full website with booking/purchase flow *[Timeline: Launch]* - **Blog/Content:** Location for content about the brand mindset and value proposition - **Email CRM Setup:** *[e.g., Mailchimp, Klaviyo, custom]* - **Mobile App:** *[If applicable, timeline and platforms]* - **Social Media Handles:** | Platform | Handle/URL | Status | |----------|------------|--------| | Website | *[URL]* | *[Available/Owned/Need to acquire]* | | Instagram | *[Handle]* | *[Status]* | | TikTok | *[Handle]* | *[Status]* | | LinkedIn | *[Handle]* | *[Status]* | | Twitter/X | *[Handle]* | *[Status]* | | Other | *[Handle]* | *[Status]* | ### 3. PR Strategy - **Press Kit:** Brand story, founder quote, sample visuals, logos *[Timeline: X weeks before launch]* - **Media Outreach:** Tiered list of target outlets and reporters - **Partner Content:** Co-created content with launch partners - **Press Preview:** Events or experiences for press *[Timeline: X weeks before launch]* ### 4. Paid Media - **Agency Partner:** *[Consider engaging paid media partner for:]* - Meta (Instagram + Facebook) - Google Search/Metasearch - TikTok - Influencers - **Digital Assets:** Create assets according to channel best practices - **SEO/AIEO:** Search and AI engine optimization ### 5. Community Engagement - **Pre-Launch Flow:** - Welcome email - Behind-the-scenes teasers - Launch countdown (10 days, 3 days, day-of) - Launch invite with CTA - **Transactional Messaging:** Templates for emails, SMS, in-app notifications triggered by user actions - **Outbound Marketing:** Ongoing campaigns for engagement and LTV ### 6. Customer Support - **Multi-Channel Support:** Phone, Email, SMS, Chat - **Urgency Tiers:** - URGENT: *[Definition and response time]* - PRIORITY: *[Definition and response time]* - GENERAL: *[Definition and response time]* - **CRM Integration:** Support ticketing linked to customer records - **AI Support Routing:** *[If applicable, how AI assists with routing/drafting]* - **Issue Resolution Policies:** What support can offer without escalation ### 7. Partner/Customer Onboarding - **Pre-Launch Documentation:** Information sheet for partners - **Onsite Visits:** Account manager visits before launch - **Service Level Agreement (SLA):** Terms partners must agree to --- ## Product-Led Growth & Distribution ### Integration Strategy *[Describe key integration points (APIs, protocols, partnerships)]* - *[Protocol 1: e.g., MCP, A2A]* - *[Protocol 2]* ### Distribution Partners *[List potential distribution channel partners]* | Partner | Description | URL | |---------|-------------|-----| | *[Partner 1]* | *[What they do]* | *[URL]* | | *[Partner 2]* | *[What they do]* | *[URL]* | ### AI-Focused Distribution *[Strategy for AI/LLM discoverability and integration]* #### Context *[Where are we in the AI adoption cycle? What assumptions are we making?]* #### Hypotheses - *[Hypothesis 1 about how AI will affect distribution]* - *[Hypothesis 2]* - *[Hypothesis 3]* #### Approach - *[Approach 1: e.g., SEO is AIEO]* - *[Approach 2: e.g., Build AI-first operational culture]* - *[Approach 3: e.g., Integrate with AI platforms]* --- ## System Overview ### Service Diagram *[Include or describe system architecture diagram showing user types, services, and data flows]* ``` ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ Users │────▶│ Platform │────▶│ Partners │ └─────────────┘ └─────────────┘ └─────────────┘ │ ┌──────┴──────┐ ▼ ▼ ┌──────────┐ ┌──────────┐ │ Admin │ │ APIs │ └──────────┘ └──────────┘ ``` ### System Components | Component | What It Does | Launch Scope | Post-Launch | |-----------|--------------|--------------|-------------| | **A - Core Platform** | *[Description]* | *[MVP features]* | *[Future enhancements]* | | **B - Integration Layer** | *[Description]* | *[Initial integrations]* | *[Additional integrations]* | | **C - Partner Interface** | *[Description]* | *[MVP features]* | *[Future enhancements]* | | **D - Customer Interface** | *[Description]* | *[MVP features]* | *[Future enhancements]* | | **E - Direct Channels** | *[Description]* | *[MVP features]* | *[Future enhancements]* | | **Z - Admin System** | *[Description]* | *[Basic tooling]* | *[Advanced features]* | --- ## Product Development ### Feature Specifications *[High-level feature categories and requirements. This section can be expanded into sub-documents.]* #### Category 1: *[e.g., Partner Features]* - *[Feature area 1]* - *[Feature area 2]* - *[Feature area 3]* #### Category 2: *[e.g., Customer Features]* - *[Feature area 1]* - *[Feature area 2]* - *[Feature area 3]* #### Category 3: *[e.g., Admin Features]* - *[Feature area 1]* - *[Feature area 2]* ### User Profile / Data Collection Framework #### Must Have (Required for core functionality) *[List essential data fields]* - *[Field 1]* - *[Field 2]* - *[Field 3]* #### Should Have (Improves experience) *[List important but non-critical data]* - *[Field 1]* - *[Field 2]* #### Could Have (Nice to have) *[List enhancement data]* - *[Field 1]* - *[Field 2]* ### Implementation Strategy - **Progressive Collection:** Collect only essential data upfront, gather more over time - **Location-Specific Variations:** *[Note any regional/legal requirements]* - **Privacy & Security:** *[Note compliance requirements: GDPR, CCPA, PCI, etc.]* --- ## Roadmap | Area | MVP (Month X) | Launch (Month Y) | Future | |------|---------------|------------------|--------| | **Partner View** | *[MVP scope]* | *[Launch scope]* | *[Future scope]* | | **Customer View** | *[MVP scope]* | *[Launch scope]* | *[Future scope]* | | **Internal Systems** | *[MVP scope]* | *[Launch scope]* | *[Future scope]* | ### Milestone Definitions #### At MVP (Month X) *[Describe what \"MVP complete\" means]* - What can be demonstrated - What capabilities exist - What is NOT included #### At Launch (Month Y) *[Describe what \"Launch ready\" means]* - Live functionality - Customer-facing capabilities - Partner requirements --- ## Technology Stack ### Stack Choices | Layer | Technology | Rationale | |-------|------------|-----------| | Backend | *[Language/Framework]* | *[Why this choice]* | | Frontend | *[Framework]* | *[Why this choice]* | | Database | *[Database system]* | *[Why this choice]* | | Infrastructure | *[Cloud/hosting]* | *[Why this choice]* | | Message/Cache | *[Queue/cache system]* | *[Why this choice]* | | Auth | *[Auth system]* | *[Why this choice]* | ### Business Tools - **Workspace/Email:** *[e.g., Google Workspace]* - **Analytics:** *[e.g., Mixpanel, Amplitude]* - **Monitoring:** *[e.g., Datadog, Sentry]* - **Support:** *[e.g., Zendesk, Intercom]* --- ## Integration Notes ### Key Integration Partners *[List critical third-party systems you need to integrate with]* | System | Market Share | Priority | Notes | |--------|--------------|----------|-------| | *[System 1]* | *[X%]* | High | *[Notes]* | | *[System 2]* | *[X%]* | Medium | *[Notes]* | | *[System 3]* | *[X%]* | Low | *[Notes]* | ### API Documentation *[Links to relevant API documentation]* - *[System 1 API docs URL]* - *[System 2 API docs URL]* ### Integration Approach *[High-level approach for each major integration]* ### Market Landscape *[Analysis of key players in integration ecosystem, market share, priorities]* ## Competition & Inspiration *[List competitors, adjacent players, and companies that inspire your approach]* | Company | URL | Notes | |---------|-----|-------| | *[Competitor 1]* | *[URL]* | *[What they do, how you differ]* | | *[Competitor 2]* | *[URL]* | *[What they do, how you differ]* | | *[Inspiration 1]* | *[URL]* | *[What inspires you about them]* | --- ## Appendices ### Architecture Updates Log *[Track major architecture decisions and changes over time]* | Date | Change | Rationale | |------|--------|-----------| | *[Date]* | *[What changed]* | *[Why]* | ### Site Visits / Field Research *[Notes from customer interviews, site visits, competitive research]* #### Visit: *[Location/Company]* **Date:** *[Date]* **Attendees:** *[Names]* **Key Findings:** - *[Finding 1]* - *[Finding 2]* **Outstanding Questions:** - [ ] *[Question 1]* - [ ] *[Question 2]* ### Team User Guides *[Links to team member user guides and working styles]* - *[Team Member 1 - User Guide Link]* - *[Team Member 2 - User Guide Link]* ### Supporting Documents *[Links to related documents, presentations, spreadsheets]* - *[Document 1]* - *[Document 2]* --- *— End of Template —*",
        "url": "/resources/venture-design-document/",
        "date": 1740787200,
        
        "type": "page",
        
        "word_count": 1990
      }
    
  

  

]
