this post was submitted on 12 Aug 2026
978 points (97.5% liked)
Programmer Humor
32770 readers
774 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 3 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
As a software engineer I avoid JS as much as possible frankly! Its typing semantics are genuinely horrible, personally I'd never consider eschewing typescript in this day and age.
Then again I'm the sort of masochist who thinks we should all be writing Scala so maybe take this with a pinch of salt.
with vibe coding, finding a library that is exhaustively covered is part of being successful. JS is very popular and llms like it, its sort of like moving to an aws shop from an azure shop, just different strokes for different blokes, as long as they leave the money on their way out
It's not just about how many examples of a language exist in the LLM's distribution though, dynamic typing is a poor choice if you're using LLMs for software in my view because it turns compile-time errors into runtime errors which will only be caught if the LLM writes a suitable test; an area that they still leave a fair bit to be desired in.
The whole virtue of dynamic typing is that it reduces cognitive load on the programmer, if you're using LLMs there's no reason to do that in my opinion, you're offloading a bunch of cognitive load to begin with so expressiveness and constraint is more important than human ergonomics. Yes there's loads of JS in an LLM corpus but a lot of it is going to be poor examples, because it's generally quite easy to write JS badly. If you use typescript you're at least forcing a few common hallucinations to produce compile-time errors which the model has immediate feedback for, and you're giving the model more context on what it's seeing.
i also find a robust docs SOT directory of big domains, fallow, madge, knip, ts, and an extra declaritive schema documenation layer on top of migrations schema to be a big help in grounding and keeping rails up