4 ms·
Yes, you're exactly right. However, since Java was not intended to be a scripting language, then it should never have monopolized the material of introductory
by evanrmurphy 16y ago
Yes, you're exactly right.
However, since Java was not intended to be a scripting language, then it should never have monopolized the material of introductory programming classes like it did. I consider Java to be a very ungentle introduction to programming when compared with Python, Ruby or Scheme.
- redthrowaway 16y agoI agree, and my university is currently doing a 2-year A/B test where half the undergrads will get intro CS in Java, and the other half in Python. After the two years are up they'll see what group performs better in 3rd year classes. I think it's a great idea.
- presidentender 16y agoI'd rather they checked 1 year after graduation and determined which was better for employability.
- vietor 16y ago> my university Emphasis added. Ensuring that students have a sound grounding in the basics and can then focus on the new material in later classes seems far more relevant to the goal of teaching computer science. Universities focusing on throughput and employability is the problem, not the solution. It shouldn't be 4 more years of high school ...
- presidentender 16y agoThat's right, nobody goes to school so's they can make more money, it's all about expanding their minds.
- lfborjas 16y agoThat's true, and although I don't hate java or the technologies it has spawned (the JVM is a neat one, just look at it's finest offspring, clojure), trying to teach basic programming with it just seems bad. Maybe for an intermediate course on OOP, it does a good job if one wants to teach C++ or C afterwards; but as a first language, I have against it that it forces to spend too much time in syntax and inexplicable cruft (unless you're willing to explain the concept of class and static method the first day), and magic is never good for teaching if it's never explained. Just look at the classic SICP lectures: the syntax is done with in half an hour, then recursion and then higher order functions, and it doesn't feel like a brainfuck at all!
- nowarninglabel 16y agoCare to share who is doing this, I wish to suggest this to my workplace/university.
- redthrowaway 16y agoUVic. I can't find find anything about it on the CS website [1], but this is what I've heard from speaking to faculty and grad students. [1] http://www.csc.uvic.ca http://www.csc.uvic.ca
- spacemanaki 16y agoPity the poor students who are stuck taking the Java one due to scheduling or other administrative constraints. Although hopefully a dept as engaged in taking CS pedagogy seriously will teach a top-notch course in both.
- redthrowaway 16y agoMy 1st year profs were all fantastic, and the intro Java courses that I took did a fairly good job scaling from Hello World and FizzBang to a visual calculator processing pre-, in-, and post-fix arithmetic in a binary tree, so it wasn't too bad. Granted, first year was really easy and passed most students. Second year has, iirc, a 60% pass rate, and the program overall has a 40% pass rate. I'm not sure if that means it's rigorous or the profs are lousy, but I at least feel it means my degree is worth something when I graduate.
- lfborjas 16y agoIt actually happened to me, my first programming language in college was java and it made programming look really hard. I actually hated programming until the very end of my third year, when I learnt python in my first job. Ironically, later, when taking a compilers course -when I already knew how to program- I was quite happy with java+flex+cup, it felt powerful and fast.