Student Who Released Code From Assignments Accused of Cheating
Death Metal sends in a story about Kyle Brady, a computer science major at San Jose State University, who recently ran into trouble over publishing the source code to his programming assignments after their due dates. One of Brady's professors contacted him and threatened to fail him if he did not take down the code. Brady took the matter to the Computer Science Department Chair, who consulted with others and decided that releasing the code was not an ethical violation. Quoting Cory Doctorow at Boing Boing:
"There's a lot of meat on the bones of this story. The most important lesson from it for me is that students want to produce meaningful output from their course-assignments, things that have intrinsic value apart from their usefulness for assessing their progress in the course. Profs — including me, at times — fall into the lazy trap of wanting to assign rotework that can be endlessly recycled as work for new students, a model that fails when the students treat their work as useful in and of itself and therefore worthy of making public for their peers and other interested parties who find them through search results, links, etc. But the convenience of profs must be secondary to the pedagogical value of the university experience — especially now, with universities ratcheting up their tuition fees and trying to justify an education that can put students into debt for the majority of their working lives."
Q: What do you learn in school?
A: How reality doesn't work.
Someday I hope to be a professor, teaching my own classes. The one thing I would like my students to do is respect me as someone who contributes strongly to their development as a person and as a professional. It surprises me that the teacher in question would rather claim idiotic copyright policies just to be able to avoid having to come up with new assignments. I can not think of any purpose this would achieve other than helping him be a lazy ass.
Even if there was a valid reason for him to ask the student to remove the code, I would expect a teacher to keep the student's intent in mind and try to be as accomodating as possible; clearly the student is taking his homework seriously enough and that is already a good thing that should be encouraged as much as possible.
Yup....
I used to teach comp sci back when.... I had a single assigment that the students worked on all semester. We started out with the basics, and then added more and more features until we had a full-featured program.
While the assignment never changed, you really couldn't cheat as it would be really difficult to fake your way through months of ever more complex code development.
The class was typically small enough where I could talk to each student once in a while and probe their understanding of what they were doing.
Not only is the prof an idiot, he's a lazy bastard as well.
I find this saying utter bullshit. I grew up among teachers and I hear complaints all the time about either stupid students or students with absolutely no manners.
As an Math undergrad I must say that all my teachers have a deep understanding of the things they are trying to teach me. Unfortunately, some teachers have problems relaying that information to me in a way that I can understand it and that's the major difficulty with teaching.
And yes, I have had some morons who didn't understand what they were teaching in high school. But there are rotten apples in every profession and I personally sickened by the negative attitude towards teachers around here.
Knowledge is power. Knowledge shared is power lost.
Bad apples stand out in every walk of life. The good, honest competent people (or at least the ones who aren't egregiously stupid) are almost invisible next to the loud and wrong idiots, who draw attention for being both loud and wrong.
I agree completely that teachers as a profession are maligned more often than is fair. I think much of that is due to their visibility to young people who aren't used to dealing with incompetent people in authority, and having their first taste of "hey, that guy's an idiot! I'm just a kid and I can see he's wrong!" That's a powerful memory maker for just about anyone, and it almost always happens with teachers first.
John
I have grappled with this problem myself. I am a lecturer at a university (chemical engineering) and I taught our introductory programming course using Matlab. I believe that it's crazy to have tests on programming where you don't have references or a computer with you, so I set alll my tests as open book, with computers in front of the students. I gave many small assignments throughout the semester and one large assignment at the end. The students uniformly hated the subject. Some of their concerns were that the tests were "too unpredictable."
You can't blame faculty alone for courses being the way they are -- the students have learnt how to play the game. You work many old papers and basically end up memorising the classes of problems that can be asked. This behaviour leads to a sort of conundrum: if you keep setting new and interesting papers, you will start running out of problems that are within a certain difficulty level. Your students will hate you because they can't prepare for your tests they way they are used to. If you set similar papers (or recycle papers) the first-time difficulty of each paper remains the same, but the apparent difficulty of your subject decreases because your subject is easily gamed by people not interested in mastering the subject but rather passing your tests.
From the educator's perspective, testing is hard in computer-based subjects because a realistic test (like a project) is trivially easy to copy and testing within a realistic timeframe restricts you to such simple problems that you run into the problem above. There therefore didacticly valid reasons for wanting to keep the answers to problem sets a secret: there are less students with the self control of using the answers as a solid teaching aid than there are who will use them as a quick shortcut to doing the assignments, just like there are fewer students who can manage their time to meet a single deadline than students who need frequent deadlines to make sure that they stay up to date. Pretending that the students are all just there to maximise their mastery of the subject is unrealistic. Most students are doing courses to get the magic paper that will give them a job (or to please their parents or to figure out what to do or to get a husband/wife or many other motivations).
Languages aren't inherently fast -- implementations are efficient
A professor is someone with a PhD who is tenured at the university in question.
No. A professor is someone who is given the title by the institution, period. Most universities won't do this without a PhD or equivalent degree, true, but someone who has been given the title is properly referred to by the title. And if your job title is now "Assistant Professor," you are in fact now a "prof." I'm no bigger a Cory Doctorow fan than you are, but if he has been given a job title which includes the word "professor" by an accredited institution of higher learning (I have no idea of this is so) then he is too.
The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
Lets go the other direction then. I've been studying the works of Edsger Dijkstra and Kurt Godel, getting heavy into the theory and logic behind Computer Science. However, schools seem to be "dumbing down" degrees so to speak and aren't teaching this heavy theory stuff that would be highly beneficial.
Heavy theory or heavy practical would be quite useful in most applications, or even an even mix, but they're really trying to pump out too many people with degrees they shouldn't have. Here's an article from Harvard itself denouncing the grading systems of most universities.
I honestly think the problem isn't that colleges have lost touch with reality, so much that they've become too much like companies themselves. Colleges are largely supposed to teach the subjects to greater or lesser degree but they've become so wrapped with bureaucracy and Dilbert/Corporate-style inefficiency that we end up with this mess that we have today.
I started working on GCC and getting a copyright assignment from my school in order to work on it was like pulling teeth from a pissed off tiger during mating season. It was wrapped with college "policy" and reiteration of common knowledge while being thrown from department to department while no one actually helped. It was only after involving the FSF's lawyers did anything get done.
Actually, a person in a boss-like role issuing stupid and counterproductive directives solely for their own benefit is precisely how reality works, so perhaps the professor here should be commended for inculcating their students in the way the Real World works, rather than clinging to some sort of ivory-tower idealism. Certainly, in Reality, you would have to have several layers of bureaucracy sign off on the code release before you would be permitted to make it public.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10