<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Kyle Paul Johnson]]></title><description><![CDATA[Kyle Johnson, an engineering leader in Seattle. Two decades in consumer web, from lead gen to ecommerce, building the platforms and the teams that run them. Also a cyclist, and an occasional writer.]]></description><link>https://kylepauljohnson.com/</link><image><url>https://kylepauljohnson.com/favicon.png</url><title>Kyle Paul Johnson</title><link>https://kylepauljohnson.com/</link></image><generator>Ghost 6.75</generator><lastBuildDate>Tue, 10 Nov 2026 21:12:32 GMT</lastBuildDate><atom:link href="https://kylepauljohnson.com/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Seven Places]]></title><description><![CDATA[News about my community gets published in about seven different places, and no two of them know the other five exist. So I built something to pull it all into one. It started as a fix for me. It's almost ready, and it's for everyone.]]></description><link>https://kylepauljohnson.com/seven-places/</link><guid isPermaLink="false">6a90a15a489cad000113cf52</guid><category><![CDATA[Technology]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Thu, 17 Sep 2026 13:50:20 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2026/08/palms-commons-mark-on-canvas.svg" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2026/08/palms-commons-mark-on-canvas.svg" alt="Seven Places"><p>\Indian Palms is a country club community in Indio, about forty miles east of Palm Springs. Depending on how you count, news about this place gets published in about seven different places, and often no place at all. And no two of them know the other five exist.</p><p>Two association websites that don&apos;t link to each other. Three resident Facebook groups. Hangar 19, the club restaurant, which advertises almost entirely in poster images captioned something like &quot;New Venue for Tonight Enjoy,&quot; or with no caption at all. And a bulletin board, if you&apos;re feeling generous and counting a bulletin board as a system.</p><p>The formats don&apos;t match either. Some events go up as real calendar entries with a date on them. Some are a picture somebody made using AI and posted at nine at night, where the date only exists inside the image. Some aren&apos;t posted as events at all, just one sentence in the middle of a comment thread about golf carts or to an Instagram page.</p><p>It&apos;s worth stopping on that one, because it isn&apos;t just an Indian Palms problem, it&apos;s everywhere now. Somewhere in the last few years we quietly decided that the correct way to announce a thing, a date, a time, a place people need to write down and act on, is to type it into an image generator, get back a poster with a sunset and some confident lettering, and post that. No text. No date field. No link. Just a picture of the information, which is a strange thing to do to information.</p><p>Think about what that actually is. You take something whose entire purpose is to be found, remembered, and searched for, and you seal it inside the one format that can&apos;t be found, remembered, or searched. A poster is a dead end by design. You can&apos;t copy the date off it. You can&apos;t search your messages for it later. A calendar can&apos;t read it. A screen reader can&apos;t read it to someone who&apos;s blind. It exists to be looked at once, in the feed, on the night it went up, and then to sink. We&apos;ve taken the flyer, the least durable object in the history of announcements, the thing that used to get stapled to a telephone pole and rained on, and built a digital version that&apos;s somehow worse, because at least the telephone pole was on a corner everyone walked past.</p><p>I&apos;m not sure anyone ever decided this was a good idea. It just became the default, the way defaults do, one person copying the last person, until the poster of an event quietly replaced the event itself. And I get the appeal. It looks nice. It takes five minutes. But nice and fast are doing a lot of quiet damage to whether anyone actually finds out about anything.</p><p>Anyway. That&apos;s a bigger rant than this post needs, and none of it is really the point. The point is smaller and closer to home: all of this is happening here, in one square-mile country club community, and no one has put it in one place.</p><p>So the information is public. It&apos;s just functionally invisible unless checking seven places a day is a hobby you&apos;ve taken up.</p><h2 id="the-eighth-place-which-isnt-a-place">The eighth place, which isn&apos;t a place</h2><p>While I was writing this, IPMA, our master association, sent out an update by email. Useful information, the kind of thing you&apos;d want to know.</p><p>It is not on their&#xa0;website. It is not in&#xa0;any of the three&#xa0;groups. Nobody texted&#xa0;it. The email does&#xa0;contain a link, a&#xa0;proper call-to-action&#xa0;button, the kind that&#xa0;makes you believe&#xa0;clicking it will land&#xa0;you on the post it&apos;s&#xa0;teasing. It doesn&apos;t.&#xa0;It drops you on a&#xa0;page that mentions&#xa0;none of it.</p><p>So whether that update reached you comes down entirely to whether management has a working email address for you. For a lot of people here, the address on file is one they set up in 2009 and haven&apos;t opened since. If you bought last year, if you switched providers, if one of these went to spam once and Gmail took the hint, then as far as you&apos;re concerned that update was never sent at all.</p><h2 id="i-did-offer">I did offer</h2><p>Before anyone accuses me of going around the association(s), I knocked on the front door first. Several times, over a long stretch.</p><p>I wrote to the board offering to help with the technology. Unpaid volunteer, or as a consultant if that was cleaner to account for, whichever they preferred. The website, how notices go out, meeting audio, any of it. I&apos;ve spent twenty-some years doing this work professionally and I own a house here, which makes me roughly the cheapest technology vendor this association will ever be offered.</p><p>I never got a reply. Not a no, which would have been a perfectly reasonable answer and would have let me get on with my life. Just nothing at all.</p><p>Then a board meeting recently mentioned technology and the website repeatedly, so I offered one more time, on the theory that the earlier ones had maybe landed in a spam folder. Same result.</p><p>There&apos;s a point where waiting for a response stops being patience and becomes a hobby of its own. So I started building the part I could build without anyone&apos;s permission.</p><p>Honestly, it didn&apos;t start as a community project at all. It started as a thing for me. I was tired of checking seven places just to keep track of my own life here, the association notices, the club menu, when the gates were going to be a problem, what was happening around the valley that weekend. So I built a little utility to pull it all into one place, purely so I&apos;d stop missing things. It was only once it was working, once I was actually caught up for the first time in ages, that it occurred to me the exact problem I&apos;d just solved for myself was one basically everyone here has. If it was saving me from the seven-tab shuffle, it could save my neighbors too. So I cleaned it up and pointed it outward.</p><p>I can&apos;t fix the association&apos;s website, because it isn&apos;t mine to fix. I can&apos;t change how notices go out, because that isn&apos;t my mailing list. What I can do is take everything that already gets posted in public and put it somewhere you can actually read it.</p><p>It&apos;s called The Palms Commons.</p><h2 id="what-it-does">What it does</h2><p>The Commons reads all of it so you don&apos;t have to. It gathers what those bodies publish in public, writes a short summary of each notice, and puts them in one running feed, with the original always a tap away.</p><figure class="kg-card kg-image-card"><img src="https://kylepauljohnson.com/content/images/2026/09/palms-commons-feed.png" class="kg-image" alt="Seven Places" loading="lazy" width="1480" height="1240" srcset="https://kylepauljohnson.com/content/images/size/w600/2026/09/palms-commons-feed.png 600w, https://kylepauljohnson.com/content/images/size/w1000/2026/09/palms-commons-feed.png 1000w, https://kylepauljohnson.com/content/images/2026/09/palms-commons-feed.png 1480w" sizes="(min-width: 720px) 720px"></figure><p>Anything with a date on it also lands on a calendar, closures, board meetings, the club&apos;s live music, ticketed shows around the valley, and that calendar can sync into the iPhone&apos;s own Calendar app, so a gym closure turns up right beside your dentist appointment.</p><figure class="kg-card kg-image-card"><img src="https://kylepauljohnson.com/content/images/2026/09/palms-commons-calendar.png" class="kg-image" alt="Seven Places" loading="lazy" width="1480" height="1240" srcset="https://kylepauljohnson.com/content/images/size/w600/2026/09/palms-commons-calendar.png 600w, https://kylepauljohnson.com/content/images/size/w1000/2026/09/palms-commons-calendar.png 1000w, https://kylepauljohnson.com/content/images/2026/09/palms-commons-calendar.png 1480w" sizes="(min-width: 720px) 720px"></figure><p>There&apos;s a week of weather with the air quality reading that actually matters in a desert summer, a page for what the kitchen is serving tonight, and notifications for the handful of things worth interrupting you for: gate and road closures, weather warnings, and association business. Nothing else buzzes your phone.</p><figure class="kg-card kg-image-card"><img src="https://kylepauljohnson.com/content/images/2026/09/palms-commons-posters.png" class="kg-image" alt="Seven Places" loading="lazy" width="1480" height="1400" srcset="https://kylepauljohnson.com/content/images/size/w600/2026/09/palms-commons-posters.png 600w, https://kylepauljohnson.com/content/images/size/w1000/2026/09/palms-commons-posters.png 1000w, https://kylepauljohnson.com/content/images/2026/09/palms-commons-posters.png 1480w" sizes="(min-width: 720px) 720px"></figure><p>And because the club advertises in images, the app reads the posters too. The date, the band, Tuesday&apos;s special, all the stuff that normally exists only as pixels no search will ever find, gets pulled out and filed as something you can actually look up by day. Remember those posters. This is the part that quietly defeats them. If it read something off a picture, it says so, because a misread 8 PM looks exactly as confident as a correct one.</p><h2 id="its-not-official-and-it-says-so-on-the-first-screen">It&apos;s not official, and it says so on the first screen</h2><p>This is the most important thing on the page, so it doesn&apos;t live in a footer.</p><p>The Commons isn&apos;t run by, affiliated with, or endorsed by any association or by the club. It collects public postings and names the source of every single one. And the summaries are written by a machine, which means they can be wrong about a date, an amount, or who&apos;s affected. So anything involving money, a deadline, or a rule links straight back to the association&apos;s own notice, which is the thing that counts.</p><p><strong>It&apos;s a convenience, not a record</strong>. When it matters, go to the source, and the source is always one tap away.</p><h2 id="built-for-the-people-who-actually-live-here">Built for the people who actually live here</h2><p>Most of the design decisions come from who&apos;s really on the other end of it. The readership here skews older and reads on iPads, so it&apos;s built for both iPhone and iPad. It respects the text size you&apos;ve set system-wide, and it keeps a line of text to a readable width instead of stretching it across a 13-inch screen.</p><p>There&apos;s no account to make, no feed to curate, and nothing to configure before it&apos;s useful. You open it, and the neighborhood is there. It&apos;s real software, built from scratch for exactly this, not a template with the neighborhood&apos;s name pasted on top.</p><h2 id="whats-in-it-and-what-isnt-yet">What&apos;s in it, and what isn&apos;t yet</h2><p>Two association sites to start, IPMA and IPCCA, which are the two I happen to belong to. That&apos;s the entire selection criteria. It isn&apos;t coverage, it&apos;s a guy solving his own problem and being honest that the problem was his. There are a lot more associations here than two, and if yours publishes its notices somewhere I can reach, tell me where and I&apos;ll look at adding it.</p><p>It&apos;s an iPhone app to start, built for iPhone and iPad, and yes, that leaves some of you out for now. I&apos;m not going to dress that up. Wider support is on the list, and how fast depends on how many people tell me they need it.</p><h2 id="its-out">It&apos;s out</h2><p>The Palms Commons is on the App Store now, free, no account to make and nothing to configure. You open it and the neighborhood is there. </p><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://apps.apple.com/us/app/the-palms-commons/id6805266704?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">The Palms Commons App - App Store</div><small><div class="kg-bookmark-description">Download The Palms Commons by Kyle Johnson on the App Store. See screenshots, ratings and reviews, user tips, and more apps like The Palms Commons.</div></small></div></a></figure><p>The offer to the association still stands, too, and it&apos;s bigger than this app. If a board ever wants The Palms Commons, they can have it, keys and all, free. And if they&apos;d rather keep it in their own hands and just communicate well across all these platforms themselves, I&apos;m glad to help with that too. However they want to do it. I&apos;d genuinely rather they did it themselves and I went back to my regular life.</p><p>Until then, it&apos;s yours. Go see what you&apos;ve been missing.</p>]]></content:encoded></item><item><title><![CDATA[The Least Interesting Collaborator]]></title><description><![CDATA[Yes, there's AI in here. I microwaved the fish. What a detector can catch is the tool; what it can't catch is whose ideas these are, and those are mine. On how I actually write, and why the panic feels a lot like the last time we did this.]]></description><link>https://kylepauljohnson.com/the-least-interesting-collaborator/</link><guid isPermaLink="false">6a59447b059e120001af717c</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Thu, 20 Aug 2026 14:25:26 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1694903110330-cc64b7e1d21d?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE2fHxBSXxlbnwwfHx8fDE3ODY0MDI3MDJ8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1694903110330-cc64b7e1d21d?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDE2fHxBSXxlbnwwfHx8fDE3ODY0MDI3MDJ8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" alt="The Least Interesting Collaborator"><p>I was listening to an episode of The Vergecast the other day about AI detectors, specifically the one that&apos;s supposedly reliable. The pitch is that it can look at a piece of writing and tell you whether a machine had a hand in it. And my first thought wasn&apos;t the one I think I was supposed to have. It wasn&apos;t panic. It was more of a shrug.</p><p>Because if you ran this blog through it, it would almost certainly light up. There&apos;s AI in here. I&apos;m not going to pretend otherwise, and honestly the people who do pretend exhaust me. The whole thing has the frantic energy of a group of people trying to find out who microwaved fish in the office kitchen. Someone did it, everyone knows someone did it, and the investigation matters a great deal more to the investigators than it does to me. It was me. I microwaved the fish. There&apos;s AI in here.</p><figure class="kg-card kg-bookmark-card kg-card-hascaption"><a class="kg-bookmark-container" href="https://www.theverge.com/ai-artificial-intelligence/966719/the-one-ai-detector-people-actually-trust?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">The one AI detector people actually trust.</div><small><div class="kg-bookmark-description">AI text detectors have been notoriously unreliable, but that&#x2019;s starting to change. This year, Pangram keeps coming up as the trusted source in identifying AI-written text. We sit down with Pangram CEO Max Spero to find out how the system was made, how much we should trust it, and where the line is between useful AI and AI slop.
[Media: https://www.youtube.com/watch?v=pVHSvJnSUNg]</div></small></div></a><figcaption><p><span style="white-space: pre-wrap;">The episode that started this whole train of thought</span></p></figcaption></figure><p>There&apos;s an assumption baked into the whole panic: that AI writing means AI generated the whole thing, start to finish, some person typing one lazy sentence and publishing whatever came back. All or nothing. No middle ground. It&apos;s a debate conducted entirely in black and white by people who would tell you, in any other context, that nothing ever is. So let me tell you how this actually works, because the mystery is the least interesting part.</p><p>An idea shows up, almost always at a moment I can&apos;t do anything about it. Driving, mid-ride, half asleep, in the shower, which is apparently where my brain keeps its best material and worst timing. So I make a note. A bad note, usually, three words that will mean nothing to me in a week, but enough to hopefully drag the thought back out later.</p><p>When I come back to it, if the shape is already clear in my head, I write an outline in my own words. Where it starts, what it&apos;s actually about, the couple of things I want to land. That part is me at a keyboard doing the normal, unglamorous work of figuring out what I think. My website platform is full of these, half-formed drafts and three-word notes waiting to be teased out into something, a backlog of ideas I fully intend to get to and probably never fully will.</p><p>And then there&apos;s the other part, sometimes I have a thought I can feel but cannot say. It&apos;s right there, fully formed as a feeling and completely useless as a sentence, and I sit and stare at it and produce nothing but worse and worse attempts. That&apos;s where I bring in the AI. To help me untangle it. I&apos;ll describe what I&apos;m circling, badly, the same way I describe things to my wife on our walks, and we worry at it together until the thing I actually meant finally shows up on the page. The idea was always mine. What I got help with was finding the words for it.</p><p>That&apos;s the whole distinction, and it&apos;s the one that matters. At least to me. There&apos;s a difference between &quot;write me a sixteen hundred word post about attention and the news cycle&quot; and &quot;I&apos;ve got this thought about attention and I can&apos;t get it out, here&apos;s the mess in my head, help me see it.&quot; The first hands you a thought you never had. The second hands you back your own thought, clarified. Often this takes a few passes, me circling, the words getting closer each time, until the thing that&apos;s been sloshing around in my head finally sits still on the page. I live entirely in the second, and I&apos;ve got no interest in the first. Not because it&apos;s cheating. Because it&apos;s boring. If the thought isn&apos;t mine, why would I want to publish it?</p><p>And honestly, this is the whole reason I&apos;ve been able to write more than a handful of things at all. The ideas were never the problem. The problem was always the next step, taking a pile of loose, half-formed thoughts and wrestling them into something with a shape, a beginning and a point and an order that makes sense. That&apos;s the part that used to stop me cold, and it&apos;s the part this makes easier. Not the thinking. The assembling. And if there&apos;s anything more American than outsourcing the assembly, I haven&apos;t found it.</p><p>So does it matter? Whether there&apos;s AI in here, whether a detector would flag it, whether some purist would like to revoke my little writing hobby on principle?</p><p>No. Not even slightly. And I fully realize that &quot;I don&apos;t care&quot; can come off as a shrug from someone who hasn&apos;t thought about it. I&apos;ve thought about it. I&apos;ve arrived, deliberately, at not caring.</p><p>This is my personal website. Nobody assigned it. Nobody&apos;s paying for it. There&apos;s no editor, no grade, no client waiting on a deliverable. It exists because I wanted a quiet corner of the internet that was mine, and the whole point of a corner that&apos;s yours is that you get to decide how you keep it. I&apos;m not entering these into a contest. I&apos;m not passing them off as handmade artisanal sentences forged in a cabin by candlelight. I&apos;m a guy writing things down and using the tools on the desk to do it better.</p><p>We&apos;ve done this whole dance before, too, which is what makes the panic feel so familiar. When I was coming up, Google was the suspicious tool. There was a real stretch where using it to solve a problem marked you as a lesser engineer, someone who didn&apos;t truly know the material. I sat in interviews where you were expected to reproduce, from memory, on a whiteboard, some algorithm you would never once write from memory on the actual job, because on the actual job you would do what every working engineer does, which is look it up. Some interviewers would watch you reach for a search bar like they&apos;d caught you cheating on a test. Meanwhile the entire industry ran, then as now, on the ability to find the answer, not to have memorized it. The tool that was disqualifying in the interview was mandatory the moment you got the job.</p><p>That gap between how we pretend the work happens and how it actually happens has always been where this kind of hand-wringing lives. Google didn&apos;t make engineers worse. It made the ones who could ask the right question faster. This feels like the same movie with a new tool in the lead role, and I&apos;ve seen how it ends.</p><p>So do I owe every post a little label announcing there&apos;s AI inside? On my own website? The people who actually read this, who know my story or have read me long enough, can already tell these things are real. That was never something a disclaimer could prove anyway.</p>]]></content:encoded></item><item><title><![CDATA[The Writing Hand]]></title><description><![CDATA[I broke my pinky in a wreck on an Atlanta freeway. The right one. The writing one. The universe, which has impeccable comedic timing and no mercy, waited until I'd just written a whole piece about how I write, and then took the hand.]]></description><link>https://kylepauljohnson.com/the-writing-hand/</link><guid isPermaLink="false">6a7544705328dc00017cc727</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Fri, 07 Aug 2026 13:50:34 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2026/08/IMG_5949.jpeg" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2026/08/IMG_5949.jpeg" alt="The Writing Hand"><p>I broke my pinky in Atlanta. The right one. The writing one, or at least the one that does the unglamorous supporting work on that side of the keyboard, and I have discovered over the past couple of weeks exactly how much a pinky is quietly responsible for. It turns out the answer is: everything on the right half of the alphabet, plus the shift key, plus a surprising amount of my dignity.</p><p>Here&apos;s how it happened. Every crash story is the same story, so I&apos;ll keep it brief.</p><p>We were in a hired car on the freeway, one of those enormous black Suburbans that ferry people to and from the airport in every city in America, driven by a guy who was doing nothing wrong. Atlanta traffic doing what Atlanta traffic does, which is congeal, stop, and occasionally decide the laws of physics are negotiable. It had been raining.</p><p>A car several lanes over decided, late, that it needed the same exit we did, and cut for it the way you do when you&apos;ve run out of road, fast and hard and without much regard for anyone around it. The car it cut off braked. The car behind that one didn&apos;t brake in time, hit it, and shoved it sideways into our lane.</p><p>Somewhere in that chain of bad decisions and worse timing, the whole thing folded up, and we were in it. Shoved into the freeway wall on one side, T-boned into the car ahead of us on the other, the Suburban brought to a hard, ugly stop maybe twenty yards from the exit we&apos;d been calmly rolling toward. Twenty yards. You could have walked it in the time it took everything to go wrong.</p><p>There&apos;s a very particular sound a multi-car collision makes, a kind of expensive crunch, and then a second of total silence while everyone in the car takes a quiet personal inventory. Fingers, toes, teeth. Am I okay. Is she okay. Is everyone okay.</p><p>Everyone was okay. That&apos;s the headline and I want it up top, because a wreck on a wet interstate a couple thousand miles from home is exactly the kind of thing that goes much worse than a broken finger, and ours didn&apos;t. A Georgia State Trooper appeared with the calm of a man who does this fourteen times before lunch, paperwork got exchanged, and the machinery of insurance and incident reports began its slow grind. Nobody went to the hospital in an ambulance. Everybody went home.</p><p>I just went home with a hand that didn&apos;t work.</p><p>Nobody prepares you for the logistics of a crash that isn&apos;t in your own car. When it&apos;s your car that dies on the freeway, you at least know the drill. But when you&apos;re a passenger in a hired SUV that is no longer going anywhere, you enter a strange administrative limbo. You are stranded, but you are not stranded with your own vehicle. You&apos;re a guest at someone else&apos;s catastrophe.</p><p>So what do you do? The trooper, a helpful man doing his best, suggested we just call another Uber. Which is a wonderful idea except for the small detail that no Uber on earth can pull over on the shoulder of a live interstate to collect two rattled passengers standing next to a crash scene. The app does not have a setting for &quot;I am currently on foot in the middle of I-75.&quot; You cannot summon a car to a place cars aren&apos;t allowed to stop. The very convenience that put us there could not get us out.</p><p>What we actually did, because there was no other option, was walk. Off the freeway. On foot, along the edge of an active interstate in the rain, past the wreckage and the other drivers standing around in it and the traffic doing its slow rubbernecking crawl, one of us with a hand that was rapidly making its opinion known. There is no dignified version of this either. You just put your head down and walk like two people who&apos;ve made a series of choices that led, inevitably, here.</p><p>The X-ray confirmed the obvious, after the particular indignity of a doctor gently telling you what you already suspect. Broken. Not dramatically. No compound-fracture horror, nothing you&apos;d photograph for shock value. Just a small, stupid, thoroughly effective break in the one place guaranteed to make the thing I most like doing quietly miserable.</p><p>I&apos;d been on a tear. More words in a couple of months than I&apos;d managed in years, finally feeling like a person who actually does this. Which is, of course, precisely when the universe takes an interest. I&apos;d been writing constantly, notes and outlines and the sitting-and-wrestling that turns a feeling into a sentence, more prolific than I&apos;d ever been, and the universe apparently took that as a challenge and broke my hand. Not my leg. Not my arm. The hand. The specific tool for the specific thing. If that&apos;s not a note left on the windshield, I don&apos;t know what is.</p><p>So that&apos;s the state of things. The writing is going to be slower for a while. Everything&apos;s coming out one careful, lopsided keystroke at a time, at roughly the speed of a man defusing a bomb, because the pinky&apos;s job turns out to be load-bearing and it has taken a leave of absence. I&apos;m hunting and pecking my way through sentences, resenting every word that lives on the right side of the keyboard, which is a lot of them.</p><p>Which is why, for the moment, I&apos;ve mostly stopped typing and started talking. Whisper, the speech-to-text tool, has become my grudging new co-writer. I speak, it transcribes, and in theory this is a frictionless miracle of modern technology. In practice it means I now spend my days narrating my own inner monologue aloud, in my house, to a laptop, like a man slowly coming unglued.</p><p>There is no dignified way to dictate. None. Writing was always a private embarrassment, the stops and starts, the deleted sentences, the muttering, all of it safely hidden behind a silent keyboard. Now the muttering is the method. I say a sentence, hear how it actually sounds out loud, realize it&apos;s terrible, and say a slightly less terrible version, and my wife walks past the doorway wondering who I&apos;m arguing with. The answer is a computer. The answer is always a computer now.</p><p>And it does not always hear me correctly, which adds a fun layer of collaboration I didn&apos;t ask for. I&apos;ll deliver what I&apos;m certain is a beautiful line, look at the screen, and find that it has confidently transcribed something adjacent but insane, a small act of sabotage from a tool that is, on paper, trying to help. So now I&apos;m not just talking to my computer. I&apos;m talking to my computer, and then correcting my computer, out loud, in an increasingly stern voice, which is exactly the behavior that gets a person quietly moved to a facility.</p><p>I&apos;ll keep going. Slower, crankier, one hand doing the work of two and a machine doing the listening. The ideas are still showing up at their usual inconvenient hours, unbothered by the fact that their delivery driver is currently operating at half capacity. They don&apos;t care about my pinky. Nothing does, really, except me and the small blue cast I&apos;ll be wearing for a while yet.</p><p>I didn&apos;t type this. I said it, out loud, to a machine, one sentence at a time, correcting it as I went. Which means somewhere in a data center there is now a recording of me slowly losing my composure over the word &quot;pinky.&quot;</p><p>See you out there. I&apos;ll be the one talking to himself.</p><div class="kg-card kg-signup-card kg-width-regular " data-lexical-signup-form style="background-color: #F0F0F0; display: none;">
            
            <div class="kg-signup-card-content">
                
                <div class="kg-signup-card-text ">
                    <h2 class="kg-signup-card-heading" style="color: #000000;"><span style="white-space: pre-wrap;">Slow but still going</span></h2>
                    <p class="kg-signup-card-subheading" style="color: #000000;"><span style="white-space: pre-wrap;">I write here when something&apos;s worth writing down, which lately takes a little longer than it used to, for reasons documented above. Drop your email below and the next one finds you whenever this hand cooperates. No spam, no noise, just the writing.</span></p>
                    
        <form class="kg-signup-card-form" data-members-form="signup">
            
            <div class="kg-signup-card-fields">
                <input class="kg-signup-card-input" id="email" data-members-email type="email" required="true" placeholder="jamie@example.com">
                <button class="kg-signup-card-button kg-style-accent" style="color: #FFFFFF;" type="submit">
                    <span class="kg-signup-card-button-default">Subscribe</span>
                    <span class="kg-signup-card-button-loading"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24">
        <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper">
            <g class="nc-loop-dots-4-24-icon-o">
                <circle cx="4" cy="12" r="3"/>
                <circle cx="12" cy="12" r="3"/>
                <circle cx="20" cy="12" r="3"/>
            </g>
            <style data-cap="butt">
                .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s}
                .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite}
                .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)}
                .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)}
                .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px}
                @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}
            </style>
        </g>
    </svg></span>
                </button>
            </div>
            <div class="kg-signup-card-success" style="color: #000000;">
                Email sent! Check your inbox to complete your signup.
            </div>
            <div class="kg-signup-card-error" style="color: #000000;" data-members-error></div>
        </form>
        
                    <p class="kg-signup-card-disclaimer" style="color: #000000;"><span style="white-space: pre-wrap;">No spam. Unsubscribe anytime.</span></p>
                </div>
            </div>
        </div>]]></content:encoded></item><item><title><![CDATA[I Would Prefer Not to Be Eaten]]></title><description><![CDATA[The world is not getting worse. People have been awful to each other for as long as there have been people to be awful to. We just built better cameras. This is about what that firehose does to a decent person, and what I did to stop being eaten by it.]]></description><link>https://kylepauljohnson.com/i-would-prefer-not-to-be-eaten/</link><guid isPermaLink="false">6a4f0ede60c7ac00012c4109</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Thu, 16 Jul 2026 14:20:19 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1638274749450-30c893afe3d1?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDJ8fHBhbmljfGVufDB8fHx8MTc4MzU2NjEwOXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1638274749450-30c893afe3d1?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDJ8fHBhbmljfGVufDB8fHx8MTc4MzU2NjEwOXww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" alt="I Would Prefer Not to Be Eaten"><p>Let me offer you something that should, against all odds, make you feel better.</p><p>The world is not getting worse. I know it doesn&apos;t feel that way. I know that every time you pick up your phone it reads like the closing chapter of something, like the credits are about to roll on the whole human experiment. But the species you&apos;re watching melt down in real time is the same species it has always been. We have been lying, cheating, robbing, warring, and disappointing one another with absolute consistency since the first two humans stood near each other long enough to form an opinion. The Romans turned slaughter into an afternoon&apos;s entertainment and sold snacks. Whole empires were built on misery you&apos;d need a strong stomach to read about today. People have been awful to each other for precisely as long as there have been people available to be awful to.</p><p>The difference, the only real difference, is that we built better cameras.</p><p>That&apos;s it. That&apos;s the whole horror. Not that humanity took some dark turn sometime around the invention of the smartphone, but that for the first time in the entire run of our existence, every last instance of our oldest behavior is now photographed, uploaded, ranked by how much it&apos;ll upset you, and delivered to the soft glowing rectangle six inches from your face before you&apos;ve even managed to finish your coffee. The cruelty isn&apos;t new. The visibility is. We didn&apos;t get worse. We got broadcast.</p><p>Here&apos;s where it starts to actually matter, because there&apos;s a word we use for all this that&apos;s doing a tremendous amount of quiet damage. We call it being informed. We&apos;ve dressed the whole thing up in the language of civic responsibility, told ourselves that the constant intake is a duty, that the engaged citizen is the one who knows, at every hour, exactly how bad it all is right now. But that&apos;s not what&apos;s happening to you. Being informed is something you do. Being fed is something done to you. And somewhere along the way, without anyone asking your permission, the first quietly became the second.</p><p>It became the second on purpose. It lets you off a hook you&apos;ve probably been hanging on. The 24-hour cycle was never engineered to inform you. It was engineered to keep you. Somewhere there is a room, or more accurately a thousand rooms, full of very smart and very well-compensated people whose entire job is to make sure you do not put the phone down. And they figured out a long time ago that the single most reliable way to hold a human being&apos;s attention is to make them angry, or frightened, or both. Joy doesn&apos;t scale. Outrage does. So you are not weak for getting pulled in every morning. You were not careless. <em>You were hunted</em>, by professionals, with better tools than you have, and the fact that you got caught says nothing about your character. It says they&apos;re good at their job.</p><p>The trouble is that the thing they&apos;re hunting was never built to survive the hunt. Your brain was assembled, over a few hundred thousand years, to manage a tribe of maybe a hundred and fifty people and a horizon you could walk to by sundown. The bad news arrived at the speed of a person walking. The town square had its executions and its hucksters and its mobs, sure, but you had to walk down to the square to see them, and then you went home and milked the cow and that was the end of it. The horror was rationed by geography and by the simple friction of having to go find it.</p><p>That friction is gone. The square now follows you into bed, into the bathroom, into the three quiet minutes you finally carved out for yourself, and it never runs out of material because the entire planet is now in scope. Eight billion people&apos;s worth of catastrophe, piped into a nervous system that still thinks every threat it sees is standing ten feet away and coming for you specifically. You have been handed a god&apos;s-eye view of human nature and a peasant&apos;s ability to do anything about it. That gap, between how much you can now see and how little you can actually touch, is the entire engine of the dread. It is not a moral failing that you can&apos;t process all of it. Asking your mind to grieve for the whole world before breakfast is like asking a campfire to heat a city. It&apos;s not weakness. It&apos;s a spec mismatch.</p><p>Now before you dismiss all of this as a particularly wordy argument for touching grass, I want to be clear that I am not making this up. Researchers at the Singapore University of Technology and Design <a href="https://www.asiaresearchnews.com/content/modern-life-may-be-outpacing-human-mind?ref=kylepauljohnson.com">published a review</a> recently that lays it out in the kind of dry academic language that makes it harder to argue with. The finding, roughly, is that the human brain evolved to manage a small group of familiar people and immediate, local threats, and that modern environments are triggering those same instincts in a context they were never built for. Infinite social comparison where there used to be thirty familiar faces. Status signals from strangers on screens where there used to be the actual people in your actual village. The paper calls it evolutionary mismatch, which is a polite way of saying your nervous system is running software designed for a world that no longer exists, and it is losing its mind about it accordingly. I used a different word for this earlier. I called it a spec mismatch. Turns out the researchers agree, they just had to publish it in a journal first.</p><p>My wife and I take walks in the evening, and this is the thing I&apos;ve been trying to explain to her for years now, badly, on a loop, like a man who thinks the problem is that he hasn&apos;t said it loud enough yet. She is one of the most empathetic people I know. It&apos;s among the best things about her. And I keep circling back, in the clumsiest possible terms, to the idea that caring about everything, everyone, all of it, all at once, is not a virtue she should be trying harder at. It&apos;s closer to something being done to her.</p><p>I never say it right. It comes out sounding like I&apos;m asking her to care less, which is not what I mean and is not a thing I would want even if I could have it. Empathy is one of the best things about us. I believe that without reservation. It&apos;s the whole reason we ever climbed down out of the trees and decided to look out for one another, the reason we&apos;re a species and not just eight billion animals competing for the same square of dirt. The capacity to feel someone else&apos;s pain as if it were your own is, as far as I&apos;m concerned, close to the entire point of being a person.</p><p>So that&apos;s the knot I keep failing to untie on those walks. The thing I&apos;m asking her to protect is the same thing I&apos;m telling her is hurting her.</p><p>Here&apos;s the thing I keep failing to say on those walks. Empathy was built as a close-range instrument. It evolved to make you ache for the person right in front of you, the family down the road, the hundred or so faces you actually knew by name. At that distance it&apos;s a gift. Point it at your neighbor and it makes you generous. Point it at your kid and it rearranges your entire life without asking permission. It works beautifully, exactly as designed, right up until you try to aim it at the entire planet at once.</p><p>Because empathy has no volume knob. It has no off switch and no sense of scale. And when you take an instrument built to feel for a hundred people and ask it to feel for eight billion, all of them suffering, all of them visible, it does not rise nobly to the occasion. It just burns. You are not becoming a better person by trying to feel all of it at once. You are running a delicate system at a thousand times its rated load and calling the smoke a virtue.</p><p>And the cruelest part, the part that took me an embarrassingly long time to see, is who this actually destroys. It isn&apos;t the cold ones. The callous scroll right past, untouched, blood pressure flat. It&apos;s the tender people who get strip-mined by it. The ones who actually feel things. The machine doesn&apos;t punish indifference, it rewards it. What it punishes is decency. It takes the single best quality a person has and turns it into the precise mechanism of their exhaustion, and then it serves them another headline, because the feed is never empty and your capacity to care, it turns out, very much is.</p><p>So no, I&apos;m not telling you to care less. I&apos;m telling you the opposite. Your ability to care is the most valuable and most finite thing you own, and you have been spending it like it&apos;s infinite on things ten thousand miles away that you will never be able to touch. Every ounce of it poured into a tragedy you can&apos;t reach is an ounce stolen from the people you actually can. The ones in your kitchen. Your neighborhood. The friend across town who you&apos;ve been meaning to call. I know this because I did it. I sat at my own table, wrecked over something on the other side of the world that no amount of my suffering would fix, while the real evening, the one with my wife in it, went by unattended. She was right there. And I wasn&apos;t.</p><p>Empathy is a virtue at arm&apos;s length and a slow poison at planetary scale. Same substance. The only thing that changes is the dose.</p><p>Once you see that, the supposed value of the constant intake collapses pretty quickly. Knowing about a disaster the minute it breaks, versus an hour later, versus over dinner that night, changes precisely nothing about your ability to affect it. The real-time feed is sold to you as control, as responsibility, as staying on top of things. It is none of those. It is the same information you&apos;d have gotten anyway, delivered earlier and with more cortisol, so that you can carry the weight of it for a few extra hours and accomplish exactly as much as you would have accomplished by not knowing yet, which is nothing. You did not help anyone by finding out first. You just volunteered for more of the hurt.</p><p>So I made some changes. Not a dramatic renunciation, no deleting every app and moving to a cabin. Just a quiet rebalancing of where the attention goes. I ride my bike. Two hundred miles in a month, most of it on a trainer in my own home, legs burning, going nowhere, and somehow more present than I&apos;d been in weeks. I sand and refinish a stretch of deck and watch the grain come back up out of the gray. I cook or bake things that immediately attach firmly to a growing waistline. I play golf, which is to say I pay good money to be disappointed in myself outdoors. I read, or at least I have started reading, which in my case is a distinct and much larger category than finishing. I sit with good friends over margaritas talking a spectacular amount of nonsense, the kind that solves nothing and somehow fixes everything, until the light goes and it dawns on us no one&apos;s touched a phone in hours. I write things like this, which if I&apos;m being honest are becoming extremely enjoyable for mostly an audience of me. None of it trends. None of it is breaking. All of it is real, and all of it is happening at a distance my hands can actually reach.</p><p>A lesser essay would hand you a five-step morning routine and a gratitude journal here. I&apos;m not going to, because I&apos;d have to go lie down afterward. But I will tell you what&apos;s actually within reach, because that&apos;s the whole point. Call the person you keep meaning to call and let it run long. Cook something that takes longer than it should, badly if you have to, the failure is half the fun. Go outside and move until something hurts in the good way. Fix the thing in the house you&apos;ve been walking past for a month, the squeaking door, the dead bulb, the drawer that fights you, and feel the absurd, disproportionate satisfaction of a problem that actually stays solved. Learn something useless. Make something with your hands and let it be ugly. Sit with someone you love and put the phone in another room, an actual other room, where its gravitational pull can&apos;t reach you. None of this is profound. None of it will save the world, and that&apos;s exactly the point, because the world was never yours to save.</p><p>I still know what&apos;s going on in the world. I want to be clear about that, because this is not an argument for sticking your head in the sand and humming. It&apos;s that I stopped going to find the news and discovered the news finds me anyway. The genuinely important things still surface. They reach me through a friend, a conversation, an offhand mention at dinner, the way news traveled for most of human history before we decided we each needed a private firehose. If something matters enough, it arrives. What I gave up was the rest of it, the endless minor catastrophes, the manufactured urgency, the hourly updates on things that will not move whether I watch them or not. I didn&apos;t stop caring about the world. I stopped letting an algorithm meter out my caring for me, on its schedule, for its profit.</p><p>I won&apos;t pretend this is wisdom. I didn&apos;t transcend anything. I&apos;m not at peace with the state of the world and I don&apos;t think I&apos;m supposed to be. I just figured out that the thing was eating me alive and I would prefer, on balance, not to be eaten. That&apos;s not enlightenment. That&apos;s self-preservation with a few extra steps.</p><p>The world will go on doing what it does whether I watch it tick by minute by minute or not. It does not require my anxiety as a contribution. And the only part of it I was ever actually holding, the only part any of us are ever holding, is the small and unglamorous and deeply real life happening about ten feet in front of us. I&apos;d rather not miss it staring at a screen.</p><p></p><div class="kg-card kg-signup-card kg-width-regular " data-lexical-signup-form style="background-color: #F0F0F0; display: none;">
            
            <div class="kg-signup-card-content">
                
                <div class="kg-signup-card-text ">
                    <h2 class="kg-signup-card-heading" style="color: #000000;"><span style="white-space: pre-wrap;">Ten feet in front of you</span></h2>
                    <p class="kg-signup-card-subheading" style="color: #000000;"><span style="white-space: pre-wrap;">I write about this kind of thing now and then, technology, attention, and the small real life that&apos;s easy to miss while staring at a screen. No schedule, no firehose, nothing engineered to ruin your morning. Drop your email below and I&apos;ll send the next one your way.</span></p>
                    
        <form class="kg-signup-card-form" data-members-form="signup">
            
            <div class="kg-signup-card-fields">
                <input class="kg-signup-card-input" id="email" data-members-email type="email" required="true" placeholder="jamie@example.com">
                <button class="kg-signup-card-button kg-style-accent" style="color: #FFFFFF;" type="submit">
                    <span class="kg-signup-card-button-default">Subscribe</span>
                    <span class="kg-signup-card-button-loading"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24">
        <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper">
            <g class="nc-loop-dots-4-24-icon-o">
                <circle cx="4" cy="12" r="3"/>
                <circle cx="12" cy="12" r="3"/>
                <circle cx="20" cy="12" r="3"/>
            </g>
            <style data-cap="butt">
                .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s}
                .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite}
                .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)}
                .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)}
                .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px}
                @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}
            </style>
        </g>
    </svg></span>
                </button>
            </div>
            <div class="kg-signup-card-success" style="color: #000000;">
                Email sent! Check your inbox to complete your signup.
            </div>
            <div class="kg-signup-card-error" style="color: #000000;" data-members-error></div>
        </form>
        
                    <p class="kg-signup-card-disclaimer" style="color: #000000;"><span style="white-space: pre-wrap;">No spam. Unsubscribe anytime.</span></p>
                </div>
            </div>
        </div>]]></content:encoded></item><item><title><![CDATA[Last Call]]></title><description><![CDATA[I came to hate it and stayed to use it. On AI, the open bar, the bill that's coming, and the strange luck of being here while the drinks are still free.
]]></description><link>https://kylepauljohnson.com/last-call/</link><guid isPermaLink="false">6a4ee61760c7ac00012c4083</guid><category><![CDATA[Technology]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Thu, 02 Jul 2026 14:28:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1574879948818-1cfda7aa5b1a?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDIwfHxiYXJ8ZW58MHx8fHwxNzgzNTU1NjI1fDA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1574879948818-1cfda7aa5b1a?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDIwfHxiYXJ8ZW58MHx8fHwxNzgzNTU1NjI1fDA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" alt="Last Call"><p>Unless you&apos;ve been living under a rock for the past couple of years and at this point, even the rock wouldn&apos;t have saved you something has fundamentally shifted in the air. You can feel it in conversations, see it in headlines, sense it in the slightly unhinged energy of people who can&apos;t stop talking about it. The term AI is inescapable.</p><p>Now look, I&apos;m not here to sell you anything. I&apos;m not an evangelist, not a futurist, not one of those people with a newsletter and a podcast and seventeen half-baked ideas about how this all ends. Well. The podcast part I&apos;ll cop to,&#xa0;<a href="https://kylepauljohnson.com/r/4cd611d8?m=8a1fb1e0-1ab1-4f40-b11e-98691b78bdad" rel="noreferrer">I had one of those</a>, so maybe I&apos;m not throwing stones from a glass house so much as standing in the rubble of one. But an evangelist I am not. Still, I&apos;d be lying if I told you I wasn&apos;t rattled by what I watched it do. I fed it decades old spaghetti code, the kind of poorly written, undocumented, load-bearing mess that every company has buried somewhere and prays nobody has to touch. And it just read it. Untangled it. Explained what the original author was probably thinking, made a reasonable guess at why, and then quietly suggested a cleaner way to do the whole thing. Decades of accumulated technical debt, the sediment of a hundred rushed deadlines, and it waded through it like it was reading a children&apos;s book. That&apos;s the moment the skepticism cracked. Not the demos. Not the hype. That.</p><p>And yet. It can also produce breathtaking, steaming piles of slop faster than the internet can shovel it into its mouth, and the internet, let me assure you, has an enormous mouth. And like every seismic cultural shift before it, people have sorted themselves into their tribes with the speed and conviction of people who have definitely already made up their minds.</p><p>There are the die-hards. The true believers. The ones who have gotten so deliriously drunk on the stuff that they&apos;ve stopped sleeping, stopped eating anything that wasn&apos;t suggested by an algorithm, and will corner you at a party to explain, with the wild-eyed enthusiasm of a man who has recently discovered religion, exactly why you should be using it to optimize your morning routine. These people are exhausting. They are also, occasionally, onto something.</p><p>Then there are the social drinkers. They&apos;ve sipped from the bottle. They use it when it&apos;s useful, put it down when it isn&apos;t, and don&apos;t feel the need to build a personality around it. These are, in my experience, the most quietly dangerous people in any industry right now. You won&apos;t hear them talk about it much. You&apos;ll just notice, eventually, that they&apos;re getting more done than everyone who won&apos;t shut up about it.</p><p>And then there are those who utterly refuse to drink. Who see the whole thing as a parlor trick dressed up in a lab coat. Who will tell you, with great conviction, that it can&apos;t really&#xa0;think and they&apos;re not entirely wrong, which is exactly what makes the whole conversation so interesting and so maddening all at once.</p><p>The bar is open. The question was never really whether you&apos;d take a drink. It was always what you&apos;d do after.&#xa0;</p><p>I waded into the slop cesspool slowly, carefully, and with the kind of heavy skepticism that comes naturally to anyone who has watched enough technological revolutions promise everything and deliver a slightly better version of what already existed. I am, by my own admission, a man with an old man&apos;s instinct to eye anything new and shiny with profound suspicion. But even a skeptic runs out of reasons eventually. Here&apos;s the part I can&apos;t talk myself out of. It&apos;s here. It&apos;s not a prototype anymore, not a party trick, not something your nephew demos at Thanksgiving to impress people who don&apos;t know any better. It&apos;s a relatively mature product that is getting measurably, sometimes uncomfortably better on what feels like a weekly basis. Problems that were too tangled and too complex even a few months ago are now being dispatched by the modern models with the kind of breezy nonchalance that makes you stop, set down your coffee, and quietly reconsider some assumptions you had about the next decade.&#xa0;</p><p>So yeah, I use it. In fact I use it constantly, unabashedly, and with the same willful ignorance that allows a person to enjoy a great meal without reading the kitchen&apos;s health inspection report. Because here&apos;s the thing I know and mostly choose not to dwell on, the environmental tab for this particular party is significant. The power consumption, the water, the infrastructure humming away in some desert data center just to help me write a cleaner function or think through a problem, it&apos;s not nothing. Not even close to nothing. But I have made my peace with that the way you make peace with most uncomfortable truths. Carefully, and from a slight distance. And with a little perspective, because we&apos;ve seen this movie before. Take solar. For years every conversation about it came loaded with reasons it could never work, too expensive, the wrong materials, not efficient enough, it kills birds, pick your objection. Some of those concerns were real. Most of them, real or not, got quietly solved over time, the way these things tend to once enough people decide the thing is worth solving. The cost curve bent. The technology matured. The birds, by and large, are fine. I suspect the heavy environmental tab on all of this gets paid down the same way, not because anyone waved a wand, but because the pressure to fix it eventually outweighs the convenience of ignoring it.</p><p>What we are&#xa0;living through right now has the&#xa0;feeling of an open bar that&#xa0;everyone quietly knows is about&#xa0;to close. The drinks are still flowing.&#xa0;The good stuff is still on the shelf.&#xa0;Nobody&apos;s been handed a bill yet. And&#xa0;every person in the room, if they&apos;re&#xa0;honest, understands that this&#xa0;particular arrangement is&#xa0;temporary, even if no one is saying it&#xa0;out loud. So the intelligent move,&#xa0;the only move really, is to drink&#xa0;deeply and deliberately while the pour&#xa0;is still generous. Because it won&apos;t&#xa0;stay free. Nothing worth having ever&#xa0;does. The bill always comes, it just&#xa0;doesn&apos;t always announce itself in&#xa0;advance. The trick is to have already&#xa0;gotten what you needed before the&#xa0;bartender calls last call and the check&#xa0;hits the table.</p><p>Will I see this again? This specific flavor of chaos and possibility all arriving at once? I honestly don&apos;t know. It feels like those first few years of the iPhone when the thing in your pocket was genuinely, almost daily, becoming something different than it was the week before. When nobody had fully figured out the rules yet because the rules were still being written in real time. It was loud and messy and occasionally absurd and completely, undeniably alive in a way that the mature, polished, expensive version that followed could never quite replicate.</p><p>That window closed. It always closes. The pace slowed, the prices climbed, the wonder got quietly replaced by expectation. And so here we are again, standing at what feels like the same kind of precipice. Older this time. A little more aware of how fast the window shuts. The question isn&apos;t whether it will end. It&apos;s whether you were paying enough attention while it was open.</p><div class="kg-card kg-signup-card kg-width-regular " data-lexical-signup-form style="background-color: #F0F0F0; display: none;">
            
            <div class="kg-signup-card-content">
                
                <div class="kg-signup-card-text ">
                    <h2 class="kg-signup-card-heading" style="color: #000000;"><span style="white-space: pre-wrap;">While the bar is still open</span></h2>
                    <p class="kg-signup-card-subheading" style="color: #000000;"><span style="white-space: pre-wrap;">I write about this kind of thing now and then, technology, what it actually does in practice, and the occasional honest take on where it&apos;s all headed. No schedule, no firehose. Drop your email below and I&apos;ll send the next one your way when it&apos;s ready.</span></p>
                    
        <form class="kg-signup-card-form" data-members-form="signup">
            
            <div class="kg-signup-card-fields">
                <input class="kg-signup-card-input" id="email" data-members-email type="email" required="true" placeholder="jamie@example.com">
                <button class="kg-signup-card-button kg-style-accent" style="color: #FFFFFF;" type="submit">
                    <span class="kg-signup-card-button-default">Subscribe</span>
                    <span class="kg-signup-card-button-loading"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24">
        <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper">
            <g class="nc-loop-dots-4-24-icon-o">
                <circle cx="4" cy="12" r="3"/>
                <circle cx="12" cy="12" r="3"/>
                <circle cx="20" cy="12" r="3"/>
            </g>
            <style data-cap="butt">
                .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s}
                .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite}
                .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)}
                .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)}
                .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px}
                @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}
            </style>
        </g>
    </svg></span>
                </button>
            </div>
            <div class="kg-signup-card-success" style="color: #000000;">
                Email sent! Check your inbox to complete your signup.
            </div>
            <div class="kg-signup-card-error" style="color: #000000;" data-members-error></div>
        </form>
        
                    <p class="kg-signup-card-disclaimer" style="color: #000000;"><span style="white-space: pre-wrap;">No spam. Unsubscribe anytime.</span></p>
                </div>
            </div>
        </div>]]></content:encoded></item><item><title><![CDATA[TryVouchr, and the problem with proving you're real]]></title><description><![CDATA[Hiring broke first under AI. A single job opening pulls hundreds of applications and a real fraction of them aren't real, which is why the resume stopped being evidence of anything. Vouchr is my attempt at a fix that doesn't put your identity in someone else's database again.]]></description><link>https://kylepauljohnson.com/tryvouchr-and-the-problem-with-proving-youre-real/</link><guid isPermaLink="false">6a4f032460c7ac00012c40c9</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Tue, 30 Jun 2026 00:42:00 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2026/07/og-image.png" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2026/07/og-image.png" alt="TryVouchr, and the problem with proving you&apos;re real"><p>For most of&#xa0;my career I&apos;ve built&#xa0;systems that sit between&#xa0;people and the thing&#xa0;they&apos;re trying to get done. Buy a&#xa0;house. Get an insurance quote. Land&#xa0;a job. The same pattern&#xa0;turns up every time. The person at the&#xa0;center of the whole thing is&#xa0;usually the one with the least&#xa0;control over their own information.&#xa0;Everybody else trades it, scores it,&#xa0;ships it around, and the person it&#xa0;actually describes is the last one in&#xa0;the room to get a say.</p><p>Hiring is the&#xa0;version of this that broke first under&#xa0;AI.</p><p>If you&apos;ve posted a job in the last&#xa0;year, you already know. One opening&#xa0;pulls hundreds or even thousands of applications and a&#xa0;good chunk of them aren&apos;t real. Resumes&#xa0;written by a model and tuned to the&#xa0;exact wording of your posting.&#xa0;Interviews where you can watch the&#xa0;person reading answers off a second&#xa0;screen. And the really good ones, where&#xa0;one person does the interview and&#xa0;somebody else entirely shows up Monday&#xa0;to do the job. Every recruiter I&apos;ve&#xa0;talked to has basically stopped trying&#xa0;to spot the real ones from a resume,&#xa0;because the resume isn&apos;t evidence of&#xa0;anything anymore.</p><p>The reflex is to&#xa0;screen harder. More background checks,&#xa0;more surveillance, more hoops for the&#xa0;candidate to clear just to prove they&#xa0;aren&apos;t a fraud. I don&apos;t buy it. Partly&#xa0;because it&apos;s miserable for the people&#xa0;who are exactly who they say they are,&#xa0;and that&apos;s most of them. And partly&#xa0;because it takes a person&apos;s identity&#xa0;and parks it in somebody else&apos;s&#xa0;database again, which is the original&#xa0;problem in a new coat.</p><p><a href="https://kylepauljohnson.com/r/63e54795?m=8a1fb1e0-1ab1-4f40-b11e-98691b78bdad" rel="noreferrer">TryVouchr</a>&#xa0;is my&#xa0;crack at the other approach.</p><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.tryvouchr.com/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Vouchr | Proof you&#x2019;re real. Ghost mode for your career.</div><small><div class="kg-bookmark-description">A real-human check for AI-era hiring. Candidates verify for free and control who sees them. Employers pay to reach real people.</div></small></div></a></figure><p>Easy to&#xa0;say, a lot harder to build. You verify&#xa0;yourself once, you own the result, and&#xa0;you decide who gets to see it. Not a&#xa0;profile some platform rents out to&#xa0;recruiters. Not a report a bureau&#xa0;quietly builds about you and sells. A&#xa0;credential that&apos;s yours. It proves&#xa0;you&apos;re a real, present human, it&#xa0;follows you from one application to the&#xa0;next, and you can shut it off whenever&#xa0;you feel like it.</p><p>For the job seeker&#xa0;it&apos;s free, and it stays free. The cost&#xa0;of proving you&apos;re real shouldn&apos;t land&#xa0;on the person who already is. Employers&#xa0;pay, because employers are the ones&#xa0;with the problem and the budget. Trust&#xa0;got expensive in this market. This is a&#xa0;way to buy a little of it back without&#xa0;lying about it.</p><p>A few things I&apos;m&#xa0;holding myself to while I build this.</p><p>It&apos;s a signal, not a gate. Verifying&#xa0;should help a real candidate stand out.&#xa0;It should not slowly harden into a wall&#xa0;that screens out legitimate people who&#xa0;can&apos;t or won&apos;t verify. That&apos;s a real&#xa0;tension and I haven&apos;t solved it, and&#xa0;I&apos;d rather say that plainly than&#xa0;pretend it isn&apos;t sitting there.</p><p>It&#xa0;shows its work. The credential says&#xa0;exactly what got confirmed and what&#xa0;didn&apos;t. A phone check is not an&#xa0;employment check, and the product&#xa0;should never let one pass for the&#xa0;other. Overstating trust is the fastest&#xa0;way to lose it.</p><p>The data stays yours.&#xa0;Vouchr doesn&apos;t sell it, doesn&apos;t run&#xa0;checks behind your back, and doesn&apos;t&#xa0;hang onto anything you didn&apos;t choose to&#xa0;hand over. Starts with you, stays with&#xa0;you.</p><p>I&apos;ve put a lot of nights and&#xa0;weekends into this. It&apos;s early, and I&apos;m&#xa0;writing about it before it&apos;s done on&#xa0;purpose, because I&apos;d rather build it&#xa0;out in the open and hear from people&#xa0;who live this problem than vanish for a&#xa0;year and come back with something&#xa0;nobody asked for. If you&apos;re job hunting&#xa0;and sick of shouting into the void, or&#xa0;you&apos;re hiring and sick of guessing&#xa0;who&apos;s real on the other end, I want to&#xa0;hear from you.</p><p>More soon.</p><div class="kg-card kg-signup-card kg-width-regular " data-lexical-signup-form style="background-color: #F0F0F0; display: none;">
            
            <div class="kg-signup-card-content">
                
                <div class="kg-signup-card-text ">
                    <h2 class="kg-signup-card-heading" style="color: #000000;"><span style="white-space: pre-wrap;">Join the waitlist</span></h2>
                    <p class="kg-signup-card-subheading" style="color: #000000;"><span style="white-space: pre-wrap;">Subscribe&#xa0;to follow the build, the wins, the dead&#xa0;ends, and everything in&#xa0;between.</span></p>
                    
        <form class="kg-signup-card-form" data-members-form="signup">
            
            <div class="kg-signup-card-fields">
                <input class="kg-signup-card-input" id="email" data-members-email type="email" required="true" placeholder="jamie@example.com">
                <button class="kg-signup-card-button kg-style-accent" style="color: #FFFFFF;" type="submit">
                    <span class="kg-signup-card-button-default">Subscribe</span>
                    <span class="kg-signup-card-button-loading"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24">
        <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper">
            <g class="nc-loop-dots-4-24-icon-o">
                <circle cx="4" cy="12" r="3"/>
                <circle cx="12" cy="12" r="3"/>
                <circle cx="20" cy="12" r="3"/>
            </g>
            <style data-cap="butt">
                .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s}
                .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite}
                .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)}
                .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)}
                .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px}
                @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}
            </style>
        </g>
    </svg></span>
                </button>
            </div>
            <div class="kg-signup-card-success" style="color: #000000;">
                Email sent! Check your inbox to complete your signup.
            </div>
            <div class="kg-signup-card-error" style="color: #000000;" data-members-error></div>
        </form>
        
                    <p class="kg-signup-card-disclaimer" style="color: #000000;"><span style="white-space: pre-wrap;">No spam. Unsubscribe anytime.</span></p>
                </div>
            </div>
        </div>]]></content:encoded></item><item><title><![CDATA[🇪🇸 Spain - Visa Decisions]]></title><description><![CDATA[The embassy doesn't care about the version of yourself you're planning to become. Pick your category honestly, not aspirationally. Then build toward it. Most people don't love the answer the first time. Most people get there anyway.]]></description><link>https://kylepauljohnson.com/spain-visa-decisions/</link><guid isPermaLink="false">69b867dacc9eee0001de2a17</guid><category><![CDATA[Spain]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Wed, 17 Jun 2026 14:15:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1675649957459-082cd8dd86a9?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDcxfHx0cmF2ZWwlMjB2aXNhfGVufDB8fHx8MTc3MzY5MjkyMHww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1675649957459-082cd8dd86a9?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDcxfHx0cmF2ZWwlMjB2aXNhfGVufDB8fHx8MTc3MzY5MjkyMHww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" alt="&#x1f1ea;&#x1f1f8; Spain - Visa Decisions"><p>Packing up your life and dropping it in Spain or anywhere, really strips away the bullshit fast. You get sorted into categories whether you like it or not. And here&apos;s the uncomfortable truth nobody puts in the travel brochure: most of those categories have a dollar sign in front of them. Because no country on earth is running a charity. They&apos;re not interested in your wanderlust or your sourdough hobby. They want to know what you bring to the table and if the answer is &quot;not much,&quot; they&apos;d rather you eat somewhere else.</p><p>The visas, like everything else in life, sort you into a brutal little hierarchy pretty quickly.</p><p>You&apos;re a tourist. Welcome, genuinely they mean it. Spend your money, eat the food, take the photos, marvel at the architecture that was already old when your country was still a rough idea on a map. But there&apos;s a clock on the wall the moment you land, and when it hits ninety days, the hospitality evaporates and the math becomes very simple. Go home.</p><p>You&apos;re working. Someone on the other side of an ocean decided you were worth the paperwork and there is a lot of paperwork. A company sponsored you, vouched for you, told their government that you specifically had something their own citizens couldn&apos;t provide. That&apos;s a high bar. It&apos;s also, for a certain kind of person with a certain kind of skill set, entirely achievable. The red tape is real but it has an end.</p><p>You&apos;re retired. You&apos;ve done the math, looked at your pension check, looked at the cost of a decent meal and a bottle of wine in whatever city you&apos;re currently living in, and made a very reasonable adult decision. Somewhere else the numbers work better. Somewhere else the sun is out more. Somewhere else your fixed income buys something that actually resembles a life rather than a slow, dignified financial erosion.</p><p>Or you&apos;re wealthy. And if you&apos;re in that last category, you already have someone handling this conversation for you. Probably several someones. You&apos;re not reading this you&apos;re on a boat.</p><p>For Spain and many other countries in the EU there&apos;s one more option that&apos;s crept onto the menu in recent years, and it&apos;s worth knowing about. Tucked inside the work visa category, quietly gaining traction in countries smart enough to see the opportunity, is the Digital Nomad Visa (DNV). The pitch is elegant in its simplicity; bring your laptop, bring your salary, keep working for whoever was already paying you back home. You&apos;re not stealing anyone&apos;s job. You&apos;re not competing with the local guy trying to feed his family. You&apos;re just sitting in a caf&#xe9; in Lisbon or Valencia, on a call with your boss in Austin, and every euro you spend on rent, and food, and yes wine, flows straight into the local economy. For countries hungry for that kind of high earning, low-friction visitor, it&apos;s damn near a perfect arrangement. Someone finally did the math and liked what they saw.</p><p>So that&apos;s the menu. The question is which seat you take, and for us the choice turned out to be an easy one. A couple of tech workers with laptops and enough frequent flyer miles to know we were done pretending rush hour traffic was an acceptable life choice, this was our lane. The work was fine. The work was actually good. It just didn&apos;t require us to do it from a specific zip code, and somewhere around year twelve of doing it from that specific zip code, that started to feel like an important distinction.</p><p>The Digital Nomad Visa felt less like a loophole and more like someone finally built a door sized exactly right for us. Not the tourist door, we&apos;d worn that one out. This one. The one that said: keep working, keep earning, just do it somewhere the olive oil is better and the buildings have actual history attached to them rather than a landmark plaque from 1987.</p><p>The plan, insofar as two people who just dismantled their entire lives have a plan, is simple enough. Work another five years or so, ideally from a chair planted on European soil, and let the euros compound somewhere useful. Then slide, more or less gracefully, into the retired-in-Europe category we&apos;d been quietly auditioning for since the first time we split a bottle of Spanish wine, looked at each other across a restaurant table, and thought: we could just stay.</p><p>Regardless of what path has brought you here, you need to pick a fundamental fork in the road and pick it honestly, not aspirationally. The question isn&apos;t&#xa0;where do you want to live<em>.</em>&#xa0;That&apos;s the easy, romantic part. The question is&#xa0;what<em>&#xa0;</em>are<em>&#xa0;</em>you<em>&#xa0;</em>actually<em>&#xa0;</em>bringing<em>.</em>&#xa0;A skill someone will pay for. A pension that clears the bar. Savings that can sit in the right account and make the right impression. Or a remote income that follows you like a loyal dog across time zones. Pick your category. Then build toward it, because the embassy doesn&apos;t care about the version of yourself you&apos;re planning to become.</p><p>The uncomfortable gift of doing this, of actually leaving, or seriously attempting to, is that it forces a clarity that comfortable lives rarely demand. You find out fast what&apos;s portable and what was just geography pretending to be personality. And you find out which lane is actually yours, not the one you&apos;d claim at a dinner party. Most people don&apos;t love the answer the first time. Most people get there anyway.</p>]]></content:encoded></item><item><title><![CDATA[Ten Feet]]></title><description><![CDATA[I stumbled into a good life. That's the only honest way to put it. The photo at the top of my stairs makes sure I never forget what stumbling in the other direction might have looked like.]]></description><link>https://kylepauljohnson.com/ten-feet/</link><guid isPermaLink="false">6a4f005e60c7ac00012c409c</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Tue, 02 Jun 2026 11:45:00 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2026/07/DSC_0782.JPG" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2026/07/DSC_0782.JPG" alt="Ten Feet"><p>There&apos;s a photo at the top of our staircase. Canvas print, black and white, and yes by most measures, depressing. A man, balding, long gray beard, clothes that were never his, hanging off a frame they were never meant for. A cigarette dangles low in one hand, a lighter clutched tight in the other like it might be the last thing he owns worth holding onto. His head is down. Chin to chest. The posture of a man who has made some kind of private peace with being invisible.</p><p>Ten feet above him, Pike Place Market is doing what Pike Place Market does; tourists, salmon throwing, noise, life in all its loud and oblivious glory. Ten feet. It might as well be a different planet.</p><p>I took that photo in 2011 at a time where quite honestly I could have been teetering on exactly what I was looking at down the barrel of the lens. Fresh off a divorce, with a bank account so empty that my debit card was essentially a strongly worded suggestion. I wasn&apos;t unhoused, but I was one misstep from it. Every night this photo is one of the last things I see before bed.</p><p>People ask about it sometimes. You can watch them doing the math, trying to figure out what kind of person deliberately hangs something like that at the top of their stairs. What kind of person chooses that as the last image of the day. I understand the question. It&apos;s a reasonable question.</p><p>I am, it turns out, exactly that kind of person. The photo isn&apos;t alone in this. On my forearm sits a tattoo, a symbol from a band that has meant more to me than I could adequately explain to anyone who didn&apos;t already understand it. The symbol itself is ambiguous by design. Depending on who&apos;s reading it, depending on the day, depending on what you&apos;re carrying when you look at it, it can mean something hopeful or something considerably darker. People ask about that too. I don&apos;t always give the same answer, because the answer isn&apos;t always the same.</p><p>What both things share, the photo at the top of the stairs and the ink on my arm, is that they&apos;re not decoration. They&apos;re not conversation pieces, though they reliably start conversations. They&apos;re reminders. Deliberately chosen, permanently positioned anchors to something I don&apos;t want to drift too far from. The idea that things can go sideways. That they nearly did. That the version of my life I&apos;m currently living wasn&apos;t the only version available to me in 2011.</p><p>But the intention was never beauty, even if to me it&apos;s one of the most beautiful photographs I&apos;ve ever taken. There&apos;s a difference between a photo that makes you feel good and a photo that makes you feel something true. This one makes me feel something true every single time.</p><p>What it is, every night without exception, is a few seconds of enforced silence in a world that doesn&apos;t make much room for it. A hard stop. A moment where the day&apos;s noise, whatever it was, falls away, and I find myself back on that street in 2011 wondering about him. Who he was. What sequence of events, decisions, disasters, or simple unremarkable bad luck had landed him there, ten feet below the tourists and the salmon and the noise, likely fighting something invisible and exhausting and entirely his own. What was actually going through his head at the exact moment I pressed the shutter. Whether he knew I was there at all.</p><p>I never found out. I never tried. That sits with me too.</p><p>I stumbled into a good life. That&apos;s the only honest way to put it. A nerdy obsession I picked up late in high school turned into a career, turned into comfort, turned into the kind of existence where Spain becomes a realistic conversation. I didn&apos;t engineer that with some grand vision. There was no five year plan, no whiteboard full of goals, no mentor who saw something in me that I couldn&apos;t yet see in myself. I got lucky, repeatedly, in ways I didn&apos;t fully appreciate until I was old enough to look back and feel the full weight of it.</p><p>And let&apos;s be clear about something. I didn&apos;t out-work anyone. I want to be precise about that because the myth of the self made man is one of the more destructive stories we tell ourselves in this country. I sat at a desk. I stared at screens. I solved problems that, in the grand honest spectrum of human labor, were never going to break my body or shorten my life. Nobody was depending on my physical output to feed their family that night. I wasn&apos;t laying pipe in January or pulling double shifts on a floor that smelled like grease and exhaustion. I typed. I thought. I got paid extraordinarily well for both. The idea that I earned this through some superior effort or discipline is a story I could tell myself, and it would be a comfortable one. It would just be wrong.<br>That photo won&apos;t let me forget that.</p><p>I grew up in the Midwest, where humility isn&apos;t a virtue so much as it&apos;s just the water you swim in. Where you&apos;re close enough to real hardship that you never fully convince yourself you&apos;re immune to it. That man in the photo could have been any number of people I grew up around. Could have been, under a different set of circumstances, someone a lot closer to home than I&apos;d like to admit.</p><p>And so every night, for just a moment, the noise of the world, the grievances, the outrage, the endless ticker tape of who wronged whom today, goes quiet. And I just stand there at the top of the stairs, saying nothing. Kept honest, every single night, by a man whose name I never knew.</p>]]></content:encoded></item><item><title><![CDATA[Chewy Toasted Pecan Toffee Chocolate Chip Cookies]]></title><description><![CDATA[We went on a mission to create the best toffee chocolate chip cookies we could, and these are certainly it. In a world that often feels heavy and negative, I wanted to share something that's pure, unadulterated sweetness, a little bit of joy in cookie form.]]></description><link>https://kylepauljohnson.com/chewy-toasted-pecan-toffee-chocolate-chip-cookies/</link><guid isPermaLink="false">68cc7e06c0bb9c7126006ca8</guid><category><![CDATA[Recipes]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Mon, 01 Jun 2026 14:02:00 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2025/09/DSC_8791.jpeg" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2025/09/DSC_8791.jpeg" alt="Chewy Toasted Pecan Toffee Chocolate Chip Cookies"><p>Life gets busy, and for my wife and me, dinner was becoming a nightly puzzle we were too tired to solve. So, we did what so many have done and subscribed to a meal delivery service. It has been a fantastic way to reclaim some of our evenings, giving us back precious time for our other hobbies. But even with the convenience, sometimes that old familiar urge to cook something from scratch still hits that need to get lost in a recipe, to feel the satisfaction of creating something truly delicious. For me, that craving recently centered on our favorite cookies. In a world that often feels heavy and negative, I wanted to share something that&apos;s pure, unadulterated sweetness. A little bit of joy in cookie form.</p><p>My love affair with sweets is a long and storied one, but it&apos;s a particular chewy, nutty, salty, and sweet masterpiece from a little Seattle institution that truly set us on a quest.&#xa0;<a href="https://www.lowridercookiecompany.com/?ref=kylepauljohnson.com"><strong>Low Rider Cookie Company</strong></a>, with its unassuming storefront introduced me to a cookie that became the gold standard: their Toffee Pecan Chocolate Chip. It was a cookie so perfect it seemed impossible to replicate, a harmonious blend of textures and flavors that haunted my dreams.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://kylepauljohnson.com/content/images/2025/09/59d9c06d-46ff-4459-aa00-c3f08dc85f6f-IMG_5585.jpg" class="kg-image" alt="Chewy Toasted Pecan Toffee Chocolate Chip Cookies" loading="lazy" width="2000" height="2667" srcset="https://kylepauljohnson.com/content/images/size/w600/2025/09/59d9c06d-46ff-4459-aa00-c3f08dc85f6f-IMG_5585.jpg 600w, https://kylepauljohnson.com/content/images/size/w1000/2025/09/59d9c06d-46ff-4459-aa00-c3f08dc85f6f-IMG_5585.jpg 1000w, https://kylepauljohnson.com/content/images/size/w1600/2025/09/59d9c06d-46ff-4459-aa00-c3f08dc85f6f-IMG_5585.jpg 1600w, https://kylepauljohnson.com/content/images/2025/09/59d9c06d-46ff-4459-aa00-c3f08dc85f6f-IMG_5585.jpg 2000w" sizes="(min-width: 720px) 720px"><figcaption><span style="white-space: pre-wrap;">Low Rider Cookie Company on East Union St in Seattle</span></figcaption></figure><p>My wife and I embarked on a pilgrimage of sorts, a quest to recreate that perfect cookie. We tried every recipe we could find. Some were too cakey, lacking that essential chew. Others were too sweet, drowning out the nuanced flavors of the toffee and nuts. We experimented with different types of flour: all-purpose, bread flour, even a mix and varied the proportions of brown sugar to white sugar to get that ideal softness and depth of flavor.</p><p>The biggest challenge was capturing that elusive balance. We needed the cookie to be more than just a sweet treat; it had to have a certain richness. The breakthrough came with two key additions. First, browning the butter. This simple step transformed the flavor profile, adding a nutty, toasty depth that regular melted butter couldn&#x2019;t touch. </p><p>The second secret was toasting the pecans. We learned that a few minutes in a pan or baked in the oven, until they were fragrant and slightly darker, amplified their nutty flavor, making them stand out against the backdrop of the chocolate and toffee. This wasn&apos;t just about adding texture; it was about building layers of flavor.</p><p>After countless batches and a few <em>frustrated</em> moments (and a few truly delicious failures), we finally landed on the perfect combination. The result is a cookie that has it all: a satisfying chewiness that gives way to a soft, gooey center, pockets of rich chocolate, and the delightful crunch and buttery sweetness of toffee. The toasted pecans add a beautiful, earthy flavor that grounds the sweetness, and a touch of flaky sea salt on top cuts through the richness, leaving you craving another bite. These aren&apos;t just cookies; they&apos;re the culmination of a quest, a testament to the idea that sometimes, the best things in life are worth a little extra effort. You simply have to try these.</p><div class="kg-card kg-signup-card kg-layout-split kg-width-full " data-lexical-signup-form style="background-color: #F0F0F0; display: none;">
            
            <div class="kg-signup-card-content">
                
        <picture><img class="kg-signup-card-image" src="https://kylepauljohnson.com/content/images/2025/09/IMG_2931.JPG" alt="Chewy Toasted Pecan Toffee Chocolate Chip Cookies"></picture>
    
                <div class="kg-signup-card-text ">
                    <h2 class="kg-signup-card-heading" style="color: #000000;"><span style="white-space: pre-wrap;">Stay Updated</span></h2>
                    <p class="kg-signup-card-subheading" style="color: #000000;"><span style="white-space: pre-wrap;">Get posts like this directly in your inbox the next time it&apos;s posted</span></p>
                    
        <form class="kg-signup-card-form" data-members-form="signup">
            <input data-members-label type="hidden" value="cookie_recipe">
            <div class="kg-signup-card-fields">
                <input class="kg-signup-card-input" id="email" data-members-email type="email" required="true" placeholder="jamie@example.com">
                <button class="kg-signup-card-button kg-style-accent" style="color: #FFFFFF;" type="submit">
                    <span class="kg-signup-card-button-default">Subscribe</span>
                    <span class="kg-signup-card-button-loading"><svg xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 24 24">
        <g stroke-linecap="round" stroke-width="2" fill="currentColor" stroke="none" stroke-linejoin="round" class="nc-icon-wrapper">
            <g class="nc-loop-dots-4-24-icon-o">
                <circle cx="4" cy="12" r="3"/>
                <circle cx="12" cy="12" r="3"/>
                <circle cx="20" cy="12" r="3"/>
            </g>
            <style data-cap="butt">
                .nc-loop-dots-4-24-icon-o{--animation-duration:0.8s}
                .nc-loop-dots-4-24-icon-o *{opacity:.4;transform:scale(.75);animation:nc-loop-dots-4-anim var(--animation-duration) infinite}
                .nc-loop-dots-4-24-icon-o :nth-child(1){transform-origin:4px 12px;animation-delay:-.3s;animation-delay:calc(var(--animation-duration)/-2.666)}
                .nc-loop-dots-4-24-icon-o :nth-child(2){transform-origin:12px 12px;animation-delay:-.15s;animation-delay:calc(var(--animation-duration)/-5.333)}
                .nc-loop-dots-4-24-icon-o :nth-child(3){transform-origin:20px 12px}
                @keyframes nc-loop-dots-4-anim{0%,100%{opacity:.4;transform:scale(.75)}50%{opacity:1;transform:scale(1)}}
            </style>
        </g>
    </svg></span>
                </button>
            </div>
            <div class="kg-signup-card-success" style="color: #000000;">
                Email sent! Check your inbox to complete your signup.
            </div>
            <div class="kg-signup-card-error" style="color: #000000;" data-members-error></div>
        </form>
        
                    <p class="kg-signup-card-disclaimer" style="color: #000000;"><span style="white-space: pre-wrap;">No spam. No selling email. Unsubscribe anytime.</span></p>
                </div>
            </div>
        </div><h2 id="chewy-toasted-pecan-toffee-chocolate-chip-cookies-recipe">Chewy Toasted Pecan Toffee Chocolate Chip Cookies Recipe</h2><p><strong>Serves:</strong> 12<br>
