Shellsharks Blogroll - BlogFlock2026-01-18T12:11:57.612ZBlogFlockWerd I/O, cool-as-heck, destructured, Evan Boehs, Adepts of 0xCC, Sophie Koonin, Aaron Parecki, <span>Songs</span> on the Security of Networks, cmdr-nova@internet:~$, Westenberg, fLaMEd, Hey, it's Jason!, gynvael.coldwind//vx.log (pl), James' Coffee Blog, Terence Eden’s Blog, Molly White, Robb Knight, joelchrono, Trail of Bits Blog, Posts feed, Kev Quirk, Johnny.DecimalUse the Bloody Shift Key! - Kev Quirkhttps://kevquirk.com/blog/use-the-bloody-shift-key/2026-01-18T11:36:00.000Z
<p style="font-size: 1.2em;">I'm seeing a growing number of personal blogs that don't use upper case letters and for some reason it really irks me.</p>
<p>One of my favourite ways to discover new and interesting personal blogs is on the <a href="https://bearblog.dev/discover/">Bear Blog discovery feed</a> but there’s a trend I’ve noticed recently where a number of sites on Bear simply don’t use uppercase letters. Like, at all.</p>
<p>Now, I’m no grammar gremlin - goodness knows that my own grammar is far from perfect, and I have absolutely no problem if there’s an errant comma here and there in one’s writing. I could even forgive you if you were one of those lunatics that does <code class="language-plaintext highlighter-rouge">CAPS ON</code> <em>types uppercase letter</em> <code class="language-plaintext highlighter-rouge">CAPS OFF</code>. At least you’re <em>using</em> uppercase. But to remove <em>all</em> uppercase letters with reckless abandon? Nope. Absolutely not.</p>
<p>The weird thing is, I don’t see this <em>anywhere</em> else. It’s literally just on the Bear Blog Discovery feed. I have a lifetime account on Bear Blog, so I know that <a href="https://herman.bearblog.dev/">Herman</a> doesn’t require his members to hand in their <code class="language-plaintext highlighter-rouge">shift</code> key when they sign up. So what’s it all about? Does anyone know?</p>
<p>The irony is that pretty much all of the posts I see do contain other punctuation. It’s just the humble uppercase letter that has had the chop.</p>
<p>I’m not going to link to specific blogs/posts here, but if you go check out the <a href="https://bearblog.dev/discover/">Bear Blog discovery feed</a> you will likely see a handful of posts with no uppercase letters; a pattern which often infects the entire post, unfortunately. As I write this, 6 of the 20 posts on the front page of <em>Discover</em> are lowercase.</p>
<p>Personally, I can’t abide it. When I come across one of these posts, even if the title sounds genuinely interesting, I just can’t bring myself to read the content. Instead, I end up focusing on the obvious lack of uppercase letters. I know I’m missing out on interesting posts because of this, and that makes me sad.</p>
<p>Please, for the love of all that’s UPPERCASE and holy, stop doing it. ❤</p>
<p><code class="language-plaintext highlighter-rouge"></rant></code></p>
<div class="email-hidden">
<hr>
<p>Thanks for reading this post via RSS. RSS is great, and you're great for using it. ❤️</p>
<p>
You can <a href="mailto:72ja@qrk.one?subject=Use the Bloody Shift Key!">reply to this post by email</a>, or <a href="https://kevquirk.com/blog/use-the-bloody-shift-key/#comments">leave a comment</a>.
</p>
</div>
The Discourse is a Distributed Denial-of-Service Attack - Westenberg696c1a55141f770001461a9f2026-01-17T23:28:29.000Z<img src="https://images.unsplash.com/photo-1602475063211-3d98d60e3b1f?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDF8fG5vaXNlfGVufDB8fHx8MTc2ODY5MjMzNHww&ixlib=rb-4.1.0&q=80&w=2000" alt="The Discourse is a Distributed Denial-of-Service Attack"><p>In September 2016, the security journalist Brian Krebs had his website knocked offline by a botnet called Mirai. Hundreds of thousands of compromised devices, mostly cheap webcams and DVRs manufactured with default passwords that nobody ever changed, all simultaneously requesting his homepage. No single request was malicious. Each packet was perfectly legitimate traffic. But the sheer volume of simultaneous demands overwhelmed his servers until they simply gave up. It collapsed under the weight of too many people wanting something from it at once.</p><p>We are all Brian Krebs now, and the botnet is the discourse itself.</p><p>A Distributed Denial-of-Service attack works by exhausting resources. It doesn't need to be clever. It just needs to be overwhelming. The target's defenses are simply overrun. The server can't distinguish between legitimate requests and attack traffic because, in a sense, all the traffic is legitimate. The attack succeeds when the system has spent so much energy processing requests that it can no longer serve its actual function.</p><p>You're trying to think carefully about a genuinely difficult problem. Maybe you want to understand the actual tradeoffs in housing policy, or AI, or figure out what you believe about consciousness // immigration // Fallout Season 2 // Iran. This takes time. It takes holding multiple ideas in your head simultaneously while following chains of reasoning and sitting with uncertainty long enough to let clarity...well, for lack of a better word, emerge.</p><p>William James, writing in 1890, called this "the effort of attention." He noted that sustaining it was one of the hardest things a mind could do. The effort of attention could only be maintained for a few seconds at a time before the mind wandered off to do something else. Sustained concentration was really a series of these efforts, renewed again and again, each time pulling the mind back to the object of focus.</p><p>Now imagine trying to do this while someone shouts a new outrage at you every four minutes.</p><h1 id="the-architecture-of-exhaustion">The Architecture of Exhaustion</h1><p>The discourse operates on exactly this principle. Most of the topics that dominate our collective attention on any given day are genuinely important to... someone. And many of them are important to almost everyone. The problem is structural. The total volume of things-you-should-have-an-opinion-about has exceeded our cognitive bandwidth so thoroughly that having careful opinions about anything has become damned-near impossible. Your attention is a finite resource being strip-mined by an infinite army of takes.</p><p>"The discourse is bad" is itself a discourse-position, and I'm aware of the irony of adding another take to the pile of steaming shit. But my argument isn't that people should stop having opinions, or that controversies aren't worth discussing, or that we should all log off and touch grass (none of us will). My argument is that the current structure of public conversation has the same effect on human cognition that a botnet has on a web server. It's simply exhausting you. And an exhausted mind defaults to heuristics and tribal allegiances, aka whatever position allows it to conserve the most cognitive energy.</p><p>T.S. Eliot wrote about being "distracted from distraction by distraction," and he was describing the London of 1935. I wonder what he'd make of our current situation. The distractions have learned to replicate themselves and fight each other for dominance of your prefrontal cortex...</p><p>The old media ecosystem had gatekeepers, and those gatekeepers were often stupid or corrupt, but at least the stupidity and corruption were bounded. There were only so many column inches in the New York Times, only so many minutes of evening news. A finite supply of attention-worthy items existed, and someone had to decide which ones made the cut. That selection process was biased and imperfect, but it performed an important function: it told you, implicitly, that you didn't have to have an opinion about everything. Most things that happened in the world weren't important enough to make it into your awareness at all. Local political disputes in New South Wales? Nobody in Washington DC gave a shit, and vice-versa. This was as close to optimal as we've ever got.</p><p>But the gatekeeping function has now been distributed across millions of individual users, each of whom can boost any piece of content into viral prominence if it happens to resonate with the right combination of tribal anxieties and engagement incentives. The feed is infinite, and every slot in the feed is optimized to make you feel something strongly enough that you'll engage with it. Outrage works, and so does fear. Disgust works, and righteousness really fucking works. Nuance and careful reasoning don't work at all, because by the time you've finished a thought that begins with "Well, it's complicated..." someone else has already posted a much simpler take that makes people feel validated, and the algorithm has moved on.</p><h1 id="what-cognitive-ddos-looks-like">What Cognitive DDoS Looks Like</h1><p>In a technical DDoS attack, the goal isn't to steal data or corrupt systems. The goal is to exhaust resources. To prevent the target from doing anything useful by forcing it to spend all its energy processing garbage. The attack succeeds when the server is so busy responding to fake requests that it can't handle real ones. Crucially, the attack doesn't need to compromise the server's judgment or trick it into making bad decisions. It just needs to make sure the server never has time to make good ones.</p><p>What would it look like if this were happening to the collective human capacity for sustained thought?</p><p>It might look like a society that can generate infinite commentary but rarely produces wisdom. It might look like millions of people who can instantly articulate a position on any topic but who struggle to change their minds when confronted with new evidence. It might look like a discourse that has strong opinions about everything and deep understanding of almost nothing. It might look like a world where the most engaged and informed citizens are, paradoxically, the least capable of careful reasoning, because they've spent so much cognitive energy responding to controversies that they have none left for contemplation.</p><p>I think that's more or less where we've wound up.</p><h1 id="from-passive-to-participatory">From Passive to Participatory</h1><p>Neil Postman argued in 1985 that television was creating a culture where everything became entertainment, including serious matters that deserved more somber treatment. His book <em>Amusing Ourselves to Death</em> made the case that we'd been so worried about Orwell's dystopia, the boot stamping on a human face forever, that we'd missed Huxley's sneaking up on us from the other direction. We would be destroyed by what we loved, not by what we feared. The problem wasn't that Big Brother was watching us; it was that we couldn't stop watching Big Brother.</p><p>But television, at least, was passive. You sat there and it washed over you. You could zone out, let your mind wander, process what you'd seen during the commercial breaks. The discourse is participatory. It demands engagement. Every controversy comes with an implied social pressure to have a take, to signal your tribal allegiance, to demonstrate that you understand what's happening and have correctly identified the good guys and the bad guys. Silence is interpreted as complicity, or at least as suspicious. "I haven't thought about this enough to have an opinion" is not an acceptable response when everyone else is already fighting.</p><p>And because the controversies are endless, because there's always another one queueing up behind the current while you're still processing the last three, the effect is a constant low-grade cognitive emergency. Your brain never gets to switch out of reactive mode and into reflective mode. You're always responding to the latest thing, putting out fires, engaging with the controversy of the day. Daniel Kahneman's distinction between System 1 (fast, automatic, intuitive) and System 2 (slow, deliberate, analytical) thinking is useful here: the discourse is structured in such a way that System 2 never gets its turn. By the time you've marshaled the cognitive resources to think carefully about something, the conversation has moved on and you're already three outrages behind.</p><p>In <em>Middlemarch</em> George Eliot writes about how we'd go mad if we could hear the "roar which lies on the other side of silence," the constant suffering of all the people and creatures in the world happening simultaneously. She meant it as an argument for why we shouldn't feel guilty about our bounded sympathies, and why it was okay that we couldn't care about everything at once. But we've built a machine that lets us hear that roar, or at least a curated selection of it, delivered directly to our phones at all hours. And while we haven't gone mad exactly, we've developed something like a collective attention disorder.</p><p>Someone usually objects at this point that I'm showing my privilege.</p><p>The things people argue about on Twitter aren't frivolous! Violence is real! Climate change is happening! Democratic institutions are under threat! ICE is out of control! The President // insert popular figure here is a Nazi! Sports are under attack! Immigration is a crisis! The economy is going to shit! And how dare I suggest that people should care less about these things?</p><p>The knee-jerk objections misunderstand my point completely. I'm not saying the topics are unimportant. I'm saying the structure of the discourse prevents us from thinking well about even the most important topics. If anything, the importance of the issues makes the DDoS attack worse, because people have strong emotional investment in their positions, which generates more engagement, which generates more outrage cycles, which leaves less time for anyone to actually sit down and think through what we should do about any of it.</p><h1 id="skirmishes-all-the-way-down">Skirmishes All the Way Down</h1><p>What's the right carbon price? How should the burden of decarbonization be distributed between developed and developing countries? What role should nuclear power play? How do we balance climate concerns against other development goals?</p><p>These are hard questions.</p><p>What does the discourse give us instead? Endless fights about whether climate change is real (it is), whether specific weather events prove or disprove it (they mostly don't, it's complicated), whether teenagers skipping school to protest is admirable or annoying, whether it's okay to fly on airplanes if you care about climate, whether this or that celebrity is a hypocrite for having a large house, and so on, and so on, forever. The discourse takes the most important problem of our time and converts it into an infinite series of tribal skirmishes, each of which generates heat and engagement while bringing us no closer to answering any of the actual hard questions.</p><p>The discourse doesn't help us think about things. It helps us perform thinking about things, which is a different activity entirely.</p><p>There is a critical distinction between having a position and understanding a subject. Having a position involves knowing which side you're on and being able to articulate a view. Understanding a subject involves knowing why the question is hard, what the best arguments on various sides are, where the genuine uncertainties lie, and what evidence would change your mind. You can have a position on something without understanding it, and you can understand something without having a confident position on it.</p><p>The discourse is great at generating positions. It's terrible at generating understanding. In fact, it actively undermines understanding. Understanding involves sitting with difficulty and ambiguity, while the discourse rewards confidence and clarity. Understanding involves admitting what you don't know, while the discourse punishes uncertainty as weakness. Understanding involves engaging with the best version of opposing views, while the discourse treats opposition as either stupidity or malice.</p><p>There's a reason Socrates went around asking questions rather than giving speeches. The Socratic method works by forcing people to confront the gaps in their own reasoning, to follow their beliefs to their logical conclusions and notice when those conclusions are absurd or contradictory. It's slow and frustrating, usually ending with everyone realizing they understand less than they thought they did.</p><p>Can you imagine a Socratic dialogue with 50,000 likes?</p><h1 id="the-confidence-doom-spiral">The Confidence Doom Spiral</h1><p>The philosopher Bertrand Russell remarked that the fundamental cause of trouble in the world is that the stupid are cocksure while the intelligent are full of doubt. I think the discourse has broken this relationship. It's not that intelligent people have become stupid. It's that the incentive structure of public conversation rewards cocksureness regardless of actual intelligence. Smart people who admit uncertainty get steamrolled by confident idiots, so they learn to sound more confident than they feel, which degrades the quality of public discourse, which makes everyone stupider, which makes cocksureness even more adaptive. The result is a doom spiral.</p><p>There's a cybersecurity concept called defense in depth: the idea that you should have multiple layers of security, so that if one fails, others will catch the problem. Good epistemic institutions worked the same way. You had journalists who checked facts, editors who pushed back on weak arguments, academic peer review that caught errors, and a reading public that had time to actually read long articles and form considered opinions. Each layer could fail, and often did, but the failures were usually independent of each other, so the system as a whole was reasonably robust.</p><p>The discourse has collapsed all these layers into a single surface, a real-time arena where everyone reacts to everything simultaneously. There's no fact-checking layer between the event and the take, and there's no editorial layer between the take and the audience. Everything happens at once, in public, under the pressure of engagement metrics that reward speed and emotional intensity. The defense in depth is gone. We've replaced a layered epistemic system with a single point of failure, and then we've aimed a botnet at it.</p><h1 id="an-ecology-of-virality">An Ecology of Virality</h1><p>Yes, social media is a major factor in all of this, and yes, the incentive structures of platforms are part of the problem. But I want to resist the framing that makes this purely a technology story. The discourse predates social media. The dynamics I'm describing were visible in the blogosphere of the mid-2000s, in the talk radio ecosystem of the 1990s, in the cable news wars that started with CNN and accelerated with Fox. Social media has amplified and accelerated these dynamics, but it didn't create them. The underlying cause is something deeper and it's about how humans interact when controversy becomes abundant and attention becomes scarce.</p><p>When two species compete for the same resource, eventually one drives the other to extinction. The evolutionary pressure favors whichever species is better at acquiring the contested resource. When many ideas compete for limited attention, the ideas that are best at capturing attention win, and those that aren't good at it die out. This creates selection pressure toward attention-grabbing content, which tends to be extreme, emotional, simple, tribal, and visceral. The ideas that survive aren't the most true or useful. They're the most viral.</p><p>And virality, it turns out, has almost nothing to do with truth or usefulness.</p><p>False stories are 70% more likely to be retweeted than true ones, and they reach their first 1,500 retweets six times faster. When researchers controlled for the influence of bots they found that humans, not automated accounts, were primarily responsible for spreading false information.</p><p>We do this shit to ourselves. We are our own botnet.</p><p>Why would humans preferentially spread false information?</p><p>False information is more novel and surprising, so it generates more engagement. False information is often designed (or evolves through memetic selection) to be emotionally compelling in ways that true information isn't. The truth is boring, complicated, inconvenient for everyone's narrative, and resistant to simplification. Lies can be exciting and simple, perfectly calibrated to make your side look good and the other side look bad.</p><p>False information spreads faster because it's easier to process. It fits neatly into existing mental categories. It confirms what we already believe. It doesn't force us to update our models of the world or sit with uncomfortable ambiguity. True information violates our expectations and takes cognitive work to integrate. When attention is scarce and cognitive bandwidth is being DDoS'd constantly, we don't have the resources to do that work. So we default to whatever is easiest, which is usually wrong.</p><h1 id="the-impossible-position-of-expertise">The Impossible Position of Expertise</h1><p>One of the main functions of experts in a healthy epistemic ecosystem is to compress information. A good scientist knows a lot of facts about X, but more importantly they know which facts matter, how different pieces of evidence fit together, and where the genuine debates are versus where there's solid consensus. When you ask an expert a question, you're essentially borrowing their cognitive labor. They've already done the hard work of understanding the subject, so you don't have to.</p><p>But the discourse hates expertise. Or rather, it puts experts in an impossible position. To engage with the discourse, an expert has to compress their nuanced understanding into takes that can compete with the confident nonsense being spouted by random accounts with anime avatars. This compression loses most of what makes expertise valuable in the first place. The expert ends up sounding just as confident and simplistic as everyone else, because that's the only way to be heard. Meanwhile, the expert's nuance and uncertainty get interpreted as weakness or evasion. Why won't they just give us a straight answer? Probably because they're captured by some special interest, or because they're part of the establishment cover-up, or because they're just not very good at their job.</p><p>This creates a vicious cycle. Experts withdraw from public discourse because it's frustrating and unrewarding, which leaves the field to confident non-experts and degrades the quality of public understanding, which makes it even harder for experts to engage productively when they do try to participate. The result is an environment that's actively hostile to expertise while claiming to value science and evidence.</p><h1 id="consciousness-as-disease">Consciousness as Disease</h1><p>In Dostoevsky's <em>Notes from Underground</em> the narrator talks about how consciousness is a disease. The more aware you are of everything, the more paralyzed you become. You can see all sides of every question and understand all the complications, and as a result, you can't actually do anything. Meanwhile, the stupid people of action, the "men of iron," barrel forward confidently, untroubled by doubt, and end up running the world.</p><p>The people who are most capable of nuanced understanding are the same people who are most likely to be paralyzed by it. They see all the complications and worry about unintended consequences. And while they're doing all that, the confident idiots have already won the argument by sheer force of certainty. The discourse selects for confidence, not competence.</p><p>Repeated behaviors become habits and habits become character. If you spend years in an environment that rewards quick reactions, that punishes nuance and rewards certainty, that treats every disagreement as a battle and every interlocutor as an enemy, you will become the sort of person who thinks quickly rather than carefully, who speaks confidently rather than honestly. The discourse doesn't just waste your time while you're in it. It permanently rewires you.</p><p>I've watched this happen to people I know. Intelligent, curious, open-minded people who got deeply involved in online discourse and gradually, imperceptibly, became incapable of the exploratory thinking they used to do. Their opinions calcified. Their curiosity curdled into suspicion. They stopped asking questions and started scoring points. They'd defend positions they'd never actually thought through because those positions had become part of their identity, markers of tribal belonging that couldn't be questioned without threatening their sense of self.</p><p>The discourse doesn't merely DDoS your attention. Over time, it DDoS's your character.</p><h1 id="the-halting-problem-of-public-conversation">The Halting Problem of Public Conversation</h1><p>Let me try another analogy. In computer science, there's a concept called the halting problem: the impossibility of writing a program that can determine, for any arbitrary program and input, whether that program will eventually halt or run forever. Alan Turing proved in 1936 that no such algorithm can exist. The halting problem is undecidable.</p><p>The discourse has something like a collective halting problem. Every controversy generates commentary, and that commentary generates meta-commentary. Where does it stop? When is a topic resolved? When can we move on? There's no algorithm for this. The discourse doesn't halt. It just continues until something newer and shinier captures our attention, at which point the old controversy doesn't get resolved so much as abandoned. The underlying issues remain, waiting to resurface the next time something triggers them.</p><p>This is why the same arguments keep happening over and over. We never actually resolve anything. We just get exhausted and move on to the next thing, and when the topic comes back around, we're exactly where we started, having learned nothing in the interim. The discourse isn't a process that converges on truth over time. It's a holding pattern. We circle endlessly without ever landing.</p><p>The discourse is a coordination failure. Even if I personally stop engaging with the outrage cycle, the cycle continues without me, and I become less able to participate in public life as a result. The social pressure to have positions on things doesn't disappear just because I've decided I'd rather understand things instead. My friends still want to know what I think about the latest controversy. My colleagues, the folks in the writers chats and Discord servers etc still expect me to be current on what's happening. Opting out of the discourse is possible, but it has social costs, and it doesn't do anything to change the dynamics for everyone else.</p><p>The incentive structures are too strong, the coordination problems too hard, the technological affordances too stacked in favor of engagement over understanding. We're stuck with a system that turns every important question into an attention competition and every attention competition into a tribal battle and every tribal battle into a cognitive emergency. The servers are overloaded. The requests keep coming.</p><h1 id="the-loss-of-aura">The Loss of Aura</h1><p>Orwell feared those who would ban books. Huxley feared that there would be no reason to ban a book, for there would be no one who wanted to read one. But the discourse suggests a third possibility: a world with infinite books, infinite takes, infinite content of every kind, delivered at such volume and velocity that reading any of it becomes impossible.</p><p>Walter Benjamin wrote in 1936 about how mechanical reproduction was changing our relationship to art. A painting in a museum had an "aura," a sense of presence and authenticity that came from being in the presence of the original. Mass reproduction destroyed that aura. Benjamin thought this was mostly a good thing, democratizing access to culture. But he worried about what would be lost when nothing felt special anymore, when everything was just a copy of a copy with no original left to anchor it.</p><p>Every thought, every argument, every position now exists in thousands of variations, all slightly different, all competing for attention, all copying and remixing each other. There's no original anymore, no authoritative version, no canonical text. Just an endless proliferation of takes, each one slightly tweaked for maximum engagement. The aura is gone. Every idea feels like a retweet of something you've already seen, because it probably is.</p><p>The world doesn't pause while we figure out how to have functional public discourse again. Things happen, and they happen in the direction that the confident and powerful push them, because the rest of us are too busy processing the latest outrage to mount a coherent response.</p><h1 id="what-remains">What Remains</h1><p>Every attempt to discuss the problem becomes another piece of content, another take, another entry in the engagement competition that makes the problem worse. I'm aware that this essay is doing exactly that. I'm aware that you, reading this, are spending cognitive resources on yet another analysis of the discourse when you could be spending those resources on something more important. I'm sorry. I'm not sure what else to do.</p><p>What I do know is that the feeling of being overwhelmed, of never being able to keep up, of having strong opinions about everything and confident understanding of nothing, is not a personal failing. It's a predictable response to an impossible situation. Your brain is being DDoS'd, and the fact that you're struggling to think clearly under that onslaught is evidence that your brain is working normally. The servers aren't broken. They're overloaded. And until we figure out how to reduce the load or increase the bandwidth, the best any of us can do is recognize what's happening and try, when possible, to step away from the flood long enough to do some actual thinking.</p><p>Find some topic you care about. Just one. Resist the temptation to have takes on everything else. Let the discourse rage without you while you spend weeks or months actually understanding something. Read books about it, not takes. Talk to experts, not pundits. Follow the evidence where it leads, even when it's uncomfortable. Change your mind when you find you were wrong. And when you finally have something to say, something you've actually earned through careful thought rather than absorbed from the tribal zeitgeist, say it clearly and then step back.</p><p>This won't fix the collective problem. But it will fix something in you. And if enough people do it, we'll discover that we can still think after all, that the capacity for sustained attention hasn't been destroyed, just buried under a mountain of requests we never should have tried to answer. We'll learn to tell the difference between having a take and understanding something, and we'll start to value the latter again. Somewhere underneath all that noise, the servers are still there, waiting for the traffic to clear so they can finally do their job.</p>Piano, vulnerability, and playing guitar - James' Coffee Bloghttps://jamesg.blog/2026/01/17/piano-vulnerability-and-playing-guitar/2026-01-17T20:06:36.000Z
<p>Sometimes things just click. Then when you reflect you realise that the thing clicked because of many things all coming together – that as much as you wanted to advance an idea in the past, it needed time.</p><p>I had one of these moments during the <a href="https://events.indieweb.org/2026/01/homebrew-website-club-writing-edition-vXocJMdNFV18" rel="noreferrer">writing meetup I hosted this evening</a>. During the event, one topic that came up was what we publish on our blogs. I shared that one thing I haven’t written much about is playing music. I love playing the piano, and I’m learning guitar! But I don’t write much about the process. When I asked myself why in the call, something clicked. <em>I think it’s because I feel vulnerable talking about music.</em></p><p>I don’t know how to read sheet music, and I don’t play perfectly. I play piano by ear so every time I play a song it’s a little bit different because I am playing things as I go; I can't play a song off the top of my head. Over time I think a degree of muscle memory kicks in, but I’m not able to play a piece from sheet music. With that said, I love playing songs by Taylor Swift, and, generally, I love playing the piano.</p><p>There isn’t a wrong way to play if you’re having fun, but I still feel a certain sense of obligation to know more theory, or to be able to play more consistently. Then again, would I still be playing piano if I didn’t go on the journey I am on right now?</p><p>I think my vulnerability comes from not having played much with others, or having spoken about music. I don’t want to realise I’m doing something “the wrong way” because music really is fun for me. I’d love to find someone one day with that mindset who lives nearby and play music for fun. That would be amazing!?</p><p>Ironically, I have played piano in public several times before – at train stations, in airports – in front of both strangers and people I know. I have the confidence to play, but in places where the expectations are set such that having fun is okay; where you can make mistakes and recover and keep going.</p><p>If you’re curious to hear me play, I have a recording that’s 2-3 years old of me playing <a href="https://jamesg.blog/assets/maroon.mp3">Taylor Swift’s Maroon</a>. It’s not perfect, but it’s mine :)</p><p>I’m starting to think about how the lessons I have learned about writing apply to music, too. If I write, I’m a writer. If I play piano, I can play piano! Even if I’m not perfect.</p><p>Anyway, this was going to be a post about playing guitar, but it seems I had a lot more to say about my vulnerability than I thought I did. I should spend a moment talking about guitar. Over the Christmas holidays, I picked up a guitar for the first time. I had been curious about the guitar for a while but I wasn’t sure if I wanted to start playing. <em>My fingers will hurt</em>, I thought to myself. Looking ahead a few weeks, my fingertips on my left hand – used to hold down the strings for chords – did hurt and now they feel firmer, but now I can play a few chords!</p><p>I have been following tutorials from a YouTuber called <a href="https://www.youtube.com/@NenaShelbyMusic">Nena Shelby</a>, who has recorded detailed tutorials and play-alongs for many of Taylor Swift’s songs. I like that there is a video that explains how to play a song, and a separate one that is a play-along. I am finding it easier to play along to songs as I hear them played so I can practice the rhythm of the strumming patterns.</p><p>I am having so much fun learning to play the guitar. What made me start playing was that I was in a room with a guitar in front of me. I said to myself <em>I wonder if I can play a chord.</em> I looked up a chord chart on my phone and strummed a few times. I didn’t have a plectrum, so I strummed the strings with my thumb. <em>This is fun!</em> I thought to myself. What clicked for me was that after all my thinking and wondering about guitar, there I was in a room with a guitar I could play. <em>Maybe I can play something.</em></p><p>I don't have any snippets of me playing guitar, but maybe one day I will. I would love to be able to sing while I play. I am nowhere near being able to do this, but I read online that there will be a messy period of practice where I struggle with both before I get better. I can't sing well (like, seriously!) but it would be fun to sing and play.</p>
Note published on January 17, 2026 at 4:16 PM UTC - Molly White's activity feed696bb5ce014a09ddd55adc372026-01-17T16:16:14.000Z<article><div class="entry h-entry hentry"><header></header><div class="content e-content"><p>how magnanimous of him</p><div class="media-wrapper invert-on-dark"><a href="https://storage.mollywhite.net/micro/31161d8a7e174f92481e_Screenshot-2026-01-17-at-11.15.18---AM.png" data-fslightbox=b2f2a95382928b9270e6><img src="https://storage.mollywhite.net/micro/31161d8a7e174f92481e_Screenshot-2026-01-17-at-11.15.18---AM.png" alt="Headline: Coinbase CEO says key crypto vote can be rescheduled after 11th hour cancellation" /></a></div><div class="quote"><blockquote>“We’ve got a chance to do a new draft and hopefully get back into a markup in a few weeks,” [Coinbase CEO Brian] Armstrong said.</blockquote></div><div class="related-post"><div class="article h-cite hcite"><div class="title"><a class="u-url u-repost-of u-in-reply-to" href="https://www.cnbc.com/2026/01/15/coinbase-ceo-says-key-crypto-vote-can-be-rescheduled-after-11th-hour-cancellation.html" rel="bookmark">“<span class="p-name">Coinbase CEO says key crypto vote can be rescheduled after 11th hour cancellation</span>”</a>. </div><div class="byline"><span class="p-author h-card">Emily Wilkins</span> in <i class="p-publication">CNBC</i>. <span class="read-date"></span></div></div></div></div><footer class="footer"><div class="flex-row post-meta"><div class="timestamp-block"><div class="timestamp">Posted: <a href="https://www.mollywhite.net/micro/entry/202601171113"><time class="dt-published" datetime="2026-01-17T16:16:14+00:00" title="January 17, 2026 at 4:16 PM UTC">January 17, 2026 at 4:16 PM UTC</time>. </a></div></div><div class="social-links"> <span> Also posted to: </span><a class="social-link u-syndication mastodon" href="https://hachyderm.io/@molly0xfff/115911332771921755" title="Mastodon" rel="syndication">Mastodon, </a><a class="social-link u-syndication bluesky" href="https://bsky.app/profile/molly.wiki/post/3mcmz5iyydq22" title="Bluesky" rel="syndication">Bluesky</a></div></div><div class="bottomRow"><div class="tags">Tagged: <a class="tag p-category" href="https://www.mollywhite.net/micro/tag/coinbase" title="See all micro posts tagged "Coinbase"" rel="category tag">Coinbase</a>, <a class="tag p-category" href="https://www.mollywhite.net/micro/tag/crypto_lobby" title="See all micro posts tagged "crypto lobby"" rel="category tag">crypto lobby</a>. </div></div></footer></div></article>Review: Lander 23 by Punchdrunk ★★★⯪☆ - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=671652026-01-17T12:34:30.000Z<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/01/Punchdrunk-Lander-23-t.webp" alt="Poster featuring two people running through a smoke filled sci-fi corridor." width="300" class="alignleft size-full wp-image-67167"/>
<p>Lander 23 had a few pre-launch glitches, but is now up and running in Woolwich. It is a fun enough experience, but could be a whole lot more with some tweaks. In a team of four, you are split into two groups. One group operates a baffling array of switches and has to direct the other group around a ruined city because of [under developed plot point]. Only by working together can you… well, it is unclear. Something to do with energy?</p>
<p>Think of it a bit like a longer game of "The Crystal Maze". Over a radio commlink, you try telling your team mates to go left down a corridor and then explain you meant the <em>other</em> left. The explorers have to creep around the set, avoiding baddies (and sometimes other players) while listening to your half-baked instructions.</p>
<p>Then you swap positions and suddenly understand some of the seemingly bizarre decisions your friends made.</p>
<p>It is hard to know how to categorise this. Punchdrunk are known for immersive theatre - but this is billed as a live action video game. It isn't a LARP in the traditional sense; you won't be driving the story. It also isn't an escape room although the teamwork aspect is similar. There aren't any puzzles, and the story is paper-thin. But it is rather a good laugh. Sort of like an adult Laser Quest without guns.</p>
<p>The pre-show is pretty good. There's a well dressed set to wander around with lots of interesting (but irrelevant) scenery and props. The instructions are reasonably clear and the "Lander" set looks a bit like the Nostromo from Alien. The interactive consoles are brilliantly designed. The various industrial knobs and buttons feel delightful to play with and react well. It is rather a shame that they're so under utilised. The driver team is given a baffling arrays of inputs to manage - but only a small subsection do anything useful.</p>
<p>The city set (supposedly an alien planet) is recycled from the previous "Burnt City" production. It looks lush but doesn't make any sense in context of the (slightly flimsy) story. It is exciting to wander through while being pursued by guards (what guards? Isn't this an alien planet?) but there isn't much time to admire the extensive set dressing.</p>
<p>While you're running around (or telling people to run around) there's some nonsense about collecting energy. Oh and you might lose a life if caught. And you have to flick the switches at the right time. Don't forget to duck behind the scenery to hide when told. There's a <em>lot</em> going on. It is exhilarating but you only get about 15-20 minutes of play time each.</p>
<p>There's a briefing about how to find cassettes and stamps. Across our two goes, we found one of them and got one stamp. What does that do? Nothing as far as I can tell. There might also be artefacts to collect, but we didn't find any, nor were we sure that they'd net us extra points.</p>
<p>Let's talk about the points aspect. At the end, our team, were delighted to have come second!</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2026/01/Leaderboard.webp" alt="Digital display board showing team numbers and points." width="1557" height="1168" class="aligncenter size-full wp-image-67169"/>
<p>What did that mean? <strong>Nothing</strong>.</p>
<p>If you play Laser Quest, you get to see your <em>name</em> up on the big screen - Lander 23 just displays your team number. I sort of expected to be handed a certificate. Or money off our next trip. Or a commemorative tchotchke. Or even a video thanking us for saving the universe. We just took off our tactical vests and handed them back. Which was slightly underwhelming.</p>
<p>I <em>think</em> the leader-board is there to encourage replayability. But as your scores aren't recorded, there isn't much incentive to come back for another go. I expected a follow-up email thanking us for playing or asking for feedback but, again, nothing. After that much adrenaline, I was expecting just a <em>little</em> aftercare.</p>
<p>There's a photo-booth once you've completed the mission, but you have to ask other players to take your photo. It would have been so easy for Punchdrunk to have a staff member there to take snaps and email them. Again, that's what most escape rooms do. Instead, we headed to the bar to enjoy a few cocktails while we debriefed ourselves.</p>
<p>All four of us agreed at that it had been a pretty good experience. We laughed a lot describing what we'd got up to. Our hearts were racing, we were sweating from the tension, and felt like it had been a decent afternoon out.</p>
<p>Ultimately, Lander 23 feels like it has been designed by someone who has <em>heard of</em> games like Laser Quest / Escape Rooms / The Crystal Maze but, crucially, hasn't ever played them.</p>
<p>For all that, it is a lot of fun. Running around corridors with a friend is <em>very</em> Doctor Who. Flicking lots of switches and pressing buttons is an enjoyable tactile experience.</p>
<p>It is absolutely worth finding a cheaper mid-week slot and giving it a go. If you're willing to get into the spirit of things, and are happy to put up with some odd game-design decisions, you'll have fun.</p>
Should HTML's code blocks be translated? - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=630462026-01-16T12:34:53.000Z<p>I was recently prompted to <a href="https://bsky.app/profile/vale.rocks/post/3lxgvpipy4k2q">test my blog's layout when rendered in right-to-left text</a>. Running a website through an automatic translator into a language like Arabic or Hebrew will show you any weird little layout glitches which might occur.</p>
<p>But mechanical translation is a bit of an unthinking brute. In this example, I had a code snippet which contained the word "link".</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/08/translate.webp" alt="HTML code block, one of the element names is rendered in Arabic." width="1008" height="567" class="aligncenter size-full wp-image-63048"/>
<p>Should that word be translated? Obviously not! The code isn't valid unless the element name is in English - and it probably doesn't make sense to reverse the text direction.</p>
<p>Luckily, the HTML specification allows authors to mark specific bits of their page as unsuitable for automatic translations. <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/translate">The <code>translate</code> global attribute</a> can be applied to your markup like this:</p>
<pre><code class="language-html"><code translate="no">
&amp;lt;link … &amp;gt;
&amp;lt;meta … &amp;gt;
&amp;lt;strong&amp;gt;Hello&amp;lt;/strong&amp;gt;
</code>
</code></pre>
<p>Nothing inside that code block will be translated. Hurrah!</p>
<p>But there are some problems with this approach.</p>
<p>Consider this pseudo-code:</p>
<pre><code class="language-_">// Reverse the polarity of the neutron flow.
$neutron = $atom.flow( direction="backwards" );
</code></pre>
<p>Fairly obviously, the code itself shouldn't be translated. It simply won't run unless the syntax is precisely as written. But what about the comment at the top? It would probably be useful to have that translated, right?</p>
<p>It is possible to mark up different parts of a document to be translatable even if their parent isn't:</p>
<pre><code class="language-html"><code translate="no">
<span translate="yes">// Reverse the polarity of the neutron flow.</span>
$neutron = $atom.flow( direction="backwards" );
</code>
</code></pre>
<p>At least, that's my understanding of <a href="https://html.spec.whatwg.org/multipage/dom.html#attr-translate">the specification</a>.</p>
<p>This brings us on to another complex problem. Consider this code block which might be embedded in a page as an example:</p>
<pre><code class="language-js">// Ensure the age is calculated from the user's birthday
var age = today.date - user.birthday;
</code></pre>
<p>If translated into Chinese, the comment might say:</p>
<pre><code class="language-js">// 确保年龄是根据用户的生日计算的
var age = today.date - user.birthday;
</code></pre>
<p>But is it useful to have variable names be different between comments and the code?</p>
<p>In some contexts yes, in others no!</p>
<p>And that's where we hit the limits of the current crop of machine-translation algorithms. Without a holistic view of the entire page, and a semantic understanding of how previous words relate to subsequent words, there will always be glitches and gotchas like this.</p>
<p>For now, I'm marking my code blocks as non-translatable but letting comments be fully translated. If you have strong opinions about this - please leave a comment!</p>
Notable links: January 16, 2026 - Werd I/O6969b710a619080001058c582026-01-16T10:00:07.000Z<img src="https://werd.io/content/images/2026/01/55038799910_f445cbbcdd.jpg" alt="Notable links: January 16, 2026"><p><em>Every Friday, I share a handful of pieces that caught my eye at the intersection of technology, media, and society.</em></p><p><em>I don't have a pithy summary this week. It's been a heavy week. These links – about documenting atrocities and finding values-aligned work – reflect that.</em></p><p><em>Did I miss something important? </em><a href="mailto:ben@werd.io" rel="noreferrer"><em>Send me an email</em></a><em> to let me know.</em></p><hr><h3 id="remarks-on-the-federal-government%E2%80%99s-ongoing-presence-in-minnesota"><a href="https://mn.gov/governor/newsroom/press-releases/?id=719765&ref=werd.io" rel="noreferrer">Remarks on the Federal Government’s Ongoing Presence in Minnesota</a></h3><p>Minnesota is experiencing unprecedented ICE action — which is a kind of punch-pulling euphemism for what has felt like an all-out fascist invasion that has included murder, kidnappings, toxic chlorine gas set off in city streets, and ICE officers staking out stores and businesses, sometimes arresting the staff at restaurants they’ve just been eating at.</p><p>In the midst of this, Governor Tim Walz made an address where he accurately described it as an occupation. Remarkably, he also asked his constituents this:</p><blockquote>“Tonight, I want to share another way you can help: Witness.<br><br>Help us establish a record of exactly what’s happening in our communities.<br><br>You have an absolute right to peacefully film ICE agents as they conduct their activities.<br><br>So carry your phone with you at all times.<br><br>And if you see ICE in your neighborhood, take out that phone and hit record.<br><br>Help us create a database of the atrocities against Minnesotans – not just to establish a record for posterity, but to bank evidence for future prosecution.”</blockquote><p>We’ve seen crowdsourced footage and citizen journalism before — most pervasively during the Black Lives Matter protests five years ago — but I can’t think of a time when the Governor of a State, or anyone in a similar position, has asked citizens to record and save footage so that it can be used to prosecute the authorities for its atrocities.</p><p>If we look beyond the obvious shock that <em>this is where we are now</em>, there’s an interesting infrastructure problem here. It’s worth asking: if <em>you</em> were designing a system to gather footage of ICE brutality from Minnesotans, while protecting their safety and ensuring the sanctity of the dataset, how would you do it? Knowing that there will be people who want to make the database unusable, or prevent people from submitting, either directly or through intimidation?</p><p>It’s essentially a whistleblower (or journalism tips) use case. Rinse and repeat for the whole country. Some newsrooms have built their own forms, and Letitia James released <a href="https://ag.ny.gov/federal-actions-form?ref=werd.io">a portal for submitting ICE footage in New York</a>, but there’s a strong case to be made for a central repository for <em>all</em> ICE abuse, for which <em>sifting through</em> all that video is a problem in itself. There will be a lot of it.</p><p>And what if there doesn’t remain a strong government entity at the State level to bring about a case?</p><p>There’s a strong argument for sharing to a central repository that can be used and browsed by multiple entities, including governments, advocacy organizations, civil rights lawyers, and newsrooms. When this information is distributed across States, newsrooms, personal Instagram accounts, and more, it doesn’t form a body of evidence that can help bring about more impactful cases and determine patterns of activity. So someone should consider centralizing it — but then mirroring it, <a href="https://werd.io/the-zurich-protocol/">Zurich protocol</a> style, so that nobody can hide the evidence and cover the tracks of their abuse.</p><hr><h3 id="%E2%80%98elite%E2%80%99-the-palantir-app-ice-uses-to-find-neighborhoods-to-raid"><a href="https://www.404media.co/elite-the-palantir-app-ice-uses-to-find-neighborhoods-to-raid/?ref=werd.io" rel="noreferrer">‘ELITE’: The Palantir App ICE Uses to Find Neighborhoods to Raid</a></h3><p>This is racial profiling on a grand scale:</p><blockquote>“Palantir is working on a tool for Immigration and Customs Enforcement (ICE) that populates a map with potential deportation targets, brings up a dossier on each person, and provides a “confidence score” on the person’s current address, 404 Media has learned. ICE is using it to find locations where lots of people it might detain could be based.”</blockquote><p>It apparently looks a lot like Google Maps, but designed to show the richness of an area for “targets”, populated in part by density of immigrants. And then you can dig in:</p><blockquote>“Once a person is selected on the map interface, ELITE then shows a dossier on that particular person, according to the user guide. That includes their name, a photo, their Alien Number (the unique code given by the U.S. government to each immigrant), their date of birth, and their full address.”</blockquote><p>The Nazis could only dream of having such a capability.</p><p>Imagine working for this company, on this product. Every day, you go into work, in what I assume is a beautiful office with pine furniture and a well-stocked kitchen, and you build software that will help to deport people using what you know are extrajudicial means without due process. You probably have OKRs. There are customer calls with ICE. Every two-week sprint, you take on tasks that help make this engine better.</p><p>What do you tell yourself? What do you tell your family?</p><p>Are you on board with this agenda, or do you tell yourself you need the job to pay rent? To get healthcare?</p><p>You receive stock as part of your pay package. It’s going up! You can use it to buy a home, or to build a comfortable retirement, or some combination of the two.</p><p>Your co-workers are values aligned and work hard. They’re talented and smart. <em>Man,</em> you might think to yourself, <em>I love working with this team.</em></p><p>Or, you might think, <em>man, I’ve got to find another job.</em></p><p>Either way, you’re proud of your product work. You’re happy to take the salary, the free lunches, the espresso. And regardless of how you feel about it, the thing you do every day is powering an armed force that is kidnapping people on the street and shooting civilians, that shot a mother in the face, that is targeting people to disappear using a beautiful, modern map interface.</p><hr><h3 id="bari-weiss-is-the-symptom"><a href="https://defector.com/bari-weiss-is-the-symptom?ref=werd.io" rel="noreferrer">Bari Weiss Is The Symptom</a></h3><p>I wish this essay wasn’t good and necessary, but it is.</p><blockquote>“I worry some of my colleagues in the industry are getting the Bari Weiss phenomenon exactly wrong. She isn't a saboteur brought in to destroy one of the last remaining citadels of high journalism. She is one of high journalism's purest products, a perfect symptom of its old, unresolved contradictions. Her disingenuousness about motive is the industry's in miniature.”</blockquote><p>The author is correct: Bari Weiss is not an exception to a glorious industry, but one of many. These are people who, although they would not put it that way themselves, seek to make journalism toothless; to turn it into an instrument of power rather than something that interrogates it. They’re the people who see themselves, more than anything else, as an <em>institution</em>, rather than the people institutions worry about when they go to sleep at night. And they are everywhere.</p><p>I’m not a journalist, but I signed up to support them. After my hard left turn from tech, I run technology for newsrooms, which includes the technologies that publish their work and keep them safe. And here I have to clarify: I didn’t sign up to do this for all of them. I signed up to do it for the people who want to make the world safer, fairer, more equal. There’s a reason why my two newsrooms have been <a href="https://19thnews.org/?ref=werd.io">The 19th</a> and <a href="https://propublica.org/?ref=werd.io">ProPublica</a>. The only journalism I care about aims to hold a bright light to power and established power structures, and truly hold them to account.</p><p>The Bari Weisses believe it’s in the national interest to support whatever war the current administration has chosen to wage. They endorse official narratives in the name of covering “both sides”, even when they are obvious lies. They produce journalism about trans people without consulting trans people. They avoid the appearance of activism. They believe in upholding the status quo in the name of stability. And in doing so, they enable atrocities, big and small, foreign and domestic, to the point of collaboration.</p><hr><h3 id="how-to-know-if-that-job-will-crush-your-soul"><a href="https://www.anildash.com/2026/01/12/will-that-job-crush-your-soul/?ref=werd.io" rel="noreferrer">How to know if that job will crush your soul</a></h3><p>A good list of questions that will help you determine whether a job will be values-aligned or crush your soul from <a href="https://anildash.com/?ref=werd.io">Anil Dash</a>.</p><p>They also inform how to ask questions during an interview process. For example, Anil asks:</p><blockquote>“What’s the lived experience of the workers there whom you trust? Do you have evidence of leaders in the organization making hard choices to do the right thing?”</blockquote><p>If you don’t know — and if it’s not a big company, you probably don’t — the question becomes: how will you find out? The result will be a deeper and more meaningful hiring process.</p><p>But in addition to the values questions, Anil also asks about compensation and forward trajectory. These are important too. There’s no sense in taking a job that isn’t going to be sustainable for you, or won’t allow you to grow with it. In those situations, there’s barely a relationship; you’re ultimately just a resource.</p><hr><h3 id="the-curiosity-tour"><a href="https://pointc.co/the-curiosity-tour/?ref=werd.io" rel="noreferrer">The Curiosity Tour</a></h3><p>This resonated:</p><blockquote>“I had always been a linchpin and had chafed under cog-like conditions. I uncovered a key insight:<br><br>The process for finding a cog job and the process for finding a linchpin job are completely different.<br><br>I had been following a cog path. Reacting to job postings that were easily classifiable on LinkedIn and had a hiring process run by middle management who had no idea what to do with a linchpin when they saw one.”</blockquote><p>What follows is — characteristically for <a href="https://pointc.co/?ref=werd.io">Corey</a> — a clear-eyed, easy-to-follow framework for finding linchpin-shaped jobs.</p><p>These <em>are</em> very different kinds of jobs: they often can’t be described cleanly, and although I’d argue strongly that all jobs should be hired through an open process, they might not even be positions that have been defined yet. At any rate, there are only good things to be gained by meeting with leaders and learning about their needs from a position of genuine curiosity.</p><p>When I was reading this piece, I realized I’d suggested that a friend do something similar in the publishing industry a long time ago. She wanted to break into publishing and had a core set of skills that operated at the intersection of a few things. More than anything else, she was a doer. So I suggested that she make a list of publishers she’d like to talk to — perhaps by looking at books that she loved and checking who ran the imprint — and reach out to them cold to have a conversation.</p><p>It worked, and within a few months she had a linchpin job at a publishing company in London. She wound up empowering an entire range of books to be published, writing some of her own, and transforming the way the publishing company ran.</p><p>So, you know, try it. You just might find you get your dream job. One that is values-aligned to you, where you don't need to hold your nose every day when you go to work.</p>Nature - James' Coffee Bloghttps://jamesg.blog/2026/01/16/nature/2026-01-16T09:14:37.000Z
<p>When I wake up in the morning, the first thing I do is get out of bed and turn on my fairy lights. I read for a little while under the warm glow of the lights while the sun is not yet visible in the winter morning. I am reading a book about Nature right now – stories of walking. When I read, I can be in what I imagine as a clear summer’s day looking around and seeing mountains for a little while, even when it may be winter here. The story in the book eases me into my day.</p><p>The next thing I do is go to the window to look outside. Every day there is something new. Earlier this week, there was a dash of pink and red in the sky unlike anything I have seen before. I have seen red skies before, but they are so few and far between that every one feels new. With every red sky I am reminded more than ever how some things never get old. I find energy and excitement and delight in sunrises and sunsets – of the colour, their variance, the way the light changes the hills.</p><p>This morning is a foggy one; there have been several foggy days of late. I can’t see far, but I still keep looking at what I can see anyway. In the faint distance, I see the outlines of the bare wooden trees – trees that will be resplendent in summer. I see the occasional small bird fly past. I see the grass wearing a blanket of frost. There is a book here. Maybe I’m writing it now.</p><p>The topic of this month’s <a href="https://www.jeremiahlee.com/posts/2026-01-indieweb-carnival/" rel="noreferrer">IndieWeb Carnival is the meaning of life</a>. I think this is one of these questions that is answered over a lifetime; an answer that builds with the years.</p><p>There are many things that give my life meaning – that give me energy and make me who I am. Family, friendship, kindness, hope, life itself, realising that I’m part of a story that extends so far into the past and will continue extending in the future, the feeling of awe when I see something that someone made, the feeling of awe from Nature, the joy of noticing details, learning, music, art.</p><p>This morning, since the fog is out – an apt image, perhaps, for a question whose answer clarifies with time – and have just been looking out the window, I wanted to reflect on Nature, one of the things that gives my life meaning.</p><p>When I look out my window in the morning, I see both a familiar and a new world. I see home and a changing world at once. I think of the things we – society, through history – have built and the communities we make. I admire the trees. I wish for more trees. In my observations, I often find myself saying, literally, “wow”, as if <em>something</em> needs to be said.</p><p>Maybe in saying something I’m participating in Nature, in some small way. I have heard that singing to plants helps. I’m not sure if it’s true; I have never done any research. I like the story. I like that it implies connection; that our song can help plants grow. Maybe what I say to Nature – those exclamations of “wow” – is really helping me; to realise that some things that are right in front of us can be, and are, so beautiful.</p>
Remarks on the Federal Government’s Ongoing Presence in Minnesota - Werd I/O6969b6c4a619080001058c522026-01-16T03:55:48.000Z<p>[<a href="https://mn.gov/governor/newsroom/press-releases/?id=719765&ref=werd.io">Minnesota Governor Tim Walz</a>]</p><p>Minnesota is experiencing unprecedented ICE action — which is a kind of punch-pulling euphemism for what has felt like an all-out fascist invasion that has included murder, kidnappings, toxic chlorine gas set off in city streets, and ICE officers staking out stores and businesses, sometimes arresting the staff at restaurants they’ve just been eating at.</p><p>In the midst of this, Governor Tim Walz made an address where he accurately described it as an occupation. Remarkably, he also asked his constituents this:</p><blockquote>“Tonight, I want to share another way you can help: Witness.<br><br>Help us establish a record of exactly what’s happening in our communities.<br><br>You have an absolute right to peacefully film ICE agents as they conduct their activities.<br><br>So carry your phone with you at all times.<br><br>And if you see ICE in your neighborhood, take out that phone and hit record.<br><br>Help us create a database of the atrocities against Minnesotans – not just to establish a record for posterity, but to bank evidence for future prosecution.”</blockquote><p>We’ve seen crowdsourced footage and citizen journalism before — most pervasively during the Black Lives Matter protests five years ago — but I can’t think of a time when the Governor of a State, or anyone in a similar position, has asked citizens to record and save footage so that it can be used to prosecute the authorities for its atrocities.</p><p>If we look beyond the obvious shock that <em>this is where we are now</em>, there’s an interesting infrastructure problem here. It’s worth asking: if <em>you</em> were designing a system to gather footage of ICE brutality from Minnesotans, while protecting their safety and ensuring the sanctity of the dataset, how would you do it? Knowing that there will be people who want to make the database unusable, or prevent people from submitting, either directly or through intimidation?</p><p>It’s essentially a whistleblower (or journalism tips) use case. Rinse and repeat for the whole country. Some newsrooms have built their own forms, and Letitia James released <a href="https://ag.ny.gov/federal-actions-form?ref=werd.io">a portal for submitting ICE footage in New York</a>, but there’s a strong case to be made for a central repository for <em>all</em> ICE abuse, for which <em>sifting through</em> all that video is a problem in itself. There will be a lot of it.</p><p>And what if there doesn’t remain a strong government entity at the State level to bring about a case?</p><p>There’s a strong argument for sharing to a central repository that can be used and browsed by multiple entities, including governments, advocacy organizations, civil rights lawyers, and newsrooms. When this information is distributed across States, newsrooms, personal Instagram accounts, and more, it doesn’t form a body of evidence that can help bring about more impactful cases and determine patterns of activity. So someone should consider centralizing it — but then mirroring it, <a href="https://werd.io/the-zurich-protocol/">Zurich protocol</a> style, so that nobody can hide the evidence and cover the tracks of their abuse.</p><p>[<a href="https://mn.gov/governor/newsroom/press-releases/?id=719765&ref=werd.io">Link</a>]</p>The Curiosity Tour - Werd I/O69699e8ba619080001058c422026-01-16T02:12:27.000Z<p>[<a href="https://pointc.co/the-curiosity-tour/?ref=werd.io">Corey Ford at Point C</a>]</p><p>This resonated:</p><blockquote>“I had always been a linchpin and had chafed under cog-like conditions. I uncovered a key insight:<br><br>The process for finding a cog job and the process for finding a linchpin job are completely different.<br><br>I had been following a cog path. Reacting to job postings that were easily classifiable on LinkedIn and had a hiring process run by middle management who had no idea what to do with a linchpin when they saw one.”</blockquote><p>What follows is — characteristically for <a href="https://pointc.co/?ref=werd.io">Corey</a> — a clear-eyed, easy-to-follow framework for finding linchpin-shaped jobs.</p><p>These <em>are</em> very different kinds of jobs: they often can’t be described cleanly, and although I’d argue strongly that all jobs should be hired through an open process, they might not even be positions that have been defined yet. At any rate, there are only good things to be gained by meeting with leaders and learning about their needs from a position of genuine curiosity.</p><p>When I was reading this piece, I realized I’d suggested that a friend do something similar in the publishing industry a long time ago. She wanted to break into publishing and had a core set of skills that operated at the intersection of a few things. More than anything else, she was a doer. So I suggested that she make a list of publishers she’d like to talk to — perhaps by looking at books that she loved and checking who ran the imprint — and reach out to them cold to have a conversation.</p><p>It worked, and within a few months she had a linchpin job at a publishing company in London. She wound up empowering an entire range of books to be published, writing some of her own, and transforming the way the publishing company ran.</p><p>So, you know, try it. You just might find you get your dream job.</p><p>[<a href="https://pointc.co/the-curiosity-tour/?ref=werd.io">Link</a>]</p>Walden - James' Coffee Bloghttps://jamesg.blog/2026/01/15/walden/2026-01-15T21:30:43.000Z
<p>I wanted to start this blog post with a quote. I started flicking through Walden, which I have just finished reading, for one that would be appropriate. But then I realised any choice would be arbitrary, for the wisdom is so deep within the book that any choice would leave me feeling wanting. With every page I turned, there was something new to make me think. Indeed, if the book Walden was itself a pond, it would both reflect the world back and, in so doing, make me see the world in a new light.</p><p>I wondered to myself “why would Thoreau write Walden?” While it may have been explained in the book at some point that I cannot presently recall, the spirit that came to mind is that the scenery was so beautiful that he had to write it down.</p><p>As I read Walden, I continually looked out the window. The book may have been written more than one-hundred and fifty-years ago, but the joys about which he wrote – of grasses, the many species of trees, the streams and rivers, the sunrise and the sunset – are still here, right now. Walden helped me see what’s here with new lenses, and to think of my own experiences of and with Nature.</p><p>While it is easy to focus on the aspects of independence within the story – Thoreau builds a house in the woods in which to live – I find myself reflecting on how Thoreau was building with Nature; with materials from all around, and a community in the village. I think we’re all building with Nature in our own ways, too. I am when I look outside my window and see the green grasses and think about how I, like Thoreau, might write them down, such that Scotland exists not only where I am right now but also, right now, as you read this sentence, in your hands, just a little bit, for these words were written here. Oh! how connected we are.</p><p>One of the things that has stuck with me since reading as much of Walden as I did in my teens was Thoreau’s choice to capitalise Nature in reference to the natural world. I regularly do this, too. Nature is so wonderful.</p><p>I first read Walden when I was in my mid-teens. I read the book on the web, via <a href="https://www.gutenberg.org/files/205/205-h/205-h.htm">Project Gutenberg</a>. I was delighted that the book was on the web. <em>It’s here! I can read it.</em> And so I did, or at least partly. I stopped about half-way through I think, in part because the text was relatively small and had long line lengths and so, as I can now say, my eyes were tired, and also because of the nature of the language at the time relative to other things I had read.</p><p>With that said, I loved what I read, and I knew I had to come back. I’m so glad I did. Some stories are woven over several years, even with a break in the middle. Many stories, too, I am learning, become clearer and more beautiful with age.</p><p>Now, I encourage you to look at the world around you, in whatever way Nature is around where you are. Look up to the trees. You might see a bird! Look to the pond. You may see the sky. Look to the leaf. You may see that the world is infinitely complex, but, at the same time, infinitely beautiful. </p>
Getting ready for studying - James' Coffee Bloghttps://jamesg.blog/2026/01/15/getting-ready-for-studying/2026-01-15T20:45:02.000Z
<p>I start my degree in art history at the <a href="https://open.edu/">Open University</a> in under two weeks. Just after the holidays, I got access to the materials for my first year, which is made up of two modules: “Discovering the arts and humanities” and “Cultures”. In the former module I’ll study a new topic each week in the Humanities, including the reputation of Cleopatra, Vincent Van Gogh’s painting and the blues in music. In the latter I’ll be studying ancient cultures, art and power, literary classics, and cultural journeys.</p><p>Looking at the syllabus, I’m excited by how many new-to-me topics I am going to study. I’m excited both to build a foundation in the humanities and to use that knowledge when I read, when I look at paintings and sculpture, and, more generally, when I think about things and the world (including technology and its role in society!).</p><p>As part of preparing for the course, I have spent many hours exploring my university’s website to see what resources are available – workshops, forums, library access, and more. One of the resources that stood out early was a documentary called “Age of the Image,” which explores the role of images – broadly defined, ranging from cave paintings to canvases to photography – throughout time. What can images do? What properties do images have? How has the power of images been harnessed in history? </p><p>Next week I have my course induction, study prep, and will be going to several other online events that look interesting too. I want to try as many different things as I can.</p><p>One of the things I have signed up for is a carbon literacy training course. I have already completed half of it, reading and reviewing materials; the next half is a live workshop next week for which I am excited. This workshop has me thinking again both about how I can make more sustainable choices, and also how I should think about sustainability in the context of technology. While the latter is not specifically a focus of the course, it is an area I hope to explore more. (Reading recommendations are appreciated!)</p><p>In summary, I am ready for this new chapter, and I’m so excited!</p><p>On the topic of art history, I recently went to the National Gallery of Scotland and, to my delight, found that they had an exhibit of J.M.W. Turner’s art, “Turner in January.” The art, watercolours from throughout his career that are only displayed in January and in relatively low light to preserve them as best as possible, was breathtaking. I appreciated every painting, and was especially delighted to learn he had made a few paintings near where I grew up.</p><p>This encounter with Turner’s art was particularly apt because I had been admiring one of his paintings digitally through being linked on <a href="https://tracydurnell.com/2026/01/07/digital-aura-source-of-truth/">Tracy’s website</a> in her excellent ongoing series on the concept of “aura” as it applies to digital art. The painting at the top of the post, “Rain, Steam, and Speed” features Nature and industry together: the railroad and the rail bridge and the river and the sky, obscured by fog. I love fog – both in art and in real life. It always makes me think about what I can see and can’t see in a given moment, and how the fog transforms a place.</p><p>After going to the Turner exhibit, I went to the Portrait Gallery. While there, in the modern portraits exhibit, I saw portraits of people who came from where I grew up. <em>My home is in this big gallery!</em> My heart, too.</p>
‘ELITE’: The Palantir App ICE Uses to Find Neighborhoods to Raid - Werd I/O6968ff25a619080001058c122026-01-15T14:52:21.000Z<p>[<a href="https://www.404media.co/elite-the-palantir-app-ice-uses-to-find-neighborhoods-to-raid/?ref=werd.io">Joseph Cox at 404 Media</a>]</p><p>This is racial profiling on a grand scale:</p><blockquote>“Palantir is working on a tool for Immigration and Customs Enforcement (ICE) that populates a map with potential deportation targets, brings up a dossier on each person, and provides a “confidence score” on the person’s current address, 404 Media has learned. ICE is using it to find locations where lots of people it might detain could be based.”</blockquote><p>It apparently looks a lot like Google Maps, but designed to show the richness of an area for “targets”, populated in part by density of immigrants. And then you can dig in:</p><blockquote>“Once a person is selected on the map interface, ELITE then shows a dossier on that particular person, according to the user guide. That includes their name, a photo, their Alien Number (the unique code given by the U.S. government to each immigrant), their date of birth, and their full address.”</blockquote><p>The Nazis could only dream of having such a capability.</p><p>Imagine working for this company, on this product. Every day, you go into work, in what I assume is a beautiful office with pine furniture and a well-stocked kitchen, and you build software that will help to deport people using what you know are extrajudicial means without due process. You probably have OKRs. There are customer calls with ICE. Every two-week sprint, you take on tasks that help make this engine better.</p><p>What do you tell yourself? What do you tell your family?</p><p>Are you on board with this agenda, or do you tell yourself you need the job to pay rent? To get healthcare?</p><p>You receive stock as part of your pay package. It’s going up! You can use it to buy a home, or to build a comfortable retirement, or some combination of the two.</p><p>Your co-workers are values aligned and work hard. They’re talented and smart. <em>Man,</em> you might think to yourself, <em>I love working with this team.</em></p><p>Or, you might think, <em>man, I’ve got to find another job.</em></p><p>Either way, you’re proud of your product work. You’re happy to take the salary, the free lunches, the espresso. And regardless of how you feel about it, the thing you do every day is powering an armed force that is kidnapping people on the street and shooting civilians, that shot a mother in the face, that is targeting people to disappear using a beautiful, modern map interface.</p><p>[<a href="https://www.404media.co/elite-the-palantir-app-ice-uses-to-find-neighborhoods-to-raid/?ref=werd.io">Link</a>]</p>Book Review: Rabbit Test and Other Stories by Samantha Mills ★★★★☆ - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=652152026-01-15T12:34:41.000Z<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/RabbitTestCollection_Website.webp" alt="Book cover." width="200" height="619" class="alignleft size-full wp-image-65216"/>
<p>This is an an interesting and varied set of sci-fi/fantasy stories. Some barely a couple of pages, others cutting short at <em>just</em> the right time. They are all on a similar theme - the strife between parents and children. Whether it is a twisted take on classic fairy tales, or a dive into the far future - there's always something interesting going on.</p>
<p>Samantha Mills has a excellent eye for neologisms and isn't afraid to deploy humour with sometimes devastating effect.</p>
<p>The titular "Rabbit Test" is excellent but - like most of the others - it is a riff on some genre classics. That's not a bad thing; it's always fun to explore tropes from a different angle. Each story is entertaining, but most left me thinking "now where have I heard that before?"</p>
<p>One of the lovely things is the story notes at the end. Like a little behind-the-scenes feature on a DVD extra. More books should give the reader a glimpse behind the writing process.</p>
<p>Many thanks to NetGalley for the review copy. Rabbit Test is available to pre-order now.</p>
How to Debug Your Life - Westenberg6968301e141f7700014618fa2026-01-15T00:18:46.000Z<img src="https://images.unsplash.com/photo-1765408216897-3959f1c49b45?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDU0fHxlcnJvcnxlbnwwfHx8fDE3Njg0MzU5Mjd8MA&ixlib=rb-4.1.0&q=80&w=2000" alt="How to Debug Your Life"><p>Date: 14/1/26<br>Tags: #productivity #mental-health #mental-model #bugs #debugging</p><h2 id="i">I.</h2><p>In 1947, Grace Hopper and her team at Harvard were working on the Mark II Aiken Relay Calculator. The machine was massive, a deafening clatter of electromechanical relays, and it had stopped working. They opened the casing to find the problem. It was a moth. An actual, literal moth, trapped between points F and 70 in Relay #70, Panel F. They taped the dead insect into the logbook with the notation: "First actual case of bug being found."</p><p>The system stopped working because a foreign object intruded. Remove the moth, restart the relay, the calculation proceeds.</p><p>If only our internal architecture were so cooperative...</p><p>When we try to run the software of our own lives, executing simple scripts like go_to_gym.exe or maintain_stable_relationship.py, we encounter runtime errors. We crash, and we find ourselves staring at the ceiling at 3 AM, running a loop of anxious thoughts that consume 99% of our CPU cycles. But when we open the casing to find the moth, we find nothing but our own wiring. The call is coming from inside the house.</p><p>Most of us treat these failures with a superstitious dread. We view our depression, our procrastination, our sudden outbursts of anger as weather events, storms that pass through us. Or we view them as moral failings: evidence of a corrupted soul.</p><p>Instead:</p><p>We should view the mind as a legacy codebase: a sprawling, undocumented repository of spaghetti code written by an evolutionary process that prioritized survival over readability, patched together with cultural subroutines that may have been deprecated in the Victorian era.</p><p>We can't rewrite the kernel, and we're pretty much stuck with the hardware. But we <strong>can</strong> adopt the methodology of the systems admin. We <strong>can</strong> stop trying to exorcise our demons and start opening tickets for them.</p><p>This is, broadly, the strategy I use to manage my sobriety (six years sober and counting) and my own anxiety // depression.</p><p>I hope it's useful.</p><h2 id="ii">II.</h2><p>You can't patch a bug that you can't isolate. A bug report that simply says "It doesn't work" is useless and gets closed immediately. But this is exactly how we report our internal states to ourselves.</p><p>"I feel bad."</p><p>"I am a failure."</p><p>"Why can't I get anything done?"</p><p>These are bad bug reports - because they have no stack traces and no context.</p><p>In his autobiography, Benjamin Franklin describes his "bold and arduous project of arriving at moral perfection." He realized that a vague intention to be "good" was insufficient, so he created a grid. He listed thirteen virtues: Temperance, Silence, Order, Resolution, Frugality, Industry, Sincerity, Justice, Moderation, Cleanliness, Tranquility, Chastity, and Humility.</p><p>He didn't try to debug them all at once. He focused on one per week, marking a black dot in his notebook every time he committed a fault against that virtue.</p><p>Franklin was essentially creating a primitive issue tracker and generating log files. He understood that you cannot optimize a metric you do not track. When he saw a cluster of black dots under "Silence," he had data rather than mere guilt. He could look at the timeline. <strong>Ah, the dots cluster on Tuesday evenings. What happens on Tuesday evenings? I go to the Junto club and drink too much Madeira.</strong></p><p>Now we have a reproduction path.</p><h3 id="steps-to-reproduce"><strong>Steps to Reproduce:</strong></h3><ol><li>Attend social gathering.</li><li>Consume > 2 glasses of wine.</li><li>Ego defense mechanisms loosen.</li><li>Result: User speaks over others and violates the Silence constraint.</li></ol><p>Once you have the reproduction steps, you can implement a patch. Franklin's patch might be "Drink water on Tuesdays." Without the log, he is a man feeling vague shame about being loud. With the log, he is an engineer solving an optimization problem.</p><p>We can apply this to modern neuroses.</p><p>Take: "scrolling Twitter for four hours when I should be working."</p><p>Don't flag it as <strong>User is lazy</strong>. That's a lazy ticket. Open a detailed issue.</p><p><strong>Issue #402: Excessive context switching causes productivity crash</strong></p><ul><li>Severity: Critical</li><li>Environment: Home Office, 2:00 PM, Low Blood Sugar</li><li>Trigger: Hit a difficult paragraph in the report.</li><li>Expected Behavior: User pushes through difficulty.</li><li>Actual Behavior: User opens new tab, types 'r', autopopulate takes over.</li></ul><p>Now we can see the logic error. It's a try/catch block failure. The brain encounters a DifficultyException and looks for a handler. The default handler for "unpleasant sensation" is "seek dopamine." The quickest route to dopamine is X. The code is working exactly as written; it's simply a bad script for your current production environment.</p><h2 id="iii">III.</h2><p>G.K. Chesterton imagined a fence erected across a road. The modern reformer goes up to it and says, "I don't see the use of this; let us clear it away." The more intelligent reformer does well to say, "If you don't see the use of it, I certainly won't let you clear it away. Go away and think. Then, when you can come back and tell me that you do see the use of it, I may allow you to destroy it."</p><p>You can call this "Legacy Code Fear." You see a weird function called do_the_thing_with_the_variable() that seems to do nothing but slow down the system. You delete it. Immediately, the payment processing server in Ohio catches fire.</p><p>Our habits are Chesterton Fences.</p><p>We generally view anxiety as a bug because it feels terrible and ruins our sleep. We want to issue a git revert and go back to a version of ourselves that was (somehow) more chill.</p><p>But if we look at the commit history of the human species, we see that anxiety was a high-priority feature request. For 99.9% of human history, the environment was loaded with predators, rival tribes, and scarcity. The user who sat around being "chill" was removed from the gene pool by a leopard. The user who heard a twig snap and immediately flooded their system with cortisol lived to reproduce.</p><p>Anxiety is a proximity alarm with the sensitivity knob ripped off.</p><p>When we try to debug our behaviors, we have to stop and ask: "What does this code do?"</p><p>Take the ticket: <strong>Issue #55: User eats entire pint of ice cream at 11 PM.</strong></p><p>The surface analysis says this is a lack of willpower. But run a Root Cause Analysis (RCA). Why is the user eating?</p><ul><li>Is it hunger? No.</li><li>Is it taste? Partially.</li><li>Is it sedation? Yes.</li></ul><p>The user is stressed, cortisol levels are high, and high-fat, high-sugar foods trigger a parasympathetic response. They physically calm you down. The ice cream eating is a load-bearing subroutine for emotional regulation.</p><p>If you delete the ice cream subroutine without replacing it with another mechanism for down-regulating stress (meditation, exercise, screaming into a pillow), the system will crash. You won't become thin; you'll become unhinged. Or you'll find a different, potentially worse patch. Alcohol and / or meth come to mind.</p><p>We deserve the respect we accord to a complex, critical system running in production. You don't go into the server room and start yanking cables because the fans are loud. You investigate and understand the dependencies.</p><h2 id="iv">IV.</h2><p>The hardest part of this philosophy is the backlog.</p><p>Once you start tracking your internal issues, really tracking them in a notebook or a literal Trello board, you'll realize something horrifying. The backlog is infinite.</p><p>You have tickets for your physical health, tickets for your career, tickets for that weird thing you do where you interrupt people, tickets for your unresolved trauma regarding your third-grade teacher, and tickets for the fact that you simply cannot remember to floss.</p><p>It's technical debt all the way down: the implied cost of additional rework caused by choosing an easy (limited) solution now instead of using a better approach that would take longer.</p><p>We are all drowning in technical debt. Maybe you spent your twenties "moving fast and breaking things" (ignoring your dental health and relationships). Now you're thirty-five, and the interest payments are due.</p><p>The novice developer looks at the mountain of technical debt and despairs. They declare "Bankruptcy" and try to rewrite the whole codebase from scratch. This is not dissimilar to the "New Year's Resolution" or the "Midlife Crisis." <strong>I will quit my job, move to a farm, and become a totally different person.</strong></p><p>This almost never works. Joel Spolsky, the founder of Stack Overflow, wrote a famous essay on why you should never rewrite code from scratch. He noted that old code is messy but battle-tested, containing thousands of bug fixes for edge cases you haven't even thought of yet. If you try to rewrite your personality from scratch, you'll re-introduce bugs you solved when you were six years old.</p><p>The alternative is "Refactoring."</p><p>Refactoring is the process of restructuring existing computer code without changing its external behavior. You clean it up, simplify the loops, rename the variables for clarity, and do it piece by piece, commit by commit.</p><p>You don't fix your entire life in a weekend. You pick one ticket.</p><p><strong>Sprint 1:</strong></p><ul><li>Goal: Fix the sleep schedule dependency.</li><li>Task: Install blackout curtains.</li><li>Task: Leave phone in the kitchen at night.</li></ul><p>You run that sprint for two weeks and verify the build. Did it work? If yes, merge it to the main branch. If no, revert and try a different patch.</p><p>This sounds tedious because it's tedious. Life is, broadly, tedious. It lacks the cinematic grandeur of a montage. We want the montage where the protagonist runs up the stairs of the Philadelphia Museum of Art and suddenly is a champion. But montages are lies. The reality is the commit log.</p><ul><li>Commit 8f4a2: Failed to wake up early.</li><li>Commit 8f4a3: Failed to wake up early.</li><li>Commit 8f4a4: Woke up early, felt tired.</li><li>Commit 8f4a5: Woke up early, felt okay.</li></ul><p>The process is incremental and boring, and it's the only way anything ever gets fixed.</p><h2 id="v">V.</h2><p>The danger in doing this is that we begin to view ourselves entirely as machines to be optimized, becoming obsessed with the metrics and <a href="https://www.joanwestenberg.com/the-map-is-not-the-territory-and-it-s-definitely-not-progress/">confusing the map for the territory</a>. I've watched this in the "Quantified Self" movement, where a good many people have excellent data on their REM cycles and are fucking miserable.</p><p>Some tickets should be marked WONTFIX.</p><p>WONTFIX is a status used when a bug is acknowledged, but the team decides the cost of fixing it outweighs the benefit, or that it isn't really a bug at all.</p><p>Maybe you are introverted and find parties draining. You could open a ticket: <strong>Issue #900: User energy drains rapidly in large groups.</strong> You could spend years trying to patch this, forcing yourself to take improv classes, drinking copious amounts of caffeine, and trying to rewrite your source code to emulate an extrovert.</p><p>Or you could mark it WONTFIX.</p><p><strong>Resolution: Working as Intended.</strong> User is designed for small group interactions and deep work. Will not patch.</p><p>This is documentation and self-knowledge, not resignation. Once you mark it WONTFIX, you stop wasting CPU cycles feeling guilty about it. You stop trying to run party_animal.exe on hardware that was optimized for library_research.exe.</p><p>We have to account for "Heisenbugs" - a bug that seems to disappear or alter its behavior when one attempts to study it.</p><p>Mental states are often Heisenbugs. Have you ever tried to relentlessly analyze why you aren't happy? The act of analysis itself creates a new form of unhappiness. You become self-conscious, hyper-aware, and rigid. You are observing the system so closely that you choke the throughput.</p><p>Sometimes, the correct debugging step is to close the laptop and go outside. Sometimes, the system self-corrects when it isn't under the microscope. We have background processes (garbage collection, sleep, dreams) that clean up the memory leaks if we just get out of the way.</p><h2 id="vi">VI.</h2><p>We are running on an architecture we do not (and cannot) entirely understand, executing code we did not write, processing input that is often malicious or corrupted. It is a miracle we function at all.</p><p>The goal of the debugging mindset is not to achieve a "Zero Bug Bounce." You'll never be free of issues. As you fix one layer of problems (survival), you reveal a new layer (existential dread). As you fix your poverty, you discover the ennui of abundance.</p><p>The goal is to move from "Catastrophic Failure" to "Known Issues."</p><p>There is a profound difference between a system that crashes randomly and a system that has a documented quirk.</p><p><strong>Scenario A:</strong> You snap at your co-worker and don't know why. You feel like a monster.</p><p><strong>Scenario B:</strong> You feel the anger rising. You recognize the signature. <strong>Ah, this is the Low Blood Sugar bug combined with the Insecurity trigger.</strong> You tell your co-worker, "I am currently experiencing a runtime error. I need to restart my system with food. Please pause input."</p><p>You are still angry. The bug is still there. But you are no longer the bug. You are the developer observing the bug.</p><p>This creates a gap, a tiny buffer overflow of space between the stimulus and the response. In that gap, as Viktor Frankl said, lies our freedom.</p><h2 id="next-steps">Next Steps:</h2><p>Where do you start?</p><p>You start by creating the repository. Buy a notebook. Open a text file. Start a Trello board.</p><p>Don't judge the bugs. Log them.</p><ul><li>Ticket #1: I feel a tightness in my chest when I open my email.</li><li>Ticket #2: I am jealous of my friend's success.</li><li>Ticket #3: I keep forgetting to call my mother.</li></ul><p>Get them out of the dark, wet hard drive of your subconscious and onto the screen. Look at them. They are spaghetti code, not demons. And code can be refactored.</p><h3 id="have-a-capture-system"><strong>Have A Capture System</strong></h3><p>Pick one tool and stick with it. The best system is the one you'll actually use.</p><ul><li>For the analog aficionado: A pocket notebook works. The Bullet Journal method, stripped of its Instagram aesthetics, is essentially a paper-based issue tracker. Carry it everywhere. When you notice a bug, log it immediately. Date, context, trigger, behavior. Don't wait until you get home because you'll forget the details and file another useless "felt bad" ticket.</li><li>For the digital minimalist: A plain text file in your notes app. Create a running document called BUGS.md or ISSUES.txt. Append to it throughout the day. The friction is low, the search is easy, and it syncs across devices.</li><li>For the visual thinker: Trello gives you a Kanban board for your psyche. Create columns for BACKLOG, IN PROGRESS, BLOCKED, and RESOLVED. Each card is a bug. You can add checklists for reproduction steps, labels for severity (is this a minor annoyance or a system-critical failure?), and due dates for your sprint goals.</li><li>For the engineer brain: Linear or GitHub Issues. If you already live in these tools for work, there's no reason your personal development can't share the workflow. Create a private repository. Use proper issue templates. Tag things by area (health, relationships, work, habits). The structure will feel familiar, and familiarity reduces friction.</li><li>For the resistant: A weekly voice memo. Every Sunday, spend five minutes talking into your phone about what crashed that week. Transcribe it later or don't. The act of verbal processing is itself a form of logging.</li></ul><h3 id="use-the-review-ritual"><strong>Use The Review Ritual</strong></h3><p>Capture without review = hoarding. You need a recurring appointment with your backlog.</p><ul><li>Weekly: Fifteen minutes, same time each week. Look at what you logged. Do you see patterns? Are the same bugs appearing repeatedly? Can you cluster them into categories? Pick one bug to focus on for the coming week. Write down a hypothesis for a patch. Be specific: "I will leave my phone in the kitchen after 9 PM" is a patch. "I will be less distracted" is not.</li><li>Monthly: Thirty minutes at the end of each month. Review your weekly notes. What patches did you try? What worked? What failed? Update the ticket status. Celebrate the ones you can mark RESOLVED. Be honest about the ones that should be marked WONTFIX. Look at the overall trajectory, not the individual data points.</li><li>Quarterly: One hour. Zoom out. Are you working on the right bugs? Sometimes we spend months optimizing a subsystem that doesn't matter while a critical process bleeds memory in the background. Ask yourself: if I could only fix one thing about how I operate, what would have the highest impact? Reprioritize the backlog accordingly.</li></ul><h3 id="adopt-the-sprint-structure"><strong>Adopt The Sprint Structure</strong></h3><p>Don't try to fix everything. Run two-week sprints focused on a single bug or a small cluster of related bugs.</p><ul><li>Week one: Observation and patch design. Gather more data on the bug. When exactly does it trigger? What are the environmental conditions? Write down your patch hypothesis. Implement it starting on day three or four.</li><li>Week two: Patch testing. Run the new behavior. Log the results daily, even if the log entry is just "patch held" or "patch failed, reverted to old behavior at 3 PM." At the end of week two, evaluate. Did the patch work? If yes, merge it: keep doing the new thing until it becomes automatic. If no, don't despair. You've eliminated one approach. Design a new patch for the next sprint.</li></ul><h3 id="embrace-maintenance-mode"><strong>Embrace Maintenance Mode</strong></h3><p>Eventually, you'll have addressed the critical bugs. The system will be more stable. You'll enter maintenance mode.</p><p>This doesn't mean you stop logging; it means the cadence changes. You shift from active debugging to passive monitoring. Keep the capture system running, but reduce the review frequency. Watch for regressions. Old bugs will resurface, especially during periods of stress. When they do, you'll have the documentation to recognize them quickly and reapply the patches that worked before.</p><h1 id="remember">Remember:</h1><p>The moth didn't intend to crash the Mark II. It was just doing what moths do, seeking warmth and light, following the only program evolution gave it. Your anxiety is doing the same thing. Your procrastination, your tendency to eat ice cream at 11 PM when the world feels like too much - these subroutines were written by a younger version of you, or by millions of years of survival pressure, and they were trying to help. They still are. They're just running on outdated assumptions in an environment that has changed.</p><p>When you treat yourself as a system to be understood rather than a sinner to be punished, the shame compiles differently. You stop asking "what the everliving fuck is wrong with me" and start asking "what is this code trying to do." The answer is almost always the same: it's trying to protect you. It's trying to keep you safe, warm, fed, loved, and alive. It's just doing it badly, with legacy methods, in a world the original developers never anticipated.</p><p>Log the bugs. Run the sprints. Mark the tickets that will never be fixed. And when the system crashes anyway, because it will, remember that you are both the code and the coder. You are the moth and the engineer who found it. You are the fail-point and the one who gets to document it, learn from it, and push a new commit in the morning.</p><p>That's a damned good thing, if you ask me.</p><p>Not that you did...</p>Blocking entire countries because of scrapers - Posts feedhttps://www.coryd.dev/posts/2026/blocking-entire-countries-because-of-scrapers2026-01-14T19:05:00.000Z<p>I use Goatcounter for analytics primarily to see where things I post might get mentioned. I don't get a ton of traffic, nor should I expect to.</p>
Read "How Prediction Markets Turned Life Into a Dystopian Gambling Experiment" - Molly White's activity feed6967e2d78d9cd5e249fd47e52026-01-14T18:39:19.000Z<article class="entry h-entry hentry"><header><div class="description">Read: </div></header><div class="content e-content"><div class="article h-cite hcite"><div class="title"><a class="u-url u-repost-of" href="https://www.theringer.com/2026/01/14/tech/prediction-markets-betting-explained-meaning-polymarket-kalshi" rel="bookmark">“<span class="p-name">How Prediction Markets Turned Life Into a Dystopian Gambling Experiment</span>”</a>. </div><div class="byline"><span class="p-author h-card">Brian Phillips</span>. <span class="read-date"> Published <time class="dt-published published" datetime="2026-01-14">January 14, 2026</time>.</span></div><blockquote class="summary p-summary entry-summary">You’re sitting in your living room trying to make a few bucks by guessing the date Israel will next strike Lebanon. Meanwhile, someone with inside knowledge of that date is planning to use it to take your money. Meanwhile, the prediction markets are taking a cut of the transaction and using it to buy lobbyists to keep oversight down, brand partnerships to make them look legitimate, and advertising to keep you gambling. Meanwhile, someone in Lebanon is sitting in their apartment hoping their building doesn’t explode. </blockquote><img src="https://www.mollywhite.net/assets/images/placeholder_social.png" alt="Illustration of Molly White sitting and typing on a laptop, on a purple background with 'Molly White' in white serif." style="display: none;"/></div><img src="https://www.mollywhite.net/assets/images/placeholder_social.png" alt="Illustration of Molly White sitting and typing on a laptop, on a purple background with 'Molly White' in white serif." style="display: none;"/></div><footer class="footer"><div class="flex-row post-meta"><div class="timestamp">Posted: <time class="dt-published" datetime="2026-01-14T18:39:19+00:00" title="January 14, 2026 at 6:39 PM UTC">January 14, 2026 at 6:39 PM UTC</time>. </div></div><div class="bottomRow"><div class="tags">Tagged: <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/kalshi" title="See all feed posts tagged "Kalshi"" rel="category tag">Kalshi</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/polymarket" title="See all feed posts tagged "Polymarket"" rel="category tag">Polymarket</a>, <a class="tag p-category" href="https://www.mollywhite.net/feed/tag/prediction_markets" title="See all feed posts tagged "prediction markets"" rel="category tag">prediction markets</a>. </div></div></footer></article>Bullet Journal Is a System for Selling More Bullet Journal - Robb Knight • Posts • Atom Feedhttps://rknight.me/blog/bullet-journal-is-a-system-for-selling-more-bullet-journal/2026-01-14T13:14:01.000Z<p>When I <a href="https://rknight.me/blog/biting-the-bullet/">bit the bullet</a> early last year, my first stop was the <a href="https://bulletjournal.com">Bullet Journal website</a>. What I found there was everything one might need to get started: introduction videos, easy to follow tutorials, blog posts, community content, it was glorious. There was also the store, as there is today, and courses, but I'm not against people making money.</p>
<p>12 months later and it's as if a completely separate entity runs the website having only been given a vague description of what it was before. I would go to the site to find a guide on a specific concept I'd previously seen and those pages were either impossible to find just by navigating or when I did find them via Google search they would 404. Not found. Get fucked. Pay us for a course instead.</p>
<p>Ignoring the fact that the website is hilariously broken in Safari and has been for months, as far as I can tell what's happened is this: Bullet Journal spent a decade relying on the community to come up with ideas, resources, write blog posts for them, and generally make BuJo the success it is but now they've decided that it's not enough to sell notebooks and pens. Now they're in the courses business: there's three of the fuckers called "plans". One of them will help you "become the author your life" which I assume is supposed to be "author OF your life" but no one is checking anything.</p>
<p>To quote Ryder, the founder of Bullet Journal:</p>
<blockquote>
<p>in September of 2014 I launched a Kickstarter to raise the funds to build a new website to curate the best of what the community was sharing</p>
</blockquote>
<p>The website is <em>nothing</em> like this now. There is no links to community content or the intro guides I read last year. It's explicitly mentioned on <a href="https://bulletjournal.com/pages/story">this page</a> that 2025 was the year for new "plans" to be launched but no mention of nuking everything else that quite frankly they didn't work on, everyone else in the community did. <a href="https://www.tinyrayofsunshine.com/blog/bullet-journal-reference-guide">This free reference guide</a> from Tiny Ray of Sunshine, as an example, was added to the official guides. Wow that's cool except where is that page now? Gone. No soup for you.</p>
<p>Oh and the the images that go along with these plans? AI generated slop because of course it is. Hundreds of dollars of courses but they can't pay an artist to draw a bloke in a hamster wheel, that would be impossible. Gotta fire up the slop machine for that. If they're using slop machines for illustrations there's no way I can trust that the courses are any better. The "author your life" plan is $1000 in case you were wondering.</p>
<figure><img src="https://cdn.rknight.me/site/2026/bullet-journal-man-on-treadmill-ai-slop.jpg" alt="A man walking in a treadmill. It's generated by AI so it looks shit." /></figure>
<p>I'm not angry about them adding "plans", courses, whatever else they want. Businesses gunna business. It's just yet another thing that was a nice thing that now isn't any more. It's just another system that exists only to either sell the system, learn about that system, or learning how to teach that system to other people at costs that are clearly designed to get employers to pay for them. A person who's curious about Bullet Journaling will hit the site, see it's not for them, and leave.</p>
<p>What I find most frustrating about this is that it <em>has</em> become a useful tool for me (I'm on my third notebook) but I can't reasonably send anyone to the site to learn about it any more. At this point, if you <em>do</em> want to find out more about bullet journalling, or journalling in general, you'd be much better served by <a href="https://www.youtube.com/c/mattragland">Matt Ragland</a> or <a href="https://www.youtube.com/jashiicorrin">Jashii Corrin</a>. I <em>could</em> recommend <a href="https://rknight.me/almanac/books/2025-01-20-the-bullet-journal-method/">the book</a> but if they can't be bothered to pay people for their art, then you shouldn't give them money either.</p>Responsible Disclosure: Chimoney Android App and KYCaid - Terence Eden’s Bloghttps://shkspr.mobi/blog/?p=648492026-01-14T12:34:52.000Z<p><a href="https://chimoney.app/">Chimoney</a> is a new "multi-currency wallet" provider. Based out of Canada, it allows users to send money to and from a variety of currencies. It also supports the new Interledger protocol for <a href="https://shkspr.mobi/blog/2025/08/security-flaws-in-the-webmonetization-site/">WebMonetization</a>.</p>
<p>It is, as far as I can tell, unregulated by any financial institution. Nevertheless, it performs a "Know Your Customer" (KYC) check on all new account in order to prevent fraud. To do this, it uses the Ukranian <a href="https://kycaid.com/">KYCaid</a> platform.</p>
<p>So far, so standard. But there's a small problem with how they both integrate.</p>
<p>I installed Chimoney's Android app and attempted to go through KYCaid's verification process. For some reason it hit me with this error message.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/error.webp" alt="Screenshot. An error occurred and an email address." width="504" class="aligncenter size-full wp-image-64856"/>
<p>Well, I'd better click that email and report the problem.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/email-protected.webp" alt="Screenshot. The email is protected, but clickable." width="504" height="240" class="aligncenter size-full wp-image-64855"/>
<p>Oh, that's odd. What happens if I click the protected link?</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/Cloudflare.webp" alt="Screenshot. Cloudflare's email protection screen." width="504" height="625" class="aligncenter size-full wp-image-64854"/>
<p>Huh! I guess I've been taken to Cloudflare's website. What happens if I click on the links on their page?</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/discord.webp" alt="Screenshot. Invitation to join Cloudflare's Discord." width="504" height="606" class="aligncenter size-full wp-image-64853"/>
<p>Looks like I can now visit any site on the web. If Cloudflare has a link to it, I can go there. For example, GitHub.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/github.webp" alt="Screenshot. GitHub page still within the Chimoney app." width="504" height="499" class="aligncenter size-full wp-image-64852"/>
<h2 id="why-is-this-a-problem"><a href="https://shkspr.mobi/blog/2026/01/responsible-disclosure-chimoney-android-app-and-kycaid/#why-is-this-a-problem">Why is this a problem?</a></h2>
<blockquote><p><a href="https://mas.owasp.org/MASTG/knowledge/android/MASVS-PLATFORM/MASTG-KNOW-0018/">MASTG-KNOW-0018: WebViews</a></p>
<p>One of the most important things to do when testing WebViews is to make sure that only trusted content can be loaded in it. Any newly loaded page could be potentially malicious, try to exploit any WebView bindings or try to phish the user. <strong>Unless you're developing a browser app, usually you'd like to restrict the pages being loaded to the domain of your app.</strong> A good practice is to prevent the user from even having the chance to input any URLs inside WebViews (which is the default on Android) nor navigate outside the trusted domains. Even when navigating on trusted domains there's still the risk that the user might encounter and click on other links to untrustworthy content</p>
<p><small>Emphasis added</small></p></blockquote>
<p>A company's app is its sacred space. It shouldn't let anyone penetrate its inner sanctum because it has no control over what that 3rd party shows its customers.</p>
<p>There's nothing stopping an external service displaying a message like "To continue, please transfer 0.1 Bitcon to …"</p>
<p>(Of course, if your KYC provider - or their CDN - decides to turn evil then you probably have bigger problems!)</p>
<p>There are some other problems. It has long been known that <a href="https://discussions.apple.com/thread/7918307?sortBy=rank">people can use in-app browsers to circumvent restrictions</a>. Some in-app browsers have <a href="https://medium.com/%40youssefhussein212103168/exploiting-insecure-android-webview-with-setallowuniversalaccessfromfileurls-c7f4f7a8db9c">insecure configurations which can be used for exploits</a>. These sorts of "accidentally open" browsers <a href="https://matan-h.com/google-has-a-secret-browser-hidden-inside-the-settings/">are often considered to be a security vulnerability</a>.</p>
<h2 id="the-fix"><a href="https://shkspr.mobi/blog/2026/01/responsible-disclosure-chimoney-android-app-and-kycaid/#the-fix">The Fix</a></h2>
<p>Ideally, an Android app like this wouldn't use a web view. It should use a KYC provider's API rather than giving them wholesale control of the user experience.</p>
<p>But, suppose you do need a webview. What's the recommendation?</p>
<p>Boring old <a href="https://blog.oversecured.com/Android-security-checklist-webview/#insufficient-url-validation">URl validation</a> using <a href="https://developer.android.com/reference/android/webkit/WebViewClient#shouldOverrideUrlLoading(android.webkit.WebView,%20android.webkit.WebResourceRequest)">Android's <code>shouldOverrideUrlLoading()</code> method</a>.</p>
<p>Essentially, your app restricts what can be seen in the webview and rejects anything else.</p>
<h2 id="risk"><a href="https://shkspr.mobi/blog/2026/01/responsible-disclosure-chimoney-android-app-and-kycaid/#risk">Risk</a></h2>
<p>Look, this is pretty low risk. A user would have to take several deliberate steps to find themselves in a place of danger.</p>
<p>Ultimately, it is "<a href="https://wiki.c2.com/?CodeSmell">Code Smell</a>" - part of the app is giving off a noxious whiff. That's something you cannot afford to have on a money transfer app. If this simple security fix wasn't implemented, what other horrors are lurking in the source code?</p>
<h2 id="contacting-the-company"><a href="https://shkspr.mobi/blog/2026/01/responsible-disclosure-chimoney-android-app-and-kycaid/#contacting-the-company">Contacting the company</a></h2>
<p>There was no <a href="https://securitytxt.org/">security.txt</a> contact - nor anything on their website about reporting security bugs. I reached out to the CEO by email, but didn't hear back.</p>
<p>In desperation, I went on to Discord and asked in their support channel for help.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/send-an-email.webp" alt="Screenshot. Someone advising me on who to email." width="504" class="aligncenter size-full wp-image-64857"/>
<p>Unfortunately, that email address didn't exist.</p>
<img src="https://shkspr.mobi/blog/wp-content/uploads/2025/11/email-chimoney.webp" alt="Bounce message." width="504" class="aligncenter size-full wp-image-64851"/>
<p>I also tried contacting KYCaid, but they seemed unable or unwilling to help - and redirected me back to Chimoney.</p>
<p>As it has been over two month since I sent them video of this bug, I'm performing a responsible disclosure to make people aware of the problem.</p>
Manga Recap 2025 - Joel's Log Fileshttps://joelchrono.xyz/blog/manga-recap-20252026-01-14T04:50:00.000Z<p>I read manga quite a lot this year, it remains one of my favorite forms of entertainment, so much so I’m even considering to get a tablet just to read it and enjoy it on a bigger screen (No, I will never turn into one of those maniacs who read manga on a laptop screen).</p>
<p>I’m rather impressed with the amount of reading I got done in this regard, it easily balances out the fact I missed my reading goal this year. I started a few very long series, continued with a lot of familiar faces, and even completed a couple of titles that I had been following for a while.</p>
<h2 id="completed-in-2025">Completed in 2025</h2>
<h3 id="ariadne-in-the-blue-sky">Ariadne in the Blue Sky</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/ariadne.webp" alt="Ariadne in the Blue Sky"/></p>
<p><strong>Start</strong>: 2025-08-10
<strong>End</strong>: 2025-11-09</p>
<p>This started out as a super random choice, if I’m honest, the kind of thing I would have never found if it wasn’t because I checked the page of the artist who worked on <em>Claymore</em> and realized that they also worked on this, which was released later on in 2017.</p>
<p>Ariadne in the Blue Sky leaves the dark fantasy, revenge story of its predecessor and goes for more wholesome setting, a journey through a colorful world full of cities and races to meet and explore, all to fulfill the dream of a girl escaping from her sheltered life dictated by her parents. This is done by teaming up with Lacile, our protagonist, a happy go lucky kid with a mysterious past and the power to weild light as a weapon.</p>
<p>Soon we realize this girl is actually a princess from a floating city in the sky, and multiple people with their own agendas want to capture her, bring her back home, or something in between.</p>
<p>This shonen manga is full of great moments and the story is a mix of fantasy and science fiction, there are many characters that well meet and join the journey. It really was a wonderful story from start to finish, and when the plot unfolds and more serious things start to happen, it only gets better. If I can complain about anything, there are quite a bit of fanservicey panels that made things kinda weird.</p>
<p>Overall, I really, really enjoyed this!</p>
<h3 id="erased">Erased</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/erased.webp" alt="Erased"/></p>
<p><strong>Start</strong>: 2025-11-18
<strong>End</strong>: 2025-11-19</p>
<p>A young adult struggling through life has the power to rewind time minutes at a time in order to avoid catastrophe. This is triggered by accident though, not at will, and even when he saves the day, he ends up in trouble for it. However, life isn’t that bad, he has dreams of becoming a Manga artist, and does honest work delivering food. Until one day an unexpected event changes everything.</p>
<p>After her mother falls victim to a serial killer and is chased by the police, he’ll be framed as the culprit, and be chased by the police. In the momment, he will accidentally trigger his power and go back—further than ever before—eighteen years in the past, as a child, still in primary school, the time where a series of serial killings happened in his city, by the same man who murdered his mom. He’ll meet and befriend one of the victims and stay close, with the goal of saving them and figure out how to trap the killer, and save his future.</p>
<p>This was absolutely incredible to read, the elements of mystery, mixed with coming of age elements, the nostalgia for being a kid again, the thrill of the chase and the revelations. The way the plot unfolds and of course how the past and the present intertwine, it was a fantastic read. A pretty short manga that I finished in a couple days.</p>
<h3 id="komi-cant-communicate">Komi Can’t Communicate</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/komi.webp" alt="Komi"/></p>
<p><strong>Start</strong>: 2021-11-13
<strong>End</strong>: 2025-12-05</p>
<p>Everyone should know about Komi at this point, one of the most popular rom-com mangas and animes of late. Komi-san is the prettiest girl at school, but she’s also completely unable to hold a conversation. Since she’s so pretty, nobody even tries to approach her anyway, giving her a certain reputation as a serious, prestigious girl.</p>
<p>Of course, she’s just normal, and Tadano sees through this, becomes his friend, and decides to help her on a goal of hers, to make 100 friends in a high school full of weirdos!</p>
<p>This was the first manga I read, I was so new into this I even felt shame for reading a cutesy romance. Honestly, looking back, I’m so happy I gave it a go! It went a little overboard with the amount of characters it handles. Komi and Tadano make a great couple, and I loved the variety of situations they went through. Despite how convoluted it got, I think it stuck the landing really well and it was a wonderful journey to finally complete.</p>
<h2 id="started-in-2025">Started in 2025</h2>
<h3 id="hunter-x-hunter">Hunter x Hunter</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/hunter.webp" alt="Hunter x Hunter"/></p>
<p><strong>Start</strong>: 2025-01-23</p>
<p>This is simple. <em>Hunter x Hunter</em> is absolutely my favorite manga this year. A fantastic journey that I started in January and constantly read until I was forced to wait, because it’s currently on hiatus.</p>
<p>This is simply a masterpiece. We follow Gon at first, a young happy go lucky kid that wants to find his dad and follow on his footsteps of becoming a Hunter.</p>
<p>Wait, what are you saying? That’s the most generic and predictable plot ever? Shut up and listen to me.</p>
<p><strong>This is as good as it gets.</strong></p>
<p>There is an artistry to this stuff, and Togashi—the creator of this series—knows this very well. Everytime you think the story will go somewhere, it goes elsewhere, every arc I’ve read of this is unique and a pleasure. If <em>Ariadne</em> manages some great plot twists, flashbacks and the like that move the story forward, <em>HxH</em> will completely flip the script, it will go from a tournament arc to a videogame isekai to a heist to a political intrigue, and of course, the ultimate, the glorious <em>Chimera Ant Arc</em>, one of the most incredible stories I’ve ever read. There are dozens and dozens of chapters where Gon won’t even show up. The whole party of characters is awesome and each have their own incredible journeys, and when they team up? Even better.</p>
<p>Absolutely give this a read, but if you won’t be able to stop like me for more chapters to come out, maybe wait…</p>
<h3 id="chainsaw-man-part-2">Chainsaw Man Part 2</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/chainsaw.webp" alt="Chainsaw Man"/></p>
<p><strong>Start: 2025-09-18</strong></p>
<p>If <em>Hunter x Hunter</em> is the ultimate example of what a shonen should be, <em>Chainsaw Man</em> is the ultimate deconstruction of the genre. We don’t have a happy go lucky guy, we got a horny dude who gets combined with the chainsaw devil, and a bunch of other people with emotional issues who also have contracts with devils, all of this to keep other devils in check and humanity alive, or at least try to.</p>
<p><em>Hunter x Hunter</em> peeks behind the courtains of the stereotypes of the genre many times—and it does so masterfully. However, <em>Chainsaw Man</em> rips off the curtains and presents us a bleak reality where nobody gets what they want just because they are trying their best. I finished the first part of the series ages ago. In Part 2, we get a new protagonist with a life that also sucks, and she blames Chainsaw Man for it. She ends up in terrible situations time after time, and ends up combining with another devil who wants a similar goal, to defeat Chainsaw Man.</p>
<p>The events going on here are funny, horrifying, often full with sexual tension and of course, carnage everywhere. It is not a read for everyone, but it eventually becomes a sort of parody, while also being sort of serious, and having and excentric undertone the whole way through, it feels like the author is perfectly aware of how ridiculous everything is, while still getting us to care about the characters and what sort of lesson will be learned in the end.</p>
<h3 id="usogui">Usogui</h3>
<p><img src="https://joelchrono.xyz/assets/img/blogs/2026-01-11/usogui.webp" alt="Usogui"/></p>
<p><strong>Start</strong>: 2025-03-21</p>
<p>While the weakest of the entries I started this year, this is only because the other two are absolute masterpieces almost from the getgo, while this was a bit of a random pick.</p>
<p>This is a gambling manga with action elements mixed into it. That’s the main draw of this story. It’s not just about a smart guy who makes bets and gets rich. This is a gambler who stakes his life against all odds at every moment.</p>
<p>There are Yakuza-like organizations and plots to cause an economic crisis by launching missiles at some buildings. At the same time there’s a seemingly simple game of <em>Old Maid</em> going on where the loser will end up dead, hanged by the neck.</p>
<p>The one thing that can be kinda rough about this manga is the art. It is completely serviceable, but it’s kinda realistic and kinda off at once, it is a known fact that it will get <em>a lot better</em> later on—just look at some screenshots of some popular panels and they are insane—and I am looking forward to that. Oh, and I only read around 60 chapters so far, and it has more than 500! I will probably stick with it though, it’s kind of hype to see the types of bets and the stakes going on each arc.</p>
<h2 id="ongoing">Ongoing</h2>
<ul>
<li>
<p><strong>Frieren: Beyond Journey’s End</strong> - Still a fantastic journey thus far, but it got in hiatus again and I am caught up. The current arc involves a plot against the most powerful mage alive, a ball room dance and a visit to the longest-lasting empire in the world! It is exhilarating. I love the multiple plots coming together, the “bad guys” are having quite the spotlight as well which makes all the different perspectives of why they want to do what they want to do.</p>
</li>
<li>
<p><strong>Kingdom</strong> - This is PEAK alongside Hunter x Hunter, but we are dealing with a true Epic with 800+ chapters. We follow the journey of Shin, a slave boy with a dream, who at this point in time has managed to become a general of his own army, fighting for the unification of all of China under the kingdom of Qin. Right now, the biggest war against Zhao, a state opposing this unification, and Riboku, the biggest obstacle, the general who wants to put a stop to it, are battling against our protagonists. Each army has 400,000 men, and the stakes are higher than ever.</p>
</li>
<li>
<p><strong>DanDaDan</strong> - One of the craziest manga I love to read, the protagonist somehow ended up shrinking and everyone is trying to find a way to cure her, they are on a plane and a giant shark tornado destroys it, they use a giant serpent to go to the eye of the tornado (a literal giant eye) and stop it, I am not sure of what else is going on, but it’s ridiculously fun and actually heartwarming.</p>
</li>
<li>
<p><strong>Blue Lock</strong> - A new arc approaches, the U-20 World Cup! After some good training, the team is ready to face in the group phase with England, France and Nigeria! Japan is at their best, but will it be enough? Just some epic shots and moments to be found here, super entertaining.</p>
</li>
<li>
<p><strong>Spy x Family</strong> - The slice of manga prevails! Who cares if the plot doesn’t move forward even an inch? All the characters and side-characters keep getting fleshed out in wonderful ways and I honestly can’t complain at all. One of the most beautiful backstories or romance and tragedy I’ve read happened in a few chapters, and it has been a lovely time.</p>
</li>
<li>
<p><strong>My Wife is from a Thousand Years Ago</strong> - Wholesome rom-com! I just love it! They finally got married (at least on paper) and now they are just getting ready for a proper wedding and the like (they really took more than a hundred parents for the lady to actually become a wife, but anyway). This just just so fun and wholesome to read, and the fact it is chinese means some interesting cultural stuff happens too.</p>
</li>
<li>
<p><strong>Yokohama Kaidashu Kikou</strong> - I love this with a passion, you have no idea, I love to read every chapter, I savour them like the sweetest of treats. A hopeful and nostalgic post-apocalyptic land where we follow the peaceful life of Alpha, a robot lady with a coffee shop and a lot of friends. Please please please read this one, it is filled with charm and love, hope and melancholy. I don’t ever want it to end.</p>
</li>
<li>
<p><strong>Sakamoto Days</strong> - Ultimate action sequences at their best, this is pretty much just a super cool shonen manga to be reading, it doesn’t have the best story but I absolutely love the art and the characters. It has been a while though.</p>
</li>
<li>
<p><strong>How to Grill Our Love</strong> - A wonderful rom-com manga where the couple is actually married in the first few chapters, and they bond over grilling food. Of course, this also means we get some wonderful art that will get you very hungry. It’s really cute though! I love it.</p>
</li>
<li>
<p><strong>The Way of the House Husband</strong> - Haven’t gone back to this one in a while, but it’s a very funny comedy manga about an ex-Yakuza who married and lives a normal life as a house husband, but everyone is scared of him and his funny gangster mannerisms.</p>
</li>
<li>
<p><strong>Uncle from Another World</strong> - I should return to this one too, I just haven’t had the drive for it! It’s a fun one, half isekai, half slice of life. I guess I just got plenty of good fantasy to fill myself.</p>
</li>
<li>
<p><strong>One Punch Man</strong> - It’s One Punch Man, I don’t need to tell you anymore. It’s always a sight to behold, even if the story is a little bit wonky right now.</p>
</li>
</ul>
<h2 id="finishing-thoughts">Finishing thoughts</h2>
<p>What a great year it was for my manga I must say, I absolutely loved a lot of my ongoing series, but the highlight has to go to <em>Hunter x Hunter</em>, what a wonderful discovery, I wish I had started it earlier but at the same time I didn’t because I don’t wanna be waiting forever for the next chapter.</p>
<p>The fact that <em>Komi Can’t Communicate</em> is over is also kind of crazy for me, and the other two mangas I finished were awesome too for completely different reasons.</p>
<p>Looking forward to how this year goes!</p>
<p>This is day 3 of <a href="https://100daystooffload.com">#100DaysToOffload</a></p>
<p>
<a href="mailto:me@joelchrono.xyz?subject=Manga Recap 2025">Reply to this post via email</a> |
<a href="https://fosstodon.org/@joel/115891652240172381">Reply on Fediverse</a>
</p>