Thursday, December 11, 2025

doing SSR before it was cool

React got hacked…and it’s WAY WORSE than you think.

Again, more grist for the "old man yells at (amazon) cloud" mill... 
the drive to SSR combined with the "necessary coolness" of isomorphic code that can run browser and server side... it just sets up that complexity footprint that allows for stuff like this.

I'm not pitching a return to bad old "JSP pages that use jQuery for the fun stuff", but at least that era had clearly defined boundaries. The "UI Guy" role used to fundamentally be a server side rendering space, we spent a decade going against that as we urgently set aside the web's idiomatic way of modeling the world for trying to "feel like an app", and in trying to swing back... well... there are some ugly security misses.

Friday, December 5, 2025

better window titles in vs code

At work we have a monorepo using module federation, and often I find it expedient to open a VS Code window just on the module I'm working on, so ctrl-p and ctrl-shift-f are scoped to the problem at hand. 

(Yes for work I'm back on Windows)

One problem is that by default windows are titled first by the current open file - but you can ctrl-, or cmd-, to open up the settings, look for "window.title" then arrange the string so that rootName is first. This means the current open "folder"/app is more visible on the task bar or alt-tab window selector,

Monday, December 1, 2025

advent-ure

Years ago I had an annual tradition of making "Virtual Advent Calendars" - little toys and games that could run in the browser, one each day for Dec 1-25.

I was heartened to find out that the first years' (which I thought were lost because Java Applets are now deprecated) can be run if you use a Chrome plugin called CheerpJ.

Anyway, here are links to all 7:
2009 (Java Applet)
2011 (Java Applet)
2012 (Started remaking in JS)
2013 (Seasons)
Ed Emberly Animals (plus Santa)
2015 (Games)
2016 (Finale)

Sometimes I miss making these things! It was a fun little tradition, and nice creative outlet.