this post was submitted on 19 Jul 2023
426 points (97.1% liked)
Programmer Humor
19809 readers
1115 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 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
It should be the first rule of building any formatted string. I see code daily building HTML, JSON, CSS, CSV, shell scripts or whatever just by bashing strings together. If you are lucky they do some form of escaping most of the time.
Really we should get in the habit of using proper encoders. Don't think of these types as just strings you can substitute into, use some library that will actually write these things properly. Thankfully JS has
JSON.stringify
and good object literals so at least you don't see shitty JSON encoding often (just sometimes when embedded in HTML). I wonder if adding string interpolation was a mistake. It makes it so easy to do the wrong thing. Of course there are cases where you want to format`Hello ${user.name}`
or other human readable strings. But more often than not I see it being used incorrectly.