4 ms·
I used to be a huge fan boy of the Linux kernel development. But when I got to actually try to see how it's done I've just given up. I mean, setting up your ema
by TeeMassive 5y ago
I used to be a huge fan boy of the Linux kernel development. But when I got to actually try to see how it's done I've just given up. I mean, setting up your email so it's like the 80s? Coding standards based on old tty terminals? No unit testing? Toxic leaders? No thank you.
While the GNU/Linux was 20 years ahead, it's now more than 10 years late.
Also relevant: https://www.usenix.org/system/files/1311_05-08_mickens.pdf https://www.usenix.org/system/files/1311_05-08_mickens.pdf
> This is not the world of the systems hacker. When you debug a distributed system or an OS kernel, you do it Texas-style. You gather some mean, stoic people, people who have seen things die, and you get some primitive tools, like a compass and a rucksack and a stick that’s pointed on one end, and you walk into the wilderness and you look for trouble, possibly while using chewing tobacco. As a systems hacker, you must be pre-pared to do savage things, unspeakable things, to kill runaway threads with your bare hands, to write directly to network ports using telnet and an old copy of an RFC that you found in the Vatican. When you debug systems code, there are no high-level debates about font choices and the best kind of turquoise, because this is the Old Testament, an angry and monochro-matic world, and it doesn’t matter whether your Arial is Bold or Condensed when people are covered in boils and pestilence and Egyptian pharaoh oppression. HCI people discover bugs by receiving a concerned email from their therapist. Systems people discover bugs by waking up and discovering that their first-born children are missing and “ETIMEDOUT ” has been written in blood on the wall.
- encryptluks2 5y ago> setting up your email so it's like the 80s Using email for development isn't the 80s. It is very streamlined and built into the Git code itself and mail clients that are actively maintained like Mutt. Just because you can't imagine what life would be like without Gmail doesn't mean that these maintainers are less efficient and antiquated than you are. > Coding standards based on old tty terminals Don't even know what this means. What coding standard is based on old TTY terminals? TTY is part of Linux. > No unit testing Linux is the most widely used OS in enterprise. The internet runs on Linux. If you want unit tests for everyone then start an open source project to do this, or complain about the enterprises that aren't testing. > Toxic leaders Who is toxic? I love Linus's approach. It has allowed him to get things done without toxic people in the community trying to social engineer their way into destroying something good.
- loxias 5y ago> Don't even know what this means. What coding standard is based on old TTY terminals? TTY is part of Linux. I'm guessing they're trying to poke fun at people who care about your code being too wide, and hard to read? (But, while I no longer stick to a strict 80 column limit, like I used to, wide lines in code sucks. A proud mutt using systems engineer.)
- d110af5ccf 5y agoIf you strictly adhere to a ~100 column width then you can easily fit 3 files side by side on a mainstream monitor. People complain about useful practices and characterize them as antiquated rather than taking the time to appreciate that not everyone uses the same workflow.
- encryptluks2 5y agoSetting a fixed width is not one that I agree with. You can enable line wrapping in pretty much every text editor.
- cerved 5y agoRemember that long lines aren't just a problem for display. Longer lines might indicate that the code is either nested too deep, likely too complicated. Or poorly named withUnreadableRidicouslyLongWeirdWhatsGoingOnHereName. It's also problematic if the line ends up doing too much, ie. lots of chained method, since VCS track changes per line. While editors do a good job at word wrapping, they're not always excellent. Humans may do a better job. Note that the kennels style guide isn't fixed at 80 characters but strongly preferred. "Coding style is all about readability and maintainability using commonly available tools. The limit on the length of lines is 80 columns and this is a strongly preferred limit. Statements longer than 80 columns will be broken into sensible chunks, unless exceeding 80 columns significantly increases readability and does not hide information. Descendants are always substantially shorter than the parent and are placed substantially to the right. The same applies to function headers with a long argument list. However, never break user-visible strings such as printk messages, because that breaks the ability to grep for them."