(2023-07-24) Turn off syntax highlighting and start living the full life
------------------------------------------------------------------------
I know the topic is a bit controversial. Any writeup on teh interwebz about
whether or not syntax highlighting is actually of any value stirs up a
tsunami of comments. But almost everyone on both sides misses at least one
crucial point: syntax highlighting is a crutch for newbies. And if you don't
learn to live without it, you don't grow up from a newbie to a hacker, you
turn into a noob and then into a lamer, i.e. eternal noob who is ready to
defend own noobness up to the point of open aggression.

Indeed, when you are just starting to learn a programming language, then
highlighting, to some extent, is a real bliss: it gives you an instant
visual reward whenever you have typed a correct keyword or other important
character. Not only it helps you write correct code (at least syntactically
correct), but also helps to read your own code until you have memorized all
the keywords and syntax you need to be fluent in this language IRL. Since
then, however, it becomes your false friend: you don't fully memorize these
keywords precisely because you rely on the highlighting to do the job for
you (and don't even get me started on autocompletion). And you don't notice
how you stop caring about the overall readability of your code as well,
since it looks fine anyway... when highlit.

And no, indentation is not the same as highlighting. Indentation is an
inherent part of text. Indented code looks the same in the cat command
output and in any blown-up IDE. It actually helps the code to look more
readable and structured, especially with block-oriented programming
languages such as C, JS, Lua etc, and in Python they even made it an
essential syntactic element. But it is universal and portable to anything.
The only environment-dependent indentation parameters are the displayed
tabulation width and whether or not to convert tabs to spaces ([1]). And
that's it.

Highlighting, on the other hand, totally is a feature of the environment,
completely depends on it and, by proxy, makes _you_ fully dependent on this
environment. Then, one day, you find out you're next to blind when viewing
the same source code with cat, less and other commandline tools, or opening
it in a foreign editor that doesn't have the coloring scheme you got used
to. At that point, you have exactly two options: either continue to make
everything use the same colors and whine whenever you can't do this, or grow
out of the newbies' pants and learn to finally distinguish the words and
characters, not colors, and write in a style that's readable anywhere. Of
course, the choice is yours.

--- Luxferre ---

[1]: my personal and very strong preferences are: tab is 2 spaces, absolutely
do convert, unless editing Gophermaps or Makefiles. Why? That's the topic
for another time...