Maintainer @happyview.dev Founder @cartridge.dev & @birb.house Maintainer of HappyView, the Game Dev feeds, and @ozone.birb.house. Oxford comma defender. He/him.
HappyView v2 ships as a single binary with native OAuth, built-in backfill and real-time indexing, SQLite support, and a new WASM plugin system. No more companion services required.
The Atmosphere is growing beyond 'one app per lexicon.' Here's a thought experiment on shared rendering context.
After my critique of Bluesky's 2026 Report resonated across the Atmosphere, the company's new interim CEO reached out. We talked about what went wrong, what collaboration should look like, and why private data is the next test of whether the words match the work.
At AtmosphereConf, Bluesky celebrated its community, then signaled it's willing to eat them alive. No context. No acknowledgment. I was in the room.
As the Atmosphere grows beyond Bluesky, assuming every user has a Bluesky profile won't hold up. A base profile sounds like the fix, but the UX gets weird fast. Lexicon generics — a pattern built from existing ATProto concepts — could make profile-type records discoverable and translatable across apps without flattening them into a single record.
Yesterday's headline in The Verge had people planning their Discord exodus overnight. But the real story isn't about Discord — it's about legislators demanding surveillance infrastructure.
Managing the communities around open source software is a full time job in itself, and we maintainers can use all the help we can get.
The debate about tabs vs spaces is as old as the internet itself (I assume), and the way that we go about deciding which one to use is far more selfish than you realise.
Writing RegEx has always felt like using blood to draw runes in the dirt for the purpose of enacting an arcane incantation, but... maybe it doesn't have to be that way. 🤔
Twitch has treated me well, but it's time to try out some greener pastures.
Have you ever wondered what you'd do if you spent the day working on a huge new feature, only for your machine to catch on fire before you push the code? Well… I'll bet you're wondering about it now. 🙃
I posted a gif of some new game dev work, and the amazing @TimBeaudet asked me a few questions about what I'm working on.
Ana Tudor asked this morning about using the Chrome DevTools for testing CSS performance:
Data modeling makes everything easier when you're building an app. I'll explore my own data modeling process and discuss how I decide what data I need in my database.
Web workers are magical. They allow for multi-threading in JavaScript, a language that has been single threaded *since the beginning*. Their practical applications cover pretty much everything we do in web applications... so why isn't anybody using them‽ 🤔
Copy pasta doesn't have to be that hard.
...or, Why the Hamburger Icon is Awesome.
Browser caching is one of the best ways to take care of your users while also speeding up your website... so why is it so hard?
Handlebars is **awesome**. I can separate my template logic from my application logic? Yes, please. When I try to use Handlebars in my local editor, though, it vomits all over those ugly `<script>` tags. Fortunately there’s an awesome, future-friendly, spec-compliant solution.
A response to Raymmar Tirado’s 7 Reasons Why You Will Never Do Anything Amazing With Your Life