About

Hello. I'm Walt 👋
I've run and maintained thatsoftwaredude.com for over 10 years.
I've been programming for over 20 years.
I taught for a coding bootcamp for over 4 years.
And I've been the technical co-founder of 3 startups.
Much of that is documented in the following hubs

Contact

For any questions, comments or just to say hello, feel free to leave me a message right over here

Developer Hubs

Check out the developer hubs. Each hub contains articles, guides, helpful links and more related to its topic.

Latest

Published on: 6/4/2026 - 4 min read
Use Node's package.json imports field for small private aliases like #db, #http/*, and #config without relying on a bundler alias....
Published on: 6/1/2026 - 5 min read
The Cookie Store API is the cleaner way to work with script-visible browser cookies. It gives you promise-based reads, object-shaped writes, deletes, and change events instead of forcing you to parse and assign `document.cookie` strings. ...
Published on: 5/28/2026 - 4 min read
JavaScript now has native `Uint8Array` helpers for converting bytes to and from Base64 and hex. Use them when your data is actually bytes: file chunks, image payloads, cryptographic output, compact URL tokens, or binary API responses. They are cleaner than `atob()` and `btoa()` because they work with `Uint8Array` directly....
Published on: 5/26/2026 - 6 min read
HTML-in-Canvas is big news because it targets one of the worst tradeoffs in web development: canvas gives you powerful rendering, but once you draw your UI there, you lose a lot of normal browser behavior. Chrome's experimental origin trial points toward a better model where a canvas app can draw real HTML while keeping browser-managed text, controls, focus, accessibility, and interaction....
Published on: 5/22/2026 - 5 min read
In Vite, a variable that starts with `VITE_` is public browser configuration, not a secret. Vite exposes it through `import.meta.env` and bundles it into client-side code at build time, so use `VITE_` for values like API base URLs, keep real secrets on the server, and only use `loadEnv()` when `.env` values need to shape `vite.config.*`....
Published on: 5/21/2026 - 0 min read
Use the Web Locks API when the same web app can be open in multiple tabs and only one tab or worker should run a browser-side job at a time. It is a clean fit for sync jobs, cache refreshes, IndexedDB maintenance, and polling loops that should not stampede just because the user opened your app twice....