7 ms·
The Null Professor (2014)
- scott_s 12y agoI posted this because I strongly agree with Crista on the notion that some people can inherently program, and some cannot. I think that's as ridiculous as she does. However, I see the sentiment repeated here, often. I posted this to present the arguments of a CS professor on the topic, one who has even more experiencing in it than I do.
- partition 12y agoIs English your first language?
- tjradcliffe 12y agoThe one thing I don't see in stuff written by people who are committed to the idea that everyone can be taught to program is before-and-after mark distributions, demonstrating how we can get rid of the apparently robust bimodal distribution that has dominated first year computing courses for decades. It's great to contend that everyone can be taught to program, but decades of research have yet to answer the question of "How?" Or even "Why?" Many people have very strongly felt opinions, but there is a surprising paucity of data. The idea that some people get it, some don't is not at all ridiculous: it is a perfectly plausible hypothesis given the robust bimodal mark distribution seen in first year computing, which differs from what we see in math or the sciences. The problem is no one has been able to find anything that correlates well enough with this to be predictive, and if "not getting it" and "getting it" were features of humans we might expect to be able to measure them in ways other than teaching first year computing. On the other hand, no one has ever been able to get rid of that bimodal shape (so far as I know), so there is an equal and opposite knock against that hypothesis. I lean toward the "inherent" hypothesis and have some ideas as to what might underlie it, but would be easily convinced otherwise if anyone could actually generate an intro computer curriculum that resulted in a mark distribution that looked more like what we see in first year math or physics.
- kephra 12y agoI compare coding with making music. You can teach everybody to make music, but most people are to shy to begin. Learning to make music requires lots of boring practice. Lot of people fail after a few month of guitar lessons as a kid. But then there are those manic musicians. A real musician must play everyday, regardless if he has audience, if he gets payed, if it sounds good to anybody but him. A real musician is manic and becomes depressive, if unable to make music. Some of them become great musicians. Its the same with coding. Most people are to shy to try even. Lots of people fail to get traction. Only a few become manic, and of those a some become great coders.
- partition 12y agoThat's right on with "too shy". The issues of pedagogy whether it is music or programming are largely sociological. So why not make being a manic musician attractive and marketable like they do in movies about music? I guarantee you that the core inspiration that starts (and to a large extent sustains) any involvement in any activity is aesthetic. This makes aesthetics the beginning and end of activities. But in programming, we just use the manic people as Golden Children to somehow whip the other students into shape. This utterly fails of course, aesthetically and practically and in every other way imaginable. It's an ugly way of doing things and it doesn't actually produce good programmers.
- peterfirefly 12y ago> You can teach everybody to make music Probably not.
- zimpenfish 12y agoI guess it depends if you read "make" as "create" vs "play". The latter is more likely (but I'd still dispute it.)
- cubano 12y agoI've been using the analogy for 30 years now. I've taught both programming and guitar over the years, and in the end, those that endure the frustrations and loneliness of learning, because of whatever-inner-drive, have become successful, although it would seem that in this context, the word "successful" is perhaps fairly arbitrary, which also may be at issue here. It really isn't much more complicated then that. I just cannot see any shortcut in learning to play guitar besides actually playing an hour a day, with very sore fingertips and sounding like crap, for months, although, of course, my encouragement and beginner-level instruction in how to play "Seven Nation Army" and "Brain Stew" is, at some level, probably sort of helpful. Same with learning Python/C/JS/etc. I have always loved the term grok as a wonderful descriptor of gaining these type of skills and knowledge, as it captures the essence of the idea almost perfectly. [edits]
- lmkg 12y agoFor me, this article was thought-provoking throughout, but there was a very deeply-buried lede as well: in the linked interview with Maria Klawe[1], all the way at the bottom, where she mentions separating the 101-level CS class by previous programming experience. I think that an exceedingly large portion of the barriers to entry faced by students trying to enter the field is due to the disparity in experience, which masquerades as a disparity in aptitude. That disparity turns into a large barrier to entry, due to both self-selection on the part of the students (feeling intimidated and outclassed), and also the issues being discussed in this article about being written-off as no good by the professor. There may, perhaps, also be an inherent aptitude component as well. I still sort of think that there probably is. But we still shouldn't confuse that with what's really going on in the intro classes. Some kids that have the aptitude, and still have the potential to become exceedingly competent, should not be weeded out just because they didn't have the good fortune to be exposed to CS before college. [1] Full disclosure: HMC alumn
- partition 12y agoNo, of course it's good to have people of vastly differing experience and aptitude learning from each other! You just need to separate the assholes and subhumans from the inexperienced newbies and human being who like the subject for what it is (and not as a way to look down on others).
- partition 12y agoRubbish article by a professor who somehow can't think straight. Newsflash: Everyone is as "self-driven" as your typical Golden CS Boy who is going to be next #1 at sucking up to VC's. And I'll tell you what drives most of those types of people: feelings of inadequacy and insecurity and needing someone to compare against to feel better about himself (i.e., subhuman). Anyways, going back to the main point, people are very obviously and palpably "self-driven." Otherwise they would just sit there like a robot, and you'd have to give them commands in some kind of neuro assembly language lol. They are just driven in different directions than you prefer, and it's your job as a fucking teacher to find what these directions are and SHOW them gaps in their thinking and how they can get better. Of course, you aren't actually interested in this; you just want a choir of more wretched subhumans to preach to. Broadly speaking, it's sad and funny that nearly 80% of professors I've seen don't do it because they like the subject, it's more because they like the status and want to look down on more people. In fact, it's only like 20% of professors I've encountered who continually renew my faith and sense of curiosity in the subject, and always introduce me to new realms of the field where I can improve my understanding. One day people will find out they don't have to pay tuition to be belittled by subhuman idiots presiding in what is in most cases, in the final analysis, make-work positions, and just read HN or proggit for however much internet access costs :)
- swang 12y agoHoly shit if this isn't a post for the "avoid gratuitous negativity" archives...
- partition 12y agoIf by "post" you are referring to the pile of shit that is linked, then yes. My negativity here is NOTHING compared to the negativity and resentment by the professor in the article, who cloaks it in positive language. I'm only saying that people should be more aware of what drives others, and look past the surface. On the other hand, he is advocating for a Cult of Computer Science with specially designed courses for different races of people. Whites get one sort of programming class, women another, blacks yet another, asians yet another, etc. He's also completely submitted and subjugated himself to the concept of education as preparation for being a laborer drone to make the few richer, rather than education as a way to educate the student. You can tell by his blind devotion to Paul Graham and business students (only business students are as self driven as CS people, obvioulsy they must be because everyone's in it for the money and BIM students are closer to the source) And as a professor, one can do a lot more damage to society being like this than in other positions. So either this whole article is gratuitous negativity, or it's not and what I'm saying is actually gratuitious positivity; the world is going to be so much better once people like him aren't around!
- Confiks 12y agoThe author introduces a catchy archetype: The Null Professor. She then proceeds to tell a story about elite universities, which apparently are a breeding sites for such educators. When the author finally turns to explaining the term, 'pedagogy' is invoked. Just pedagogy. Somewhat later in the post, the word can even be clicked upon. I honestly hoped that the link would explain the specifics in teaching methodology, but it was simply a link to the Wikipedia page about the term. Good teachers use pedagogy. Bad teachers, which are 'Null Professors', don't use pedagogy. Simple. The author herself once didn't use pedagogy. Now she does. She understands now. The article then turns to a question: "Why student's don't get it". This also is easily answered: educators should use "problem-driven and hands-on [methods] rather than abstraction-driven".
- manmal 12y agoIs this a tldr or are you getting at something?
- kaitai 12y agoRemember, most professors do not get any training in how to teach. It is sad but true that learning about pedagogy is a big step for us. Maybe CS needs some of this pedagogy-discussion.
- seanmcdirmid 12y agoIf you asked an experienced effective high school teacher "how do you do it?" What could they tell you? It took a lot of work to learn how to teach: experimentation, analysis, etc...you simply have to learn how to teach! What you are fishing for is "how to teach", whereas Crista post is simply pointing out that "you have to learn how to teach". It is a bit circular, but in university most professors come in without any formal training on how to teach undergraduates; the idea that you have to learn how to teach is still quite radical.
- jseliger 12y agoIf you asked an experienced effective high school teacher "how do you do it?" What could they tell you? It took a lot of work to learn how to teach: experimentation, analysis, etc...you simply have to learn how to teach! Take a look at Teach Like a Champion 2.0 by Lemov. It answers this precise question! (http://www.amazon.com/Teach-Like-Champion-2-0-Techniques/dp/1118901851 http://www.amazon.com/Teach-Like-Champion-2-0-Techniques/dp/...).
- werizuwe 12y agoI currently get a teaching degree. The education for that is split in two parts: The academic part in the university and the practical part at a school. I'm currently in the academic part, but some time ago a professor (not actually a professor) of the practical part gave some insights what the expect in the second part. He said that no matter how good we will be, in CS half of our (high school) students will not learn much, if anything. I was (and still am) absolutely shocked about this statement. He claimed that this was a unique property of CS. If such a thing would happen in any other subject the teacher would be a total failure. But it would happen to him in CS, every college and every teacher in education he was ever responsible for. This person is responsible for the education of teachers, engaged, probably very well thought and I have every reason to believe him to be a very good teacher. I'm don't know what I should think about this. But The link at the end is really not helpful. >At Harvey Mudd we’ve focused on changing four things about learning CS: make it fun, make it relevant, make it not scary and make it clear that lots of kinds of people have careers involving CS. We changed the context of the intro course to “creative problem-solving in science and engineering using computational approaches with Python” instead of “learn to program in Java” and made sure that the homework assignments were a lot of fun. We did not reduce the level of rigor or challenge, and we increased the amount of programming. So, you made CS less like math. That good for some. But you completely ignore that math education does not suffer these problems. Why not making making it more like math? Well, in the end AFAIK neither works. At least for worse half of high school students.
- tjradcliffe 12y agoThere is a considerable literature on 'the CS1 problem' in education. It is a long-term, robust observation that the marks in first-year computing courses in university are strongly bimodal in a way that is not seen in other, comparably difficult subjects. Here is a discussion of a paper (with link to the paper itself) that looks at these issues: http://www.tjradcliffe.com/?p=1338 http://www.tjradcliffe.com/?p=1338 And some follow-on, where I build a simple model that reproduces the biomodal mark distribution under the assumption that there is a single characteristic that is uniformly distributed amongst the population but that exhibits a threshold when it comes to programming: http://www.tjradcliffe.com/?p=1471 http://www.tjradcliffe.com/?p=1471 My bet is there's one (or a small number) of characteristics that are possessed in different degree by people and that if you fall below some threshold you will have a hard time learning to code. I liken this to height with respect to getting over a wall in an obstacle course: for people who are tall enough, it'll be easy. For people below some threshold it will become increasingly hard. There are two other variables that matter (strength and weight) so it may be difficult to pull out height as a single parameter, but some linear combination of height, weight and strength should be a good predictor of ability to get over the wall. No one has found such a small set of factors for programming ability yet, but I'm not aware of anyone testing the things that are likely to be important, particularly a) ability to follow instructions; b) ability to create a set of instructions for a task that, when followed by a person unfamiliar with every element of the task will result in its successful completion; and c) ability to arbitrarily use anything to represent anything else.
- euske 12y agoAm I only one who read this as "the null processor" and thought it's a dumbed-down CPU for educational purposes?
- TazeTSchnitzel 12y agoThe problem with CS education is that many students have had experience programming (and with computers generally) during their teen years, so professors can get away with not properly teaching CS fundamentals as many students already know them, or at least enough to easily grasp the rest. But there are plenty of students who don't, and they're the ones left out. They have no idea how to program, and the useless programming course won't help them, because for the past 30 years most of the students taking it have already known how to program, so the people designing the course have no idea as to its actual quality. The professors see them struggling and assume they just "don't get it". It's this which also causes the massive gender bias in CS students: male students, to whom early (and current) computers were marketed, had learned to program at home. Female students, to whom home computers were never marketed, mostly didn't learn to program at home. So they take the course, are considered by the professors to "not get it" unlike most of their male peers, and drop out: http://www.npr.org/blogs/money/2014/10/21/357629765/when-women-stopped-coding http://www.npr.org/blogs/money/2014/10/21/357629765/when-wom...
- seanmcdirmid 12y agoThe post specifically addresses this in paragraph two: > First, after the first few years of being a professor, my conclusion was the same: there’s nothing I can do, some students get it others don’t. I’ve learned a few things since then, and I know I was completely wrong. I was being a “Null Professor” at the time. Now I know better. ... > A Null Professor is someone who never has to think about pedagogy. The Null Professor is not necessarily a bad professor, although that may happen too; it’s just that he/she doesn’t think about pedagogy, teaching comes as whatever natural teaching skill he/she has.
- deleted 12y ago[deleted]
- TazeTSchnitzel 12y agoOnly partly. As lmkg points out (https://news.ycombinator.com/item?id=9351075 https://news.ycombinator.com/item?id=9351075), the post hints at but doesn't directly state the aptitude/experience distinction.
- bsder 12y agoI don't agree with the fact that programming can't be taught. However, I also can't overcome 12+ years of (mis-)education in one semester. There was an article posted that showed that you could predict performance in introductory CS from a single test given at the beginning of the semester. There were 3 groups: 1) the group who understood about rules, applying them to a computing system and had the correct interpretation of them--they did well unsurprisingly. 2) the group who understood about rules, applied them consistently, but simply had the wrong rules internalized. They did well after being taught since all you had to do was correct the wrong rules. 3) the group who simply didn't have any logical understanding of how to apply underlying rules to a system--they simply failed miserably. To teach these people CS, you first have to teach these people logical cause/effect thought. This is so fundamental a building block that you can't possibly cover it in a CS course. So, to a first approximation, these people actually can't be taught because you have to fix something else first. And, that problem, I suspect, is actually buried in the article: "give me a fake problem, and I don’t think it’s worth my time; my brain shuts off. I suspect a lot of people (especially women) are like me." When faced with this situation, some of us get told: "Tough. Suck it up. You don't always get to do interesting things, and you have to succeed even if it's boring." Others of us get sympathized with and are allowed to slack with excuses like "Math is hard; I wasn't any good at it either." A couple iterations of this and you wind up with a gap in final achievement even though there is no gap in initial ability. If I were throwing around stereotypes like the author, I would say that "Men get told to suck it up or get out. Women get sympathy and are allowed to stay and make excuses." And thus you wind up with an achievement gap between men and women.
- brighteyes 12y ago> A final word on genetics. There is increasing evidence that there are substantial differences in the way that various segments of the population learn. For example, studies have shown that men’s and women’s brains are wired differently. So maybe we need to use pedagogies that work better for each group, instead of uniformly using the white male-dominated learning paradigms that have been forced on us for centuries, only to discover that they tend to turn women off. No. Just no. First, the study linked to is indeed an interesting finding on neuronal differences between men and women... that is easily twisted to justify existing stereotypes. It doesn't actually say anything about FUNCTIONALITY - just anatomy. But it's easy for the author to connect those dots, despite no scientific basis. Second, there are no "white male-dominated learning paradigms" that are SPECIAL to computer science. Women have achieved parity in biology, despite "white male-dominated learning paradigms" there, and women have achieved dominance in psychology, again despite "white male-dominated learning paradigms". Those show that such "paradigms" are not the issue. Honestly, after such a thoughtful article, I was disappointed it ruined itself so thoroughly at the end.
- c2the3rd 12y agoStructure influences functionality. This is the case in both engineering and biology. For example, dolphins have tails and flippers while I have arms and legs. No one disputes the dolphin is a better swimmer and I am the superior runner. Why should this be any different with brains? Brains with different structure are suited to different things.
- TheLoneWolfling 12y agoThe part about undergraduate versus graduate marks, to me at least, doesn't seem to say what the author thinks it says. To me, it says "your marking scheme for graduates is broken". The entire purpose of marks is to classify the people taking the course. Or, to put it another way: When everyone is super, no-one is.
- c2the3rd 12y agoLet me start by saying I do think there are definitely "Null Professors" who do not properly teach, and thus allow competent students to fail. However, I must agree with the notion that some people inherently can't program. To take the most extreme case, do you think the dumbest human on earth could learn to program? I don't. All concepts require some level of intelligence to grasp. Many animals have some intelligence, but cannot learn how to count. Humans know how to count because humans originated the concept, and therefore the first human to do it must have had some intrinsic ability others lacked. Teaching can spread the insight, but it cannot create insight from nothing. I will go one further to say some people who can't program make it into universities. Admissions aren't perfect. People can get in because of their parents, because the school wants them as an athlete, because of Affirmative Action, or a simple misjudgement by university staff. I think people lose sight of this because intelligence and knowledge are so hard to measure. Footraces are much easier because you can only measure speed against a clock, and I know most humans will never have the ability to run a 4 minute mile. No women has done it yet. This is not to say this makes some people "better" than others, but everyone has their own skills. It is folly to think everyone can do anything anyone else can do, even in principle.