this post was submitted on 09 Aug 2023
8 points (100.0% liked)
Programming Polls
130 readers
1 users here now
Welcome to the programming polls community! This is a place where you can run polls related to programming
For questions not related to being a poll theres communities such as [email protected] instead and for trivia theres [email protected]
As lemmy doesnt have a built in poll system if you want to run a multiple choice poll you can just make each option its own reply and people can vote by upvoting
- Logo base by Delapouite under CC BY 3.0 with modifications to add a gradient
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The golden rule is: Tabs for indentation, spaces for alignment.
Your link doesn't seem to weigh super heavily on the "tabs for indentation" as a rule, only that tabs should never be for alignment.
Tabs for alignment is definitely a recipe for madness.
Interestingly, tabs for alignment is the correct method for word processors, so it's backwards for code :/
True, the link doesn't go through tabs for indentation, but tabs should already be used for indentation for accessibility
That could be argued for years, ill leave your preference up to you :) I'm personally in the spaces for indent camp, but realistically, as long as you match the existing codebase, it doesn't matter.
I don't think there's any new arguments anymore, it was all settled long ago.
But now all editors handle tabs.
And yet, the debate still rages :D I am not sold by the tab arguments, and your probably not gonna be sold on the spaces arguments. As long as we don't fuck with each-others codebase, it really doesn't matter too much.
The accessibility argument is interesting, but setting your code style to use a sufficiently large amount of spaces, and avoiding horrifically nested code seems a valid solution there as well (XML would be a strong case for tabs, other languages less so). Maybe when my eyes start to age I'll care more about adjustable tabs :/
There isn't a debate anymore, the points have already been stated.
The only reason people still talk about it is that there's always developers learning the points for the first time.
Don't worry about your own eyes in some vague future, worry about other's eyes now.
I think the reason that people still talk about it is that there isn't a compelling reason on either side. There is just a series of slight benefits and drawbacks. Tabs are slightly better on braille readers, spaces are easier for consistency (when tools don't respect .editorconfig), blah blah blah. No one is being entirely excluded due to either option being used, so it's really a personal/team style decision.
Tabs are better than just for blind users.
Most users want an indentation size of 4 so for the rest of this comment we'll just call that one the default size.
Tabs
Tabs at default/any size
Tabs at larger than default size
FactoryFactoryFactory
) users tend to care about tab size and put the tab size up to 8 to make it easier to read. These users tend to use tabs because it's fewer keys.Tabs at smaller than default size
Tabs at variable sizes
Spaces
Spaced indentation at smaller than default size
Spaced indentation at default size
Mixed Indentations
Spaces don't require additional key presses, you press tab and it puts in X spaces. No one should be using the spacebar except for when you need to precisely align things. Arguably, no one should be pressing the tab key either, as most IDEs can automatically indent for you, and it doesn't requires tabs or spaces.
Annecdotally, tabs don't display nicely on some braille devices (saw someone mention this on the prettier tabs discussion while researching yesterday). This may come down to the specific device they use, or it could be entirely false, but all the arguments for tabs/spaces a11y have been anecdotal.
These are all reasons to prefer tabs, but none are reasons to require tabs. And hence, teams will make their own decisions based on what annoys/suits them most.
https://blog.jetbrains.com/dotnet/2022/08/11/virtual-formatter-in-resharper-2022-2/ https://github.com/prettier/prettier/issues/7475#issuecomment-668544890 - pro tabs
https://github.com/prettier/prettier/issues/7475#issuecomment-1169470712 - pro spaces, with some arguments for tabs
https://github.com/prettier/prettier/issues/7475#issuecomment-1169934190 - claims to be blind, no preference either way
Unfortunately I can't find the tab display complaint, but it was anecdotal anyway. No one on the internet would lie...
I don't ever bother alignment. That is nuts.
yaml has entered the chat
I have some serious refactoring to do.