Computer Science Canada The sad state of computer science education |
Author: | mirhagk [ Wed Nov 28, 2012 10:47 am ] | ||||||||
Post subject: | The sad state of computer science education | ||||||||
For far too long teachers have been unwilling to fail students for nearly any reason. Delta high school (in Hamilton) had almost 50% of their student fail the literacy test last year. The literacy test tests what is essentially grade 5 English. There is no reason any of those 50% of students should have been in grade 10, as they clearly can not pass grade 5 level English. I had heard great things of huge failure rates in universities, and I was very excited to get to a school that finally understood that not every student can pass every course the first time. Unfortunately it appears like computer science is not like the rest of the sciences in this regard, as the TA's will all but write your program for your assignments, and the exams are the exact same as the assignments, except easier so you can finish sooner. As an example of what I mean, the class average for assignments is very high (I think high 80s or 90s), and these assignments are very non-trivial. On the test there are usually 5 questions, 2 of which are basically if you write anything you're right, 1 more is a question about problem solving (ie no code, eg what is the worst case for binary search), 1 question is circling the dividing part of a divide and conquer function (the part of the function that calls itself) and only 1 question actually has makes the people write code. The last midterm the average for the midterm was 75%, but the majority of student could not do the question where you had to write code. The answers weren't even kind of close, or difficult. Where the question would be: Given the following state data, write a function called up that makes an elevator go up (if it's at the 3rd floor it'll just stay there)
The answer is something like:
Answers that people would write would be along the lines of:
or even:
Basically they didn't even know what they were doing, let alone how to do it. Yet all of these students who can't write a simple haskell function are going to pass the course with 70s. Following this route most of these students will pass university not even knowing how to write a simple program (give fizzbuzz to university grads, and a high number actually can't do it). I think the problem is the huge desire that profs have to get students interested in computer science. They don't want to see students fail out, or get upset and quit, because they want as many students as possible in the program. This ends with students passing the course who can't do anything (my other programming course is very similar, with students not knowing how to write code, but knowing how to copy code, and then ask for help to make it work). Does anyone else see this in their schools, and does anybody else get annoyed at the students who manage to pass when they really shouldn't have. |
Author: | Panphobia [ Wed Nov 28, 2012 2:40 pm ] |
Post subject: | RE:The sad state of computer science education |
Well in my class, the class average is 91, my mark is a 99, the thing is that, my teacher focuses on definitions on practise tests, but when it comes to unit tests or the exam is full on 100% code basically, and that is why many people almost fail the exam, for our unit projects I had to help most of my friends because they did not know how to do a simple bubble sort, but could surely explain what it was. Better at theory and less at application. Since it is based on most recent and most consistent, he usually uses the practise tests to pull unit test and project marks up. |
Author: | Tony [ Wed Nov 28, 2012 3:37 pm ] |
Post subject: | Re: The sad state of computer science education |
mirhagk @ Wed Nov 28, 2012 10:47 am wrote: Does anyone else see this in their schools, and does anybody else get annoyed at the students who manage to pass when they really shouldn't have.
No, because Computer Science courses are typically not Programming courses. Take something more abstract, like Theory of Computation (Turing Machines, etc.). There will be no programming assignments. I suppose first year classes are a bit different, as everyone is ramping up (some not having taken any programming in high school). Later though, the drop off is pretty big. ~40% of students that start out in UW CS don't continue with that program past the 2nd year. |
Author: | mirhagk [ Wed Nov 28, 2012 6:57 pm ] |
Post subject: | RE:The sad state of computer science education |
See Panphobia I don't have a problem with people who understand the concepts just can't apply it. I have a problem with people who can't figure out anything on their own, that need to memorize and regurgitate everything. Even in the abstract courses it's very possible for people to just memorize definitions and copy assignment answers. It's hard to find people (even in higher years) that can truly think on their own. |
Author: | Insectoid [ Wed Nov 28, 2012 7:14 pm ] |
Post subject: | RE:The sad state of computer science education |
The school makes more money if more students get into second year. |
Author: | Panphobia [ Wed Nov 28, 2012 7:25 pm ] |
Post subject: | RE:The sad state of computer science education |
Mir thats exactly what I am talking about, memorization |
Author: | mirhagk [ Wed Nov 28, 2012 9:50 pm ] |
Post subject: | RE:The sad state of computer science education |
@Insectoid well that's a pretty terrible argument. If that was true then why are there restrictions on entrance? Why not just let everyone who wants into the university get in? |
Author: | Aange10 [ Thu Nov 29, 2012 9:13 am ] |
Post subject: | RE:The sad state of computer science education |
@Insectoid Golden. It's glorious laugh-out-loud moments like these that you learn to love in life. |
Author: | Insectoid [ Thu Nov 29, 2012 9:34 am ] |
Post subject: | RE:The sad state of computer science education |
Prestige, mirhagk. Prestige. If they let just anybody in, nobody would respect the school. They've got a high entrance requirement so they look like a difficult school. They let the crap students stick around for a couple of years to bleed them of tuition, then kick them out so they don't graduate. If they graduated, the school would lose prestige, because everyone would realize the students from school XXX don't know anything. |
Author: | evildaddy911 [ Thu Nov 29, 2012 4:14 pm ] |
Post subject: | Re: RE:The sad state of computer science education |
mirhagk @ Wed Nov 28, 2012 6:57 pm wrote: See Panphobia I don't have a problem with people who understand the concepts just can't apply it. I have a problem with people who can't figure out anything on their own, that need to memorize and regurgitate everything.
Even in the abstract courses it's very possible for people to just memorize definitions and copy assignment answers. It's hard to find people (even in higher years) that can truly think on their own. Thats the problem though: the high school curriculum rewards blind memorization without thinking! for example, my math teacher last year (gr11 functions U) would literally give us handouts with lists of which situations they could use that day's concept in, and then specific steps on how to get the answer. They don't teach us HOW things work, they teach us WHAT steps to take and exactly WHEN to regurgitate those steps. my classmates think im God because i show up every other day, don't take notes and get over 90 on every test. I tell them that instead of memorizing lists of steps and situations, i memorize the HOW, then figure out the WHEN and WHAT during the tests |
Author: | Panphobia [ Thu Nov 29, 2012 6:37 pm ] |
Post subject: | Re: RE:The sad state of computer science education |
evildaddy911 @ Thu Nov 29, 2012 4:14 pm wrote: mirhagk @ Wed Nov 28, 2012 6:57 pm wrote: See Panphobia I don't have a problem with people who understand the concepts just can't apply it. I have a problem with people who can't figure out anything on their own, that need to memorize and regurgitate everything.
Even in the abstract courses it's very possible for people to just memorize definitions and copy assignment answers. It's hard to find people (even in higher years) that can truly think on their own. Thats the problem though: the high school curriculum rewards blind memorization without thinking! for example, my math teacher last year (gr11 functions U) would literally give us handouts with lists of which situations they could use that day's concept in, and then specific steps on how to get the answer. They don't teach us HOW things work, they teach us WHAT steps to take and exactly WHEN to regurgitate those steps. my classmates think im God because i show up every other day, don't take notes and get over 90 on every test. I tell them that instead of memorizing lists of steps and situations, i memorize the HOW, then figure out the WHEN and WHAT during the tests |
Author: | joshm [ Thu Nov 29, 2012 8:07 pm ] |
Post subject: | RE:The sad state of computer science education |
Maybe your school is just too easy. It also depends what year you are, my first year courses were extremely simple, as they were to just teach the basics and prepare you with the skills needed for higher level courses. Second year was more of a challenge, and focused on more concepts rather than how to write a program. |
Author: | Panphobia [ Thu Nov 29, 2012 8:16 pm ] |
Post subject: | RE:The sad state of computer science education |
There is a highschool curriculum in ontario....all of them, are more or less the same. |
Author: | mirhagk [ Thu Nov 29, 2012 11:42 pm ] |
Post subject: | RE:The sad state of computer science education |
The high school curriculum for computer science is a complete joke. It covers only the most rudimentary things, and allows schools to do anything they want (basically). I agree with panphobia. I am getting 100s in my computer science courses without even showing up to most of the lectures. I simply fool around and code for fun, and experiment and try to understand rather than use. I'm stoked about math this year, it's had questions that actually required figuring things out on your own. Integrals are the first time where you don't have a very easy formula to use, you actually need to think, and some are just impossible. I love it. |
Author: | Panphobia [ Fri Nov 30, 2012 12:48 am ] | ||
Post subject: | Re: The sad state of computer science education | ||
These are my marks at the moment
|
Author: | Panphobia [ Fri Nov 30, 2012 12:50 am ] |
Post subject: | RE:The sad state of computer science education |
Basically all the assignments are either, brief 10-15 line programs, or simple concepts, I thought we were going to go more in depth with OOP, but it seems that, in order to pass the test you needed to have more understanding than what was taught, I already knew OOP, so I had no problem, but the class average for that test was 65. |
Author: | wtd [ Fri Nov 30, 2012 12:01 pm ] |
Post subject: | RE:The sad state of computer science education |
As in most areas of learning, if you allow your learning to be constrained by the curriculum of whatever class you're taking, then you're failing as a student. Yes, there are some fascinating classes you can take, but the whole point of school is to teach you how to learn, so you can go out and take initiative to further your own education. When it comes to computer science, maybe you aced your Java class, and did well with C++, but always felt like Haskell was just incomprehensible. You probably felt that way because it's very different on a conceptual level. So dive in and figure it out. Or maybe you won't be able to. Only one way to find out! |
Author: | TerranceN [ Fri Nov 30, 2012 12:32 pm ] |
Post subject: | RE:The sad state of computer science education |
"As in most areas of learning, if you allow your learning to be constrained by the curriculum of whatever class you're taking, then you're failing as a student." That's signature worthy. Unfortunately there's a 150 character limit, so I had to make it an image. I wish more UWaterloo students realized this. There simply isn't enough time for the classes to teach everyone everything. |
Author: | mirhagk [ Fri Nov 30, 2012 2:41 pm ] |
Post subject: | RE:The sad state of computer science education |
@wtd Ideally the point of school is to teach you how to learn, but almost every teacher I've seen (minus a few great ones) cares only about learning the material, not learning how to learn. People SHOULD self-teach themselves nearly everything. I think schools should be minimal in teaching material, rather teaching how to teach, providing some guidelines for finding materials on a subject, and then evaluating how much you can figure out about that subject. Sadly only a handful of students even know how to find further materials on their-self, and complain when the teacher doesn't teach well. With the internet nowadays nothing the teacher teaches, you can't figure out on your own. |
Author: | SmokeMonster [ Sat Dec 01, 2012 12:07 pm ] |
Post subject: | Re: The sad state of computer science education |
Quote: Basically they didn't even know what they were doing, let alone how to do it. Yet all of these students who can't write a simple haskell function are going to pass the course with 70s.
Did you consider that perhaps writing a haskell function is not the ultimate goal of the course? Every course has a set of teaching goals and most of the time good profs distribute grades across all teaching goals. For example in an OS final a student may royally bomb the questions that require you to write multithreaded C code and yet pass the course if they ace the questions on more theoretical stuff such as scheduling algorithms, virtual memory management, filesystems etc. Such a student is not going to be submitting pull requests to the Linux kernel anytime soon but at the same time I wouldn't say that there is anything outrageous about them getting a pass on their transcript for the course. mirhagk @ Wed Nov 28, 2012 10:47 am wrote: Does anyone else see this in their schools, and does anybody else get annoyed at the students who manage to pass when they really shouldn't have.
Not at all. First of all it's not my place to judge who should be passing and who shouldn't. And while I don't think everyone of my fellow students in my year is a genius, I certainly think they are smart enough and intelligent enough to deserve a 60 or a 65 in courses which is what is required to pass. Quote: Even in the abstract courses it's very possible for people to just memorize definitions and copy assignment answers. It's hard to find people (even in higher years) that can truly think on their own.
This is a myth. Just like in any major including medicine and engineering there are going to courses which are memorization heavy and there others that are not. As someone who has finished three years of university I've only had two maybe three CS courses which were big on memorization. Most courses test your actual understanding of the material than your ability to memorize stuff and vomit it out at the exam. It's not possible for people to memorize and get good grades in abstract courses such as Automata, Algorithms, Databases. I don't know any classes where averages are in the high 80s or low 90s as you guys are claiming. At my school the averages are 1st year: high 50s low 60s 2nd year: mostly mid-high 60s 3rd year: around 70ish 4th year: ?? Perhaps those high grades you are talking about are in HS in which case it really doesn't matter and is not really out of the norm since grades in HS are high across the board in all subjects not just CS. |