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

Notes

React Won By Default - And It’s Killing Frontend Innovation

When teams need a new frontend, the conversation rarely starts with “What are the constraints and which tool best fits them?” It often starts with “Let’s use React; everyone knows React.” That reflex creates a self-perpetuating cycle where network effects, rather than technical fit, decide architecture.

I'd be lying if I said that my knowledge of React makes it a quick choice.

React’s dominance creates self-reinforcing barriers. Job postings ask for “React developers” rather than “frontend engineers,” limiting skill diversity. Component libraries and team muscle memory create institutional inertia.

Risk-averse leaders choose the “safe” option. Schools teach what jobs ask for. The cycle continues independent of technical merit.

That’s not healthy competition; it’s ecosystem capture by default.


Targeting Specific Characters with CSS Rules

Because why not have some fun with your designs.


The Lifeblood of the Web

A lot of us spend the majority of our days in front of a screen. We have online conversations and collaborate with people from all over the world. We read each other’s blog posts and social media rants. But behind every line of code, behind every post about the latest CSS tricks, behind every talk and video tutorial, there’s a real person. A person with a story, with struggles, with a life. And a few of those people are now here at the conference. That’s when you realize: the Web isn’t just a bunch of servers and websites. The Web is the people building it. The Web is community.

I can't say I've ever been to a conference, but the community out there is awesome. So many web devs building cool stuff and sharing their creations.


We Are Not Fascists, and If You Call Us Fascists, We Will Arrest You

So, stop claiming that we want to deny you freedom of expression; otherwise, we’ll have no choice but to take that freedom away.


AI Slop Invades the Office

The Harvard Business Review study came out the day after a Financial Times_analysis of hundreds of earnings reports and shareholder meeting transcripts filed by S&P 500 companies that found huge firms are having trouble articulating the specific benefits of widespread AI adoption but have had no trouble explaining the risks and downsides the technology has posed to their businesses: “The biggest US-listed companies keep talking about artificial intelligence. But other than the ‘fear of missing out,’ few appear to be able to describe how the technology is changing their businesses for the better,” the Financial Times found. “Most of the anticipated benefits, such as increased productivity, were vaguely stated and harder to categorize than the risks.”

No single study on AI in the workplace is going to be definitive, but evidence is mounting that AI is affecting people’s work in the same way it’s affecting everything else: It is making it easier to output low-quality slop that other people then have to wade through.


The “Lethal Trifecta”

The great works of Victorian England were erected by engineers who could not be sure of the properties of the materials they were using. In particular, whether by incompetence or malfeasance, the iron of the period was often not up to snuff. As a consequence, engineers erred on the side of caution, overbuilding to incorporate redundancy into their creations. The result was a series of centuries-spanning masterpieces.

AI-security providers do not think like this. Conventional coding is a deterministic practice. Security vulnerabilities are seen as errors to be fixed, and when fixed, they go away. AI engineers, inculcated in this way of thinking from their schooldays, therefore often act as if problems can be solved just with more training data and more astute system prompts.

More risks from vibe coding. If you're going to use AI in production environments, you better be able to understand and work with the code it spits out.


"Best practice" is Just Your Opinion

When we use the term "best practice", it sounds like what we're saying is, "what you've done is fine, but here's another way you could have done it." When in fact, what we're really saying is, "I want you to fix this accessibility issue, but I can't technically fail you on it, because it's outside the scope of this particular standard."


I Made a Floppy Disk from Scratch

This was just so cool.


It’s time for modern CSS to kill the SPA

While we were busy reinventing navigation in JavaScript, the platform quietly solved the problem.

Modern browsers – specifically Chromium-based ones like Chrome and Edge – now support native, declarative page transitions. With the View Transitions API, you can animate between two documents – including full page navigations – without needing a single line of JavaScript.

Yes, really.

Let the browsers do as much of the work as possible.


Is It Still ‘Trump Derangement Syndrome’ If All The Predictions Were Accurate?

Every single person who said we were being hysterical about Trump being an existential threat should be forced to explain how the President seizing control of the capital’s police force and deploying military units to forcibly relocate citizens represents normal democratic governance.

They called us hysterical when we said he’d use the military against civilians. He’s literally doing it right now. They called us alarmist when we said he’d seize control of law enforcement. He just placed D.C. police under the direct command of his Attorney General.

They called us deranged when we said he’d create fake emergencies to justify authoritarian power grabs. He’s invoking emergency powers while violent crime is at a 30-year low.

They said the institutions would hold. The institutions are being commandeered in real time.

They said the generals would refuse illegal orders. The National Guard is already deployed.

They said we were exaggerating the fascist threat. He’s literally declaring “Liberation Day” while seizing control of the capital.

Remember who told you this was hysteria.


What We Lost with PHP and jQuery

There was a time when building a website felt straightforward. You'd write some HTML, add PHP for dynamic content, sprinkle in jQuery for interactions, upload it to your server, and you were done. No package managers, no build processes, no debates about hydration strategies.

My first big personal project was built using both PHP and jQuery. I miss those days. It was easy, write some PHP and JavaScript, copy the files, and refresh the page.


Sit On Your Ass Web Development

In short: spend less time glueing together tools and frameworks on top of the browser, and more time bridging tools and APIs inside of the browser. Then get out of your own way and go sit on your ass. You might find yourself more productive than ever!


← Newer Notes Older Notes →