Richard, Exactly!
This is precisely the sort of issue that has been comprehensively examined in studies on the psychology of the non/novice-programmer. It's a quandary of the academic discipline: do we teach programming as an art or science, or do we "teach" it as a job skill? And, at what level is either appropriate or inappropriate? For instance, we used to use Pascal as our intro to programming course language because it was developed as a teaching language. Now we use C++ -- why? Because we think it's a better teaching tool of basic programming concepts? No. Because we've somehow been convinced that in a 100-level, intro to programming course, it is more important to teach the students a "real" programming language rather than choose a language that is best suited to teaching programming concepts _in general_. I believe that the few studies on this which examined students using an X-talk found a lower attrition rate and an increased and even voluntary rate of usage/programming among CS0 (non-CS majors) students even _beyond_ the termination of the CS0 course. Why is this my 'crusade'? Because there are a zillion complicated, geeks-only development languages and environments out there. X-talks, however, are a different breed: they are higher-level languages -- for a reason! They are type-less, verbose, visually-oriented -- again, for a reason! What was the genius of Hypercard? That it was for idiots-only? Or rather that it accomodated every possible learning level of those using it, from confirmed end-users (using the templates/app stacks) to those wishing to modify the same just a little bit, to those wanting to either change them substantially OR roll their own... to those hardy souls using it to front-end unix system processes and/or writing their own x-thingies. And, at any given level, the higher levels were invisible... until you needed them not to be. As critical as I can sound, I have the highest confidence that RunRev has the ability to carry forward this ingenuous paradigm of programming into the new century/millenium. But, as a community commited to this paradigm, we cannot afford to forget what it feels like to be a non-programmer. If we forget, Transcript might as well be C++ or Java or... anything that is NOT the very thing for which Revolution is one of only a very few surviving examples. Judy On Sun, 19 Feb 2006, Richard Gaskin wrote: > Teaching the whole of the art of programming in a single session or even > a single semester would likely overwhelm the student and the teacher. > If a given construct seems a bit daunting for the first semester or the > first year, there's plenty of time to introduce it later. > > Learnability and usability are different goals. If switch/case blocks > seem a bit much for the learner, that takes nothing away from the > graceful utility which has made them a cornerstone of so many languages. > > Switch/case blocks may be best learned in the second semester anyway: > if the first semesters goes well, by the end of it the learner may have > already begun to find the limitations of if/then and is hungry for > something else.... > _______________________________________________ use-revolution mailing list [email protected] Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-revolution
