39 pointsby weeber3 days ago37 comments
  • monokai_nl4 hours ago
    I program with syntax highlighting.

    I'm not convinced by the arguments of the article:

    - actively clicking on matching parentheses has the benefit of selecting that part

    - being more sensitive to the "beauty" of the code

    I think syntax highlighting doesn't get in the way of these two points.

    The only valid point:

    - No syntax highlighting automatically supports all languages

    True I guess. In the sense that no shoes support all feet.

    • an hour ago
      undefined
    • reactordev3 hours ago
      "acively clicking" this is where it fails for me. In vim, there is no mouse, there is only zuul.

      I get that he sees words and numbers colored but the rest of us like the quick visual context it gives when trying to quickly find things in large files. So I'm with you, :syntax on

    • black_knightan hour ago
      I think we should have more semantic highlighting. Like giving every variable a unique color. Or color them by type!
    • mrgoldenbrown3 hours ago
      No compliler automatically supports all languages so I do all my programming with a magnetized needle and a steady hand.
    • chaps3 hours ago
      "The only valid point:"

      This is a post about preferences. Why do you think your preferences are "more valid" than theirs?

    • lloydatkinson3 hours ago
      “no syntax highlighting supports all languages, therefore I don’t use any syntax highlighting” is not even a logical argument.
      • Miraltar3 hours ago
        That's not really what's said. If you regularly change languages and some are supported and some are not, switching to unsupported languages will be very unpleasant. Having to switch editor/install plugins/customize can be tedious.
  • chrisvenum4 hours ago
    As a dyslexic programmer, I often think about how I would never be able to do the job I do without syntax highlighting.

    I don’t really know why it works so well for me, but I think it helps me skim and pattern match syntax much more easily without spending too much time reading every single word, which is exhausting for me.

    Types and autocompletion in an IDE also help me massively reduce issues with spelling and ultimately free up my brain to think about the logic rather than stressing out about every single thing I type.

    Really cool that some people don’t need it, but for me, I am grateful to those who have spent the time on great themes. Solarized Dark is a favourite of mine.

    • gylterud3 hours ago
      I had not thought about this perspective (I wrote this essay many eons ago). But now I have a good colleague who is dyslexic, and he said the same thing. He says, for him, the colours carry more meaning than the characters often.
    • alfiedotwtf3 hours ago
      See my other comment in this post. The reason I started thinking about creating a theme was because colour themes can sometimes saturate the ADHD brain, and so I’m going to try and dial back the colour to reduce the noise.

      Hopefully when I’m done, you can take a peek to see if can help with your dyslexia

  • quadrium5 hours ago
    Most syntax highlighting adds too many color variations.

    In light modes, I find that variations gray and bolding certain symbols, variable names, function names in definitions and method calls to be enough.

    Just enough hint so the brain can skim for the matching information. My editor highlights the opening and closing brackets of my current block,but indent level indicators are usually enough for me to visually validate.

    Dark modes make contrast more difficult to discern though.

    • louthy2 hours ago
      > Most syntax highlighting adds too many color variations.

      Different strokes, for different folks. I personally use Monokai where each token type has and ‘extreme’ colour (like full red, full green, full yellow, etc.) — I absolutely love it and, for me, makes code much easier to parse

    • reactordev3 hours ago
      And then there's Rainbow Brackets...
      • publicdebates3 hours ago
        I used to love rainbow brackets when they became popular about 10 years ago. Now I find that I almost never care about bracket color, and often it's distracting and I'd prefer them to be the same color.
  • publicdebates4 hours ago
    As usual, I read the code sample before reading the article:

        for (i=0;i<3;++i) {
          /* Do initialisation here!
          niftyConfig = 1;
          funkyValue = 2;
        }
    
    There's no way it's mentally just as easy for me to find that error without syntax highlighting.

    It may be just slightly more difficult, but then it's death by a thousand paper cuts if I'm reading code for 6-12 hours a day.

    • Miraltar3 hours ago
      I think it's fine when you're just working on your own but if you have to review code or work in a codebase you don't own that's much more effort.
  • pmontra4 hours ago
    > Supporting all languages equally future-proves the editor, because who knows which language we will use in ten years?

    I remember which editors I used in 1990: emacs for most of my code and vi (vim now) for light editing mostly on remote machines. They are the same editors I'm using today. I went through some IDEs (Eclipse, NetBeans) because Java would have been nearly impossible otherwise but I never left those two editors for everything else.

    They did not have syntax coloring in the 90s, they do now. It's not life changing but proper syntax coloring can make me spot an undefined variable or an unterminated string. I'm working only with interpreted and dynamic typed languages now so that's almost all it can be done without a compiler that runs in the background and checks the code for errors.

    I don't use anymore any of the languages I programmed with 35 years ago.

    • zenethian3 hours ago
      We definitely had syntax highlighting in the 90s. I distinctly remember Turbo Pascal supporting it as early as 1992.
  • caerwy4 hours ago
    More generally the tools used to write the code show through in the code itself. In the way code is distributed across files, in the length and style of names, in the organization of modules. Using an editor without syntax highlighting like Acme, and also because it's Acme will encourage a different style of organizing a project and the code within a file.
  • cogman104 hours ago
    I think language matters quite a bit when it comes to how useful this is.

    For simpler syntaxes like C or Java, I think the highlighting adds little. But as a language allows for more complex things like monkey patching or helper methods and the like, a little bit of color is really helpful. Knowing immediately that a method is built into the SDK or that it's some monkey patch that's been added gives me better understanding on what the code is doing.

    That said, "go to definition" and "autocomplete" are the most important tools to me when it comes to coding.

    • LatencyKills4 hours ago
      I was an engineer on the Visual Studio team when we first introduced syntax highlighting and code completion. The rollout triggered quite a bit of internal controversy. A sizable group of developers strongly opposed these features—syntax coloring, parameter completion, signature validation—arguing that “real programmers write their code unaided.”

      I can’t help but wonder how those same engineers are adapting to the current wave of AI-powered development tools like Claude Code and Cursor.

      • cogman104 hours ago
        I will say this, I don't see how these aids can hurt someone's ability to write code.

        In that, I think there is a difference between those tools and AI. AI can write code fast, but can definitely also hurt your ability maintain a codebase if you aren't keeping it in check.

        I don't think there's any level where synatax highlighting could make a codebase worse.

        • Miraltar3 hours ago
          I'm guessing they used the same argument that was made for calculators, printing... By lessening the burden on your brain you weaken it.
        • wang_li3 hours ago
          When a coworker pastes a screenshot of their syntax highlighted code with a black background into chat it is functionally 50% blank as my 55 year old eyes are not good at low contrast. Regular blue, purples and reds are often unreadable against a black background.

          Fortunately syntax highlighting isn’t part of the code, it’s just how it’s displayed. There comes a point where pasting images of code, to preserve syntax highlighting, into chats, email, and documentation it’s not only a waste of space, it becomes an ADA issue. Use whatever fonts and themes in your editor, but keep those to yourself.

      • adornKey3 hours ago
        When making a typo one guy I knew deleted the whole word with backspace and typed it new from the beginning. Anything else to correct the error he called cheating.

        That was a long time ago - and he was still young. But not so long ago I asked some keyboard manufacturer (Ducky?!) to add more macro features for productivity - and I got the answer that it would be cheating to play back macros faster than normal writing speed - Recording macros on a keyboard and playing it back faster than recorded was impossible by design because they don't want to support cheaters.

        Oh those coders... I wonder how much code on Github is invalid because of cheating...

      • eythian3 hours ago
        I'm pretty sure Turbo Pascal/C/etc and perhaps vim had syntax highlighting (though perhaps not the other bits) before the first VS release, I'm surprised they hadn't encountered it already.
        • LatencyKillsan hour ago
          It wasn't that it was "new" (you're correct, it wasn't). The complaint was that Microsoft engineers were going to use it "as a crutch".

          Also, VS (codename Boston) was used as the de-facto internal development IDE for a few years before it we released it to the public. There were also arguments about shipping those types of features publicly.

  • JohnFen3 days ago
    I personally find syntax highlighting unhelpful and very distracting, so I always turn it off. Sometimes it feels that I'm the only one. I'm pleased to read that I'm not.
  • steeleduncan5 hours ago
    I believe Rob Pike also doesn't use syntax highlighting [1]

    [1] https://groups.google.com/g/golang-nuts/c/hJHCAaiL0so/m/kG3B...

    • conartist64 hours ago
      I think Torvalds also goes on that list as another ACME user. He mentioned as much in the extended video interview he did with Microsoft recently.

      For myself, I've had to spend a lot of time without colorful syntax recently as I was working on building my own IDE and my own syntaxes and even my own system of syntax highlighting. It would have been a distraction to be constantly fighting with someone else's system of syntax highlighting while building my own! But also even having learned that I can live without it I'm hardly ready to say that I never want it back. I just want it back better. I want dynamic, contextual highlighting and I want interactive access to the underlying tree model. I want it to feel really easy to tinker with too.

  • jccc4 hours ago
    I’ve tried in the past to explain/promote/defend my syntax-coloring-free serenity, but I wish I’d thought of this:

    > Syntax is not the most challenging part of programming.

    It seems like unless you’re learning the language it’s mainly a distraction.

    • tekne2 hours ago
      Idk - I really think this is a different brain thing.

      I have synesthesia and so get syntax highlighting for free.

      I like my highlighting to give me "synesthesia bootstrap speedup"; on the contrary it annoys me when it clashes.

      It's an extreme case, but I presume as with most things there's a spectrum

  • sebtron5 hours ago
    On my personal devices, I turned off syntax highlighting a few years ago to see how hard it would be to live without, but I ended up liking it and I have not turned it back on since. I am mostly working on small (<10k LOC) projects, or single-file programs (e.g. Advent of Code).

    However, at work I am working on a much larger code base, and the extra help given by syntax highlighting (for example, having a quick visual feedback on whether a method exists or not) is valuable to me.

    I think this also depends on the language used: at home I mostly program in C, but if I were doing more e.g. C++, I would probably enjoy some syntax highlighting.

  • arnsholt4 hours ago
    For about two and a half years I worked on a Smalltalk system, written in a quite old Smalltalk, which gave me two idiosyncrasies editor-wise: I no longer care very much about syntax highlighting (though I don't really bother to turn it off), and I now prefer to use proportional fonts for my programming. The only syntax highlighting I missed in the Smalltalk was a fading out of comments (which would in fact have prevented a stupid issue similar to the comment thing shown in the OP).
  • tqwhite4 hours ago
    I eat all my food without knife and fork. I find I am able to see the beauty in a pork chop when I cut it with a spoon and am able to appreciate its qualities better. Too tough and the cutting fails. I know then to rid myself of an ugly thing and buy another. Just right and I can scoop up a piece as soon as I get it to the right shape.
  • itmitica4 hours ago
    Syntax highlighting gains, regardless of color scheme, are not negligible. There are grayscale color schemes, for example, that remove the violent nature of some color themes.
    • worksonmine4 hours ago
      I use a custom grayscale theme in Neovim with 3 light and 3 dark colors. Comments are darkest, language syntax like keywords and brackets are normal, and assigned values bright. This helps me focus on what's important and ignore the boilerplate around. Everything is still readable but I can parse the code by just taking a glance at the relevant stuff.
  • pshirshov4 hours ago
    > Once syntax highlighting is gone, you no longer priviledge the class of languages for which there exists a syntax highlighting.

    Language models made syntax highlighting extremely cheap to make.

    • esafak4 hours ago
      What do you mean? LLMs are expensive.
  • nusl3 hours ago
    Syntax highlighting makes quite a large difference for me with regards to identifying things without having to look for it for too long, but I do sometimes miss detail. When I used to use plain vim it worked fine but it was harder to visually parse quickly.
  • willvarfar4 hours ago
    I remember when syntax highlighting was introduced in Borland's Turbo Pascal editor (on DOS). It was a very major usability improvement and put TP's IDE at the forefront of getting things done. Fond memories :)
  • 3 hours ago
    undefined
  • feverzsj4 hours ago
    I prefer minimal syntax highlighting, using no more than 6 colors, and no bold/italic font change.
  • 63stack4 hours ago
    >The first thing one thinks when going from highlighted to unhighlighted code might be «This code is just a grey mash of symbols». Though, this sensation quickly fades as one gets engaged in the code. This “getting in to the groove”-part of the programming session is remarkably short, and afterwards code is more readable than English.

    >If the code is neatly organised, the «grey mash» quickly crystalises into a beautiful little universe of logically connected parts; each standing by it self, on its own line or in its own scope, but referencing each other in clear and beautiful ways

    Delusions packaged as deep insights.

  • jaapz4 hours ago
    > The first thing one thinks when going from highlighted to unhighlighted code might be «This code is just a grey mash of symbols». Though, this sensation quickly fades as one gets engaged in the code. This “getting in to the groove”-part of the programming session is remarkably short, and afterwards code is more readable than English.

    I mean, the fact that many people seek out and use highlighted code underlines that many people don't experience what you experience.

    I remember back in the day programming PHP in notepad, unhighlighted. Finding Sublime Text 2 with highlighting was a revelation.

  • css_apologist4 hours ago
    it's like writing code in my notebook, which i find extremely beautiful

    modern editor features are very loud, and you don't notice it until you turn it off

    that being said, this is not a good strategy for work editors

  • ACV0013 hours ago
    naive approach. waste of time. Learning to code outside an ide is only useful very rarely
  • athrowaway3z4 hours ago
    > In Acme I double click on the outmost marker [...]

    I'll represent the insufferable Emacs/Vim pricks by saying: Once I read you're using a mouse during development, my willingness to entertain your contrarian dx ideas dropped to near 0.

    • ksherlock4 hours ago
      As of emacs 31.1, xterm-mouse-mode is default where supported.
  • lherron4 hours ago
    Gross.
  • lucas10684 hours ago
    I travel a city where traffic signals are white and black
  • lucas10684 hours ago
    I travel in a city with white and black traffic signals
  • readthenotes13 hours ago
    I myself prefer to eschew the affordances of IDEs and have even kicked my addiction to compilers/linkers.

    Hand-crafted artisinal 1 and 0s is the best, most productive, way to code.

    /S Obviously?

  • 4 hours ago
    undefined
  • alfiedotwtf3 hours ago
    I’m right in the middle of creating my own theme… my motivation is “colour is signal” and so it has the aim of having important things grab your attention vs boring things you’re safe to ignore.

    … coding without syntax highlighting deprives you of signal!

  • krautburglar3 hours ago
    The nice thing about syntax highlighting is that it acts as a lightweight validator. I know I have a syntax error as soon as the colors go crazy in vim, and I can find it where the colors break.
  • sylware3 hours ago
    Wow, I super cheat: I use syntax highlighting AND vim folds... but I code assembly with a C pre-processor for register usage naming.
  • 4 hours ago
    undefined
  • pprotas3 hours ago
    I remapped my capslock key to be control, time to write a cargo cult blogpost!
  • gbasin4 hours ago
    me too except codex writes the code and i only look at git diffs :/
  • ACV0013 hours ago
    naive
  • chaps4 hours ago
    I program without syntax highlighting. Comes from a combination of learning shell scripts within vi (not vim) and the bloatedness of syntax highlighting and autocomplete nonsense. Coding without it all is a nice way to ensure that everything can be encapsulated within your brain. Leads to different abstractions and such. It's fun and I highly recommend it.

    Also, the comments in here are really strangely negative. Let people have their preferences, weirdos.

    Also also: so much of syntax highlighting and such is designed by people without color blindness. So a lot of syntax highlighting just doesn't work for me. It's wild to me that color blind people still have to be vocal about it.