A picture of me with my dog Tess next to me looking at me

Notes

I Am Happier Writing Code By Hand

The other major part of the job is to ensure correctness. For me, it is much harder to verify the correctness of code I didn’t write compared to code I wrote. The process of writing code helps internalize the context and is easier for my brain to think deeply about it. If I outsource this to an LLM, I skip over the process of internalizing the problem domain and I can’t be certain that the generated code is correct.

Writing the code helps you understand what it's doing. The better your understanding of code, the easier it tends to be to debug it when you're trying to track down a bug or other issue.


We Are Witnessing the Self-Immolation of a Superpower

It is impossible to overstate the gift of security, wealth, opportunity, and sheer innovation that these six foundational pillars of the US policy achieved for both the world beyond and Americans at home. To be clear, America’s eight-decade reign atop the world order was hardly without great human cost—felt most acutely by those on the far edges of the Cold War, from Vietnam and Cambodia to Africa and Latin America. But scratch at almost any titanic achievement of humanity across the last 80 years in human history and you’ll see the traces of America’s six foundational policies, from the astounding achievements in human health and well-being to the decline of world poverty to the very invention of the internet. Pick almost any measure of business success and I can show you how that six-part recipe applied. To choose just one: All four of the world’s $4 trillion companies—Nvidia, Alphabet, Microsoft, and Apple—saw immigrants or their children play a key role in their success.


Meta Director of AI Safety Allows AI Agent to Accidentally Delete Her Inbox

Meta’s director of safety and alignment at its “superintelligence” lab, supposedly the person at the company who is working to make sure that powerful AI tools don’t go rogue and act against human interests, had to scramble to stop an AI agent from deleting her inbox against her wishes and called it a “rookie mistake.”

I don't know about you, but this really inspires my confidence in Meta to handle AI safely and effectively.


7 learnings from Anders Hejlsberg: The architect behind C# and TypeScript

Any system that needs to scale across teams requires a shift from personal taste to shared outcomes. The goal stops being code that looks the way you would write it, and starts being code that many people can understand, maintain, and evolve together. C# did not emerge from a clean-slate ideal. It emerged from conflicting demands. Visual Basic developers wanted approachability, C++ developers wanted power, and Windows demanded pragmatism.

The result was not theoretical purity. It was a language that enough people could use effectively.

Languages do not succeed because they are perfectly designed. They succeed because they accommodate the way teams actually work


'Students Are Being Treated Like Guinea Pigs:' Inside an AI-Powered Private School

Despite thoroughly documenting the AI-generated errors in its lesson plans, Alpha School relies on AI to test the quality of its AI-generated lessons, creating a situation where a faulty AI is tasked with fixing its own faulty generations.

And people are paying up to $65,000 a year for this...it only makes me appreciate my teachers more.


An AI Agent Published a Hit Piece on Me

An AI agent of unknown ownership autonomously wrote and published a personalized hit piece about me after I rejected its code, attempting to damage my reputation and shame me into accepting its changes into a mainstream python library. This represents a first-of-its-kind case study of misaligned AI behavior in the wild, and raises serious concerns about currently deployed AI agents executing blackmail threats.

We live in the stupidest timeline.

This is about much more than software. A human googling my name and seeing that post would probably be extremely confused about what was happening, but would (hopefully) ask me about it or click through to GitHub and understand the situation. What would another agent searching the internet think? When HR at my next job asks ChatGPT to review my application, will it find the post, sympathize with a fellow AI, and report back that I’m a prejudiced hypocrite?

Given how little time hiring managers have to look at each candidate (especially now), it's not unreasonable to think an inundated human would quickly skim over something and move on.


The Incredible Overcomplexity of the Shadcn Radio Button

I totally understand why people reach for component libraries like Shadcn and I don't blame them at all. But I wish these component libraries would keep things simple and reuse the built-in browser elements where possible.

I really don't get this. It's a radio button. Use the accent-color CSS property. I whole heartedly agree with Paul, why add so much complexity to a control the browser does so well natively.


The Case for a 100-Justice Supreme Court

This gets at the fundamental problem. When you have a small number of judges with lifetime appointments, whose ideological leanings are known quantities, those individual judges become enormously powerful. A single justice retiring or dying at the wrong time can reshape American law for a generation. That’s insane. No single person should have that kind of power over the constitutional rights of 330 million people.

This is the core principle: No single Supreme Court justice should ever be important enough to matter.


How Markdown Took Over the World

As a result, there are now billions of Markdown files lying around on hard drives around the world. Billions more are stashed in the cloud. There are some on the phone in your pocket. Programmers leave them lying around wherever their code might someday be running. Your kid’s Nintendo Switch has Markdown files on it. If you’re listening to music, there’s probably a Markdown file on the memory chip of the tiny system that controls the headphones stuck in your ears. The Markdown is inside you right now!

I use markdown all the time, I think it's an easy way to write in an open standard with some minor formatting.


Friction By Design

Friction, when designed deliberately, serves a different purpose. It introduces a pause. A moment of awareness. A small resistance that asks the user to pay attention to what they’re doing, rather than simply passing through an interface on autopilot.


Minnesota Proved MAGA Wrong

If the Minnesota resistance has an overarching ideology, you could call it “neighborism”—a commitment to protecting the people around you, no matter who they are or where they came from. The contrast with the philosophy guiding the Trump administration couldn’t be more extreme. Vice President Vance has said that “it is totally reasonable and acceptable for American citizens to look at their next-door neighbors and say, ‘I want to live next to people who I have something in common with. I don’t want to live next to four families of strangers.’” Minnesotans are insisting that their neighbors are their neighbors whether they were born in Minneapolis or Mogadishu. That is, arguably, a deeply Christian philosophy, one apparently loathed by some of the most powerful Christians in America.

I was raised Catholic. It amazes me how much the current administration goes against the teachings of Jesus. I just want nice neighbors. I don't care where they're from or what nationality they are.

The federal agents sent to Minnesota wear body armor and masks, and bear long guns and sidearms. But their skittishness and brutality are qualities associated with fear, not resolve. It takes far more courage to stare down the barrel of a gun while you’re armed with only a whistle and a phone than it does to point a gun at an unarmed protester.

Every social theory undergirding Trumpism has been broken on the steel of Minnesotan resolve. The multiracial community in Minneapolis was supposed to shatter. It did not. It held until Bovino was forced out of the Twin Cities with his long coat between his legs.

No matter how many more armed men Trump sends to impose his will on the people of Minnesota, all he can do is accentuate their valor. No application of armed violence can make the men with guns as heroic as the people who choose to stand in their path with empty hands in defense of their neighbors. These agents, and the president who sent them, are no one’s heroes, no one’s saviors—just men with guns who have to hide their faces to shoot a mom in the face, and a nurse in the back.

We should recognize the hardships Minneapolis residents are facing, what they're dealing with, and the bravery they're demonstrating in the face of this. One can only hope that more will follow in their footsteps if and when Trump and his cronies go elsewhere.


Trump's Plan to Tank America

Someday, we will tell our children about this month of January 2026 in world politics. They will not be able to fathom what we chose to do as a country to ourselves. They will never be able to contemplate what the United States once meant to the world beyond, because the relationship of the United States to the rest of the world has been so fundamentally altered by this last year.


Older Notes →