45 pointsby weebera month ago37 comments
  • chrisvenuma month 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.

    • gylteruda month 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.
      • fouronnes3a month ago
        It is quite powerful that when you see a common keyword in the wrong color you can immediately deduce a syntax error.
    • alfiedotwtfa month 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

  • quadriuma month 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.

    • louthya month 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

    • reactordeva month ago
      And then there's Rainbow Brackets...
      • publicdebatesa month 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.
  • monokai_nla month 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.

    • reactordeva month 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

    • a month ago
      undefined
    • chapsa month ago
      "The only valid point:"

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

    • mrgoldenbrowna month ago
      No compliler automatically supports all languages so I do all my programming with a magnetized needle and a steady hand.
      • fouronnes3a month ago
        I do all my programming by only making self sustaining full scale universe simulations that contain a copy of myself, so that by the strong anthropic principle the code has already been written.
    • black_knighta month ago
      I think we should have more semantic highlighting. Like giving every variable a unique color. Or color them by type!
    • lloydatkinsona month ago
      “no syntax highlighting supports all languages, therefore I don’t use any syntax highlighting” is not even a logical argument.
      • Miraltara month 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.
  • publicdebatesa month 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.

    • Miraltara month 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.
  • JohnFena month 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.
  • pmontraa month 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.

    • zenethiana month ago
      We definitely had syntax highlighting in the 90s. I distinctly remember Turbo Pascal supporting it as early as 1992.
  • caerwya month 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.
  • cogman10a month 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.

    • LatencyKillsa month 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.

      • cogman10a month 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.

        • wang_lia month 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.

        • Miraltara month 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.
      • adornKeya month 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...

      • eythiana month 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.
        • LatencyKillsa month 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.

  • steeleduncana month ago
    I believe Rob Pike also doesn't use syntax highlighting [1]

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

    • conartist6a month 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.

  • sebtrona month 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.

  • jccca month 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.

    • teknea month 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

      • jccca month ago
        If people like Rob Pike and Linus Torvalds are on the opposite end of that spectrum, you might be interested in why that is.

        I strongly suspect the older and more experienced a developer is, the more likely they are to code without syntax coloring, including large numbers who previously didn’t.

  • arnsholta month 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).
  • tqwhitea month 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.
  • pshirshova month 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.

    • esafaka month ago
      What do you mean? LLMs are expensive.
  • itmiticaa month 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.
    • worksonminea month 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.
  • nusla month 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.
  • alfiedotwtfa month 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!

  • willvarfara month 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 :)
  • krautburglara month 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.
  • readthenotes1a month 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?

  • a month ago
    undefined
  • a month ago
    undefined
  • sylwarea month 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.
  • feverzsja month ago
    I prefer minimal syntax highlighting, using no more than 6 colors, and no bold/italic font change.
  • 63stacka month 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.

  • jaapza month 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_apologista month 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

  • lucas1068a month ago
    I travel a city where traffic signals are white and black
  • lucas1068a month ago
    I travel in a city with white and black traffic signals
  • athrowaway3za month 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.

    • ksherlocka month ago
      As of emacs 31.1, xterm-mouse-mode is default where supported.
  • ACV001a month ago
    naive approach. waste of time. Learning to code outside an ide is only useful very rarely
  • lherrona month ago
    Gross.
  • a month ago
    undefined
  • pprotasa month ago
    I remapped my capslock key to be control, time to write a cargo cult blogpost!
  • gbasina month ago
    me too except codex writes the code and i only look at git diffs :/
  • ACV001a month ago
    naive
  • chapsa month 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.