<strong>Prep Time:</strong> 20 min<br>
<strong>Cook Time:</strong> 15 min</p>
<h4 id="ingredients">Ingredients:</h4>
<ul>
<li>1.5 oz pecans</li>
<li>1 tsp olive oil</li>
<li>&#xbd; cups granulated sugar</li>
<li>&#xbe; cups brown sugar, packed</li>
<li>&#xbe; cups dark brown sugar, packed</li>
<li>&#xbd; cups salted butter, browned</li>
<li>1 egg</li>
<li>1 tsp vanilla extract</li>
<li>1 &#xbc; cups all-purpose flour</li>
<li>&#xbd; tsp baking soda</li>
<li>8 oz Heath Milk Chocolate Toffee Bits</li>
<li>Maldon Sea Salt Flakes</li>
</ul>
<h4 id="steps">Steps:</h4>
<ol>
<li>
<p>Preheat oven to 350&#xb0;F (180&#xb0;C). Toss the pecans in 1 tsp olive oil. Bake for 7-10 minutes until darkened. Let cool, then chop.</p>
</li>
<li>
<p>In a large bowl, whisk together the sugars, salt, and butter until a paste forms with no lumps.</p>
</li>
<li>
<p>Whisk in the egg and vanilla, beating until light ribbons fall off the whisk and remain for a short while before falling back into the mixture.</p>
</li>
<li>
<p>Sift in the flour and baking soda, fold the mixture. Don&apos;t overmix.</p>
</li>
<li>
<p>Fold in the Heath Milk Chocolate Toffee Bits and toasted pecans. Refrigerate the dough for at least 30 minutes. For a more complex flavors, chill the dough overnight.</p>
</li>
<li>
<p>Preheat oven to 350&#xb0;F (180&#xb0;C). Line a baking sheet with parchment paper.</p>
</li>
<li>
<p>Scoop the dough with an ice-cream scoop onto a parchment paper-lined baking sheet, leaving at least 4 inches (10 cm) of space between cookies and 2 inches (5 cm) of space from the edges of the pan so that the cookies can spread evenly.</p>
</li>
<li>
<p>Bake for 12-15 minutes, or until the edges have started to barely brown or the tops become dull.</p>
</li>
<li>
<p>Sprinkle with sea salt flakes and let cool completely.</p>
</li>
</ol>
]]></content:encoded></item><item><title><![CDATA[🇪🇸 Spain - The First Steps]]></title><description><![CDATA[The dream of living in Europe is officially moving from the "retirement bucket list" to the "active to-do list."]]></description><link>https://kylepauljohnson.com/spain-the-first-steps/</link><guid isPermaLink="false">69b0e2888055b70001b7f505</guid><category><![CDATA[Spain]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Mon, 16 Mar 2026 16:10:40 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1689418335910-7988c39d4d09?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDQ4fHxzcGFpbiUyMGZsYWd8ZW58MHx8fHwxNzczNjA1MDk0fDA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1689418335910-7988c39d4d09?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wxMTc3M3wwfDF8c2VhcmNofDQ4fHxzcGFpbiUyMGZsYWd8ZW58MHx8fHwxNzczNjA1MDk0fDA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=2000" alt="&#x1f1ea;&#x1f1f8; Spain - The First Steps"><p>Christina and I have traveled a lot throughout Europe over the past fifteen years or so. We were married in France and have spent time in Hungry, Austria, the Czech Republic and most recently a lot of time in Spain and Portugal. We love Europe, the culture, the food and the landscapes. For years we have talked about living abroad somewhere in Europe  during our retirement.</p><p>Over the past few years we have looked more and more at the possibility of making this move earlier while still working if possible which brings into focus a huge host of new questions. How do we do this? What visa do we use? How do or can we work legally? How will be be taxed? Will we be double taxed given we are United States citizens? The questions quickly become pretty endless. We did our best to research on our own via internet search, AI chatting, Reddit groups and Facebook groups. We found a ton of good information but at some point you need someone to validate the information you have found and add to that information with reality.</p><p>So this week we took the very first steps on our journey and we spoke to a Spanish immigration lawyer. We discussed the most likely possible routes of doing this which would include being a W2 employee of an American company or a 1099 contract employee of an American company. For a W2 employee we would have to work for a company willing to have a Spanish entity, or using an Employer of Record (EOR) which in a nutshell is an organization you work for that has an entity in the country in which you want to work and you then contract for your American company through them on a contract basis and pay them a monthly fee. In our case the most likely path turns out to be employee(s) of our own company <a href="https://www.cascadiaascent.com/?ref=kylepauljohnson.com" rel="noreferrer">Cascadia Ascent</a> which is an LLC we formed late last year as a way for Christina to do contract work. Under this setup we would work for our own company, which itself has contracts with other companies but from a tax perspective our LLC is the only one that is a tax liability. The only hurdle for this is that the company needs to have been in existence for at least a year so that&apos;s a hurdle but likely fits with our timeline. Now the question is what our tax rate would be with the given scenarios. There are really mainly two possibilities. The first is that we fall into the countries traditional tax system that is used by all it&apos;s citizens and your tax rate could be anywhere from 19% all the way up to 49% depending on income. The other option would be that we could qualify and apply for the <a href="https://en.wikipedia.org/wiki/Beckham_law?ref=kylepauljohnson.com">Beckham&apos;s law</a> which would effectively lock in our tax rate at 24% for the first five years working in Spain. After that period you would default back to the Spanish tax bracket of between 19 and 49% percent. At that point we would potentially be looking at retiring anyway so this is likely not an issue for us.</p><p>Next stop, the international tax attorney.</p><div class="kg-card kg-callout-card kg-callout-card-grey"><div class="kg-callout-emoji">&#x1f9f3;</div><div class="kg-callout-text">The is the first of a <a href="https://kylepauljohnson.com/tag/spain/" rel="noreferrer">series of posts</a> documenting our process of researching, planning and making our move to Spain.</div></div>]]></content:encoded></item><item><title><![CDATA[JetBlack Victory]]></title><description><![CDATA[The JetBlack Victory is a smart cycling trainer built to work flawlessly with Zwift, a virtual world you can run or ride through all using the Zwift Cog.]]></description><link>https://kylepauljohnson.com/jetblack-victory/</link><guid isPermaLink="false">6779a303059bd2484e3d1af6</guid><category><![CDATA[Cycling]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Wed, 29 Jan 2025 01:26:44 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2025/01/jetblack-victory-smart-cycle-trainer-with-zwift-cog-and-click-side-2.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2025/01/jetblack-victory-smart-cycle-trainer-with-zwift-cog-and-click-side-2.jpg" alt="JetBlack Victory"><p>In October of last year, I impulsively ordered a new smart bike trainer after a colleague&#x2019;s enthusiastic recommendation. If you&#x2019;re unfamiliar with smart bike trainers, like most things, there&#x2019;s a vast array of manufacturers, types, and levels of smarts, as well as price points. This particular trainer was designed to seamlessly integrate with an application called <a href="https://www.zwift.com/?ref=kylepauljohnson.com" rel="noreferrer">Zwift</a>, a virtual world where you can ride through while working out on the bike trainer.

