My default assumption is that external libraries are better than what I (or an LLM) would write in a v1.
The extra effort to publish a project generally signifies that the author has spent a good amount of time on the problem. I end up prompting LLMs to prefer external code.
LLMs are great at style transfer, and this works surprisingly well for syntactic transformations too.
I rewrote a small website's EJS templates to 1500 LOC of TSX with a oneshot in Claude. It took ~12 minutes, but it just worked.
(TSX seems nicer than EJS for static analysis.)
It seems really odd to me that git uses 'cached' terminology for staging. For example, `git add somefile.rs; git diff --cached`.
Caching implies state that you don't mind losing. There's very little state I want to lose in version control!
Are there any nice cross-platform ways to trigger a notification from a terminal?
I've been using
https://pushover.net/ but you need to use a browser and it's noticeably slower than the native options.
(Pushover is great for mobile notifications though.)
Terminad is a really interesting approach to rendering markdown in the CLI. It deliberately doesn't render links, so you can always see both the link text and the URL.
In a browser you have hover to see URLs, but not necessarily in a terminal.
Should code completion offer private methods/fields?
If the user chooses a private method, you can offer a quickfix to change its visibility. It's clutter though.
I frequently find myself wanting fields that I haven't exposed yet, and frustrated that the IDE hides them.
Blogged: Devlog 2: The Importance of Sandboxing
Exploring PL opportunities when you have a first-class sandbox.
Is there a good canonical name for autofixes, where a static analysis tool can apply a change to resolve an issue?
Clang calls them fix-its, LSP calls them quickfixes.