5 ms·
No, I was just saying that in my vast experience the two things that you described as: "absolutely nothing whatsoever to do with programming. Nothing. Zero. Zi
by malux85 6y ago
No, I was just saying that in my vast experience the two things that you described as:
"absolutely nothing whatsoever to do with programming. Nothing. Zero. Zilch. It is completely superfluous knowledge"
Were indeed critical components to all of these systems, and organisations, and that it's not a big ask to require a programmer to know them.
Also, on what authority do you decide what is programming and what isn't?
- user-the-name 6y agoThe whole point is, there is no reason to require a programmer to know them. That is an arbitrary choice we have made. We could make a different choice, and not require a programmer to know these things. They could do everything just as well without knowing this, if we let them.
- malux85 6y agoWhen I was travelling through Italy, I learnt a phrase from programmers there, "If my mother had wheels, she would have been a bike" - and it's a criticism of hypothetical situations like your answer above. Saying "This is arbitrary if we made a different choice things would be different" is a total meaningless statement because you just move the bar and then say if the bar is moved things are different. My argument is that eventually all implementations are embedded in reality, if not /usr/local/bin and $PATH then some other abstraction that is equally arbitrary - but in the real world, the one we live in, we have /usr/local/bin, $PATH and a bunch of other "arbitrary" lines that have to be somewhere because without these lines (or some lines) there is nothing. And you have to know them, whatever they are. Because you know what happens if you don't know them? You end up with people writing blog posts about how difficult programming is, ranting they cant install ruby or pip or node.js, like the article above. You have to learn the underlying system, whatever it is. In this case, it's /usr/local/bin and $PATH. I think you're not arguing that you shouldn't know the underlying system (correct me if I'm wrong) but you're more saying that these particular abstractions are inconsistent or distasteful - if that's the case, let me assure you that no implementation is perfect, and programmers for nearly 100 years now have been trying to come up with the perfect abstraction that requires no knowledge below, but in reality, it never works, because theres always exceptions, or the abstraction is not flexible enough to apply generally enough to be useful, thats like the two forces that push and pull the argument both ways. I've come to learn that you must just learn the underlying system, because you'll be able to diagnose better. To that end, you must learn sysadmin, you must know $PATH and you must know the underlying system. Go and have a look at the programmer competency matrix - this stuff is in there
- user-the-name 6y agoWhat I am saying is, as soon as someone new to programming points out, entirely correctly, that the tools we use are weird, obscure and difficult to use for no apparent reason, programmers will scream in rage that no, they are not, and by the way, you are stupid for saying it, you clearly have no idea what you are doing and you will never be a programmer. As is happening everywhere in this very thread. I am saying that this is weird, toxic and must stop. We must be able to admit that yes, the tools we use are kind of bad. We must admit that we could do better. Otherwise nothing will ever change, and we will keep using stupidly broken tools until the end of days, while patting ourselves on the back for being clever enough to use them.
- malux85 6y ago> programmers will scream in rage that no, they are not, and by the way, you are stupid for saying it, you clearly have no idea what you are doing and you will never be a programmer. Nobody has said this to you in this thread, and the fact that you're acting like it is the only toxic thing here. This is called a straw-man logical fallacy, you misrepresent my argument so it makes it easier for you to attack. Nobody has said this to you, that part is all in your head. I'm saying the tools are not weird if you understand them, and how they fit as a cohesive whole. I'm saying they just look weird to you, because you don't yet understand them. Can we do better? Absolutely, I'm all for better tools. But if the original poster wants to install pip and ruby and nodejs then knowledge of system paths is mandatory - because this is what they are trying to do. In my answers above, I have named several programming languages, several operating systems, discussed my commercial experience and then talked about the rationale behind my logic. You have done nothing but turn these into personal attacks against yourself, not discussing systems or operating systems, (not even naming one!) but always complaining about people calling you stupid or how you're the victim. The only person that has used the word stupid in this thread is you. You are a toxic narcissist, and I chose not to engage with you.
- user-the-name 6y agoFirst you say nobody has called me stupid. Then in the NEXT PARAGRAPH, you tell me that I don't understand command line tools. I have been using them for decades. I know them very, VERY well. I am saying all of this from a position of long and deep familiarity with the tools. Yet immediately you jump the conclusion that I just don't know what I am talking about.
- moistbar 6y ago> The whole point is, there is no reason to require a programmer to know them. There's no point to making sure a programmer knows how his environment is set up? Are you being serious right now?