this post was submitted on 28 Feb 2024
1012 points (97.0% liked)
Programmer Humor
32718 readers
538 users here now
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Python: So you used spaces and tabs for indentation? NOW DIE!
Mixing spaces and tabs should be a warcrime.
And in Python, it's merely a SyntaxCrime.
Find me anyone who claims they use tabs for indentation, and I bet I'll find at least one case where they're using both tabs and spaces.
The only safe way to avoid war crimes is to avoid tabs.
Why would I use spaces if I use tabs? Also, it seemd like a huge waste of time hitting the space bar so many times...
To comply with Python's best practices:
https://peps.python.org/pep-0008/
Also, if you work on the Linux Kernel, you'll see a mix of tabs and spaces:
https://elixir.bootlin.com/linux/latest/source/block/bfq-iosched.c#L390
You use an editor that doesn't auto-indent?
I use vi without syntax highlighting.
To be fair you can totally bind an arbitrary number of spaces to tab in vi. I'll dig out the syntax highlighting file some time. Oh and I use vim really.
Don't IDEs just replace any tab with 4 spaces anyways? Pretty sure VSCode does
I don't use an ide, but I wrote a script that replaces any space I type with four.
I haven't worked out all the use cases yet, though.
That's a setting in the editor.
I use the tab key but I'm pretty sure vs code converts that to spaces
Depends on your settings, but yeah typically it does
It worries me that a programmer wouldn't know for sure what's happening when they hit tab, and that it's a setting that can be changed.
I mean I was 99% sure it convert to spaces, I cannot say I was certain. The default settings are fine for what I do, I only ever had to change the spacing from 4 to 2 spaces once when dealing with someone else's files
Linux kernel?
https://www.kernel.org/doc/html/v4.10/process/coding-style.html#indentation
edit: oh python, nevermind
The kernel definitely mixes tabs and spaces:
https://elixir.bootlin.com/linux/latest/source/block/bfq-iosched.c#L390
Good. Spaces and tabs for indentation should never be mixed in any language other than Whitespace.
Some people use tabs for indentation and spaces for alignment. It kind of gets the pros of tabs (user configurable indent-width) and the pros of spaces (alignment). That doesn't work in Python where you can't align stuff and the interpreter doesn't allow mixing tabs with spaces, but in other languages it is a possible style.
There are no pros to tabs. Configure tabs to a number of spaces.
Raw adjust with tabs, fine adjust with spaces.
Don't laugh, people are actually doing that.
Mixing tabs and white spaces in 2024 is categorically a you problem lmao
Are you ok?