With your first point, I agree that core skills (though what those core skills are end up being a discussion itself) are the most important for a beginning programming student. But the language choice heavily influences what core skills you can teach and how effectively you can teach them. Try teaching functional programming in straight Java 6, or object oriented programming in Basic. Or anything in Brainf*ck. With your second point, I don't think I could disagree any stronger. There are many computer students out there who are genuinely interested in the subject matter but who do not come from a background as a computer hobbyist. I was one of them. In fact, in my experience, many of those who did come in as computer hobbyists were some of the first to drop out when they realized computer science was much more rigorous than writing the Basic games they wrote in grade school. Plus they have a tendency to be very elitist, which beyond making them think they are better than their classmates who have not assembled a computer from scratch with their bare hands also can cause them to refuse to learn anything from their professors. On your third point, are you suggesting that after taking just a few introductory courses a computer science student must be able and willing to choose what direction and what specialty they will be going into for the rest of their career? Hell with a field changing this fast, I have trouble seeing where I will be a few years from now, even over a decade after I started college.
On Dec 31 2010, 4:13 am, "Vince O'Sullivan" <[email protected]> wrote: > There are a number of important factors that seem to be missing from > all discussions of Computer Science (CS) courses: > > 1) Advocating which language to teach is pointless without first > listing the core skills you are intending the students to graduate > with. In turn, advocating the core skills is pointless unless you > first articulate who your course is aimed at. Identify the customer > and their requirements then the solution, not the other way around. > > 2) All the best programmers will already be computer hobbyists and > enthusiasts before they start a CS course. The problem is what to do > with CS students who are not enthusiasts and only do the work mandated > by the course. > > 3) There is limited common ground between the skills of a compiler > designer and a those of a business application developer. Beyond the > introductory stuff they should be on separate courses. -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
