Sign in

Micah Cantor

@micahcantor.bsky.social
73 followers 67 following 52 posts

Software engineer @ Full Code Medical • Grinnell College '24 • Boston, MA micahcantor.com

PostsRepliesMedia
Micah Cantor @micahcantor.bsky.social · 18/09/2026
I saw a big website recently that was using the React logo as their favicon, likely from not changing it after starting from a template/llm generated scaffold
110 0
Micah Cantor @micahcantor.bsky.social · 21/08/2026
That’s fair. I do feel like the models still have a tendency to reinventing the wheel rather than find/reuse existing tools. Basically i think claudes system prompt must be a bit of a mess because i often feel like its doing too much or acts inconsistently
110 0
Micah Cantor @micahcantor.bsky.social · 21/08/2026
Interesting, I’ve definitely noticed Claude writing its own scripts (in Perl or Python) for editing code rather than using the Edit tool directly. I actually am usually a bit frustrated by it because I think it makes its work more inscrutable. But in some using a more powerful tool is justified
110 0
Micah Cantor @micahcantor.bsky.social · 21/08/2026
What kind of refactoring tools are you building?
110 0
Micah Cantor @micahcantor.bsky.social · 21/08/2026
I’ve been thinking about trying out codex because I find Claude’s tone not only insufferable but also just so dense and difficult to understand. How do you find codex to be different?
000 0
Micah Cantor @micahcantor.bsky.social · 08/02/2026
Not to be flippant, but couldn’t the maintainer just close such a PR if they suspected it’s heavily vibe coded? I do understand that this may not scale super well for larger projects that receive lots of contributions. But at least right now it seems easy to quickly spot a fully AI contribution.
010 0
Micah Cantor @micahcantor.bsky.social · 27/01/2026
Yes. Bluesky lets me hide individual replies to my posts that I don’t like for all users. I can also block people or limit replies only to followers. I could also set up a custom Labeler if I wanted to do more complex filtering.
010 0
Micah Cantor @micahcantor.bsky.social · 25/01/2026
Yes, Bluesky has several tools for personal moderation of accounts/individual posts. I can choose to hide certain replies from my post that will then be hidden on the site
010 0
Micah Cantor @micahcantor.bsky.social · 25/01/2026
Yup good point
010 0
Micah Cantor @micahcantor.bsky.social · 25/01/2026
Yes, beyond that I have to massage the response data a little bit more, but not impossible
010 0
Micah Cantor @micahcantor.bsky.social · 25/01/2026
Hah nice, handled by using JSX though
000 0
Micah Cantor @micahcantor.bsky.social · 25/01/2026
This is cool, haven’t heard about this. Interested to reading more
100 0
Micah Cantor @micahcantor.bsky.social · 24/01/2026
My version would likely be hard to integrate into a WordPress site, but take a look at this version that I mentioned in the post. Should be pretty easy to pull in from a script tag: www.coryzue.com/writing/blue...
coryzue.com
Adding Bluesky-powered comments to any website in five minutes
Long live the open web!
100 0
Micah Cantor @micahcantor.bsky.social · 24/01/2026
Nope, not yet but it’s definitely possible to in the future
030 0
Micah Cantor @micahcantor.bsky.social · 24/01/2026
Testing out a comment! ✍️
020 0
Micah Cantor @micahcantor.bsky.social · 24/01/2026
I embedded a comment section from Bluesky on my blog. Check it out here, including some details on how I did it: micahcantor.com/blog/bluesky...
micahcantor.com
I added a Bluesky comment section to my blog
How I embedded Bluesky replies directly on my site
51466 0
Micah Cantor @micahcantor.bsky.social · 22/01/2026
I rebuilt my blog using React Server Components and Parcel as a static site generator. I wrote about my mostly positive impressions, plus a few rough edges: micahcantor.com/blog/rsc-rew...
micahcantor.com
I rebuilt my blog with React Server Components
A retrospective on my experience migrating this website to React 19 and Parcel
010 0
Micah Cantor @micahcantor.bsky.social · 03/01/2026
Don’t tempt me into trying to hack my toothbrush
010 0
Micah Cantor @micahcantor.bsky.social · 08/12/2025
Mikal Bridges is averaging career highs in steals (2.0/game) and blocks (1.1/game). How has Mike Brown unlocked his defense, and does he have an All-Defense case?
000 0
Micah Cantor @micahcantor.bsky.social · 06/12/2025
D rating is highly dependent on who’s playing on the other team. Yabu mainly plays against the other teams bench. Also could be variance since hasn’t played many minutes.
010 0
Micah Cantor @micahcantor.bsky.social · 28/10/2025
Not sure what you need exactly but I know you can use it to give each device a stable ip address. If everything is on the Tailscale network you can use those addresses
010 0
Micah Cantor @micahcantor.bsky.social · 28/10/2025
Tailscale?
110 0
Micah Cantor @micahcantor.bsky.social · 19/07/2025
Haskell’s error messages are horrific. Their language is mostly aimed at a very academic audience and is one of the main reasons the language is so inaccessible.
210 0
Micah Cantor @micahcantor.bsky.social · 18/04/2025
Racket's slideshow package is fun docs.racket-lang.org/slideshow/
docs.racket-lang.org
Slideshow: Figure and Presentation Tools
000 0
Micah Cantor @micahcantor.bsky.social · 07/04/2025
Analogous in a way to cursive handwriting
030 0
Reposted by Micah Cantor
Red Blob Games @redblobgames.com · 04/02/2025
What happens when LLMs train on code that's popular but wrong? zdimension.fr/everyone-get... explores this, with interactive diagrams exploring the error
zdimension.fr
Everyone gets bidirectional BFS wrong
People really need to stop blindly copying code from the Internet.
38419 0
Micah Cantor @micahcantor.bsky.social · 04/02/2025
Abstract syntax trees but they’re actually made out of…published abstracts?
120 0
Micah Cantor @micahcantor.bsky.social · 20/01/2025
Probably you should use vector (hackage.haskell.org/package/vector) or Text. And if you need efficient add/delete then maybe IntMap (hackage.haskell.org/package/cont...)
hackage.haskell.org
Data.IntMap
100 0
Micah Cantor @micahcantor.bsky.social · 17/01/2025
hackage.haskell.org/package/hash...
hackage.haskell.org
hashtables
Mutable hash tables in the ST monad
040 0
Micah Cantor @micahcantor.bsky.social · 17/01/2025
Emacs lisp would be another example, though that language is uglier than scheme
010 0
Micah Cantor @micahcantor.bsky.social · 17/01/2025
GNU guix basically takes this to the logical extreme. It’s a whole OS that is configurable and scriptable in Scheme.
110 0
Micah Cantor @micahcantor.bsky.social · 17/01/2025
There is mutation via set! in Scheme but it’s easily avoidable and not idiomatic. But otherwise it seems to meet your criteria. Easy to parse, human-readable, embeddable, interpretable.
210 0
Micah Cantor @micahcantor.bsky.social · 17/01/2025
Is this just Scheme?
110 0
Micah Cantor @micahcantor.bsky.social · 10/01/2025
(Or replace unit with the fields of the type you’re creating)
010 0
Micah Cantor @micahcantor.bsky.social · 10/01/2025
It’s annoying, but can be alleviated by following the pattern of wrapping *all* types in a module, and then exposing a function create : unit -> t from that module. Particularly important for record types because otherwise type inference sucks ass
210 0
Micah Cantor @micahcantor.bsky.social · 30/12/2024
For all the excitement about RAG in the LLM space, enriching the context of code generation with static analysis (whether it be something like control-flow or typechecking) oddly seems to be relatively unexplored so far.
100 0
Micah Cantor @micahcantor.bsky.social · 30/12/2024
I didn't realize until recently that iCloud lets you use a custom domain for email for $1/month. Good stuff. Compare that to $6/month for 1 user on Google workspace for a custom domain on gmail.
010 0
Micah Cantor @micahcantor.bsky.social · 28/12/2024
Yikes. Somehow one of the only language tooling this makes more sense for 🙃
010 0
Micah Cantor @micahcantor.bsky.social · 28/12/2024
I’m assuming Haskell? Are you using different ghc versions for the LSP and cabal/stack?
100 0
Micah Cantor @micahcantor.bsky.social · 21/12/2024
Day 5 #AdventOfCode
020 0
Micah Cantor @micahcantor.bsky.social · 21/12/2024
I'm a little behind now, but here's day 4! #AdventOfCode
110 0
Micah Cantor @micahcantor.bsky.social · 12/12/2024
I’ve thought a bit about syntax sugar that turned method syntax into module qualified syntax. In OCaml terms, suppose it was required that every module exposed a type t. Then you could have lst : t and turn lst.map(f) into List.map(lst, f) Basically UFCS but with a standard module structure
010 0
Micah Cantor @micahcantor.bsky.social · 08/12/2024
No it doesn’t. My comment wasn’t very clear but I meant that since you don’t need to create a new file to created a namespaced modules in OCaml, it’s easier to avoid circular imports by just putting code that uses the same types in the same file (but still different modules)
020 0
Micah Cantor @micahcantor.bsky.social · 07/12/2024
I admit it’s ugly but I have done in Haskell to avoid cyclic imports, mainly when I wanted to annotate functions using the same types but otherwise separate functionality into separate files. It’s part of why I much prefer OCamls modules.
130 0
Micah Cantor @micahcantor.bsky.social · 05/12/2024
wasm_of_ocaml (a compiler of OCaml to WASM, and a fork of the JS compiler js_of_ocaml) has been merged. Congrats to all that contributed! github.com/ocsigen/js_o...
github.com
Merge wasm_of_ocaml by OlivierNicole · Pull Request #1724 · ocsigen/js_of_ocaml
This aims to merge wasm_of_ocaml, currently hosted at https://github.com/ocaml-wasm/wasm_of_ocaml, back into this repo. This is pending on Dune support ocaml/dune#11029. For now, Dune is pinned for...
0183 0
Micah Cantor @micahcantor.bsky.social · 05/12/2024
The real tragedy of missing the Lowe Post is I haven’t gotten to hear the Thibs impression
010 0
Micah Cantor @micahcantor.bsky.social · 04/12/2024
Day 3 #AdventOfCode
120 0
Reposted by Micah Cantor
Shriram Krishnamurthi @shriram.bsky.social · 02/12/2024
Sometimes it takes me 22 years (+ one evening) to write a blog post. Here are my thoughts on "homoiconicity" and, as an alternative, "bicameral syntax". (Warning: 4000 words.) parentheticallyspeaking.org/articles/bic...
parentheticallyspeaking.org
Bicameral, Not Homoiconic
Parenthetically Speaking: Articles by Shriram Krishnamurthi
2414039 0
Micah Cantor @micahcantor.bsky.social · 03/12/2024
I've been waiting for this since @lexi-lambda.bsky.social launched her own campaign against homoiconic a while ago
110 0
Micah Cantor @micahcantor.bsky.social · 03/12/2024
Day 2 #AdventOfCode Racket should have reduce in racket/list !
100 0