Amazing endorsement of X. This really is where you'll find the most optimistic, forward-looking people in tech.
The poll so far between Twitter, Bluesky and Mastodon. I think it looks less absurd than last time, but still pretty clear that the base is divided. xitter.cf/mitsuhiko/status/21143…
"Slop" has become a comfort blanket for a cohort of programmers stuck somewhere between anger and bargaining on their way to acceptance. There might be some kicking and screaming, maybe a little crying, but eventually you have to let the blanket go and update your priors.
Adam Bulmer retweeted
Some people seem to be surprised that an old geezer like me could adapt so quickly to the newest tech.
The thing is, I've been a programmer for over 60 years. And every single year brings another adaptation to new tech. Adapting to new tech is what we programmers do on a regular basis. Why would I stop now?
Adam Bulmer retweeted
What saddens me most about AI is seeing talented developers ship products far below the quality bar they set before agentic engineering became a thing.
People excuse low quality because it took little effort. Don’t. Use AI to raise the bar.
Starting today, we are making @base_ui the default component library in shadcn/ui.
First, a bit of history. When shadcn/ui launched in 2023, it was built on Radix. At the time, nothing else came close. Headless. Accessible. Composable.
Fast forward a few years and the team who built Radix are building something new: Base UI.
Adam Bulmer retweeted
Replying to @badlogicgames
Effect is an impossible product to market
It also happens to be the best way to build anything robust in TypeScript
Adam Bulmer retweeted
The age of toys is over…?
#ToyStory5 is only in theaters June 19, 2026.
Toy Story 5 | Teaser Trailer
Adam Bulmer retweeted
Designers not learning how to make incredible animations in Rive in 2025 are about as left behind as developers not using AI
xitter.cf/anoopkumar_ch/status/1…
Adam Bulmer retweeted
The majestic monolith remains undefeated for the vast majority of web apps. Replacing method calls with network calls makes everything harder, slower, and more brittle. It should be the absolute last resort. youtube.com/watch?v=rkXGSLf-…
At a past company, the head of engineering and the principal engineers decided to break our Ruby on Rails application into a Go microservices mesh.
They created very detailed design documents and architecture diagrams. They went all out and used Kubernetes, gRPC, service templates, the whole shebang.
The whole senior engineering leadership came from Amazon, where they were used to each team owning a distinct service. They tried to apply that model directly. But our issues were with code ownership and poor domain modeling.
The entire application could have run on just a handful of EC2 instances.
What was the result?
Five years later, 70% of the application is still running on the Ruby on Rails monolith. Never completed the migration. But now they have to maintain two systems.
None of the original leadership works there anymore.
Adam Bulmer retweeted
We've undermined, if not vandalized, the beauty of the internet by centralizing so much with the cloud. But it's never too late to fix that mistake.
Adam Bulmer retweeted
Really enjoyed @dhh rant about the state of the web ecosystem. Merchants of complexity everywhere! youtube.com/watch?v=gcwzWzC7…
Adam Bulmer retweeted
New in Xcode 26 Beta 7: Users can now log into their Claude account from Xcode.
Generate code and documentation, automatically fix errors, and create inline playgrounds using coding intelligence features in Xcode, powered by Claude Sonnet 4.
Adam Bulmer retweeted
Developers spend 90% of their time figuring out problems caused by solutions that saved 10% of their time.
Adam Bulmer retweeted
Some thoughts on Radix, component libraries, and shadcn/ui.
We’re at that point in the web dev cycle where we’re talking about component libraries again. That’s okay. With Radix receiving fewer updates, it’s a conversation worth having.
Let me start with this and I’ll bold it: The worst thing you can do right now for your production app is switch component libraries.
Don’t do it. That’s not where your time or resources should go. Whatever bug you’re seeing with Radix in your app, you’ll likely run into more, including new ones, with something else. (No shade to anyone. That’s just how code works.)
Yes, Radix is getting fewer updates. But Radix is still a mature, well-designed library, battle-tested and used in millions of production apps. Code doesn’t stop working just because maintainers move on. That’s the strength of open source. And what Radix does, it still does extremely well.
Here’s what I’d suggest:
- Already using Radix in prod? Stick with it.
- Starting a new project? Consider Radix, React Aria, or Ariakit. All great choices.
- Using Radix and thinking what's next? Keep an eye on Base UI (we are). It’s built by the same smart team that created Radix. They’ve done it once. Now they get to do it again and it’s looking really good (currently in beta).
- Hit a bug with Radix and can’t find a fix or patch? Try testing the equivalent from Base UI. The APIs are very similar.
- shadcn is built for this. Code you own. Code you can improve, rewrite or replaced.
The most important thing: Use something that works for you and that you understand. Your component library should be stable. This isn’t where you want to take risks in your tech stack.
Every new project (not just component libraries) goes through growing pains: bugs, API changes, missing features, incomplete docs. It’s okay to wait it out, especially for production apps.
Now, where does shadcn/ui fit into all of this?
shadcn (unfortunately named 😅) is not a component library. It’s an idea. It’s a combination of a few things: an open abstraction, great defaults, and a distribution system.
- An open abstraction built on top of several component libraries. Radix being one of them. It’s code you’d write yourself, structured in a way that’s easier to work with. Loved by LLMs.
- Carefully chosen defaults that handle the smaller things like focus states, animation styles, variants, and components that naturally fit with one another. Just enough to be a great starting point, and just enough to get out of the way when you’re ready to build your own design system.
- A distribution system that makes it easy to build, generate, and share code. Built for AI.
The component library is just one layer of shadcn. And if it ever comes to it, a swappable one.
Adam Bulmer retweeted
Hello FLUX.1 Kontext!
Kontext is a new state-of-the-art image editing model from Black Forest Labs. It's live now on Replicate.
You can edit images with words: Change clothes, restyle scenes, rewrite text, all from a prompt. It just works 🔥
Pro and Max:
replicate.com/black-forest-l…
replicate.com/black-forest-l…
Adam Bulmer retweeted
AI is awesome, but do you know what else is awesome? Not releasing AI-powered features until you've actually built something that's way better than what it was without. Not every feature you build or explore has to ship! (Apple used to know this).
Adam Bulmer retweeted
AI coding tools really like using useState() and useEffect() a lot in React apps
This is very good news for experienced React devs worried that their jobs are going to be replaced
Adam Bulmer retweeted
It's my 33rd birthday! 🎂🥳
I'm giving away 10 licenses for @zerotoshipped - the ultimate starter kit that will help you finally ship that idea ⛴️
all you gotta do is RT this and put your email in the form 👇



























