Slashdot Mirror


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."

14 of 333 comments (clear)

  1. Teachers wrong here by XPeter · · Score: 5, Interesting

    The student released the source after the release date, which prevented any of his peers from cheating. In the computer science classes that I take, it's allowed to share the source code for your assignments as long as it isn't for a pending assignment and/or test.

    The only reason that comes to mind for the teacher wanting the code to be taken down is because he was going to use the same assignments next year (Which is fairly common among teachers). Regardless, in this case it's his code and he has the right to do whatever he wants with it.

    Unfortunately schools have become more about preparing you for standardized tests and such rather than giving you a real education with the information you actually will use in life (Which is why teachers always have to cover their asses). What Brady was trying to do was help his peers and kudos to him for doing so.

    --
    "The difference between genius and stupidity is that genius has it's limits" - Albert Einstein
    1. Re:Teachers wrong here by Anonymous Coward · · Score: 5, Insightful

      Q: What do you learn in school?


      A: How reality doesn't work.

    2. Re:Teachers wrong here by think_nix · · Score: 5, Interesting

      The only reason that comes to mind for the teacher wanting the code to be taken down is because he was going to use the same assignments next year (Which is fairly common among teachers). Regardless, in this case it's his code and he has the right to do whatever he wants with it.

      Unfortunately schools have become more about preparing you for standardized tests and such rather than giving you a real education with the information you actually will use in life (Which is why teachers always have to cover their asses). What Brady was trying to do was help his peers and kudos to him for doing so.

      +1 to that . I think (some not all ) educators need to get off there high horses and start being more innovative. Instead of always re-running assignment X for the past 5 years.

      I remember a certain "educator" I had while I was going back to school in 2001. If I didnt code the way he saw fit (which in other terms) a way he could understand he would would fail me , code comments or no code comments. In the end it went up in front of the school Directors , and I had my current employer at the time backing me with some other clients that I was coding for , because otherwise I would have failed out. Luckily the board decided in my favor .

      These certain types of educators that dont understand the depths of the own things they are "teaching" should either A.) be more innovative and come to terms with newer techs and their way of teaching or teaching style. B.) count their losses stfu and find a new line of work.

    3. Re:Teachers wrong here by Daimanta · · Score: 5, Insightful

      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.
    4. Re:Teachers wrong here by plover · · Score: 5, Insightful

      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
    5. Re:Teachers wrong here by chthonicdaemon · · Score: 5, Insightful

      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
    6. Re:Teachers wrong here by Attila+the+Bun · · Score: 5, Interesting

      This is a lazy instructor working to maintain his laziness.

      Do not underestimate the work involved in preparing a new course. I teach for a few weeks every year, and can easily spend several days preparing a new one-hour lesson. Even recycled material needs updating and revising, and the preparation time is at least equal to the teaching time. Think of the time you spend to prepare a presentation at work. Now imagine spending your whole working day giving presentations, and doing the preparation in the evenings.

      Teaching is a tough job, and only those who believe it's important stick at it. Some teachers are more talented than others, but I've yet to meet a lazy one. A lazy teacher will quickly move to an easier (and better paying) job.

    7. Re:Teachers wrong here by Trepidity · · Score: 5, Insightful

      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.

  2. Problem Solved Many Years Ago by eldavojohn · · Score: 5, Interesting

    When I did my undergrad at the University of Minnesota in 2000, they let us know that they took our code that we submitted and stored it in a program with a database. Whenever a student submitted new code, it went through this program. Essentially, some really fancy Hamming Distance that I think might have been similar to FASTA or BLAST algorithms for genetics were employed to score assignments against all the other ones.

    If it was common for students to write assignments -- say they had been given a design template -- then all of the scores would come back rather high. If the TA noticed an outlier, they would investigate. If two submissions came up sufficiently similar, they would investigate.

    It was (of course) never explained in detail how it worked but I bet that today one could take this to many new levels with things like ANTLR that might allow the program to check the inherent structure in code to avoid something trivial like different comments or variable names skewing the results.

    Was it me who was in the professor's situation, I would bite the bullet and code the very basic above application using a web form submission for TAs and Professors. Then I would ask for help from other members of the department and make it a customizable growing project to protect the academic integrity of my school and students. Then I myself would put the opened source on there and run all my students assignments against it.

    Problem solved, you can keep all your assignments static, you lazy bastards :)

    --
    My work here is dung.
  3. FIRST! And welcome to fraternity file cabinets by Antique+Geekmeister · · Score: 5, Interesting

    FIRST POST!! Oh, dear, you must have all had a good Friday night.

    There's an old practice of fraternities at my college, where they kept file cabinets filled with old homework and course notes of all the classes their members took. I had wondered how some frat boys coasted through so many classes and got so much more sleep than those of us who struggled working to pay for college, paying for food, etc. Then I found out this was one of their most important reasons. It was a known practice, and one of the less publicly mentioned benefits of joining a fraternity.

    Since small-scale publication of old hoomework and course notes, such as what I describe above, has been going on for centuries, it seems completely reasonable that larger scale publication be permitted.

  4. Amazing by hansraj · · Score: 5, Insightful

    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.

  5. Re:The Professor is an Idiot by cptdondo · · Score: 5, Insightful

    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.

  6. Re:CORY DOCTOROW IS NOT A "PROF." by Daniel+Dvorkin · · Score: 5, Insightful

    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.
  7. Re:"Real World" vs Academia by Anonymous Coward · · Score: 5, Insightful

    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.