<a href="https://www.jetblackcycling.com/indoor-cycle-trainers-and-accessories/victory-smart-trainer/?ref=kylepauljohnson.com" rel="noreferrer">The Victory</a>, JetBlack&#x2019;s latest trainer, is relatively affordable at &#x24;399 in the world of smart trainers. Considering JetBlack&#x2019;s reputation in the industry, this price is quite reasonable compared to many comparable trainers that range from &#x24;500 to &#x24;1000 for similar smarts and capabilities.

Initially, the trainer was scheduled for delivery to Southern California for use during the winter and spring. However, it faced several shipping and customs delays, and it wasn&#x2019;t until December that it finally arrived. Upon unboxing and setting up the trainer, I noticed a strange noise emanating from the belt or flywheel as it spun. After a few weeks of back-and-forth with the manufacturer&#x2019;s support and additional delays due to the holiday season, we discovered the issue. It turned out that the flywheel was hitting a plastic housing that covers many of the electronic components. A simple push of the plastic to the side resolved the problem, and the trainer resumed working as expected.</p><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.jetblackcycling.com/indoor-cycle-trainers-and-accessories/victory-smart-trainer/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">VICTORY Smart Trainer with Zwift Cog &amp; Click - JetBlack Cycling</div><small><div class="kg-bookmark-description">The JetBlack VICTORY Smart Trainer takes things to another level again delivering everything you should expect from this category of trainers PLUS MORE. It has BEST IN CLASS features too. We have thought about all the little things so you don&#x2019;t have to, which is why VICTORY is among the FIRST certified Zwift ready trainer making it easier than ever to use the trainer out of the box on Zwift with minimal fussing around. The Zwift Cog is pre-installed &amp; Click virtual gear shifting clips onto the handle bars to provide a premium Zwift experience Also compatible with other indoor trainer apps by removing the Zwift Cog and replacing with cassette of choice.</div></small></div></a></figure><p>With the trainer fully working, I got it paired with my <a href="https://amzn.to/40xIoQf?ref=kylepauljohnson.com"><u>AppleTV</u></a> which runs and displays the <a href="https://www.zwift.com/invite/HjHMJswL7w?ref=kylepauljohnson.com"><u>Zwift app</u></a> to a projector which displays Zwift onto a wall and provides visuals while doing rides. This includes a virtual world with many real and fictional places you can ride as well as all your telemetry information being fed from the various sensors.</p><p>The setup of Zwift includes pairing of many sensors from the JetBlack trainer, including: power, speed, and cadence. Zwift also pairs with a heart rate monitor, and for that, I use a <a href="https://amzn.to/40RGHOU?ref=kylepauljohnson.com"><u>Polar H10 heart rate strap</u></a>. All these sensors and data points emulate your effort in the virtual world, where you can perform workout programs or compete against other athletes from all over the world.</p><figure class="kg-card kg-video-card kg-width-wide kg-card-hascaption" data-kg-thumbnail="https://kylepauljohnson.com/content/media/2025/01/nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo--nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo-_thumb.jpg" data-kg-custom-thumbnail>
            <div class="kg-video-container">
                <video src="https://kylepauljohnson.com/content/media/2025/01/nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo--nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo-.mp4" poster="https://kylepauljohnson.com/content/media/2025/01/nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo--nC6Yqk1DZopRzkm9gUPWkSiRFciOXJRhY9fH5yHgUjo-_thumb.jpg" width="1280" height="720" loop autoplay muted playsinline preload="metadata" controls></video>
                
                
            </div>
            <figcaption><p><span style="white-space: pre-wrap;">Gameplay video of Zwift from a fictions world called Watopia</span></p></figcaption>
        </figure><p>I embarked on a journey to boost my cycling skills, starting with Zwift&#x2019;s &#x201c;Fitness Jumpstart&#x201d; series&#x2014;a dynamic sixteen-workout program designed to elevate your fitness level. These sessions harness the power of Ergometer mode, or ERG mode, which automatically adjusts the resistance to keep your power output steady. This means you can concentrate solely on your cadence, while the trainer ensures you hit the target power levels set by the program. Unlike my old &#x201c;dumb&#x201d; trainer, which demanded constant gear shifts and cadence management, ERG mode acts like an autopilot, allowing you to focus on crushing your workout without the hassle.</p><blockquote>In &quot;High-tech Cycling.&quot; Training intensity is the toughest variable to measure. Speed is a poor measure, as it relates more to terrain and wind. Heart rates provide a rough gauge, but they vary in response to temperature, humidity, altitude, hydration, fatigue, caffeine intake and exercise duration.<br><br>~ Jeffrey P. Broker, University of Colorado Biomechanics Professor</blockquote><p>After five weeks and over 200 miles on the Victory, I can confidently say it&#x2019;s been an incredible journey. As a newcomer to smart trainers, the ERG mode has completely transformed my indoor rides, turning what I once dreaded into an enjoyable experience. I love switching between the Zwift game interface and catching a football game on the iPad while Zwift runs seamlessly on the AppleTV. Overall, it&#x2019;s a fantastic indoor trainer experience, aside from the shipping hiccups and minor issues at arrival, which I easily resolved myself. </p><p>If you would like to try out Zwift you can use my referral link for a free month: <a href="https://www.zwift.com/invite/HjHMJswL7w?ref=kylepauljohnson.com">https://www.zwift.com/invite/HjHMJswL7w</a></p>]]></content:encoded></item><item><title><![CDATA[A New Era - Sonos as Dedicated Computer Speaker]]></title><description><![CDATA[Sonos Era 100 and 300 speakers are great approachable opportunities to use Sonos for your computer speakers or for any other device with a headphone jack.]]></description><link>https://kylepauljohnson.com/a-new-era-sonos-as-dedicated-computer-speaker/</link><guid isPermaLink="false">64308a3ff40bd7a831eab57c</guid><category><![CDATA[Technology]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Tue, 16 May 2023 01:30:25 GMT</pubDate><media:content url="https://kylepauljohnson.com/content/images/2023/05/230303111128-sonos-era-100-bookshelf-1.jpg-2.webp" medium="image"/><content:encoded><![CDATA[<img src="https://kylepauljohnson.com/content/images/2023/05/230303111128-sonos-era-100-bookshelf-1.jpg-2.webp" alt="A New Era - Sonos as Dedicated Computer Speaker"><p><strong>Update</strong>: July<em>&#xa0;8th, 2026 -</em>&#xa0;Updated to accommodate newer products.</p><p>Back in December I <a href="https://kylepauljohnson.com/sonos-dedicated-macbook-pro-speaker/" rel="noreferrer">wrote up</a> how to turn a Sonos speaker into a desktop speaker for your Mac. That guide leaned on the Sonos Ray, which at the time was one of the only speakers in the lineup with any kind of line-in capability. A few months on, that has changed. <a href="https://www.sonos.com/?ref=kylepauljohnson.com" rel="noreferrer">Sonos</a> has put out new hardware that makes the whole thing cheaper, simpler, and a lot less dependent on owning the one specific soundbar that happened to have a port. Good news if you&apos;re coming back to this: the setup costs less now than it did when I first wrote it.</p><p>I split my time between Southern California and the Pacific Northwest, and as the weather up north thaws into something resembling habitable, I&apos;ve made my way back to Washington. The two desks could not be less alike. In SoCal I&apos;ve got a big rectangular slab with room to spare for whatever nonsense I feel like piling on it. In Washington my desk is crammed into a corner, inexplicably triangular, and offers just enough room for a keyboard, a mouse, and a phone stand before it gives up. The Ray was perfect in California. In Washington it was a soundbar looking for a TV that wasn&apos;t there.</p><p>That is where the <a href="https://amzn.to/3Gp9j7y?ref=kylepauljohnson.com">Sonos Era 100</a> and <a href="https://amzn.to/3LkSAnE?ref=kylepauljohnson.com">Era 300</a> come in, the replacements for the <a href="https://amzn.to/4y8FEc8?ref=kylepauljohnson.com" rel="noreferrer">Sonos One (Gen 2)</a> and the <a href="https://amzn.to/3MqZ3Qj?ref=kylepauljohnson.com">Sonos Five</a>. The Era 100 lists around &#x24;219 these days and routinely dips to &#x24;179 during sales, while the Era 300 runs somewhere around &#x24;379, down from a higher list. There are differences across the line, most of them between the Five and the Era 300, but the part that matters here is simple. Both Era speakers added line-in.</p><p>One quick note before you go shopping. Sonos also sells an Era 100 SL for around &#x24;189. The SL is the microphone-free version, no Alexa, no voice control, but it has the same USB-C port and works for this exact line-in setup. If you only want a desk speaker and don&apos;t care about the smart-assistant features, it&apos;s the cheapest way in. Just know which box you&apos;re buying so you&apos;re not surprised by the missing mic later.</p><h3 id="what-youll-need">What you&apos;ll need</h3><p>Here is where Sonos does something slightly maddening. Each Era has a USB-C port on the back, but you can&apos;t run USB-C straight from your computer to the speaker, which feels like the obvious thing they would let you do and pointedly didn&apos;t. Instead you need their USB-C to 3.5mm aux adapter, sold separately of course. With that in hand you&apos;ll also need a plain 3.5mm male-to-male cable to run from your Mac&apos;s headphone jack, or any source with one, into the adapter.</p><figure class="kg-card kg-bookmark-card kg-card-hascaption"><a class="kg-bookmark-container" href="https://www.sonos.com/en-us/shop/sonos-line-in-adapter?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Aux Line-In Adapter: 3.5mm to USB-C | Sonos</div><small><div class="kg-bookmark-description">Connect an aux audio source to Era 100 or Era 300 using this 3.5mm to USB-C line-in adapter.</div></small></div></a><figcaption><p><span style="white-space: pre-wrap;">Sonos USB-C to 3.5mm Line In Adapter</span></p></figcaption></figure><p>All in, a single Era 100 (or the cheaper SL), the adapter, and a basic male-to-male cable off Amazon now runs you somewhere in the &#x24;210 to &#x24;250 range depending on which speaker you pick and what the Era is selling for that week. That&apos;s a fair bit less than when I first wrote this. If you want a stereo pair you can roughly double the speaker cost, but you won&apos;t need a second adapter or cable, the first speaker feeds the second wirelessly. For now, given my corner-desk situation, I&apos;m running a single Era 100 and have no complaints.</p><h3 id="setup">Setup</h3><p>The setup is genuinely simple.</p><ol><li>Add the speaker to your Sonos system the way you would any other Sonos product.</li><li>Connect the USB-C line-in adapter to the back of the speaker.</li><li>Run the 3.5mm cable from the adapter to your device.</li><li>In the Sonos app, select line-in as the source for that speaker.</li></ol><p>That&apos;s the whole thing. You should be up and running. From here a few settings are worth changing, because the defaults are not doing you any favors.</p><h3 id="source-level">Source Level</h3><p>The first thing you&apos;ll notice is that it&apos;s quiet. Too quiet. There&apos;s a fix. In the Sonos app, go to Settings &gt; System &gt; {Your Speaker} and find the Line-In settings. Set the Source Level to &quot;Mac Computer&quot; or higher, using the Level numbers as your reference. The jump in volume is substantial.</p><h3 id="audio-delay">Audio Delay</h3><p>By default Sonos sets Audio Delay to &quot;Max,&quot; which builds in a generous lag between what you do on your device and what actually comes out of the speaker. Set it to &quot;Low.&quot; This all but eliminates the delay. What you give up is a buffer Sonos adds to smooth out playback on congested networks, so if your network is rough this might not be ideal, but for most setups Low is the right call.</p><h3 id="autoplay">Autoplay</h3><p>Last one. I&apos;d set Autoplay to use this speaker, and set the Autoplay volume slider to a sane level. Autoplay automatically flips the speaker to line-in whenever it detects a signal from your computer.</p><p>This one comes with a catch worth understanding before you turn it on. Say you&apos;ve grouped the whole house for music and that group includes your computer-attached Sonos. An email lands, your Mac makes its little noise, and the computer speaker drops out of the group to play that one sound. Depending on how chatty your computer is, this ranges from mildly annoying to genuinely irritating. Worth knowing going in.</p><p>The volume slider earns its keep here too. If the speaker got cranked to some absurd level earlier in the day, by you, no judgment, Autoplay resets to your set volume the moment it picks up the line-in signal instead of blasting computer audio at full tilt. Your ears stay intact.</p><p>There are also third-party adapters all over Amazon. I have no idea if they work. Your mileage may vary.</p><p>I&apos;ve been running this setup for a month or two now and it&apos;s been rock solid. No dropouts, no audio weirdness. If you want a lower-cost way to get Sonos onto your desk, or onto anything that can push audio out a 3.5mm jack, this is it.</p>]]></content:encoded></item><item><title><![CDATA[My Favorite Things 2022]]></title><description><![CDATA[A list of just a few items that I have enjoyed the most this past year and would most highly recommend to anyone.]]></description><link>https://kylepauljohnson.com/favorite-things/</link><guid isPermaLink="false">638e62133a0319bb129bde19</guid><category><![CDATA[Personal]]></category><category><![CDATA[Technology]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Sun, 01 Jan 2023 21:36:00 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1514207994142-98522b5a2b23?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIzfHxHaWZ0fGVufDB8fHx8MTY3MDI3NjMzNg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1514207994142-98522b5a2b23?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDIzfHxHaWZ0fGVufDB8fHx8MTY3MDI3NjMzNg&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="My Favorite Things 2022"><p>Happy New Year!  Wouldn&apos;t be a New Year without some sort of review post. I&apos;ve seen some similar posts sharing a gift guide or something like that, but instead I thought it might be fun to make a list of just a few items that I have enjoyed the most this past year and would most highly recommend to anyone.</p><p>Before we get to any of the products, let me add a few important caveats:</p><ul><li>This list is going to be generally male-centric. I&apos;m a dude... what can you do? &#x1f601;</li><li>This is not meant to be all price ranges. Many of these items are quite expensive but they are the things that I really love and would not want to do without.</li></ul><p>So with that in mind, let&apos;s get started.</p><h2 id="kitchen">Kitchen</h2><p>Starting in the kitchen. We tend to cook a lot and generally we are not big on kitchen gadgets or single-use items. There are a couple of items in the kitchen though that I love and get used almost every day it seems.</p><h3 id="microplane-citrus-zester">Microplane Citrus Zester</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.microplane.com/premium-classic-series-zester-grater-yellow?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Premium Classic Series Citrus Zester - Yellow</div><small><div class="kg-bookmark-description">Featuring Microplane</div></small></div></a></figure><p>&#x24;15 | <a href="https://amzn.to/3Bkp25r?ref=kylepauljohnson.com">Amazon</a></p><p>We&apos;ll start cheap with the &#x24;15 citrus zester from &quot;Microplane&quot;. This thing is super versatile and we use it on most of our meals to grate garlic, ginger, citrus, and sometimes nuts. It is always in the dishwasher showing just how much use it gets so pretty deserving of being the first item on the list. So much in fact, I have often debated if we should get a second one.</p><h3 id="breville-barista-express">Breville Barista Express</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.breville.com/us/en/products/espresso/bes870.html?sku=BES870XL&amp;ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">the Barista Express&#xae;</div><small><div class="kg-bookmark-description">Grind, dose and extract all in one.</div></small></div></a></figure><p>&#x24;600 | <a href="https://amzn.to/3VYxX4n?ref=kylepauljohnson.com">Amazon</a></p><p>This countertop appliance gets used every single day. We bought the Breville Barista Express back in 2018 just a bit before the pandemic. Before picking this up, we were <a href="https://www.starbucks.com/?ref=kylepauljohnson.com">Starbucks</a> junkies stopping in nearly every day on our way to the office. During COVID of course this was a lifesaver.</p><p>The machine paid for itself in just a few months when you calculate our coffee bill each day from the coffee shop. It continues to be a tank turning out great quality espresso day after day with little maintenance. Pre-pandemic it was only &#x24;500, but post-pandemic and with inflation, its price has gone up one to two hundred dollars depending on current sales. </p><p>If you&apos;re into espresso drinks, this makes them easy at home at a reasonable price as far as espresso machines go.</p><h2 id="clothing">Clothing</h2><p>Over the past few months, I have been trying to weed out old and worn-out clothes and replace them with comfortable, versatile, and durable pieces. </p><h3 id="mack-weldon-stealth-boxer-briefs">Mack Weldon Stealth Boxer Briefs</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://mackweldon.com/products/stealth-boxer-brief-ultraviolet?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Stealth Boxer Brief Ultraviolet</div><small><div class="kg-bookmark-description">Layer it under board shorts, work out in it, wear it every day&#x2014;this innovative underwear does everything (but feels like nothing).</div></small></div></a></figure><p>&#x24;38</p><p>I had heard of Mack Weldon for years primarily on podcasts I listen to. I finally decided to take the plunge and buy a pair of the Mack Weldon Stealth Boxer Briefs. Initially, I got just a pair to try them out and at the cost, I wanted to make sure they were good. These are some awesome underwear. Silky smooth, and light with a snug fit yet you rarely notice them at all. I almost immediately ordered many more pairs and plan to switch to these exclusively.</p><h3 id="bylt-basics-everday-pant-20">BYLT Basics Everday Pant 2.0</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://byltbasics.com/products/everyday-pant-2-0?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Everyday Pant 2.0 | BYLT Basics&#x2122; - Premium Basics</div><small><div class="kg-bookmark-description">&lt;meta charset=&#x201c;utf-8&#x201d;&gt;&lt;span&gt;Perfect for day or night, the Everyday Pant instantly elevates your look. Throw these pants on with our Tech Polo for a more professional look, or with our&#xa0;Drop-Cut Shirt for a more casual vibe.&lt;/span&gt;</div></small></div></a></figure><p>&#x24;120</p><p>These pants worked on me hard with the social media ads. Finally, when looking for new pants I decided I would cave and try out a pair. These pants are my new absolute favorite. Classic looking enough to feel like you could dress them up but stretchy and casual for everyday wear. From the work-from-home dress to the golf course to business casual meals these pants will serve many uses. If I&apos;m not wearing shorts here in the desert, I am wearing a pair of these. I have several pairs of different colors and I love them so much.</p><h2 id="technology">Technology</h2><p>Both of my items in technology are audio related. I listen to podcasts or music throughout most of my day so these are important to me.</p><h3 id="apple-airpods">Apple AirPods</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.apple.com/airpods-3rd-generation/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">AirPods (3rd generation)</div><small><div class="kg-bookmark-description">AirPods (3rd generation). Personalized Spatial Audio, Adaptive EQ, longer battery life, and sweat and water resistance &#x2014; all in a stunning design.</div></small></div></a></figure><p>&#x24;160 | <a href="https://amzn.to/3iJT3Fw?ref=kylepauljohnson.com">Amazon</a></p><p>Working out or going for a mid-day walk I always have my AirPods with me. Although I don&apos;t have the AirPod Pro due to them not fitting my ears well and having them always fall out I have less problem with that with the standard AirPods. These get almost daily use for workouts, walks, meetings, and even sometimes when I am just doing chores around the house listening to podcasts.</p><h3 id="sonos">Sonos</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.sonos.com/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Sonos | Wireless Speakers and Home Sound Systems</div><small><div class="kg-bookmark-description">Sonos is the wireless home sound system that fills as many rooms as you want with great-sounding music, movies, and TV. Our speakers are as easy to set up as they are powerful, so you can play whatever you&#x2019;re craving and savor every moment with the most brilliant, pulse-pounding sound money can buy.</div></small></div></a></figure><p>&#x24;159 - &#x24;899 | <a href="https://amzn.to/3F311Ru?ref=kylepauljohnson.com">Amazon</a></p><p>If I had been doing this list year after year Sonos would undoubtedly have been on it for about 4 consecutive years. These products offer fantastic sound with easy configuration and simple multi-room audio. Although Sonos is not particularly cheap it is modular and can be added onto slowly which is what I have done over the years. Here again, I use this system every day through our TV which is hooked to the soundbar, or at my workstation with the <a href="https://kylepauljohnson.com/sonos-dedicated-macbook-pro-speaker/">Ray connected to my laptop</a> or the Move that can be taken with you as a portable. All the products are high quality and have a nice simplistic design that will fit in anywhere.</p><h2 id="apps">Apps</h2><h3 id="paprika">Paprika</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="https://www.paprikaapp.com/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Paprika Recipe Manager for iOS, Mac, Android, and Windows</div><small><div class="kg-bookmark-description"></div></small></div></a></figure><p>&#x24;5 - &#x24;30</p><p>Back to the kitchen for one of our most used bits of software <a href="http://paprikaapp.com/?ref=kylepauljohnson.com">Paprika app</a>. The app in its base form is a recipe manager where you can collect, categorize and store recipes. What makes that app special is its ability to download recipes you find online with incredible accuracy and add them to your recipe book. Once you have collected recipes now you can create a meal plan, plotting each recipe on a calendar. Once you have the meal plan complete the app can then generate a list of ingredients you will need allowing you to selectively add or remove items and then add them to a grocery list. The list of course can then be checked off as you pick up the items in the store or add them to your online shopping cart.</p><p>We use this application for almost all our cooking, planning, and grocery shopping. The app is available for most major platforms: <a href="https://paprikaapp.com/windows/?ref=kylepauljohnson.com">Windows</a>, <a href="https://paprikaapp.com/buy/mac/?ref=kylepauljohnson.com">Mac</a>, <a href="https://paprikaapp.com/buy/ios/?ref=kylepauljohnson.com">iOS</a>, Apple Watch, and <a href="https://paprikaapp.com/buy/android/?ref=kylepauljohnson.com">Android</a>. Each version is sold separately, and it&apos;s not necessarily cheap in today&apos;s &#x24;1.99 software world, but it&apos;s a great application and well worth the spend if you use and follow recipes or are a meal planner.</p><h3 id="notion">Notion</h3><figure class="kg-card kg-bookmark-card"><a class="kg-bookmark-container" href="http://notion.so/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Notion &#x2013; One workspace. Every team.</div><small><div class="kg-bookmark-description">We&#x2019;re more than a doc. Or a table. Customize Notion to work the way you do.</div></small></div></a></figure><p>&#x24;0 - Free for personal use</p><p>Notion is a hard one to explain. It&apos;s a notepad, it&apos;s a database, it&apos;s an organizer. It&apos;s what you make of it which isn&apos;t necessarily a helpful description but it&apos;s true. </p><p>I use Notion to manage almost all aspects of my personal and professional life. Projects, todos, contacts, meetings, writing, notes, read later items, and tons of other things are all stored and managed in Notion. One of the powerful functions of Notion is the ability to relate content to other content. The best way to illustrate this might be to have a to-do list. Your to-do list might consist of many types of todos based on how you break things down. Todos might also be related to a project that you are working on. The relation allows you to have a todos database/list that can then be linked and displayed on the project page to show your projects todos while still keeping all the todo&apos;s in a single place.</p><p>Notion really can be as simple or complicated as you make it and it&apos;s difficult to explain until you start to play around and use it. If you are the type that likes to keep organized digitally I think this will be for you. Take some time and <a href="https://www.youtube.com/watch?v=oTahLEX3NXo&amp;ref=kylepauljohnson.com">watch some Youtube videos</a> on getting started. The value should become apparent pretty quickly.</p><p>And that&apos;s it. I hope you find some of these interesting or useful. I&apos;ll likely revisit this next year but until then, happy New Year!</p>]]></content:encoded></item><item><title><![CDATA[Sonos as Dedicated MacBook Pro Speaker]]></title><description><![CDATA[Exploring the possibilities, solutions and pitfalls to using Sonos as a dedicated MacBook Pro speaker, something Sonos has never supported]]></description><link>https://kylepauljohnson.com/sonos-dedicated-macbook-pro-speaker/</link><guid isPermaLink="false">6397ad0f7f8f8988caca829b</guid><category><![CDATA[Technology]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Thu, 15 Dec 2022 20:30:48 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1586855114963-c90b5ea55408?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fHNvbm9zfGVufDB8fHx8MTY3MDg4OTIwMA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<div class="kg-card kg-callout-card kg-callout-card-grey"><div class="kg-callout-emoji">&#x1f590;&#x1f3fb;</div><div class="kg-callout-text">Since writing this, new speakers with new capabilities have been released. I have written an <a href="https://kylepauljohnson.com/a-new-era-sonos-as-dedicated-computer-speaker/">updated version of this guide</a> I would suggest using.</div></div><img src="https://images.unsplash.com/photo-1586855114963-c90b5ea55408?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDR8fHNvbm9zfGVufDB8fHx8MTY3MDg4OTIwMA&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Sonos as Dedicated MacBook Pro Speaker"><p>It&apos;s no secret that I am a huge <a href="https://www.sonos.com/?ref=kylepauljohnson.com">Sonos</a> fan. I use this system every single day listening to podcasts or music while working, cooking, doing chores, or even using it as the primary speaker for our home theater watching TV.</p><p>One area I have always struggled a bit to bring Sonos into is my work. While I have used Sonos to play podcasts and music while I work, this is only via the Sonos app. Generally, this works perfectly for <a href="https://support.sonos.com/en-us/services?ref=kylepauljohnson.com">services that are integrated</a> into the Sonos app. However, it doesn&apos;t allow for my MacBook&apos;s audio to be ported to the speaker. This might include notifications sounds like an email being received, a video playing, or a virtual meeting&apos;s audio. This has always been an area Sonos product lineup has been lacking.</p><p>I wanted to get the MacBook directly wired into the Sonos ecosystem and with <a href="https://www.reddit.com/r/sonos/comments/v8tld1/sonos_ray_as_dedicated_macbook_pro_speaker_i_see/?utm_source=share&amp;utm_medium=web2x&amp;context=3">a little inspiration</a> from some folks on <a href="https://www.reddit.com/?ref=kylepauljohnson.com">Reddit</a> I started taking a deep look into the options. I had some requirements I wanted to meet both technical and non-technical for any speaker I might consider so let&apos;s start by taking a look at those.</p><!--kg-card-begin: markdown--><ul>
