From: Francis Cianfrocca Date: 2006-06-12T20:17:49+09:00 Subject: Re: Ruby for Highschoolers? ------=_Part_1285_14831138.1150111064209 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Ed Borasky said: "I believe the goals are stated in the original post. The first half of the course, Programming I, is to teach programming concepts. The second half, presumably by someone else, called Programming II, is in Java." You rather missed my point, and the rest of your post goes on to show that you implicitly answered my question in a particular way. (You're thinking about how best to give early training to young people who intend to become serious programmers, as has everyone else on this thread.) That's the assumption I was questioning. You're an old pro, Ed, and you have a lot of good insights on how to train people who will be doing serious programming using the traditional methodologies we all use every day. But CS pedagogy (at least at the university level) has undergone at least two upheavals in the last dozen years that I'm aware of. The Scheme revolution happened at places like MIT and Stanford when people realized that of the two equivalent models for understanding computation (Church-style and Turing-style), only the former can be taught easily without a lot of distortion from the lanugages used. (I have opinions about why that turns out to be true, but that's another thread.) Several years after that, business leaders started complaining that CS graduates had no real-world skills (only Scheme), and a lot of places changed their programs to basically teach algorithm cookbooks in Java. (In my opinion, equally useless, in fact worse, since these young people may know how to write Java but they don't know how to think about computation.) Now it's dawning on a lot of people that since programming itself may become a relatively low-value economic activity (why is yet another thread but Ruby ironically has something to do with it), some other kind of training may need to supplement programming pedagogy. And that may be training in how sophisticated information technology may be used to add value to business processes and other environments. It would be forward-looking if nothing else for high-schoolers to be exposed to some of this. ------=_Part_1285_14831138.1150111064209--