In the Lord of the Rings fandom there’s a persistent debate whether balrogs, or Durin’s Bane specifically, have wings. The text in Fellowship is ambiguous whether what it is describing are literal wings or something else wing-like.

      • naught101@lemmy.world
        link
        fedilink
        arrow-up
        12
        ·
        20 days ago

        I’m a spaces guy, but agree on the 4. A coder told me decades ago that 4 is better than 2 because if your code starts wrapping due to too many indents you should be refactoring it into functions anyway.

          • naught101@lemmy.world
            link
            fedilink
            arrow-up
            9
            ·
            20 days ago

            In part, because it forces 2-space tab users to confront the indentation issue above

            Also there are no drawbacks… I still hit the tab key to indent (and shift tab to dedent). My editor does the rest.

            • Hudell@lemmy.dbzer0.com
              link
              fedilink
              English
              arrow-up
              4
              ·
              20 days ago

              You can do the same thing with a linter rule, without forcing everyone to see the code in your preferred way.

      • early_riser@lemmy.worldOP
        link
        fedilink
        arrow-up
        4
        ·
        20 days ago

        Tabs are one space *quickly runs away*

        I use a single space to indent when writing Python in a SecureCRT command window that gets sent to an interactive Python shell on the server.

    • SubArcticTundra@lemmy.ml
      link
      fedilink
      arrow-up
      9
      ·
      edit-2
      20 days ago

      I might have the solution: Elastic Tabs. They di what tabs were always meant to do from the start, whilst also fixing the shortcomings that spaces are currently used to fill.

    • kamen@lemmy.world
      link
      fedilink
      arrow-up
      3
      ·
      19 days ago

      However many I feel like that day. Sometimes depends on the language and use case - if it tends to be deeply indented, I’d gravitate towards 2.

      If using actual tabs, you can change how they appear just for yourself without touching the actual code; the same can’t be said about spaces.

      • ℕ𝕖𝕞𝕠@slrpnk.net
        link
        fedilink
        arrow-up
        2
        ·
        19 days ago

        I was trying to stay out of the fray but this one I feel I have to respond to:

        tabs, you can change how they appear just for yourself without touching the actual code; the same can’t be said about spaces.

        This is why I use spaces. A space is a space everywhere, a tab depends too strongly on the editor. I’ve had too many times where I had to edit on a different machine and it transmogrified my tabs into a different non-character entity in a way that didn’t reveal itself until later.

        • kamen@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          19 days ago

          I can kind of see your point if you’re speaking from a devops/sysadmin’s point of view (i.e. something that would require you to use default editors on the go on systems that you don’t necessarily have control over).

          Other than that, a tab’s principal purpose is indentation. One tab is one level of indentation regardless of how it appears. If a tab gets transformed into something else, it sounds like a text encoding problem and indentation would then be just one of (and possibly the smallest of) several possible issues.

          I’m speaking from a web dev’s point of view - I’m assuming that I’ll always have my own configured editor on hand and I’ll be able to tell it that one tab is N spaces, sometimes even differently for different file types in the same project. Worst that could happen is that I don’t have a specific configuration and the editor just falls back to the default until I set otherwise. Since I’m working in a team, using spaces for a source controlled project would mean that everyone has to use the same. Having tabs means that everyone can configure it for themselves (assuming editor configs don’t go in the repo).