That’s because these programmers are getting paid by the character.
This is also why Java dev pays so well.
System.out.println(“Wow, so little amount of characters to print this!”);
Or the slightly more readable brainfuck:
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
std::cout << “Wow, so little amount of characters to print this!” << std::endl;
I use tabs because I prefer 4-space indents and others might prefer 2-space indentation or the gross and unacceptable 6-space indentation.
If more than one person is working on a code base, there will likely be more than one preference, and with tabs everyone gets to just set their own tab width.
Yes, even the 3-space savages.
Tabs work fine as long as you don’t align stuff. If you do, you have to assume a tab size and mix tabs and spaces.
Generally aligning stuff isn’t nice. But if you do, it’s tabs up to whatever level of indentation you’re at then spaces the rest of the way. So you wouldn’t have to assume a tab size. And the tabs and spaces have different semantic meaning (indent vs alignment) so mixing them makes sense. It’s even built into Jetbrains IDEs, where it’s called “Smart Tabs”.
Although really just adding a level of indent is better than aligning.
This is a legit observation. However, I would argue that spaces needs a set indentation width anyway, so if tabs had a set indentation width that coders are expected to maintain when aligning code, it wouldn’t make a difference. Enforcing that in practice may be different, but in theory it works.
It’s OK, I replace all the tabs with spaces for uniformity. Tabs are stupid and they mess things up when I paste stuff. I like to watch the world burn.
But you get smaller files with Tabs: https://www.madskristensen.net/blog/performance-of-tabs-vs-spaces-in-html-files ;)
Is this some kind of python meme I’m too C++ to understand?
Now, I’m completely willing to start a war about { going on the next line.
It goes on the line! If you put it below, you’re wasting a line for no extra readability!
It goes on the next line, so you can have open and close brackets at the same indent depth for easy visual matching.
Your closing } goes on a new line below at the same indent depth as the line containing the open {!
Totally agree, all my { end up on the next line, 1st spot when starting a function, last character of the keyword when starting an if/for/… section. I even put the closing one on the same line when it’s single line, else either at the end of the closing line (when changing really old code) or same indent.
So indenting varies a lot, which makes most ‘new’ programmers go mental.
while (my code)
{ I'll do it my way }
if (! liked)
{ toughen-up }
else
{ get used to it
multi-line can go both ways...
}
That is, unless the font used messes it up. ;)
Why isn’t the else curly lined up with the end of the else word? I’d your gonna go crazy might as well go all the way I guess 😜
The { of the else is just the 2nd, optional, part of the if statement, so I was learned to align it with the opening keyword. I do the same with the then keyword, when the language requires a then, then it’s aligned with the i if if an the { with the f of if.
In the old days, when memory was expensive (in the day of 4k computers), even an extra cr/lf was worth preventing. Hence C has no then, C layout is usually { … } for one liners… or even without the { },… I learned to program in the IT dark ages. ;)
Is there any actual advantage to using spaces? I have seen similar posts for a while and as a tab user I don’t understand why they are any better than just a tab