Live data from Hacker News

Coding Horror: Separating Programming Sheep from Non-Programming Goats

codinghorror.com

81–90 of 140 posts

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#81
post #63

Earlier quoted context omitted.

I read cletus's post to suggest that primary math education (i.e. young children) isn't personalized very much. This is demonstrably true, at least in the U.S. A lot of it is budgets and politics. No need to infer that cletus believes he is a more thoughtful educator than people who spend their careers on it.

> primary math education (i.e. young children) isn't personalized very much. This is demonstrably true, at least in the U.S. I would say that it is demonstrably not true in many EU countries. Maybe "non personalisation" is the tendency of lazy teachers, but I remember pretty well how my math teachers repeated the same subject thrice: the first time describing its core in an abstract way, the second time with concrete…

Which country do you live in? I don't know about the quality of schools in general here (the Netherlands), but I've met too many people who say they "can't do math" to think very highly of our elementary educational system. Granted, though, this may have more to do with the fact that it's generally acceptable to 'just not able to do math'.

(This is not to say that I think everyone can do math equally well, but I've seen some otherwise intelligent people making such comments that made me want to rip my eyes out.)

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#82
post #29

Earlier quoted context omitted.

> I see this largely as a failure of education. You see this issue in many areas and much earlier on like teaching mathematics. In schools there tends to be one method used and that method doesn't suit everybody. Good thing professional educators are almost as observant as you in regard to teaching. http://lmgtfy.com/?q=differentiated+instruction I really love how HN conceit lets people post about entire industries a…

I read cletus's post to suggest that primary math education (i.e. young children) isn't personalized very much. This is demonstrably true, at least in the U.S. A lot of it is budgets and politics. No need to infer that cletus believes he is a more thoughtful educator than people who spend their careers on it.

I read cletus's post to suggest that primary math education (i.e. young children) isn't personalized very much. This is demonstrably true, at least in the U.S.

That's how I read it too. And that is a finding of international studies of primary mathematics education. The newly industrialized countries of east Asia do much better in primary mathematics education, using textbooks (and teacher professional development to ensure that the textbooks are well applied in the classroom) such that key concepts are presented from multiple points of view, to reach as many learners as possible. The TIMSS test results

http://pirls.bc.edu/timss2007/PDF/T07_M_IR_Chapter1.pdf

suggest this is working out well for those countries. A book-length description of how mathematics primary education differs between much of the United States and much of China

http://www.amazon.com/Knowing-Teaching-Elementary-Mathematic...

is an eye-opening read.

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#83
post #78
post #69

Earlier quoted context omitted.

I worked as a TA at my university for a while (under-grad TA too ... was a blast, me and the prof got along really well, and I knew the material extremely well and could teach) and the hump mentioned is true. I once used to believe that everyone could learn how to program, if you can write down steps for making toast in the morning you know how to program, but some people just couldn't get it. There was some mental d…

I was an undergrad TA for a semester as well. I think most of my criticisms are more applicable during early childhood development. Students get into their own self-fulfilling prophecies about what they can do and by college are quite good at sabotaging themselves. That said, I should have reasoned about pointers by simply handing them a map to a building and saying "this tells you how to get to the building. It's a…

Anyone who has gone through early CS education has seen every metaphor and diagram for pointers. I'm sure each professor and TA has thought the same thing: if only I could find the perfect metaphor, they'd get it.

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#84
The date of this interesting submission (haven't I seen this on HN before?) is Jul 14, 2006. What has happened since then? What follow-up research has there been on the methods of first-time undergraduate introduction to programming courses? (If I remember correctly, someone on HN has pointed to follow-up papers by the same author in some earlier HN thread, but what I would especially like to see is attempts at replication by other researchers

http://norvig.com/experiment-design.html

and attempts by other researchers to look at the problem from other points of view.)

There are quite a few undergraduate disciplines in which it is assumed that most first-year undergraduates will not continue studying the discipline. In some disciplines that is considered a bug, but in some that is considered a feature. It's too bad that many undergraduates registering for a first-year course don't know that their professors don't expect most learners in the class to succeed. What would college enrollments in different subjects look like if there were more disclosure of that pessimistic attitude?

(Basis of knowledge: I have one son who is an adult now, the child of two nonprogrammer parents who is now a computer science major, who first learned programming through a CTD course in programming taught by T. J. Leone

http://tjleone.com/

(who now offers a different course, based on different materials) and the EPGY distance learning course in C programming

http://epgy.stanford.edu/courses/cs/

and some more or less haphazard local classes in programming arranged by our homeschooling support group, which includes parents who are programmers by occupation. He was advanced in mathematics before he began his programming studies.)

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#85
post #29
post #13

I see this largely as a failure of education. You see this issue in many areas and much earlier on like teaching mathematics. In schools there tends to be one method used and that method doesn't suit everybody. I see this at work. I've known programmers who, when they get a new hire, will basically let them flounder. I guess the basic idea is that if you're "good" you'll "figure it out" (with minimal time investment…

> I see this largely as a failure of education. You see this issue in many areas and much earlier on like teaching mathematics. In schools there tends to be one method used and that method doesn't suit everybody. Good thing professional educators are almost as observant as you in regard to teaching. http://lmgtfy.com/?q=differentiated+instruction I really love how HN conceit lets people post about entire industries a…

Here's the argument that shows that the educators are doing something wrong. I'll break it down into numbered points:

1. If you spend three weeks on only the topic of assignment, any idiot (who has been admitted to university) can master that one concept to the level required to answer this stupid simple question correctly.

2. The fact that the students failed to exhibit mastery of even this one simple point at end the of three weeks means the class moved past this very fundamental concept too quickly.

3. It follows that this study doesn't really address the question of how students would do at programming if this fundamental mental model were taught.

Point 1 is the weakest, as it is justified only by common sense, but I'd put money on it.

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#86
post #67

Jeff closes with the following words IN BOLD: “The act of programming seems literally unteachable to a sizable subset of incoming computer science students” There is, of course, an alternate explanation: “We in Universities seem literally incapable of teaching programming to a sizable subset of incoming computer science students” Experiments going back to the 1980s with teaching children how to program using Lego blo…

> Experiments going back to the 1980s with teaching children how to program using Lego blocks and robots with Logo seem to indicate that nearly everyone can learn how to program, but possibly not when they’re 18 or 19 and possibly not with the kind of academic environment represented by the test. I only learned how to program at around age 20 or 21, but at that point I had already been a CS student for 2 years, and o…

I think Python's a great language to start with, maybe. What turned me on to PHP and web programming is that I could do things easily and get visual results back. Flask is a better way to build server side apps than raw PHP, but it hides a lot and a significant part of the Python language needs to be understood to understand a lot of it.

I spent a year learning about website design shortly after turning 14 and during that time eventually came across PHP. For about another year until 10th grade started, I kept doing simple PHP sites. I had looked at Python once and felt kind of offended by it, and I didn't understand OOP. "Why do I have to do mystr.split(' ') instead of explode(' ', $mystr)?" "Why don't variables have sigils?" "What's this import crap?" "Why do I have to have indentation?" (I commonly didn't indent my PHP code during this time.) I also used Windows. I still hate cmd.exe.

I took the AP CS course in 10th grade, and Java forced me to at least partially understand OOP and why it may be useful or cool. (We also did everything on a Mandrake Linux computer.) I looked at Python again about midway through the year and started loving it (I was in the habit of indenting with one space at that point since the teacher required at least some indentation so Python's forced indentation didn't bug me anymore). After several months in Python I began to understand that real OOP went far beyond what Java supported. Now that I'm 21 Python is still my favorite language, but I do really like Clojure.

So I still think Python is a perfect beginner's language, but I'm not entirely convinced that Python as Python is enough to spark an interest to go do your own thing. The first thing I reached for when I learned Python well enough to do anything was video game programming. Making interactive applications that aren't limited to the terminal held my interest a lot more back then.

(My CS teacher also resolved many difficulties with the = sign by always reading code like "a = b" as "a gets b". Some people have trouble enough with homonyms in language, seeing the '=' mean something completely different to what they've been used to for 10 years can be startling.)

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#88
post #79
post #70

Earlier quoted context omitted.

First, it's not my job to educate you. Go look it up yourself if you feel like commenting on it. The fact the original poster fabricated his post out of naked overconfident ignorance is more than enough to warrant a snide reply. His post was not a critique on current educational theory or instruction but based on his experiences as a grade schooler that might be decades out of date, and seen through the eyes of a chi…

Since you've been registered here almost two years, I would hope you'd be aware that snide comments are discouraged here, regardless of context. I have yet to hear why you are more qualified to speak on the topic than anyone else, but I will add my personal experience as a student - I went to some good schools and had some good teachers, but we were rarely introduced to a topic in different ways. For one thing, there…

[deleted]

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#89
post #17
post #8

That article is positively drenched in fixed mindset ( http://www.scientificamerican.com/article.cfm?id=the-secret-... ). Those prophecies tend to be self-fulfilling. But as raganwald says, the only evidence is that universities fail to teach a sizable fraction of the population. Maybe the trick is not to play with IDEs or whatever else they claimed to have tried, but to get rid of the computer and focus on what prog…

I bet pretty much everyone would have a correct mental model of assignment if the problem was stated like that. Try this experiment with five people at a public place, say exactly what you said, and give them exactly one try at the correct answer. I'll give $10 to charity for each one that getes it right. If all five of them get it wrong, you owe me an upvote. (Fair warning, the terms of this bet are ridiculously unf…

I explained this to some as, "values from from right to left across the equals sign. In this case 10 flows into a, 20 flows into b, then the value of b, 20, flows into a, making a 20 and b 20." I think it's a matter of saying what '=' means in words that people can understand since it doesn't mean '=' in the mathematically sense (which is '==' or '===' depending on language).

Re: Coding Horror: Separating Programming Sheep from Non-Programming Goats

#90
The single concept that kept me from understanding basic coding was the mutability of variables.

After years and years of algebra teaching me that variables were inherently immutable, I automatically assumed that was a universal law that was never broken.

Then again that proves that I at least thought there was a system.

Post reply on HN