Re: "Intuitiveness" of programming languages/paradigmsI think if you ask CS undergraduates who are not very good at programming whether they want to program, the answer will change from yes to no after a couple of months. Which is the amount of time for hopes to be dashed, and disillusionment to set in. Their experience of university is just an extension of school - a failure by the institution to teach skills, which insitution then walks away from its failures. If I ran a university course, I would do nothing but solid programming for the first term, paying particular attention to the strugglers. That's hard work that is. It's called TEACHING. Every CS undergrad I have spoken to seems to be paying thousands of pounds to be assessed on what they already can do, or fobbed off with sprious group work.
Sorry if this last bit here is a repeat .. I think I may not have "replied all": I am currently engaged in an interesting experiment. I have made leaflets advertising my services as a programming tutor, and distributed them around my local uni's CS dept. So far it is showing that damn good 1-1 tuition is capabable of reaching very weak students, and nmaybe even switching them on. It's early days yet, and hey! I'm biased, but I'll keep you informed. :-) ----- Original Message ----- From: guzd...@cc.gatech.edu To: Ppig-Discuss-List@open.ac.uk Sent: Sunday, November 29, 2009 7:28 PM Subject: Re: "Intuitiveness" of programming languages/paradigms Lindsay meant to "reply-all" to this, but only replied to me. I offered to respond back to the list (with his message below), and he agreed. I agree with Lindsay that most people don't want to program. There are reasons for a universal level of (real) computing literacy, such as those described by Perlis, Snow, and Kay. I expect that more people can and will learn to program when we can solve the economic problem for them - when the benefit exceeds the cost. The 13 million end-user programmers that Scaffidi, Shaw, & Myers identify have certainly seen benefit, though at a relatively high cost that we might be able to reduce with better tools, better languages, and better teaching methods. Mark On 11/28/09 6:58 PM, "Lindsay Marshall" <lindsay.marsh...@newcastle.ac.uk> wrote: >Lindsay, isn't there an implication in your statement above that our ability >to teach computing is as good as it's going to get, and thus, the only way >to raise the success rates is to reduce the number of people who fail with >our current methods? Not if you take it the way I meant it. My point is that most people simply don't want to learn to program and nothing we can do will make them want to. Horse, water, making it drink. As I said before, we have hundreds of years experience in teaching people about music and how many people actually go on to be musicians? How many people even get to the point of competence? As I also said before, try getting in to most music courses without a grade 8 on some instrument. I think everybody should be taught to play an instrument, but in reality most people don't want to so they don't learn. it's not that they can't learn, they just don't want to, so they don't. The same is true with programming, or maths, or italian or anything. > Clearly, we (as in the community of those studying > computing education) do have the ability to teach computing to someone with > no experience, because those people whom you will welcome into CS1 do have > experience. At some point, they didn't. What makes for a successful start? I was taught computing with no experience of any kind, and from day one it was entirely obvious to me and I loved every second of it, particularly programming. I got the same teaching as all the people who fell by the wayside. I wanted to do it, they didn't. That is the key I think. When I mentioned dissuading people , that was not because of ability - they could all have learned, but because I knew that they didn;t really have their hearts in it. I thought I wanted to do physics and it turned out that I hated it. Thank goodness for finding CS! > What I find most interesting about the two hump hypothesis is that there are > some people who are highly successful at learning computing, even in the > first course. Why is that? They enjoy it? >What are hidden requirements of computing such >that some people succeed easily, while some do not? ("Hidden" in that we do >not yet know how to detect them, and we clearly are not *teaching* those >skills, or we'd reliably track through pre-requisite courses.) I agree with >Raymond, that there is no reason to believe that there is a "geek gene." Can any one explain to me why CS is so special that we feel we ought to be able to teach it to everyone and that they should all be able to do it? If you want to go to art school you have to show a portfolio of worl to demonstrate your competence. If you want to physics you have to have some physics qualifications, ditto for pretty well every subject - you have to demonstrated that you ahev some kind of interest in it at the very least. Why is computing different then? You might think of course that applying for a computing course indicates an interest but it very often just indicates an interest in playing games and surfing the net and not actually anything to do with what we do on computing courses. I had a student last year, mature student very bright, very keen, head screwed on, definitely wanted to do computing. Hated programming and is now doing classics : had never had any kind of programming experience before coming. >In 1961, Alan Perlis and C.P. Snow both argued that we should teach everyone >in academia how to program. They pose an interesting challenge -- how do we >teach computing (the parts that will be useful to them) to those who are >"unsuited" to it? (See [2].) It is nothing to do with unsuited, but everything to do with uninterested. I also have to ask the question why should we teach everyone to program? What possible useful purpose would that serve overall? Teaching everyone to type, cook, mend clothes and do simple carpentry and plumbing would be a lot more useful to most people. Particularly academics. We can (and do) teach a lot of people simple programming - look at all those spreadsheet courses - but why do most people need to learn something like Java? it makes no sense. L.