First of all, the author did not say she believed that, she argued that Joel Spolsky did. I'm going to respond to it anyway because I think a lot of people do think pointers and recursion separate the boys from the men[0].
In an era of coding bootcamps that claim to compress a 4-year CS degree into 4-10 weeks of adrenaline-fueled CSS/HTML/JS/Ruby memorization, and deem their graduates programmers, it seems like many people follow that sentiment.
I believe this kind of thinking is not so much harmful as laughable - in my experience studying programming has been an exercise in learning about the existence of more and more complex topics I don't understand yet. First it was OOP, then design patterns, then functional programming, and now I'm glancing over the horizon towards type theory, language theory, etc.
Getting pointers and recursion are very, very, early steps (though hard ones!) on a long journey.
You are right about bootcamps. I think that the entry point to programming has lowered. Most everyone who goes to a decent CS program understands pointers, recursion and object oriented programming at least to some degree. (I have to admit that I needed to relearn pointers a few times) Folks who didn't start from CS programs came from Physics or Math, and picked up on the theory quickly. It's very hard to learn this stuff after college.
Today there are a lot of people "learning to code" from other backgrounds. There are Marketing majors who follow the HTML -> CSS -> JS -> Ruby path that you mention. Good for them to start the path. Picking up recursion is an advanced topic for them - and good for them. It's all relative to the starting point. And I hope many of these folks stick it out to get good, because Stanford and MIT aren't churning out enough people to satisfy the demand.
She did, however, dismiss them as being hardly important to what she does. This is the ever growing phenomenon of "I can too" that is growing in our culture. I love the fact that more people are becoming interested in programming! I am not so happy about the fact that people seem to shirk the fundamental need to learn that underpins programming (or computer science... however you want to label it). If a person has no interest in learning recursion and pointers, I am not so sure that they are doing their company or the people who have to work with their code a favor. Then again, there are a lot of know-it-all programmers out there whose personalities are so grating that talking to them is an absolute slog.
Well I'm not from a web programming background, I started with game programming in C. Maybe since web is so design heavy it doesn't matter if you don't understand what I would consider fundamentals.
I worked with C, C++, and assembly -- and others -- before picking up web programming. They're just different, but people still insist on getting their egos involved anyway.
With OS and applications programming, you typically have to know a handful of concepts, but you have to know them really well. With web programming, you typically have to know a lot -- it can be an obnoxiously broad field of practice -- but you don't have to know it all perfectly well. CSS or JS or PHP or Python or Ruby or what-have-you generally immediately works or doesn't work, you generally don't encounter those annoying null ptr situations.
I doubt there are a lot of C programmers that could do web development (front and back end) very well. I doubt there are a lot of web developers that could do OS development very well.
But it's all just programming.
All of software development would be a hell of a lot better environment if people would quit waving their egos around.
Comments
First of all, the author did not say she believed that, she argued that Joel Spolsky did. I'm going to respond to it anyway because I think a lot of people do think pointers and recursion separate the boys from the men[0].
In an era of coding bootcamps that claim to compress a 4-year CS degree into 4-10 weeks of adrenaline-fueled CSS/HTML/JS/Ruby memorization, and deem their graduates programmers, it seems like many people follow that sentiment.
I believe this kind of thinking is not so much harmful as laughable - in my experience studying programming has been an exercise in learning about the existence of more and more complex topics I don't understand yet. First it was OOP, then design patterns, then functional programming, and now I'm glancing over the horizon towards type theory, language theory, etc.
Getting pointers and recursion are very, very, early steps (though hard ones!) on a long journey.
[0] s/boys/girls s/men/women
You are right about bootcamps. I think that the entry point to programming has lowered. Most everyone who goes to a decent CS program understands pointers, recursion and object oriented programming at least to some degree. (I have to admit that I needed to relearn pointers a few times) Folks who didn't start from CS programs came from Physics or Math, and picked up on the theory quickly. It's very hard to learn this stuff after college.
Today there are a lot of people "learning to code" from other backgrounds. There are Marketing majors who follow the HTML -> CSS -> JS -> Ruby path that you mention. Good for them to start the path. Picking up recursion is an advanced topic for them - and good for them. It's all relative to the starting point. And I hope many of these folks stick it out to get good, because Stanford and MIT aren't churning out enough people to satisfy the demand.
She did, however, dismiss them as being hardly important to what she does. This is the ever growing phenomenon of "I can too" that is growing in our culture. I love the fact that more people are becoming interested in programming! I am not so happy about the fact that people seem to shirk the fundamental need to learn that underpins programming (or computer science... however you want to label it). If a person has no interest in learning recursion and pointers, I am not so sure that they are doing their company or the people who have to work with their code a favor. Then again, there are a lot of know-it-all programmers out there whose personalities are so grating that talking to them is an absolute slog.
Well I'm not from a web programming background, I started with game programming in C. Maybe since web is so design heavy it doesn't matter if you don't understand what I would consider fundamentals.
I worked with C, C++, and assembly -- and others -- before picking up web programming. They're just different, but people still insist on getting their egos involved anyway.
With OS and applications programming, you typically have to know a handful of concepts, but you have to know them really well. With web programming, you typically have to know a lot -- it can be an obnoxiously broad field of practice -- but you don't have to know it all perfectly well. CSS or JS or PHP or Python or Ruby or what-have-you generally immediately works or doesn't work, you generally don't encounter those annoying null ptr situations.
I doubt there are a lot of C programmers that could do web development (front and back end) very well. I doubt there are a lot of web developers that could do OS development very well.
But it's all just programming.
All of software development would be a hell of a lot better environment if people would quit waving their egos around.