<li>Connectivity to M1 Macbook Pro
<ul>
<li>Able to output real-time system audio</li>
<li>Selectable as an audio output source</li>
<li>Cannot lag, create feedback, or loop audio during virtual meetings/calls</li>
</ul>
</li>
<li>Can be part grouped with other Sonos speakers</li>
<li>Fits below my monitor
<ul>
<li>Doesn&apos;t require a ton of desk space</li>
<li>Doesn&apos;t create a ton of desk clutter</li>
</ul>
</li>
</ul>
<!--kg-card-end: markdown--><p>With those requirements in mind, let&apos;s take a look at the connectivity options for the Sonos lineup as of December &#xa0;2022.</p><h2 id="airplay">AirPlay</h2><p>On the surface, <a href="https://www.apple.com/airplay/?ref=kylepauljohnson.com">AirPlay</a> seems like such a good solution and solves many of the problems. It&apos;s wireless which is great! No cables or adapters and MacOS has native support for AirPlay. It gives you multi-room audio and you can even join other AirPlay devices like TVs or speakers from other manufacturers in the group. This all sounds awesome and in many scenarios it is. However, there are some caveats.</p><p>The first one is constant disconnects. AirPlay cannot remain connected indefinitely to a Sonos speaker so you will find yourself frequently having to go into menus and set your output source back to AirPlay. This will get tiresome pretty quickly. I tried using some software to help with this problem. In particular, <a href="https://www.rogueamoeba.com/airfoil/?ref=kylepauljohnson.com">AirFoil</a> from <a href="https://www.rogueamoeba.com/?ref=kylepauljohnson.com">Rogue Amoeba Software, Inc</a>. AirFoil would reinitiate the connection automatically which was great, but it created new issues. The speaker&apos;s volume would jump wildly on start and startle me every time. AirFoil only allows one Mac application at a time to port its audio to it, so it doesn&apos;t solve what I am looking for either. Another nuisance with the app was the constant relaunching of whatever app you had selected to port through AirFoil. Let&apos;s say I was porting Apple Music and closed it but AirFoil remained running. AirFoil would almost immediately relaunch the app that I had just closed. Outside of those issues, the app works well, but it didn&apos;t solve my needs and I didn&apos;t like the issues it introduced.</p><p>This seems like a good place to bring up the lag associated with Sonos speakers. By default and quite intentionally Sonos has a built-in delay. This delay is used to do processing and smooth out the experience and issues that might arise when trying to play many speakers in sync. The stock delay is 75ms. This seems quick but it&apos;s perceptible and it&apos;s made even worse by using AirPlay. Clicking next on an already playing album results in several seconds waits before the next track audibly starts playing despite the screen already showing the new track. </p><p>So although AirPlay could solve this use case for many people, for me it wasn&apos;t great.</p><h2 id="bluetooth">Bluetooth</h2><p>Supported by the <a href="https://www.sonos.com/en-us/shop/move?ref=kylepauljohnson.com">Move</a> and the <a href="https://www.sonos.com/en-us/shop/roam?ref=kylepauljohnson.com">Roam</a> which are the two portable options from Sonos. I didn&apos;t consider Bluetooth seriously for a few reasons. First and foremost is the form factor of the speakers that support it. Neither of these fits below the monitor part of my requirements. Secondly, I have just never been a fan of audio over Bluetooth for a whole host of reasons unless I am using headphones. So although this might work for some, it wasn&apos;t for me. </p><h2 id="rca">RCA</h2><p>The <a href="https://www.sonos.com/en-us/shop/port?ref=kylepauljohnson.com">Sonos <a href="https://www.sonos.com/en-us/shop/port?ref=kylepauljohnson.com">Port</a></a> has <a href="https://en.wikipedia.org/wiki/RCA_connector?ref=kylepauljohnson.com">RCA jacks</a>, so getting an RCA to 3.5mm audio converter would be easy and that would make a connection to the Macbook&apos;s headphone port. This would work great and would be pretty simple. </p><p>The problem I have with this solution outside of its price (&#x24;450) is that it&apos;s yet another device that needs to sit on or around my desk that isn&apos;t the actual speaker. In addition to this device, you still need the speaker that will take the audio source from the Port. Two devices to buy, two devices to power, and two devices that need to take up space on the desk. That wasn&apos;t a tradeoff I wanted to make.</p><h2 id="audio-in">Audio In</h2><p>The Sonos <a href="https://www.sonos.com/en-us/shop/five?ref=kylepauljohnson.com">Five</a> is the only speaker in the lineup that provides a native 3.5mm audio in input. This on the surface solves many of the issues. It&apos;s a single speaker and has built-in connectivity and although I like the Five it&apos;s a pretty large speaker at a height of eight inches tall and fourteen inches wide. Ideally, the speaker is centered below my monitor, and depending on monitor height this speaker may not have enough clearance to sit there. It&apos;s also a pretty spendy option running about &#x24;550.</p><h2 id="hdmi-earc">HDMI eARC</h2><p>One of the more popular options for newer speakers is <a href="https://www.hdmi.org/spec21sub/enhancedaudioreturnchannel?ref=kylepauljohnson.com">HDMI eARC</a>. This is mostly geared at home theater setups and is included on the newer model soundbars like the <a href="https://www.sonos.com/en-us/shop/beam?ref=kylepauljohnson.com">Beam</a> and <a href="https://www.sonos.com/en-us/shop/arc?ref=kylepauljohnson.com">Arc</a>. This HDMI setup doesn&apos;t work for a computer-based setup.</p><h2 id="hdmi-to-hdmi-earc-adapter">HDMI to HDMI eARC Adapter</h2><p>The fine folks on Reddit pitched another option, which was <a href="https://duckduckgo.com/?q=HDFury+Arcana&amp;t=osx&amp;ref=kylepauljohnson.com">HDFury Arcana</a> (&#x24;300). I admit I am not familiar with this product at all and doesn&apos;t look to be readily available for sale in the United States as best I can tell. </p><p>The product claims to be able to take any HDMI source audio to any eARC sound system. Given the cost of this device compared to the dock I acquired I think I would prefer the dock and the added ports and other benefits it provides but this is a very interesting alternative potentially.</p><h2 id="optical">Optical</h2><p>Then we get to a good old <a href="https://en.wikipedia.org/wiki/Optical_fiber_connector?ref=kylepauljohnson.com">optical port</a>. Optical is supported by the <a href="https://www.sonos.com/en-us/shop/arc?ref=kylepauljohnson.com">Arc</a>, <a href="https://www.sonos.com/en-us/shop/playbar-b-stock?ref=kylepauljohnson.com">Playbar</a> (discontinued), <a href="https://www.sonos.com/en-us/shop/beam?ref=kylepauljohnson.com">Beam</a>, and <a href="https://www.sonos.com/en-us/shop/ray?ref=kylepauljohnson.com">Ray</a> all of which are sound bars. So, these are all meant to be center speakers and none of these are particularly tall so that&apos;s a good start.</p><p>Optical of course isn&apos;t a native output from the Mac but we can get support for it with some help. More on that in a bit. The Arc is massive, expensive (&#x24;900) and truly built as a high-end home theater speaker so we&apos;re going to remove that one. Similarly, PlayBar is large and also discontinued. So that leaves us with Beam and Ray. Both are similarly sized and some of Sonos&apos;s newer models. Compared to the Ray (&#x24;280), the Beam is a bit more expensive (&#x24;550) and slightly larger. </p><h3 id="macbook-optical-setup">MacBook Optical Setup</h3><p>At this point, I think we&apos;ve settled on the Ray for its price point and fit. It sports optical connectivity so next, we need to focus on getting it connected to the MacBook. For this, we need another device as mentioned above. The <a href="https://amzn.to/3uKHVe4?ref=kylepauljohnson.com">OWC Thunderbotlt 3 Dock</a>. </p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://kylepauljohnson.com/content/images/2022/12/IMG_5408.jpeg" class="kg-image" alt="Sonos as Dedicated MacBook Pro Speaker" loading="lazy" width="2000" height="1262" srcset="https://kylepauljohnson.com/content/images/size/w600/2022/12/IMG_5408.jpeg 600w, https://kylepauljohnson.com/content/images/size/w1000/2022/12/IMG_5408.jpeg 1000w, https://kylepauljohnson.com/content/images/size/w1600/2022/12/IMG_5408.jpeg 1600w, https://kylepauljohnson.com/content/images/size/w2400/2022/12/IMG_5408.jpeg 2400w" sizes="(min-width: 1200px) 1200px"><figcaption>Sonos Ray sitting below my LG 27&quot; monitor</figcaption></figure><p>This Thunderbolt 3 dock provides numerous ports and amongst them is optical output. This dock as with almost any Thunderbolt 3 dock isn&apos;t cheap. It adds another &#x24;330 to the project but given I had already been entertaining docks for the simplicity of connecting to the MacBook and the expansion of available ports for this and other uses. This also allowed me to get back to the single USB-C connection to my MacBook to support my monitor, webcam, and now Sonos output.</p><p>After connecting the optical cable from the dock to the Ray we need to jump on the Sonos mobile app and set the Sonos Ray&apos;s Music Source to &quot;TV&quot; (<em>See screenshot below)</em>. You may also want to adjust Ray&apos;s volume to something like 25%.</p><figure class="kg-card kg-gallery-card kg-width-wide kg-card-hascaption"><div class="kg-gallery-container"><div class="kg-gallery-row"><div class="kg-gallery-image"><img src="https://kylepauljohnson.com/content/images/2022/12/IMG_AC0B994D5703-1.jpeg" width="1179" height="2556" loading="lazy" alt="Sonos as Dedicated MacBook Pro Speaker" srcset="https://kylepauljohnson.com/content/images/size/w600/2022/12/IMG_AC0B994D5703-1.jpeg 600w, https://kylepauljohnson.com/content/images/size/w1000/2022/12/IMG_AC0B994D5703-1.jpeg 1000w, https://kylepauljohnson.com/content/images/2022/12/IMG_AC0B994D5703-1.jpeg 1179w" sizes="(min-width: 720px) 720px"></div><div class="kg-gallery-image"><img src="https://kylepauljohnson.com/content/images/2022/12/Screenshot-2022-12-14-at-12.13.21-PM.png" width="1246" height="1084" loading="lazy" alt="Sonos as Dedicated MacBook Pro Speaker" srcset="https://kylepauljohnson.com/content/images/size/w600/2022/12/Screenshot-2022-12-14-at-12.13.21-PM.png 600w, https://kylepauljohnson.com/content/images/size/w1000/2022/12/Screenshot-2022-12-14-at-12.13.21-PM.png 1000w, https://kylepauljohnson.com/content/images/2022/12/Screenshot-2022-12-14-at-12.13.21-PM.png 1246w" sizes="(min-width: 720px) 720px"></div><div class="kg-gallery-image"><img src="https://kylepauljohnson.com/content/images/2022/12/IMG_7AA0B77837CF-1-1.jpeg" width="1179" height="2556" loading="lazy" alt="Sonos as Dedicated MacBook Pro Speaker" srcset="https://kylepauljohnson.com/content/images/size/w600/2022/12/IMG_7AA0B77837CF-1-1.jpeg 600w, https://kylepauljohnson.com/content/images/size/w1000/2022/12/IMG_7AA0B77837CF-1-1.jpeg 1000w, https://kylepauljohnson.com/content/images/2022/12/IMG_7AA0B77837CF-1-1.jpeg 1179w" sizes="(min-width: 720px) 720px"></div></div></div><figcaption>Settings/config screenshots for Mac and Sonos</figcaption></figure><p>Next, set Mac&apos;s output to the OWC Thunderbolt dock. You should now see this as a selectable sound output source (<em>See screenshot above).</em> </p><p>At this point, all audio playing on the Mac should be flowing to the Sonos Ray. You may need to adjust the volume of the Ray if you don&apos;t hear anything at first. That completes the setup, but there are a few additional things you might run into depending on your use case, so let&apos;s look at those.</p><h3 id="audio-sync">Audio Sync</h3><p>If you use this setup during meetings you will notice that the audio isn&apos;t synced up to the video. In the <a href="https://www.reddit.com/r/sonos/comments/v8tld1/sonos_ray_as_dedicated_macbook_pro_speaker_i_see/?utm_source=share&amp;utm_medium=web2x&amp;context=3">Reddit post</a> I linked to earlier, the original poster mentioned changing the Audio Delay (Lip Sync) setting to +5 for the speaker. In my case, it was +2 (<em>See screenshot above)</em>. This setting can be changed by navigating to Settings &gt; System &gt; {Speaker Name} &gt; TV Dialog Sync in the Sonos mobile app.</p><p>You&apos;ll just need to join a video call and spend a little bit of time adjusting one by one and see what feels natural.</p><h3 id="volume-control">Volume Control</h3><p>Volume control didn&apos;t work quite as I expected. I would have expected changing the system volume would adjust the volume of the Sonos just as it would the output from the MacBook&apos;s speakers. This is not the case. </p><p>Optical cables provide a fixed 0dB output and it&apos;s expected that the connected device would then amplify and control the audio. This wasn&apos;t too big of a deal for me as the Ray has volume controls on top of it and it&apos;s at arm&apos;s length of me on my desk. </p><p>Alternatively, there is a software I have had for years called <a href="https://mbc-for-sonos.app/?ref=kylepauljohnson.com">Menu Bar Controller for Sonos</a> that provides global keyboard shortcuts to adjust the volume of a selected speaker or group of speakers from your Sonos system. The software is only &#x24;3.00 so it&apos;s a no-brainer add-on for keyboard-based volume control. </p><h3 id="autoplay">Autoplay</h3><p>Lastly, there are two more quality-of-life settings to enable. The first is &quot;TV Autoplay&quot; (<em>See screenshot above)</em>. This will switch the speaker&apos;s source to the TV (which is effectively the Mac) automatically whenever sound is detected. So if you had been playing music the day before from some other service or source and left it in that state this will bring it back to the computer setup upon the first received sound.</p><p>The other setting is optional depending on your setup. &quot;Ungroup on Autoplay&quot;. This will remove the speaker from any other speakers it was grouped and playing with previously. For me, this is a great one as I often group the whole house and listen to music while doing chores. So this setting prevents accidentally playing something house wide in the morning before I have had my coffee.</p><p>Both of these settings can be found in the Sonos mobile app. Settings &gt; System &gt; {Speaker Name}.</p><h2 id="optical-adapters">Optical Adapters</h2><p>Several folks on Reddit asked why I didn&apos;t use optical adapters. I hadn&apos;t considered any adapters of this type mainly because I wasn&apos;t aware they were available. It looks like possibly this could have saved me a lot of money by not needing the dock. That said, now that I have the dock I am really happy with its added convenience but your mileage may vary.</p><p>One recommendation was a <a href="https://amzn.to/3FXdUxX?ref=kylepauljohnson.com">3.5mm to toslink adapter</a> (&#x24;9) which is a headphone jack to optical adapter. Another user shared that <a href="https://appleinsider.com/articles/16/11/02/new-macbook-pro-drops-optical-audio-out-through-headphone-jack?ref=kylepauljohnson.com">support for this adpater was ended</a> by Apple in 2016.</p><p>Another interesting option is the <a href="https://amzn.to/3W42fmR?ref=kylepauljohnson.com">USB-C to toslink adapter</a> (&#x24;20). I am tempted to pick up one of these just to see how well it works. If I do that I will update again with the results.</p><h2 id="wrap-up">Wrap Up</h2><p>So the completed setup we have the Sonos Ray at &#x24;280. We added the OWC Thunderbolt 3 Dock at &#x24;330 and an optional bit of software for keyboard volume control &quot;Menu Bar Controller for Sonos&quot; at &#x24;3 for a project total of &#x24;613. </p><p>This setup seems to be working exactly as I would expect and I am enjoying the increased audio quality and being able to use desktop applications to control the audio playing from Sonos while still getting all other sounds from the Mac.</p><p>It&apos;s not a cheap solution but for something I use every single day, I think it was well worth it.</p><hr><p><strong>Update</strong>: <em>Dec 16th, 2022 - </em>Added Bluetooth, optical, and HDMI adapters based on <a href="https://www.reddit.com/r/sonos/comments/zmwrgo/sonos_as_dedicated_macbook_pro_speaker/?ref=kylepauljohnson.com">feedback from Reddit</a>.</p><p><strong>Update</strong>: Jan<em> 23rd, 2023 -</em> Spelling and grammar.</p><p><strong>Update</strong>: May<em> 15th, 2023 -</em> Added disclaimer to <a href="https://kylepauljohnson.com/a-new-era-sonos-as-dedicated-computer-speaker/">new article</a> at the top</p><p></p>]]></content:encoded></item><item><title><![CDATA[Wild Geese]]></title><description><![CDATA[If you enjoy stumbling across new and interesting music as much as I do. If you enjoy the history of music. If you enjoy poetry. If you need a place to "spread some love, joy, & acceptance".]]></description><link>https://kylepauljohnson.com/wild-geese/</link><guid isPermaLink="false">6386ea4d3a0319bb129bdbec</guid><category><![CDATA[Personal]]></category><dc:creator><![CDATA[Kyle Johnson]]></dc:creator><pubDate>Tue, 06 Dec 2022 02:25:28 GMT</pubDate><media:content url="https://images.unsplash.com/flagged/photo-1565669288742-21ad6e7379f4?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGdlZXNlfGVufDB8fHx8MTY2OTc4NjMwNw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/flagged/photo-1565669288742-21ad6e7379f4?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=MnwxMTc3M3wwfDF8c2VhcmNofDJ8fGdlZXNlfGVufDB8fHx8MTY2OTc4NjMwNw&amp;ixlib=rb-4.0.3&amp;q=80&amp;w=2000" alt="Wild Geese"><p>Over the past months Justin Vernon, probably my all-time favorite musician in bands such as <a href="https://boniver.org/tour/?ref=kylepauljohnson.com">Bon Iver</a>, <a href="https://bigredmachine.bandcamp.com/?ref=kylepauljohnson.com">Big Red Machine</a>, <a href="https://volcanochoir.com/?ref=kylepauljohnson.com">Volcano Choir</a>, and The Shouting Matches; has been releasing a set of compilations or recordings. These episodes which he has titled the &quot;<a href="https://www.songchest.org/?ref=kylepauljohnson.com">Song Chest Radio Hour</a>&quot; air on <a href="https://radiomilwaukee.org/?ref=kylepauljohnson.com">88Nine Radio Milwaukee</a> a terrestrial radio station out of Wisconsin which is where Justin makes his home. The episodes are played on the radio the first Sunday of each month at 5 PM Central time and archived on a service called <a href="https://www.mixcloud.com/songchestradiohour/?ref=kylepauljohnson.com">MixCloud</a> soon after where you can stream all the previous episodes and get a full track listing from each.</p><p>Each of the four episodes (at the time of this writing) features Justin as he walks you through all types and genres of music in his deep and calming voice. Each piece of music is meticulously placed with Justin adding tidbits of history, background, or personal stories to complement the tracks. Often he asks for and allows you to stand in personal reflection. </p><p>Some of the music featured is well-known or mainstream but most are not. Even when a track is familiar he&apos;ll often shine a spotlight on it in some unique and interesting way. A great example is in <a href="https://www.songchest.org/episodes/two?ref=kylepauljohnson.com">episode 2</a> he plays &#x201c;Wouldn&#x2019;t It Be Nice&#x201d; by the <a href="https://thebeachboys.com/?ref=kylepauljohnson.com">Beach Boys</a>, a track I think almost everyone would recognize but to show just how great of a harmonist they were he plays it with the vocals isolated. It&apos;s quite something to hear and without these episodes, chances are you would go your entire life without hearing it. There are already so many tracks I have gone to seek out and add to my collection as a result of this collection.</p><p>The final five to ten minutes of each episode tend to lean on some form of writing or poetry read by Justin and set over music. Each of these has been wonderfully thoughtful, inspiring pieces of writing, read beautifully and once again leaving you just copious amounts of room to ingest, sit and reflect. This is easily my favorite part of each episode. So I wanted to share one of the most recent. A reading of &quot;Wild Geese&quot; by <a href="https://maryoliver.com/?ref=kylepauljohnson.com">Mary Oliver</a>. Read by Justin over the track &quot;In Reverse&#x201d; by <a href="https://www.thewarondrugs.net/?ref=kylepauljohnson.com">War On Drugs</a>. </p><p>Here it is.</p><div class="kg-card kg-audio-card"><audio src="https://kylepauljohnson.com/content/media/2022/12/wild-geese.mp3" preload="metadata" controls></audio></div><blockquote>You do not have to be good.<br>You do not have to walk on your knees<br>for a hundred miles through the desert, repenting.<br>You only have to let the soft animal of your body<br>love what it loves.<br>Tell me about despair, yours, and I will tell you mine.<br>Meanwhile the world goes on.<br>Meanwhile the sun and the clear pebbles of the rain<br>are moving across the landscapes,<br>over the prairies and the deep trees,<br>the mountains and the rivers.<br>Meanwhile the wild geese, high in the clean blue air,<br>are heading home again.<br>Whoever you are, no matter how lonely,<br>the world offers itself to your imagination,<br>calls to you like the wild geese, harsh and exciting&#x2014;<br>over and over announcing your place<br>in the family of things.</blockquote><p>~ <a href="https://maryoliver.com/?ref=kylepauljohnson.com">Mary Oliver</a></p><hr><p>If you enjoy stumbling across new and interesting music as much as I do. If you enjoy the history of music. If you enjoy poetry. If you just need a place where you can &quot;spread some love, joy, &amp; acceptance&quot;, one of the stated goals of the show. I can&apos;t recommend enough listening in on the &#xa0;Song Chest Radio Hour. You&apos;ll likely learn something new and undoubtedly find some new gems along the way.</p><figure class="kg-card kg-bookmark-card kg-card-hascaption"><a class="kg-bookmark-container" href="http://www.songchest.org/?ref=kylepauljohnson.com"><div class="kg-bookmark-content"><div class="kg-bookmark-title">Song Chest Radio Hour</div><small><div class="kg-bookmark-description"></div></small></div></a><figcaption>The Song Chest Radio Hour Web Site</figcaption></figure><p>&#x1f3b5; Happy listening!</p>]]></content:encoded></item></channel></rss>