|
|
|
|
|
by nhooyr
1219 days ago
|
|
He's not wrong. Certainly when it comes to the full scope of being a programmer, Linux and BSD are your only real options. You can't easily add a new filesystem or screw with the kernel on macOS/windows without having to buy hundreds of dollars worth of their books and attend conferences. There isn't really any good detailed up to date documentation online about either. The docs for linux/bsd aren't perfect either but at least there you can always fall back on the source. That makes a massive difference. For example, one of the reasons I switched from Java to Go back in the day is that I could actually read the source code of the APIs I was using. So I could fully understand the standard library whereas in Java it was all obfuscated bytecode. I'm not sure if the situation has changed with OpenJDK but my point stands, an open core system is far superior platform for learning. |
|
You can see this to some extent in other professions. Cardiologists and neurosurgeons get paid big bucks because their job is life or death stuff and requires skill and innovation. But would you want to work with a cardiologist that goes around sneering at every other kind of medical professional and saying they're not real doctors? Of course not, because they're assholes and when people like that screw up they'll blame their colleagues or patient rather than admit fault.
Back in the tech context, you can pursue authenticity into absurdity. You're not a real programmer unless you use (language). You're not a real programmer unless you contribute the language. You're not a real programmer unless you get into kernel hacking. Sure, you call yourself a programmer, but do you even assembler? Programming? Sorry, I design chips. Chips? Do you even basic circuit designs. Me, I roll my own capacitors built from carbon nanotubes...and so on up through materials science, physics, and mathematics.