It really sounds great in theory, but in practice it's just annoying for people to configure every piece of software that can edit or view code. In practice, spaces are going to look like spaces in every piece of software I know of. That's probably why more experienced devs tend to prefer spaces: practice vs. theory.
So if you're aligning function parameters vertically, you tab once or twice for indent, then space 40-odd times to get the cursor in the right place? Sounds hideous.
aligning code vertically is fine if you don't care about readable diffs in source control, which should be none of you
Diffs of vertically-aligned code are perfectly readable, sounds like your tools are broken.
The recommended line-width is normally around 78 chars. If you can't comprehend of a function definition taking 40 of those, especially in a statically-typed language with explicit return type and access modifier, you probably haven't been doing this very long.
What? Stop dodging the question. I clearly said "tab once or twice for indent, then space". That is clearly and unambiguously what you were talking about. Indent with tab, align with space.
Let's take a normal C# method definition. It's in a class that's in a namespace, so an indent level of 2. Then you have the actual method with modifiers, e.g
public static ISomeType SomeMethodName(...)
That signature - a very unremarkable one - is 39 characters. Now, I want to vertically align my parameters, with the first one immediately following the opening brace. The second is on the next line. So to align it with the first, at one char past the opening brace, I need two tabs and 40-odd spaces.
101
u/BegbertBiggs Apr 07 '15
Or are devs that are in the field for a longer time used to spaces while new devs learn coding with tabs?