Tom MacWright
2025@macwright.com
Tom MacWright
Writing
Reading
Micro
Photos
Drawings
Projects
About…
Auto
Light
Dark
Micro archive
I was a fan of Deno's security model
2026-11-09
Convex hull
2026-11-06
Simple Statistics 8
2026-10-28
Uglify bug
2026-09-16
New Observable
2026-09-02
Lawnmower story
2026-08-25
The new geojson.io
2026-08-19
Subscription minimizing
2026-08-13
Encodings
2026-07-23
Effect notes: v4, Effect.promise, and TaggedEnum
2026-07-16
Accidental anonymity
2026-06-24
Follow up (Putting an untrusted layer of chatbot AI between you and the internet is an obvious disaster waiting to happen)
2026-06-12
Interview with Shelf Source
2026-05-09
Brooklyn Experience Half Marathon
2026-04-26
How to contribute to open source
2026-03-26
Effect notes: PRs, progress, and joys
2026-03-18
Placemark & OSS Changelog
2026-03-15
ROOTS - Return Old Online Things to your own Site
2026-03-12
Reactionary AI Centrism
2026-02-12
Media diet
2026-02-05
What I haven't figured out
2026-01-29
Changing my mind
2026-01-13
Graph layout
2026-01-11
Misc engineering truisms
2026-01-09
Effect notes: tRPC
2026-01-06
Maybe rich parsers are the way to introduce rich types
2025-12-29
Sentry's distributed tracing causes missing parent spans in Honeycomb
2025-12-22
Effect notes: streams and such
2025-12-17
Effect notes: fn
2025-12-03
Effect notes: flow and cancellation
2025-12-02
Effect notes: runtimes and logging
2025-11-26
Placemark Sunday
2025-11-16
Hallucination city
2025-11-07
Effect notes: caching
2025-11-07
LLMs pivot to the aesthetics of thinking
2025-11-05
Fewer people should run marathons
2025-11-02
What if people don't want to create things
2025-10-21
First-run with agent skills from Anthropic
2025-10-20
Pictures are famous for their humanness, and not for their pictureness
2025-10-16
Revisiting "Rust is a hard way to make a web API"
2025-09-18
On Interrobang with Dave DeGraw
2025-09-10
Why D3('s DOM methods) are so verbose (another angle)
2025-08-21
Using super
2025-08-19
Monad annoyance
2025-08-19
Personal canon
2025-08-08
Observable Notebooks 2.0
2025-07-31
Placemark updates: Vite!
2025-07-27
The confident mind works for running
2025-07-24
Onyx Boox Go 7 as Instapaper single-tasker
2025-07-23
Dependency thoughts
2025-07-20
Placemark updates
2025-07-16
Reverse timers
2025-07-15
The election
2025-06-26
Putting an untrusted layer of chatbot AI between you and the internet is an obvious disaster waiting to happen
2025-05-29
NYC Primaries June 24 - don't rank Cuomo, vote for everyone else
2025-05-28
Blog micro-optimization
2025-05-22
LeaderKey.app is a very good launcher
2025-05-20
Everyone is new here
2025-05-17
ThinkUp Tribute
2025-05-16
Markwhen and Meridiem are great
2025-04-16
Vitest with async fixtures and it.for/it.each
2025-03-06
End of Twitter
2025-03-04
Fastify decorateReply types
2025-02-20
All hat, no cowboy
2025-02-13
Building an NPM module
2025-02-09
The web is already multiplayer
2025-02-06
Talking about Placemark on the Software Sessions Podcast
2025-02-06
An ast-grep rule requiring you to await vitest expectations
2025-02-03
An ast-grep rule to ban bad HTML nesting in React
2025-01-30
TIL with neverthrow
2025-01-28
Surprising embeddings
2025-01-24
TIL: Vitest assert
2025-01-21
Mimestream
2025-01-17
There should be a neovim business
2025-01-17
How is Filecoin supposed to work?
2025-01-15
Limits
2025-01-13
Companies produce trash / people want trash
2025-01-03
Travel internet notes
2024-12-29
Maximization and buying stuff
2024-12-29
I want brands
2024-12-03
A warning about tiktoken, BPE, and OpenAI models
2024-11-20
On not using copilot
2024-11-20
TIL: Be careful with Postgres cascades
2024-11-19
Is there really a way to push back on the complexity of the web?
2024-11-16
Searching for the perfect neovim setup
2024-10-29
Knip: good software for cleaning up TypeScript tech debt
2024-10-25
Thoughts on Arc
2024-10-25
Reddit is my Web Components reference point
2024-10-19
If you use a domain for something popular, it will get squatted if you don't renew it
2024-10-16
Bikeshare data notes
2024-10-14
Wanting to build a trip planner like Embark
2024-10-03
The unspoken rules of React hooks
2024-09-19
The good NYC cycling paths
2024-09-16
Crypto's missing plateau of productivity
2024-09-15
Syncing iTerm light and dark mode with neovim
2024-09-09
What are taxes for
2024-09-07
Running a quick Linux container
2024-08-27
Smart, kind, and eventual
2024-08-25
Linting a whole project in neovim, more advanced search with telescope
2024-08-14
Blogging under AI
2024-08-12
TIL about requestSubmit
2024-08-09
TIL about TypeScript and TSX
2024-08-01
Would LLMs democratizing coding be a pyrrhic victory?
2024-07-18
Bookish is no longer
2024-07-16
Searching for a browser
2024-07-10
Read your lockfiles
2024-07-09
APIs and applications
2024-06-21
How I use Obsidian
2024-06-16
Remix fetcher and action gripes
2024-05-28
Some new Browser APIs
2024-05-15
Previous and next links for my daily note in Obsidian
2024-05-14
Where are the public geospatial companies?
2024-05-09
Car privacy
2024-05-07
Migrating a Remix site to Vite
2024-05-06
Charitable trusts
2024-04-26
A day using zed
2024-04-24
Takeaway from using CO₂ monitors: run the exhaust fan
2024-04-17
Hawbuck wallets
2024-04-13
Notes on using Linear
2024-04-09
React is old
2024-04-04
Hooking up search results from Astro Starlight in other sites
2024-04-03
The S&P 500 is largely a historical artifact
2024-04-02
Web pages and video games
2024-03-28
About Placemark.io
2024-03-25
Remix notes
2024-03-11
Running motivation hacks
2024-03-03
Incentives
2024-03-01
Code-folding JSX elements in CodeMirror
2024-02-28
CSS Roundup
2024-02-26
Using Just
2024-02-10
Headlamps are better flashlights
2024-02-01
Don't use marked
2024-01-28
Replay.web is cool
2024-01-24
On Web Components
2024-01-24
What editors do things use?
2024-01-13
How to set headers on objects in R2 using rclone
2024-01-11
Chrome Devtools protip: Emulate a focused page
2024-01-10
How could you make a scalable online geospatial editor?
2024-01-09
codemirror-continue
2024-01-09
I wish there was a better default for database IDs
2024-01-08
Increasingly miffed about the state of React releases
2024-01-03
Luxury of simplicity
2023-12-31
How are we supposed to do tooltips now?
2023-12-29
The module pattern really isn't needed anymore
2023-12-28
patch-package can bail you out of some bad situations
2023-12-21
SaaS exits
2023-12-20
You can finally use :has() in most places
2023-12-19
Thoughts on storing stuff in databases
2023-12-15
Hiding Peloton and Zwift workouts on Strava
2023-12-14
How I write and publish the microblog
2023-12-14
awesome-codemirror
2023-12-14
Make a ViewPlugin configurable in CodeMirror
2023-12-13
A shortcut for bash using tt
2023-12-13
Get the text of an uploaded file in Remix
2023-12-13