Skip to content
DevMeme
1908 of 7435
Three Spaces Of Formatting Chaos
Configuration Post #2118, on Oct 2, 2020 in TG

Three Spaces Of Formatting Chaos

Why is this Configuration meme funny?

Level 1: The Weird Ruler

It is like a teacher saying everyone must write with the same ruler, then handing out a ruler marked in weird half-steps nobody likes. The work can still be read, but everyone will complain because it feels wrong in a tiny, constant way.

Level 2: Formatter Rules

CodeFormatting means arranging code so it is readable and consistent: indentation, line breaks, quotes, trailing commas, and similar details. Prettier is a popular tool that automatically formats code, especially in the JavaScript ecosystem.

The visible file is .prettierrc, a configuration file for Prettier. The key setting is:

"tabWidth": 3

That tells the formatter to indent by three spaces. Most teams choose two or four spaces, so three feels deliberately strange. It is not about whether the program will run; whitespace like this usually affects readability and team habits, not runtime behavior.

For newer developers, the useful lesson is that formatting tools reduce arguments only when the team accepts the rules. A formatter can enforce consistency, but it cannot make everyone emotionally ready for three-space indentation.

Level 3: Odd-Numbered Heresy

The entire meme is one tiny configuration file:

{
   "tabWidth": 3
}

The joke is that Prettier and similar formatting tools exist to stop teams from wasting time on whitespace arguments. Instead of debating indentation in every pull request, the team agrees on a formatter, commits a config file, and lets automation be the bad cop. But this config chooses 3, which is neither the common two-space style nor the classic four-space style. It is the formatting equivalent of solving a family argument by inviting a third side to be angry at.

Experienced developers know why this is funny: code style is supposed to be boring infrastructure. Once a formatter is in place, nobody should need to burn social energy arguing about alignment, wrapping, or indentation. A weird tabWidth turns that peace treaty into a provocation. It will make diffs look unfamiliar, annoy muscle memory, and force every contributor to wonder whether the repo is making a serious style choice or just testing the team's remaining patience.

This is Configuration as culture. A .prettierrc file is small, but it becomes policy for every editor, commit hook, CI job, and pull request. The meme works because the visible setting is technically valid, yet socially radioactive. Somewhere a staff engineer is saying, "Consistency matters more than personal preference," while quietly opening a private branch to change it back to 2.

Description

A dark-themed code editor shows a `.prettierrc` file with a breadcrumb-like header reading ".prettierrc > # tabWidth". The visible JSON-like configuration spans three lines: line 1 has `{`, line 2 has `"tabWidth": 3`, and line 3 has `}`. The humor is that Prettier and similar formatters are meant to end style arguments, but setting indentation to three spaces creates a new kind of formatting provocation between the usual two-space and four-space camps. It is a compact joke about configuration, code style enforcement, and developer tribalism over whitespace.

Comments

29
Anonymous ★ Top Pick Two-space and four-space teams spent years arguing, then someone shipped an odd number and invalidated the whole RFC.
  1. Anonymous ★ Top Pick

    Two-space and four-space teams spent years arguing, then someone shipped an odd number and invalidated the whole RFC.

  2. @melanzan 5y

    bruh..

    1. @frayxrulez 5y

      piedini

  3. @RiedleroD 5y

    only a monster would do this

  4. @Mazmiy 5y

    What a fu**?

  5. @TERASKULL 5y

    It's not a bug, but a feature

    1. @Bender666 5y

      How those posts are made? First text and after that a photo?

      1. @TERASKULL 5y

        afaik the images are actually links with image previews.

        1. @Bender666 5y

          Thank you for explanation.

  6. @HolyReaper 5y

    I wish someday I can make kind of tabWidth = 3.5 :D

    1. @ipaal 5y

      3.9*

    2. @mikpskov 5y

      or 3.49999999999

  7. @sharp_mechanix 5y

    That was the guy who started on Pascal

  8. @skiqqy 5y

    No

  9. @sharp_mechanix 5y

    As far as i can remember, there was a convention to use 3 spaces as indentation

    1. @AmindaEU 5y

      Where is 3 used? I remember only seeing 2 and 4 around

      1. @sharp_mechanix 5y

        In Pascal/Delphi I don't code on those, but started from Pascal back in the day

        1. @AmindaEU 5y

          Thanks :)

          1. @sharp_mechanix 5y

            I may be wrong though, you better double-check

  10. @Daler_XYZ 5y

    It's a Web?

  11. @sharp_mechanix 5y

    And what I saw there is three spaces indentation

  12. @evilyach 5y

    Dank

  13. @UQuark 5y

    You're wrong

    1. @AmindaEU 5y

      How does one become a psychopath then? I am not sure if I want to though

  14. @UQuark 5y

    Delphi has 3 spaces indentation

  15. @BigBlackMobile 5y

    Fuck you, leather man

  16. @sunnydaily 5y

    buddy you entered the wrong door

  17. @sunnydaily 5y

    russian community is two chats down

  18. @BigBlackMobile 5y

    Fisting for 300$

Use J and K for navigation