Slashdot Mirror


How Easy Is It To Cheat In CS?

Pinky3 writes "The New York Times has an article on cheating in CS at Stanford. Here is a classic quote from one student: 'I wasn't even thinking of how it [sic] easy it would for me to be caught,' he said. One interesting strategy discussed is for the professor to make the final count for more of the final grade each time cheating is discovered. Share your experiences as a student and/or as an instructor."

684 comments

  1. Who cheats who by menegator · · Score: 5, Insightful

    He/she who cheats discovers later why this is a bad idea.

    1. Re:Who cheats who by dkh2 · · Score: 5, Interesting

      Absolutely. I've actually had to work with someone I knew was cheating in school and they couldn't code their way out of a pile of leaves, let alone a wet paper sack.

      They got the grades because they cheated. They got the job because they got the grades. Eventually, they were among the first to get the layoff because B and C students like me just plain outperformed them day in and day out on the job.

      --
      My office has been taken over by iPod people.
    2. Re:Who cheats who by Average_Joe_Sixpack · · Score: 2, Insightful

      I don't know... there seems to be a lot of perks for Goldman Sachs employees

    3. Re:Who cheats who by JustOK · · Score: 1

      Can't you just tell me why? I won't tell anyone you told me.

      --
      rewriting history since 2109
    4. Re:Who cheats who by mikes.song · · Score: 0

      I don't know. Those that cheated got better grades and jobs than I did. Are they still working? Don't know. They are likely in management. Pissed me off when I was in school, because the professors like the cheaters. They got much better grades, and some went on to get MS degrees in CS. But, now I'm successful and make money on my own projects running my own business. That's something they could never do.

    5. Re:Who cheats who by nomad-9 · · Score: 1

      He/she who cheats discovers later why this is a bad idea.

      Unfortunately, his/her co-workers too.

      It perverts a "natural selection" in the industry, leading to an increase in the number of incompetents, doing a disservice to all capable workers in the field. You get a person like that in your team, and you end up doing extra work in any case:

      • if he/she stays you'll have to spend time correcting his lack of skills
      • if he/she is sacked, you'll have to add at least part of his assignment to yours

      They should be expelled from CS, and subscribed to Economics, to match their natural talent. They'll fit perfectly in Wall Street & Investment Banking.

    6. Re:Who cheats who by terjeber · · Score: 5, Funny

      Some times not even later.

      As a CS student my buddy and I (we were working as teams) were tired of people copying our stuff. We shared with anyone who wanted to, and had full read access for anyone to our code, so we didn't make it hard for them to copy. Still, it was annoying to do the work and then have others just copy and hand in.

      Our assignments required print-outs delivered with the software (yes, this is before there was even an internet) and we suspected people just copied our software, compiled it (which incidentally at the time could take hours) and ran it without even looking at it. So, just for fun, we inserted into our own code the equivalent of a system call to "rm -rf $HOME/*" (yes, this is before we got our Pyramid Unix boxes, so it was not exactly that). We did this two days before the assignment was to be delivered. It took less then an hour before we heard the first "WHAT THE F#CK HAPPENED???". Five teams were unable to deliver their assignments.

      Interestingly two of the teams complained about our behavior to the professor. His only reaction was to ask if they had some serious mental problems (or the polite equivalent). I am sure today we would have been sued and the morons would have won since we "hacked" their accounts.

    7. Re:Who cheats who by WombatDeath · · Score: 5, Interesting

      Years ago I worked as a developer for a subsidiary of Fujitsu. One day a colleague asked for my help.

      The crux of the problem was that he was unfamiliar with the concept of a 'while' loop. Not the specific implementation in the language he was using, but the actual concept itself. He had some kind of computer science degree and he'd been working in the same team as me, as a developer, for at least two years.

      It took me a while to realise what the problem was, as it never occurred to me that he might be unfamiliar with basic control flow. He sheepishly explained that the bulk of his degree was coursework (presumably he got some 'help') and that he'd been hammering square blocks into round holes for the last couple of years. From what I recall, whenever a while loop was appropriate he'd instead use a for loop with an extremely high upper limit and a break condition.

    8. Re:Who cheats who by Anonymous Coward · · Score: 0

      Bad thing is this is widespread. Cheaters would get temporary benefits, better grades than non-cheaters, resulting in better job offers and the illusion of professors they are doing such a great job as so many people have such high marks, while the reality is completely different. I studied CS on an elite university and the amount of cheating there was like that of MBA students. During exams so many people were bombing answers (prepared sheets with answers to questions which they substituted during exams as most questions over the years were repeating) it was unbelievable. Now they are slowly getting to control the industry here... What kind of innovation can you expect from such people? How would they treat genuine talents (answer: badly, truly badly)? Can we do something about it? Hardly, it's too late and neglected for too long.

    9. Re:Who cheats who by realityimpaired · · Score: 1

      Lack of skills can be corrected though. As long as you have a willing subject, that is, which often isn't the case with people who cheated their way through school....

      But isn't the first thing you have to do with a new University graduate to un-learn everything that they thought they learned in school?

    10. Re:Who cheats who by TheKidWho · · Score: 1

      Wow, great story.

    11. Re:Who cheats who by Anonymous Coward · · Score: 0

      ...we suspected people just copied our software, compiled it (which incidentally at the time could take hours) and ran it without even looking at it. So, just for fun, we inserted into our own code the equivalent of a system call to "rm -rf $HOME/*"

      I'm tempted to give a similar story, but I'd better protect the guilty.

      Let's just say the university sysadmins were surprised when, after the problem with OpenSSL was discovered, they found hundreds of vulnerable public keys in user's .ssh/authorized_keys files. Especially since lots of those users didn't know what SSH was.

    12. Re:Who cheats who by Atrox666 · · Score: 0, Troll

      Both Bill Gates and Steve Jobs got where they are today by cheating other people.
      I wish I had cheated more in school..it's one of the few life skills you can learn there. Your morals don't seem to have much bearing on real world success.

    13. Re:Who cheats who by mikael_j · · Score: 1

      One issue I can see with your method is that an honest team that decided to copy your code and look at it to perhaps use it to figure out how to solve a problem with their own code might end up with their home directories wiped because they decided to do a test run to have reference output. After all, they probably weren't expecting you to deliberately create $HOME-wiping code and share it.

      /Mikael

      --
      Greylisting is to SMTP as NAT is to IPv4
    14. Re:Who cheats who by neurophil12 · · Score: 1

      That's not honest. If that was their intent, they could just as well ask for assistance or to look at the other team's code to understand how it works. Even then that could be considered cheating depending on the ground rules set out by the intructor.

    15. Re:Who cheats who by Low+Ranked+Craig · · Score: 3, Funny

      If you want to see his head explode try to explain for each.

      --
      I still cannot find the droids I am looking for...
    16. Re:Who cheats who by Alinabi · · Score: 1

      I know a bunch of people who cheated back in college on a regular basis and they are still going strong. Doesn't surprise me really, since getting ahead in life often hinges on gaining an (often unfair) advantage over the competitors.

      --
      "You can't allow somebody to commit the crime before you detain them." [Condoleezza Rice]
    17. Re:Who cheats who by Anonymous Coward · · Score: 1, Interesting

      I took a student into the Master's with excellent marks. It quickly became clear he had copied everything of his buddy during the undergrad. He was required to drop out of the program within six months. Last I've heard he is still looking for a permanent job.

    18. Re:Who cheats who by UID30 · · Score: 1

      exactly. the only one cheated is the student for paying crazy tuition and NOT "getting it". if you feel the need to cheat, do yourself a favor and go flip burgers at Wendy's for a year. it'll cost less and you'll get to party all you want.

      --
      "Glory is fleeting, but obscurity is forever." - Napoleon Bonaparte
    19. Re:Who cheats who by SatanicPuppy · · Score: 5, Funny

      When I took CS101 I was well beyond the level of the class, so, in order to make the programming assignments interesting, I added extra functionality on top of what was requested. Little stupid stuff mostly, but I tried to make it clever, and since the testing was automated, it didn't matter as long as it was to spec.

      The last project was to write a program to simulate one of those stupid "digital pets"; it had to have a pet object, and various, feed, cuddle, punish, methods, etc.

      One of the boundary conditions was that the pet had to starve if you didn't feed it, but the program was set so that you could have as many pets as you wanted at the same time...Well, I decided to put a little rock 'n roll in there, and if one pet hadn't been fed for a certain amount of time, he had a chance to start a "pet deathmatch", and try to eat another pet.

      The code for the combat and the actual fight was massive. Most peoples code was a couple of pages...mine was closer to 50.

      I printed it out at one point, so I could take it to dinner and work on some bug, and someone swiped it off the printer, and subsequently copied the WHOLE THING and turned it in for the assignment.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    20. Re:Who cheats who by Opportunist · · Score: 2, Interesting

      True. True. True!

      I had a fellow student during my university years who cut corners where he could. Which wasn't too hard, considering our profs didn't really care whether you cheated (well, most of them). And often I wondered why I didn't try it as well. Ok, I did. In electrical engineering and hardware design. But I knew I'd not end up in hardware (now it bites me in the behind when I try to toy with atmels, the code is fine but I usually need helpl with the soldering, but ... ohwell).

      He on the other hand made it his point how our old profs are all too dumb to catch him cheating. He literally had all his code written for him and during tests, he had nothing short of a library of crib sheets.

      Fast forward, 15 years later. I'm now in a thrilling job where I get to toy with the latest and greatest in malware, get to hack and crack apart software, break into servers (of clients), generally do fun stuff others get arrested for, and make way more money than I could spend. He's a codemonkey at some huge corporation. Or was, 'til he was laid off last fall.

      I guess our profs knew something we didn't: That degrees only matter for your first job. Nobody since asked me for it. They only wanted to know where I worked before and what I did there, and how satisfied my employee was.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    21. Re:Who cheats who by elrous0 · · Score: 1

      Exactly. If you're having to cheat in your major, either you've picked the wrong major (and are in denial about the need to change it), or you're just incredibly lazy. You think you're cheating the school, but at the end of the day, you're really cheating yourself (especially when the day comes when you have a job and might actually need to know your stuff).

      One of the proudest things I can say is that I went through an undergrad and several grad degrees and never once cheated (I would have never trusted anyone else's work as much as I trust my own work anyway). I was tempted once in a gen-ed class with an awful professor where I was going to get a "C" (not because of the material so much as the prof's awful teaching and even more awful testing practices). But even in that case, I just took the "C" and vowed to warn other students about that professor (piece of shit had tenure and hung around like a school plague).

      I did witness plenty of others cheating, but they were usually not the brightest guys in the room. A fellow grad student got the boot just a few months before she was to get her Masters when she got caught plagiarizing a paper (they went back and found that she had been plagiarizing almost all her stuff for some time, even on her Master's thesis). I felt more sorry for these people than angry at them, though.

      --
      SJW: Someone who has run out of real oppression, and has to fake it.
    22. Re:Who cheats who by clone53421 · · Score: 1

      That’s actually quite funny, because if he understood the for loop properly he’d have known that a “while” condition is simply this:

      for (; condition == true; ) {
      }

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    23. Re:Who cheats who by masmullin · · Score: 1

      Wow... just uhhh wow... how can such a thing happen.

      while(1) doesNotCompute();

    24. Re:Who cheats who by jekewa · · Score: 1

      Hear, here.

      Let this be a good guide when trying to turn classes into careers: if you need to cheat when you're learning the material, you're probably not cut out for that kind of job.

      Even at "big brain schools," nothing should be so hard that the able- and right-minded CS student can't tap it out in a reasonable time. Unless the class is in "software re-usability," there's not an awful lot of need to steal code, especially in your junior year, and especially if you're trying to major in CS. If you can't handle creating the relatively trivial stuff they make you do in your introductory classes (and what you take in your junior year is probably still pretty introductory on the grand scale), what makes you think you'll be able to handle the bizarre and abstract requirements you'll get doing the same thing in the real world?

      If you need to cheat...well, I already said that.

      --
      End the FUD
    25. Re:Who cheats who by kangsterizer · · Score: 5, Interesting

      I am sure today we would have been sued and the morons would have won since we "hacked" their accounts.

      That's funny you actually mention that!
      approx 8 years ago, I was at university. We did have internet and decent computers. I did the same kind of trick as you did.
      My trick wasn't as bad, I only made my program modify their login scripts so that they wouldn't be able to login anymore (it would ask the password in loop via a fake login program, always denying them access). No data deleted.

      One single guy got caught, it was funny, except that everyone knew if someone was able to do this at the time, it was me. Thus they inspected my code, and my account, and shortly I had to see the director of the university. I was asked to leave the university for "hacking" and that there would be no repercusions on my scholarity. If I had chosen to ignore and try to stay, I would have to deal with a trial instead.

      I left this university and went into a smaller school instead. yep it kinda sucks i suppose. Nevertheless.. the guy never got punished for cheating. Best part of the story I guess.

      I'll mention this university was in the French riviera.

    26. Re:Who cheats who by kangsterizer · · Score: 3, Informative

      I forgot probably a small bit of the story:

      it took a week for the admins of the university to figure out the trick (tells a lot about their abilities or the lack thereof - i bet they were cheaters too lol), thus they lost a week of time, claiming it to be the reason why I had to leave or face trial.

    27. Re:Who cheats who by Anonymous Coward · · Score: 0

      That is rather interesting because I took Computer Science in high school and majored it in college and both instances, (high school was Pascal, college was C++), they taught while loops first. They did mention do..while loops next but it was strongly discouraged. In fact, some of the examples given, a for loop would had been much more appropriate since it used a counter inside of the while loop to control its exit e.g., while ( x > 1 ) .... if ( y == foobar ) x = 0; else // do something

    28. Re:Who cheats who by multipartmixed · · Score: 1

      You are absolutely correct, of course.

      The for-loop (in C) is actually the embodiment of the computer science loop concept:

      for (initial-expression;
          loop-invariant;
          propulsion-statement)
      {
        work;
      }

      Anybody who does not understand this does should have their CS degree taken away.

      The OP's moronic cow-irker clearly only understands the FOR..NEXT loop from BASIC.

      --

      Do daemons dream of electric sleep()?
    29. Re:Who cheats who by fredrik70 · · Score: 1

      F#CK?? is that some dialect of F#?

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    30. Re:Who cheats who by Blakey+Rat · · Score: 1

      The real problem is the people who *don't* cheat, but still come out of the program completely unable to write software.

      And I'm not talking about just the things they don't teach you (although they should), like UI design. I'm talking about the basics-- something as simple as querying a row from a database. The number of CS graduates who don't know any SQL more advanced than "SELECT * FROM table" then looping through every result instead of just using a WHERE clause in the first place.

      I'm a college drop-out, and most of the CS grads at my company come to me when they need help with things I'd consider extremely trivial in software development. Things they should already know. The really retarded part is that I only work here because I got grandfathered-in-- I worked for a company that hired based on merit and not on "letters behind the name", then was acquired by a "letters behind the name"-only company. I shouldn't even be working here, based on my own company's hiring policies.

      It's like that episode of Red Dwarf where Rimmer finds out that he more successful version of himself was actually a "failure" by his standards.

    31. Re:Who cheats who by fredrik70 · · Score: 1

      even better, give him some list comprehensions or some functional language stuff, pref. with some closures thrown in for a good measure

      --
      if (!signature) { throw std::runtime_error("No sig!"); }
    32. Re:Who cheats who by Monkeedude1212 · · Score: 1

      As a CS Student I had 2 buddies I got along with. The rest of the class kind of broke into small cliques of 4 or 5 people. Some were a little more open to socializing than others, some were just plain hostile. But basically whenever it came to projects everyone worked with the same people as before. Don't know why - I certainly didn't have a problem with some people, but some people seemed to have a problem with me. I remember they were playing DotA one day, and I being familiar with Warcraft 3 I asked "Playing DotA? Who's winning?" and the guy went "Is it, is it Talking to us?"

      Anyways, that part is pretty irrelevant. What is relevant was that the two guys I worked with, while the nicest of guys, were not really up for programming, and I could tell midway through first semester. It wasn't so much as cheating as it was we were assigned group projects all the time. So the 3 of us go to the library, and I would get bombarded with "Why doesn't this work?" kind of stuff. I figured it was in my best interest to get the best project we could, so I would help them. I thought maybe I'd be help teaching them if I walked them through it. They eventually got the basics of it, but they never got really excited about it, it seemed like a chore to them. That's fine, not for everyone.

      I look back on it now and wonder if they would have dropped out earlier had I not helped them, saving them some time and money. (They made it to second semester on my work).

      I guess cheating, even when its not considered cheating, is usually more harmful than it is helpful.

    33. Re:Who cheats who by Anonymous Coward · · Score: 0

      ... if one pet hadn't been fed for a certain amount of time, he had a chance to start a "pet deathmatch", and try to eat another pet.

      ...I printed it out at one point, so I could take it to dinner and work on some bug, and someone swiped it off the printer, and subsequently copied the WHOLE THING and turned it in for the assignment.

      Time to have for a deathmatch with the cheater.

    34. Re:Who cheats who by aaaaaaargh! · · Score: 1

      Perhaps this has changed by now, but when I was studying in Europe during the 90ies I have never heard about a single actual case of a student cheating, and if it had occurred this student would have faced severe consequences up to being thrown off University by an honor committee. I'm working at University now and should I ever catch a student cheating I'll personally do my best to get rid of him. Such a student will NEVER pass an exam in my class, especially if it's a case of plagiarism. When I first heard how lax some people seem to think about cheating in the US, I was quite astonished. There seems to be a difference in cultures across continents regarding this matter. Perhaps cheating is more acceptable in the US because people have to pay much more for studying, examinations are tougher and there is generally a higher pressure and denser curriculum than in Europe.

    35. Re:Who cheats who by Anonymous Coward · · Score: 0

      How stupid, you don't need the high upper limit, just kill the counter with an i--

    36. Re:Who cheats who by rochberg · · Score: 1

      They got the grades because they cheated. They got the job because they got the grades.

      And that's the problem. If academic recruiters placed less of an emphasis on GPA, the incentives to cheat would be greatly reduced. But given the large class sizes at universities (i.e., a lot of profs don't even know their students' names) and the large number of applications companies receive, recruiters need some sort of filter. It would be nice if they had the time or ability to perform some sort of an evaluation, but it doesn't seem to happen. In my experience, recruiters are more generally HR people and wouldn't have a clue what a B+ tree is used for.

      This problem isn't going away, and the only solution that I can see is better policing by instructors.

    37. Re:Who cheats who by Idarubicin · · Score: 1

      The code for the combat and the actual fight was massive. Most peoples code was a couple of pages...mine was closer to 50.

      I printed it out at one point, so I could take it to dinner and work on some bug, and someone swiped it off the printer, and subsequently copied the WHOLE THING and turned it in for the assignment.

      Who the hell retypes fifty pages of code just to plagiarize a two-page assignment?

      Couldn't they find someone slightly less obsessive to steal code from?

      --
      ~Idarubicin
    38. Re:Who cheats who by MobyDisk · · Score: 4, Informative

      Those people will eventually be discovered, but I every time that happens it weakens the value of the diploma from that school. That's bad for the graduates who actually worked. The schools need to stop this kind of thing from happening - that diploma certifies that the person earned it. Not that they cheated their way through a program. If it happens enough, they should lose their accreditation.

    39. Re:Who cheats who by daem0n1x · · Score: 2, Insightful

      When I was in college, we had lots of practical group assignments for which we had to deliver reports. In the end of the semester the teacher for each discipline would sit with every group and discuss the reports.

      This was great, since the teacher could tell very quickly (with sophisticated interrogation techniques) who did the assignments and who slacked. And then the slackers would go on a round of technical questions. They could cheat on the exams, but they couldn't get through the discussion with the teacher.

      Someone who studied and worked on the assignments would be just fine.

    40. Re:Who cheats who by Anonymous Coward · · Score: 2, Funny

      Great job, there!

      My CS roommate was taking a (non-CS) test, one in which you use a pencil and fill in the dot of the correct answer, i.e.,

      A( ) B( ) C( ) D( ) E( )

      He was annoyed that someone was looking at his answer sheet, so he "rotated right 3" all his answers.

      When my roommmate finished, he just sat there until five minutes before the end of the test, then corrected all his answers.

      The cheater had left as soon as his answer sheet was completely filled out...

      Cheater got what he deserved.

    41. Re:Who cheats who by isama · · Score: 0

      Why no goto? perfect flow control! :P

    42. Re:Who cheats who by Anonymous Coward · · Score: 0

      stealing printouts from the printer is a classic, if there was a printer there was always a foreign student there just seeing what was printed out, now each computer has a temp drive where people leave there work

      one professor would scour the internet looking for his assignments and found a posting at a website where coding projects can be bid on and found the user name but didn't find out who it was

    43. Re:Who cheats who by SatanicPuppy · · Score: 2, Funny

      That was what was so funny.

      Anyway it wasn't obsession. I had time on my hands, and I'd never worked with Java before (this was a long time ago), so I was teaching myself stuff, and having fun, meeting people..."Hey does your program work?" "Sure" "Run it and let me see...Okay, Okay, O...What...The...Fuck?"

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    44. Re:Who cheats who by clone53421 · · Score: 1

      Yup. Although, come to think of it, the WHILE loop tests its condition before executing, not after. DO...WHILE is not quite the same as WHILE...LOOP. The inside of the loop has to be written slightly differently and you may need to ensure that it won’t run through once anyway if the condition is initially false.

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    45. Re:Who cheats who by JWSmythe · · Score: 1

      Would that be goto with tags, or line numbers?

          Oh, how I miss goto's with line numbers. :)

          [sarcasm off]

      --
      Serious? Seriousness is well above my pay grade.
    46. Re:Who cheats who by furby076 · · Score: 1

      I printed it out at one point, so I could take it to dinner and work on some bug, and someone swiped it off the printer, and subsequently copied the WHOLE THING and turned it in for the assignment.

      SO what happened? Did the other guy get caught, in trouble, etc? Or did you take the fall?

      --

      I do not support "The Man". I also do not support your irrational stupidity
    47. Re:Who cheats who by ConceptJunkie · · Score: 1

      I don't know if things are that different between the U.S. and Europe, but I would side with you. I would have no tolerance at all for cheating.

      --
      You are in a maze of twisty little passages, all alike.
    48. Re:Who cheats who by DarkOx · · Score: 2, Interesting

      I actually used to do in something similar in an interpreted language (I won't name names).

      This:
      For i=32767, i=i+1, i 32767
          {statements}
      EndFor

      would run much faster than this:
      While True
          {statements}
      EndWhile

      The token check to evaluate True took the interpreter longer than adding 1 to i which would overflow each time i reached 32767 and checking it was less than 32767.

      --
      Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    49. Re:Who cheats who by IndustrialComplex · · Score: 2, Interesting

      Absolutely. I've actually had to work with someone I knew was cheating in school and they couldn't code their way out of a pile of leaves, let alone a wet paper sack.

      They got the grades because they cheated. They got the job because they got the grades. Eventually, they were among the first to get the layoff because B and C students like me just plain outperformed them day in and day out on the job.

      I hated coding in higher level languages, but I loved doing it for microcontrollers in Assembly. Combined with my logic courses and some of the more theoretically courses I thought it combined to make me a solid engineer. (At least my company thought so and paid me a hell of a lot to stay when I asked to leave)

      Yet I had a HELL of a time with my early programming courses because the exams were so poorly designed that I ended up failing a course because I just couldn't do the exams well. My projects typically netted me a 100% in the courses, but I bombed the exams because I just sucked at picking out typos, or misreading what the question was asking.

      True and False questions did me in something terribly, as they were worded very poorly and I often caught myself overthinking the problem: "Well, it might be true, but if you look at the statement from this angle then it is actually false." I actually understood the subject matter too well for those kinds of questions and ended up having to say to myself "What did they think a student who has a basic knowledge of this question answer."

      The exams were 90 questions long and the exam was 90 minutes. So it caused me a great deal of grief when I simply needed more information on the question to give it a proper answer. Combined with exams which were 35-50% of your final grade, it was very easy to screw up your grades. (Still doesn't beat the SINGLE question probability exam I had that was 35% of my grade, you either got a 100% on the final or a 0% since the professor lost the exam the night before and had to come up with a question on the fly)

      I did poorly on that class, but convinced the professor of the next level course that even though I bombed the pre-req, I knew what I was doing but just didn't do well with those sorts of exams. I took the higher level course and finished with a 97% (It was project, not exam based) Then I went back and slugged through the preliminary course and you can be damned sure that I used every advantage I could for the exams.

      I've never taken exams well, especially exams that try to put complex issues into true/false questions.

      So on this point, I'm not sure I would be happy with a CS program that tries to place greater emphasis on exams than actual work.

      --
      Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
    50. Re:Who cheats who by rxan · · Score: 1

      I agree completely. In fields like CS/CE the most important skills aren't knowing what this or that is, but rather, the ability to figure things out for yourself. Employers value persistence and problem solving abilities above all else.

    51. Re:Who cheats who by Crudely_Indecent · · Score: 1

      At one point I thought a CNA would benefit me in my job and future endeavours. Not that I needed it, at that point I had been managing a large Cisco network for several years, but I thought I might learn something new and have the credential on top of that.

      I dropped the course in the second half because I realised how useless the instructor was. His method of teaching included reading from the book and asking me to teach everyone how to perform binary number conversions (because he didn't know how). On testing day, he would begin the class by handing out a question and answer key and reviewing the answers. When it came time to start the test he would ask the class to put the answer key sheet away (no, he didn't collect them), and then he'd announce that he was going for coffee and that he'd be back in 20 minutes.

      There was only one other student (besides myself) who refused to use the key on the test. We would hang with each other during class and during the tests because everyone else was only interested in using the key and getting a 'perfect' score. It was a competition between us to see who could get the best 'real' score.

      The second half of the course just got ridiculous. The teacher divulged that he got his certificate from a bootcamp and that he didn't really know anything that wasn't in the book. At that point I considered the entire course and the certificate a waste of money. I didn't want to be associated with a bunch of cheaters and know-nothings.

      I've seen several of my former classmates working at Office Depot as salesmen.

      --


      "Lame" - Galaxar
    52. Re:Who cheats who by Anonymous Coward · · Score: 0

      thats what she said....

    53. Re:Who cheats who by Anonymous Coward · · Score: 1, Funny

      Nice, so very nice.

      I remember back in the day working on a C++ program for a software engineering course late one night. Another student (Who we will call Bob) was notorious for looking over peoples shoulders to grab whatever bits of code he could. This guy was notorious for going from person to person and getting enough working code cobbled together to work. One day this guy got up from his terminal in the computer lab to go to the bathroom and forgot to lock his terminal. A buddy of mine (Who we will call Joe) scooted over to Bob's terminal and inserted some print statements in Bob's code along the lines of cout "Screw you Professor Mike"; cout "Bite my ass you arrogant jerk"; etc.

      Bob returns a few minutes later and then proceeds to save the program to floppy, print out a hard copy and then leaves to slip the "completed" assignment under the professors office door.

      When the professor returned the graded assignments about a week later, everyone but Bob got his back. I can still remember the look on Bob's face when the professor said "I'll need to see you after class". It was worth every damn time Bob bothered people.

    54. Re:Who cheats who by Myopic · · Score: 1

      Holy crap. That's amazing. Sure, it's amazing that somebody could go that long being functionally illiterate in the computer language, but even moreso it's amazing that he understood FOR loops but not WHILE loops! If anything, a WHILE loop is perfectly plain, it does precisely what it says it does; whereas a FOR loop is something that needs five seconds of explanation for a newb. Also, ferkrisake, he couldn't google "while loop"?

      It's almost unbelievable!

    55. Re:Who cheats who by kikito · · Score: 1

      Or recursion.

    56. Re:Who cheats who by Belial6 · · Score: 1

      And that is why Degrees are largely a joke. Giving a degree in no way is any indication that a person has knowledge in the area they claim. It shouldn't be suprising. We have a culture of 'Social Promotion' in our education system. If we are going to pass students who don't know the subject for the first 13 years of their education, why not for the next 4?

    57. Re:Who cheats who by Anonymous Coward · · Score: 0

      You're right. Cheating in school will inevitably bounce back on you later in life. With much greater repercussion than you probably opted for ..

    58. Re:Who cheats who by CecilPL · · Score: 2, Interesting

      You must be talking about the guy who wrote this code:

      http://thedailywtf.com/Articles/Break-Out.aspx

    59. Re:Who cheats who by dougisfunny · · Score: 1

      Which is kind of the point of a do while, to force it to run at least once. You use a while if you want it completely conditional, Do While if you want it to run at least once and then check the condition.

      --
      This is not the funny you're looking for.
    60. Re:Who cheats who by delinear · · Score: 2, Insightful

      There's making a conscious choice to do that because it's more efficient and then there's just being completely ignorant of the alternatives, though.

    61. Re:Who cheats who by Thiez · · Score: 1

      > In fact, some of the examples given, a for loop would had been much more appropriate since it used a counter inside of the while loop to control its exit e.g., while ( x > 1 ) .... if ( y == foobar ) x = 0; else // do something

      Why not simply
        while (x > 1 && y == foobar)
      or
        if (y == foobar) break;
      ?

      Break is nice...

    62. Re:Who cheats who by SombreReptile · · Score: 3, Interesting

      I had a similar experience with a co-worker who had an MSc in CS (from U. of Windsor, Ontario).
      "Stack, stack! What's all this about stack?" he impatiently groused to me one day during a work conversation.
      I pulled him into a back room (because I was embarassed for him) and explained to him what a stack was.

    63. Re:Who cheats who by clone53421 · · Score: 1

      What I meant to say was that for (; condition; ) is a do...while, not a while.

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    64. Re:Who cheats who by s73v3r · · Score: 1

      True and False questions did me in something terribly, as they were worded very poorly and I often caught myself over thinking the problem: "Well, it might be true, but if you look at the statement from this angle then it is actually false." I actually understood the subject matter too well for those kinds of questions and ended up having to say to myself "What did they think a student who has a basic knowledge of this question answer."

      I ran into similar problems on several tests during my academic tenure. I eventually decided that, in the case of those questions, unless it specifically says something like "always" or "every time", then whichever case that is most likely to happen is the one the examiner is thinking about. That, and what would a reasonable student with the expected knowledge at this level be expected to think.

    65. Re:Who cheats who by Anonymous Coward · · Score: 0

      Really? My experience is that if someone has a degree from Stanford and they can't code, they tend to get promoted to non-technical positions which lead to management.

    66. Re:Who cheats who by MoriaOrc · · Score: 1

      If you don't want the loop to be run the first time if the condition is initially false .. why would you use a do..while loop instead of a regular while loop?

    67. Re:Who cheats who by Jesus_666 · · Score: 1

      This is very evident at my university. The CS courses are all free of written tests. You either do homework + oral exam at the end or no homework + longer oral exam at the end (or you have a seminar, which is presentation + essay). The homework, which is usually done in teams, influences the lecturer's grading decision (usually you get a preliminary grade and can deviate up to one grade from there unless you fail) but the oral exam realistically makes up 100% of your grade. If you fail it you get one retry; if you don't get it right then you fail the course.

      I've had two courses (Applied CS 1 and 2) where I did all the homework and the other students in my team lazed off. Final result: We all went in at the same time; they got straight fives (Es) and I went out with a 1.7 (B+/A-).


      Oh, and we have very simple rules concerning cheating on essays: If significant parts of your essay appear to have been lifted from an existing essay that's considered plagiarism which we don't tolerate. Unless you manage to defend yourself you automatically fail the course and if it happens more than once you better have a good reason not to be exmatriculated.

      I have not heard about a single case of plagiarism during my time at the university. Our CS students are either honest or capable of rewording things.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    68. Re:Who cheats who by orgelspieler · · Score: 4, Funny
    69. Re:Who cheats who by IndustrialComplex · · Score: 2, Interesting

      I ran into similar problems on several tests during my academic tenure. I eventually decided that, in the case of those questions, unless it specifically says something like "always" or "every time", then whichever case that is most likely to happen is the one the examiner is thinking about. That, and what would a reasonable student with the expected knowledge at this level be expected to think

      I learned that lesson VERY quickly. Unfortunately I learned it from the result of my first freshman exam in a CS course. And that exam was 40% of my grade.

      Hmm looking up the professor... it appears there is no more record of her, anywhere. I'm hoping they dumped her because even for a freshman course I learned very little from her.

      --
      Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
    70. Re:Who cheats who by Bobb+Sledd · · Score: 3, Funny

      When I took CS101 I was well beyond the level of the class, so, in order to make the programming assignments interesting, I added extra functionality on top of what was requested. Little stupid stuff mostly, but I tried to make it clever, and since the testing was automated, it didn't matter as long as it was to spec.

      The last project was to write a program to simulate one of those stupid "digital pets"; it had to have a pet object, and various, feed, cuddle, punish, methods, etc.

      One of the boundary conditions was that the pet had to starve if you didn't feed it, but the program was set so that you could have as many pets as you wanted at the same time...Well, I decided to put a little rock 'n roll in there, and if one pet hadn't been fed for a certain amount of time, he had a chance to start a "pet deathmatch", and try to eat another pet.

      The code for the combat and the actual fight was massive. Most peoples code was a couple of pages...mine was closer to 30.

      I printed it out at one point, so I could take it to dinner and work on some bug, and someone swiped it off the printer, and subsequently copied the WHOLE THING and turned it in for the assignment.

      --
      "They said I probly shouldn't fly with just one eye," "I am Bender. Please insert girder."
    71. Re:Who cheats who by clone53421 · · Score: 1

      Because all you know how to use is a for. ;)

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    72. Re:Who cheats who by winwar · · Score: 1

      "Such a student will NEVER pass an exam in my class, especially if it's a case of plagiarism."

      You might have a hard time with that in the US at some Universities.

      As a TA at a very large University in Ohio I reported a case of obvious cheating during an exam to the professor. This was observed by another TA. Nothing was done. Luckily, the student did poorly anyway.

      As a lecturer for this same University system, I later learned that you are NOT allowed to fail or penalize (by policy) a student for cheating without going through the student conduct committee (or equivalent). So of course it is rarely done-too much trouble. After all, if bringing in money is more important than teaching for tenure, why should professors care if anyone learns anything?

    73. Re:Who cheats who by Anonymous Coward · · Score: 0

      Deliberately sharing your assignment with a trojan in it is just you being a dick. It could be reasonably expected that if you were sharing it for others to see then it is likely they would execute your program to compare results. So someone who was just proof checking their own work against available sources without plagiarizing anything would have their work deleted.

      However, I call BS on your whole story. You didn't actually do this. Sure, you thought about doing it, maybe had some wet dreams about it, but you never actually did it.

    74. Re:Who cheats who by dwayrynen · · Score: 1

      And then....

      Stack Overflow...

    75. Re:Who cheats who by Anonymous Coward · · Score: 0

      From my experience ... this goes back about 10 years now ...

      Higher tier engineering school take pride in their ability to catch CS cheats. Being able to cheat, then takes some less than basic understanding of the project and environment being worked with, to the point that those who get away with it are more likely "lazy" than incapable.

      I'd blame the school, for not being able to figure out if a student knows shit before they give em a degree.

    76. Re:Who cheats who by SatanicPuppy · · Score: 1

      They never suspected me for a minute, since all my prior work had also been quirky, and all the other guys prior work had been crap.

      I never even got called in, and wouldn't have even known anything about it except my professor for 102 recognized my name and asked me about it...Apparently the story had made the rounds of the department.

      Where I went it was pretty standard to fail both parties, unless you could prove that the code had been stolen...I guess they assumed that if I had given my code to someone, I wouldn't have given them ALL of it, just the part that they needed for the assignment.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    77. Re:Who cheats who by mkosmul · · Score: 1

      Best applied to the Fibonacci sequence

    78. Re:Who cheats who by frosty_tsm · · Score: 3, Funny
    79. Re:Who cheats who by greed · · Score: 1

      You get people like that in the real world.

      Like an IT group that can't run their own systems, so is always trying to shift blame to other groups. Since they're always looking at problems the wrong way up (like rebooting UNIX servers rather than figuring out what the fault is), they burn a lot of time. This makes it politically bad for them to then actually admit that they were doing something wrong. Especially after getting large capital budgets for installing equipment that doesn't solve the problems.

    80. Re:Who cheats who by Anonymous Coward · · Score: 0

      I think your ex-colleague is still developing code

    81. Re:Who cheats who by SoothingMist · · Score: 1

      While an electrical engineering undergraduate a new group was nominated for Tau Beta Pi. During our discussion on the new nominees it was revealed that two of them bragged opening about their successful cheating. We denied them membership. Tau Beta Pi is the top fraternity for engineering students. It says a lot more about you than just grades. Having been denied membership also tells a lot about you.

    82. Re:Who cheats who by multipartmixed · · Score: 1

      No, for (;condition;) is a while, not a do..while.

      As I said up higher in this thread, the middle argument is a LOOP INVARIANT. This means that it is always true for the inside of the loop block, unless you change it, in which case the loop will terminate when the propulsion statement is evaluated.

      --

      Do daemons dream of electric sleep()?
    83. Re:Who cheats who by Anonymous Coward · · Score: 0

      "Top fraternity for engineering students" is like saying "top sorority for hermaphrodites".

    84. Re:Who cheats who by clone53421 · · Score: 1

      You’re right. For some reason I was thinking that it was only checked after the propulsion statement is executed...

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    85. Re:Who cheats who by Ponga · · Score: 1

      Good point. I however believe that the value of a CS diploma/degree is being degraded FAR MORE by so-called "online degree" programs or fly-by-night "universities" that SOMEHOW have been accredited and offer programs in CS. These organizations practically GIVE out degrees with LITTLE value and substance to education. Being from a somewhat-of-a top school for my program, I wished more people paid attention to WHERE I got my degree, rather than just the fact that I have one. Unfortunately, most employers don't have a clue and think that my degree is equal with Joe Schmoes degree that he got from ACME Online University when nothing is farther from the truth. This to me IS cheating and is a form of cheating that is much more prevalent and insidious than what TFA describes.

    86. Re:Who cheats who by Chysn · · Score: 4, Funny
      --
      --I'm so big, my sig has its own sig.
      -- See?
    87. Re:Who cheats who by terjeber · · Score: 1

      Sorry, if you nick my code for an assignment, you better read it and understand it before you run it. Also, if you wan to nick my code, ASK first, and I'll probably say OK, but that I'd rather help you try to understand it first.

    88. Re:Who cheats who by terjeber · · Score: 1

      I'd never worked with Java before (this was a long time ago)

      Considering Java wasn't "a long time ago", that's an absurd statement :-)

    89. Re:Who cheats who by plague3106 · · Score: 1

      Well, why is while( expr == true ) fundamentally better than for( ; expr == true ; )?

      Other than while is just shorter and reads better... they both do the same.

    90. Re:Who cheats who by Darinbob · · Score: 1

      Believe me, students will go to Herculean efforts to avoid a tiny bit of work. Party for 9 weeks, then spend a couple all nighters transcribing code.

    91. Re:Who cheats who by Anonymous Coward · · Score: 0

      I dunno man. Java was out to the wild what, 15 years ago or so? 15 years is a pretty good chunk of time. Roughly 1/5 of a person's life span.

    92. Re:Who cheats who by Darinbob · · Score: 1

      I always thought it amusing that when people broke into teams that people would stick with their friends even if none of them were any good at programming. So time and again I'd see some absolutely pathetic unfinished code handed in at the last minute by a group of three buddies who probably spent the entire quarter drinking. They could have perhaps split up and grouped with someone slightly less inept to get a better grade, but that would involve a small bit of intelligence to figure that out...

      I have this mental picture of these guys taking a test and copying each others wrong answers.

    93. Re:Who cheats who by Anonymous Coward · · Score: 0

      No, for loops check the condition before each run, even the first, so what you wrote is equivalent to while(condition). Otherwise, how would it avoid crashing when iterating through zero-length vectors?

    94. Re:Who cheats who by geminidomino · · Score: 2, Insightful

      Maybe a CS degree means something if a potential employee went to MIT, but if your job posting says you require a CS major, but you'll accept one from any school, you're an idiot.

      Or maybe you're talking out of your ass and don't have any idea WTF a CS degree entails. Your examples seem to support that assumption.

      CS is to programming what automotive engineering is to auto mechanics.

    95. Re:Who cheats who by isama · · Score: 0

      i'd go for the nostalgic line numbers.. i don't know, but the last few days i'm actually missing BASIC, i think i should see a doctor.

    96. Re:Who cheats who by sulfur · · Score: 1

      At least it's better if these teams self-segregate and let more intelligent students work together, rather than having a single student pull all-nighters doing the entire group project on his/her own as the other guys can't (or don't want to) write code. That's pretty much the reason why I hated group projects so much.

    97. Re:Who cheats who by Anonymous Coward · · Score: 0

      You can't spell teach without c,h,e,a,t.

    98. Re:Who cheats who by Anonymous Coward · · Score: 1, Funny

      break

    99. Re:Who cheats who by brunes69 · · Score: 1

      To be pedantic, there is actually no difference between a for loop with no incremental operator, and a while loop.

      IE, this:

            for( ; blah ; ) { // do stuff
                    blah = false;
            }

      Is the same as this:

            while( blah ) { //do stuff
                  blah = false;
            }

      And this:

            for( bool blah = true; blah ; ) { // do stuff
                    blah = false;
            }

      Is the same as this:

            do { //do stuff
                  blah = false;
            } while (blah);

      Any differences are semantic and will be optimized away by the compiler.

    100. Re:Who cheats who by Anonymous Coward · · Score: 1, Funny
    101. Re:Who cheats who by Anonymous Coward · · Score: 0

      Or lambda.recursion

    102. Re:Who cheats who by JWSmythe · · Score: 1

      You know, there are probably a whole lot of people who have no idea what we're talking about..

      instead of this:

      while ($x != 42){ $x++; };
      print "X is finally 42";

      it would be written like this (stolen from Wikipedia)

      10 IF X = 42 GOTO 40
      20 X = X + 1
      30 GOTO 10
      40 PRINT "X is finally 42!"

      --
      Serious? Seriousness is well above my pay grade.
    103. Re:Who cheats who by koreaman · · Score: 1

      I think you are talking out of your ass. You assume that what actually constitutes the CS curriculum at the average school, the "reality on the ground", so to speak, corresponds to your idealistic view of what a CS curriculum should be. This suggests to me that you have never set foot inside a CS classroom at a non-elite U.S. university.

    104. Re:Who cheats who by TangoMargarine · · Score: 1

      It's a combination of C# and that new F# they just announced. With Potassium.

      --
      Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
    105. Re:Who cheats who by geminidomino · · Score: 1

      I think you are talking out of your ass. You assume that what actually constitutes the CS curriculum at the average school, the "reality on the ground", so to speak, corresponds to your idealistic view of what a CS curriculum should be. This suggests to me that you have never set foot inside a CS classroom at a non-elite U.S. university.

      Florida State is "elite" now? Sweet.

      Or are you just wrong AND a dumbass? Damn... figures.

    106. Re:Who cheats who by formfeed · · Score: 1

      That's if it ends well. But clever cheaters know how to get stuff from others and pass it as their own. Since they have no tech skills, they learn to focus on social skills. Before you know it, your fake code-monkey is promoted to management.

    107. Re:Who cheats who by Anonymous Coward · · Score: 0

      Unless you plan on staying in academia it may server well to learn what they meant without being clear. If someone asks for X but expects Z, you should be able to pick up on it and give them the Z they're expecting. Managers, customers, programmers who don't know anything, are all going to ask for things that they don't want. It's great you understand the subject matter, but you should be able to both dumb it down, and understand dumbed down versions. Of course if you plan on -only- hanging out with smart guys who know what they're doing, that's fine (one may call it elitist), but few people end up that lucky.

    108. Re:Who cheats who by Anonymous Coward · · Score: 0

      It sounds like your problem was the type of exam, not the exam itself. 90 true/false questions in an exam is unheard of at my school (in Sweden) at least, and I doubt they are very popular in other schools over here.

      What is the point of such true/false questions? They don't actually test your understanding of the subject. We're required write answers in our own words/calculation/code including motivations, and if there is an alternative answer to a question, you should be fine as long as you show how you reasoned in your answer.

      The only reason I can see for true/false exams is that they're easy on the professor/TA's grading the exam.

    109. Re:Who cheats who by RockDoctor · · Score: 1

      If you want to see his head explode try to explain for each.

      Please come from again?
      (Which by the grammar-error equivalent of Godwin's Law, is almost certainly not the grammatically correct Intercal that I intend.)

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
    110. Re:Who cheats who by DrYak · · Score: 1

      Stack Overflow.
      Droping to debugger.

      --
      "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  2. first post by Anonymous Coward · · Score: 5, Funny

    I cheated and copied this post from another article.

    1. Re:first post by zeromorph · · Score: 4, Funny

      And you failed. QED

      --
      "Hannibal's plans never work right. They just work." Amy/A-Team
    2. Re:first post by Anonymous Coward · · Score: 0

      He copied that too.

    3. Re:first post by Anonymous Coward · · Score: 0

      I cheated and copied this post from another article. Then modified it.

  3. Cheating by ae1294 · · Score: 1

    It's easy to tell who cheats in life. Those who are successful and do little work cheat while those who do all the extra work to take up the slack do not.

    1. Re:Cheating by badran · · Score: 0

      I think you got it wrong.... The ones who are doing too much work GOT CHEATED..... specially the one in North Korea, China,.. Africa to name a few places....

    2. Re:Cheating by johnlcallaway · · Score: 4, Insightful

      It's so much easier to believe successful people must cheat then to accept the truth that there are people out there that are actually smarter, more motivated, and more clever. I've known a few people who are multi-millionaire's ... and they are all far more talented in those categories than I am.

      My ego is small enough that I can accept that I'll never be able to match their talents, nor do I want to work that hard to be that successful.

      --
      I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
    3. Re:Cheating by thearkitex · · Score: 1

      That's simply the most narrow-minded statement I've ever heard. So everyone that is successful cheated to get there? Unlikely.

    4. Re:Cheating by Anonymous Coward · · Score: 0

      And you can't tell the difference between THEN and THAN and used an apostrophe to pluralize. Be small, you've got a long way to go!

    5. Re:Cheating by Anonymous Coward · · Score: 0

      Actually, cheating is generally the opposite of hard work. And most successful people worked very hard to get there.

    6. Re:Cheating by kangsterizer · · Score: 1

      It's so much easier to believe successful people must cheat then to accept the truth that there are people out there that are actually smarter, more motivated, and more clever. I've known a few people who are multi-millionaire's ... and they are all far more talented in those categories than I am.

      My ego is small enough that I can accept that I'll never be able to match their talents, nor do I want to work that hard to be that successful.

      Actually, I find it easier to believe that successfull people are just better. I wish it is true. I believe it is true, most of the time.
      Except when I actually get to know a succesful one, and figure out that while they're smart AND hard working, they cheated their way there. (you actually have to be smart to cheat your way.. not very surprising isnt it?)
      Then I get to know another, same story.. and so on.

      Of the ones I know, which are known to be smart and hard working people, they would have given up if they didn't cheat. tells a lot, doesn't it.

    7. Re:Cheating by getSalled · · Score: 1

      It's easy to tell who cheats in life. Those who are successful and do little work cheat while those who do all the extra work to take up the slack do not.

      This isn't cheating. It's effectively calling a O(n) lifestyle cheating because someone else is living a O(n!) life. Although I will concede the point that you cheated your way to a score of 2 despite the fact that I did "all the extra work" by using appropriate punctuation and will undoubtedly be at zero forever. Such is life.

    8. Re:Cheating by Archon-X · · Score: 1

      UQ? QUT?

    9. Re:Cheating by johnlcallaway · · Score: 2, Interesting

      I guess it defines what you mean by 'cheating'. A few months ago I asked my how much I'd take for a car I owned that wouldn't run. I told him $500 because the body was in good condition. He offered me $200 and I accepted it. What he didn't know is that I would have given it to him for free if he would have just gotten it out of my garage. Is that 'cheating'. I'm sure if he knew what I would have taken for it, he would have felt cheated. But he probably feels he got a deal, he got it running and it's probably now worth more than what he paid for and put into it. Did he cheat me???

      Copying someone's code is cheating because the school says it is. Is it cheating when you take advantage of someone who doesn't know all the facts, or if you don't provide them?? That's what successful people do, take advantage of someone's lack of knowledge about a business transaction.

      Cheating involves deception .. was I lying when I said '$500' when asked how much I'd take for the car. No .. I would have taken $500 for the car. But I didn't tell him I would take less. Is leaving that part out lying by omission?? Does that make it cheating???

      In any business transaction, I'm sure a large portion of the people feel cheated afterward....that doesn't mean they were. I sometimes have felt cheated after taking a job offer ... could I have gotten more??? No one will tell you the highest salary they are willing to pay, just the one they think they can hire you for. We all would probably accept a higher salary than we think we are worth if we could get away with it. Would that be cheating also???

      --
      I rarely read replies, it's my opinion and if you thought about your opinion a little more, I'm OK with that.
    10. Re:Cheating by ae1294 · · Score: 1

      it's so much easier to believe successful people must cheat then to accept the truth.

      Which truth would that be? Bailouts of inherently risky businesses in a supposedly free market system because they are simply too big to fail, or the gross incompetence of their management being rewarded with cash and expensive trips while the economy collapses.

      I'm sorry but to be honest you can't make a billion by being a nice guy and playing by the rules.

      Running any business is about selling something for more than you paid for it. Those who try and be fair make nothing while those who mark up things 50,000% become rich. In a fair free market system a person or business could not get away with this because someone would sell for a bit less but that doesn't seem to happen now does it?

    11. Re:Cheating by benjfowler · · Score: 1

      QUT. They had a huge soft-marking scandal in the business faculty a few years ago.

    12. Re:Cheating by benjfowler · · Score: 1

      Relyig to my own post (I know, bad form)... the fee-payers can be desperate alright. The Chinese seem to have a penchant for doing whatever it takes to get ahead, regardless of the morality, or lack thereof, of what they are doing...

      I got good marks, so I ended up getting the attention of some (admitted rather cute) Chinese girl, who got quite friendly. "Friendly", to the point where she was willing to sell herself in exchange for me giving her money for textbooks. To a lonely sex-starved geek such as myself, that was quite a tempting proposition.

      I've never felt so slimy in my entire life....

    13. Re:Cheating by benjfowler · · Score: 1

      (No, I didn't take her up. I never stooped as low as the fee-payers; or some of my other fellow students)

  4. He has a great career in front of him by Rosco+P.+Coltrane · · Score: 5, Funny

    From TFA: Mr. de la Torre was taking the computer science class for a second time in his junior year when he cheated. After he was disciplined, he resigned from his position as student body vice president in November

    He shouldn't have resigned, I think he has the makings of a great politician...

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    1. Re:He has a great career in front of him by bsDaemon · · Score: 1, Interesting

      He's hoping for a career as a Fox News analyst instead.

    2. Re:He has a great career in front of him by edittard · · Score: 1

      He shouldn't have resigned, I think he has the makings of a great politician...

      I was going to disagree on the grounds that he got caught. But I had to take a phonecall from the 1980s.

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
    3. Re:He has a great career in front of him by TrancePhreak · · Score: 0, Troll

      He'd be better suited to working with Dan Rather.

      --

      -]Phreak Out[-
    4. Re:He has a great career in front of him by ae1294 · · Score: 1

      He shouldn't have resigned, I think he has the makings of a great politician...

      It's ok, he resigned because he got his PH.D online and now runs a major U.S. corporation and has a hot trophy wife... Seriously why do people not understand that the reason your bosses are so grossly incompetent is because they only play by the rules when it's necessary...

      Hey, If they do get fired one day they simply have to re-pad their resume and get their buddies to give good references. There isn't a "previous work database" where your history is kept.

    5. Re:He has a great career in front of him by bsDaemon · · Score: 1, Funny

      Who gave all the mod points to the Sarah Palin fans?

    6. Re:He has a great career in front of him by dcollins · · Score: 1

      "He shouldn't have resigned, I think he has the makings of a great politician..."

      Disagree, the resignation is actually a sign of how capable a young politician he is. Protocol is (1) resign and go through rehabilitation period, (2) get press on your personal situation, (3) in the future claim this as a learning experience. I'm actually impressed by this guy's proficiency. He will have other far more high-profile positions in the future.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    7. Re:He has a great career in front of him by shentino · · Score: 1

      Actually, there is. It's called a blacklist.

      Patently illegal in many areas, but still used whenever someone in the upper crust decides to get ugly and start a grudge against you.

      And since they're chummy with the guys making the rules, the politicians, you can't win.

    8. Re:He has a great career in front of him by Urban+Garlic · · Score: 1

      You clearly don't understand how these things work. He had to resign as VP of the student body so that the student government could then award him a contract as an ethics consultant.

      That is how great politicians do it.

      --
      2*3*3*3*3*11*251
    9. Re:He has a great career in front of him by Anonymous Coward · · Score: 0

      Or <one of hundreds of Bush cronies>.

  5. CSIt's easy... by Nomaxxx · · Score: 5, Funny

    yep... easy to cheat in Counter Strike.

    1. Re:CSIt's easy... by 228e2 · · Score: 3, Interesting

      CounterStrike was the first thing that came to me when I saw the title :/ (is this bad?)

      --
      Since when does being a Socialist mean 'someone who has a different opinion than me'?
    2. Re:CSIt's easy... by thijsh · · Score: 2, Funny

      My first thought also was: 'Cool, they have a Counter-Strike class and the professor got fragged and flunks the campers for cheating'.
      But when I googled 'define:CS' I found the most appropriate definition: 'Caugt Stealing' :)

    3. Re:CSIt's easy... by Custard+Horse · · Score: 2, Funny

      Bizarrely I was in the same CS class as a chap called Bott and he was indeed stupid. The significance has only just struck me.

    4. Re:CSIt's easy... by eugene2k · · Score: 1

      Wait, this isn't about Counter-Strike?

      --
      Apple has "Mac vs PC", Microsoft has "Laptop Hunters", Linux has recession
    5. Re:CSIt's easy... by TeknoHog · · Score: 1

      This is bad. Slashdot used to be about computer science, now it is about consuming mindless entertainment.

      --
      Escher was the first MC and Giger invented the HR department.
    6. Re:CSIt's easy... by TheRaven64 · · Score: 1

      Depends on where you're from. In the UK, I've not seen Computer Science abbreviated as CS, only as CompSci, with CS being used commonly for Counter Strike (well, it was a decade ago; I haven't played CS since they introduced Steam, so I don't know if it still is). In the US, it seems to be the standard abbreviation. Mind you, they also abbreviate Bachelor of Science to BS, rather than BSc, which shows you what they think of their degrees...

      --
      I am TheRaven on Soylent News
    7. Re:CSIt's easy... by asCii88 · · Score: 1

      I still can't think of any other meaning for the acronym CS

  6. One word... by chaotixx · · Score: 1

    ...decompiler.

    1. Re:One word... by andy19 · · Score: 1

      I'm thinking two words: Open Source.

    2. Re:One word... by quadelirus · · Score: 1

      This is definitely a problem. I TAd for a class where example programs were released as Java class files. I showed the professor how decompiling the Java class could recover basically line for line his original code. There were also times where two students had the same bad errors and results but their code was obfuscated enough that you couldn't prove for sure that they were cheating. In my experience, however, the ones we felt might be cheating by working together were the ones who got the same wrong answers not the same right answers, so they ended up getting much lower grades without us having to do anything at all.

  7. Expelled by berj · · Score: 2, Insightful

    Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

    I dunno about Stanford but when I went to school my CS classes (especially the earlier ones) were huge. I never met most of my classmates. I would be *extremely* pissed off to have my academic standing affected by someone else's cheating.

    1. Re:Expelled by Anonymusing · · Score: 2, Informative

      Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

      Many years ago, the University of Virginia had a policy where students caught cheating were kicked out, and then their records were burned publicly. Don't know if they do this anymore.

      --
      Liberal? Conservative? Compare perspectives at Left-Right
    2. Re:Expelled by TwiztidK · · Score: 1, Informative

      Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

      Most universities kick students out as soon as they are caught cheating. If the cheaters try to go to apply to another school, the last question on the app is usually "Have you ever been disciplined for Academic Dishonesty?", to which answering "yes" is an auto-fail.

      --
      Sent from my iPhone 5
    3. Re:Expelled by zill · · Score: 1

      As far as I know, the punishment for cheating at most universities is expulsion. The offense will be kept on permanent records so that you'll never be admitted to another university in the country again.

    4. Re:Expelled by atamido · · Score: 1

      I go to a local community college, and I know that at the very least academic dishonest will result in an F for the class. On the first day of class each professor makes this clear. Getting kicked out of the school seems like the next logical step. I don't see the problem with this (and everyone loves bonfires).

    5. Re:Expelled by QuoteMstr · · Score: 4, Insightful

      Harsh punishments don't work. Because the punishments are so drastic, instructors become reluctant to give them out to "good kids" who made "one mistake." Lax punishment becomes to de facto standard, and of a rogue instructor tries to apply the penalties as written, his students and his peers look at him as a monster and exert considerable pressure to loosen up.

    6. Re:Expelled by Bakkster · · Score: 1

      Besides, if you just keep forcing the cheater to retake classes you can squeeze several additional semesters of tuition out of them.

      --
      Write your representatives! Repeal the 2nd Law of Thermodynamics!
    7. Re:Expelled by Anonymous Coward · · Score: 0

      Indeed. At the law school I attend if you cheat, they not only kick you out but across any transcript you request they stamp a huge "Expelled due to academic dishonesty" across it in red.

    8. Re:Expelled by neosaurus · · Score: 1

      I was a Teaching Assistant for a freshman year C++ course for two years in grad school. We divided the assignment scores of the students we caught cheating by 1000. Btw, we used Moss [http://theory.stanford.edu/~aiken/moss/] as well.

    9. Re:Expelled by pz · · Score: 1

      Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

      I dunno about Stanford but when I went to school my CS classes (especially the earlier ones) were huge. I never met most of my classmates. I would be *extremely* pissed off to have my academic standing affected by someone else's cheating.

      The summary omits the fact that raising the weight of the final is not the ONLY action that happens. The student who is caught is at least reprimanded, if not much worse. The point of the novel mechanism is that everyone else in the class (even if the single individual is expelled) is also punished by re-weighting the grade evaluation to more heavily favor the final exam. Furthermore, that at each instance of cheating, there is another adjustment. Presumably peer pressure or some fear of potential guilt is supposed to act as a deterrent, but I don't see that. It's not an effective motivation for someone who is likely to cheat.

      When I was at MIT, teaching the core EECS classes (6.001 through 6.004) late 80s and early 90s, cheating was taken *very* seriously. The very best a student could hope for is to fail the class (I never heard of such a case, though). Nominally it meant leaving the department (with a forced change of majors), if not expulsion from the university. That said, since the punishment was so harsh, and since cheating is difficult to prove in general, students whom we suspected of cheating were usually given a stern warning and put on informal probation. Still, there were disciplinary committee meetings from time to time to deal with students who were provably shown to have cheated. The chair of the committee for many years was a family friend --- and, boy, he was tough. You did not want to be even accused of cheating.

      --

      Put my fist through my alarm clock with its ding-dong death inside my ear. - The Blackjacks.
    10. Re:Expelled by Snorpus · · Score: 1

      Just make the punishment for cheating sufficiently harsh.

      My college allows a range of punishments, any of which can be applied to the first offense:

      • -re-do the assignment
      • -failure of the assignment, no make-up allowed.
      • -failure of the course.

      Repeated offenses result in expulsion.

    11. Re:Expelled by Anonymous Coward · · Score: 0

      The hard part there is the false positive. Cheating can be accomplished through collusion or theft, how does one tell? Similarly, if the program is copied (presumably with any identifying information changed) how do you tell who created it and who copied it? I had this happen to me once - I must not have logged out properly back in high school and a classmate submitted the a copy of my assignment. Both of us were then accused of cheating. If he had not caved, there would have been no easy way to tell who had written the original. The same applies to cheating on tests - if errors match, it is easy to see that copying took place, but which is the original? It seems rather wrong to severely punish someone for not hiding their test well enough.

    12. Re:Expelled by MobyDisk · · Score: 2, Insightful

      The difficulty is that stronger punishments require stronger proof. You must be be 100% sure that you have the right person. It would suck if you tossed-out the best and brightest because people were copying their work.

    13. Re:Expelled by Anonymous Coward · · Score: 0

      Yes, we do and we take pride in it:

      http://www.virginia.edu/uvatours/shorthistory/code.html

      It's not perfect, but it's a single sanction system for lying, cheating and stealing not just on Grounds (campus), but at any time while you're a student and you represent yourself as such. It's entirely student run, with faculty only becoming involved if they are the ones bringing charges. If you're charged, you have the option of withdrawing from school - but a pending honor charge prevents you from re-enrolling, so it's the same effect as a conviction.

      Many of the local businesses will take your student ID as a promise of later payment, and there was a huge uproar in the mid 90's that the University Bookstore placed lockers outside for bags to be placed in prior to entering. It so offended the student body they were replaced with optional open cubby bins, coat racks and an apology.

      It is incredibly effective when enforced, as with a major honor code violation in Louis Bloomfield's physics class in 2001,

      http://www.csie.ntu.edu.tw/~lyuu/virginia.html

      (TW mirror of a NYT article)

      Follow up article,

      http://diverseeducation.com/article/1632/1.php

    14. Re:Expelled by Anonymous Coward · · Score: 0

      Right, because we know how well the ultimate punishment, execution, deters crime.

      -mobby_6kl

    15. Re:Expelled by shentino · · Score: 2, Insightful

      What if someone steals your work and turns it in first?

      Then YOU get nailed for cheating...

    16. Re:Expelled by maiden_taiwan · · Score: 2, Insightful

      It's not quite that easy (speaking as a long time CS teacher). For example, once I found that two of my students had turned in the identical assignment. They did not know each other, so one clearly swiped the other's work. Neither would admit wrongdoing, they both understood the code, and there were no timestamps to check. With an expulsion policy, what do you do? Either expel them both (not fair, you're punishing an innocent person) or break your own policy (looking inconsistent, which weakens the policy). The hard part about dealing with cheating is the borderline cases.

    17. Re:Expelled by Anonymous Coward · · Score: 0

      Where I taught, if you cheated and got caught, you got referred
      to a special administrator. The result tended to be you were suspended for a quarter or voluntarily dropped out.

    18. Re:Expelled by Anonymous Coward · · Score: 0

      I can confirm that Honor Code violations are indeed punishable by expulsion, indeed the "Single Sanction". If a board of your peers finds you guilty of academic dishonesty, you can kiss your ass (as a Wahoo anyway) goodbye.

    19. Re:Expelled by Anonymous Coward · · Score: 0

      There was immediate expulsion for cheating at my university.

      It didn't stop anyone. If they wanted to cheat, they cheated. People mostly did their own work out of a sense of self-honor (or an inability to find someone to cheat off), not fear of reprisal.

      It doesn't matter how severe a punishment is if no one thinks it will happen. Imagine if I made it punishable by torture and death to type "I am the future overlord of Earth" into notepad, not save, and close the app. Would that stop anyone? Probably not - everyone knows it's completely unenforceable.

      On the other hand, imagine if I put a cop on every corner to hand out $5 jaywalking tickets. Would you still jaywalk?

      Generally speaking, the evaluation of risk is more dependent on the odds of being punished than the punishment itself. This is why long prison sentences are a waste of money. A cop's salary is, what, $60K/year? Prison for a single inmate is $21K/year.

      For every three prisoners we have today, we could have 1 cop for the same price. We have 2,304,115 prisoners in the USA. Some percentage of those people shouldn't be released (violent or continually re-offending), but if even half of them weren't imprisoned today, we could have nearly 400K more police to prevent crimes from happening in the first place. According to the BLS, there are only 883,600 police and detectives today.

      In essence, by having overly-long prison sentences, we cost ourselves a third of the police force that could be used to actually keep us safe.

      Similarly, at schools, by having overly severe punishments but no perceived risk of punishment, we cost our honest students fair consideration against the cheaters, and cost the cheaters the skills they would have otherwise have gained, both of which weaken America as a country.

    20. Re:Expelled by winwar · · Score: 1

      "I go to a local community college, and I know that at the very least academic dishonest will result in an F for the class. On the first day of class each professor makes this clear."

      I'm sure they do. It's also very unlikely. What they say they will do and what they can actually do are two very different things.

    21. Re:Expelled by Ephemeriis · · Score: 1

      Just make the punishment for cheating sufficiently harsh. You cheat.. you get kicked out. Simple.

      My first year of my CS degree my professor wanted to talk to me after class one day. She explained that I'd been caught cheating on one of the assignments. I denied it. She explained that copying another student's work was plagiarism, and the penalty for that was expulsion. She was going to ignore it this time and give me a 0 on the assignment, but if she caught me again that would be it.

      I had the distinct impression that if I insisted on my innocence she would change her mind and not ignore the offense. She seemed absolutely convinced that I had copied somebody else's work.

      The fact of the matter is that I hadn't copied anyone's work.

      I don't know if somebody grabbed my printout from the bin and copied my code... Or if I just happened to turn in very similar code to someone else... Or what.

      Left me absolutely paranoid, didn't trust anyone, was terrified of getting kicked out of school for something I didn't even do.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    22. Re:Expelled by winwar · · Score: 1

      "Presumably peer pressure or some fear of potential guilt is supposed to act as a deterrent, but I don't see that. It's not an effective motivation for someone who is likely to cheat."

      I think it is a great idea. First, it only happens if someone is actually CAUGHT. Second, it reduces the ability of the cheater to cheat (allowing your assignment to be copyed is now no longer victimless, so the supply is reduced). Third, it promotes a culture of personal responsibility and peer pressure to do the right thing. It stops casual cheating. Finally, it makes the grades more meaningful and promotes learning.

      Defining cheating is always tricky. In my experience, most students don't consider sharing their work to be cheating. If you say work together they hear copying is okay. You really have to be precise. If you define cheating as receiving outside help (as the article did), then what exactly is outside help? A tutor? A study group? The professor? The textbook? I know it when I see it is not a useful definition for a student who has been allowed to work in groups and copy work for most of his/her academic career.

    23. Re:Expelled by Anonymous Coward · · Score: 0

      [Anonymous for obvious reasons]

      I am a university prof, and I can tell you I have no problem punishing students who blatantly cheat. Of course there are cases in which you have strong suspicions, but not enough evidence to be conclusive. In those cases it is not worth anybody's time to file the report, go to the disciplinary hearing etc. But if it is blatant cheating, then the students are sending me a very clear message with that: they think I am stupid enough to not notice. That just pisses me off, so yeah, I want to see them punished.

    24. Re:Expelled by Anonymous Coward · · Score: 0

      Absolutely correct. As a current instructor, I have been told (not hinted, not suggested) to go easy on the freshmen I teach. Sure, there's an official policy and nobody is going to put it in writing. But the fact remains - short of behavior bordering on criminal, the student gets a slap on the wrist and the professor gets a bad review for being a hardass.

    25. Re:Expelled by rtfa-troll · · Score: 1

      Innocent until proven guilty. You can't prove either one so you let them both off. However, you now have reason to suspect so you make sure that if either one cheats again you catch them.

      If one was a serious cheat, they won't be able to continue without cheating.

      The thing that scares me is that you find this a difficult case.

      --
      =~ s,(.*),<sarcasm>$1</sarcasm>,g if any_point_you_wish();
    26. Re:Expelled by Anonymous Coward · · Score: 0

      At RPI where I went you automatically failed the course for cheating. They're pretty good at catching people too, I got called in to my professor's office to explain why the system pulled up a match for some code in a project I handed in. It was actually code that I had re-used from a project for another class and modified so nothing bad came of it but I was surprised it picked that up.

    27. Re:Expelled by DamnStupidElf · · Score: 1

      Why not just give them each a new assignment to replace the grade for the suspect work? In cases where there is no hard evidence of cheating, I don't think it's inappropriate to consider it an accident. The entropy for well written code designed to solve a simple assignment is probably quite low, and I wouldn't be surprised to find that on occasion two people turn in exactly the same code. How many ways are there to write a straightforward K&R "Hello, World!" program in C for instance?

    28. Re:Expelled by masmullin · · Score: 1

      I had a prof for a final semester class who put it in no uncertain terms that he looked forward to people cheating. He said he enjoyed getting people kicked out of school after being so close to finishing their degree. He said he did it a few years ago and it really gave him a thrill.

      He was a really cool prof, but he hated cheating and dishonesty.

    29. Re:Expelled by pete6677 · · Score: 1

      This is pretty much the official policy everywhere. The practical implementation of the policy, however, is a different matter entirely.

    30. Re:Expelled by eyore15 · · Score: 1

      Be glad you don't attend one of the service academies; their honor code states they will not cheat NOR TOLERATE THOSE WHO DO. Knowing another student cheated, and doing nothing about it, is tantamount to cheating yourself. Personal integrity is more than just NOT cheating.

    31. Re:Expelled by zill · · Score: 1

      Stealing is a criminal offense.

      Plagiarizing is an academic offense.

      As long as you can prove that you work was stolen, you can immediately file a police report. Then use the police report and the evidence to clear your name. The thief will have both his criminal record and academic record updated accordingly.

    32. Re:Expelled by maiden_taiwan · · Score: 1

      It wasn't a "difficult case." I was merely responding to the parent article, which claimed that a sufficiently harsh punishment solves the problem. I was presenting a counterexample. You're saying that a different approach solves this particular case. That's true, but not what I was writing about.

    33. Re:Expelled by maiden_taiwan · · Score: 1

      This was clear copying, all the way down to the comments. Literally 100% identical code. There are various ways to proceed in this case, but the parent article's claim (a sufficiently harsh punishment is all you need) isn't one of them.

  8. Cheating in CS? by Lord+Lode · · Score: 4, Funny

    Wall hacks and aim bots, that's how...

    1. Re:Cheating in CS? by vintagepc · · Score: 1

      HAAAAAAAAAAAAAAAAAAAAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX! (points finger) Heh.. could you imagine the prof turning in to a real life Dr. Hax any time he catches someone cheating? (More than enough decomissioned CRTs... that's not a problem).

      --
      Evolution - Est. 4500000000 B.C. Don't piss in the gene pool.
  9. Maybe cheating in CS is easy... by GhigoRenzulli · · Score: 4, Funny

    ... but also cheating in CS:S is not that difficult.
    Valve should really stop those nasty cheaters.

    Now that I've posted a reply, I'm going to RTFA.

    1. Re:Maybe cheating in CS is easy... by vintagepc · · Score: 1

      Now that I've posted a reply, I'm going to RTFA.

      Now who's cheating at slashdot? You don't RTFA, EVER.

      --
      Evolution - Est. 4500000000 B.C. Don't piss in the gene pool.
    2. Re:Maybe cheating in CS is easy... by berashith · · Score: 4, Funny

      reading the article is definitely cheating. If you cant divine the information from the summary , at least try to infer it. The low uid guys only read the first three letters of the headline.

    3. Re:Maybe cheating in CS is easy... by Anonymous Coward · · Score: 0

      ... but also cheating in CS:S is not that difficult.

      Valve should really stop those nasty cheaters.

      Now that I've posted a reply, I'm going to RTFA.

      I see what you did here.. good job.

    4. Re:Maybe cheating in CS is easy... by pablodiazgutierrez · · Score: 1

      May is a great time of the year, indeed. The weather is nice, the flowers are blooming... I just don't know what this has to do in a story about some Howard dude.

    5. Re:Maybe cheating in CS is easy... by Dogbertius · · Score: 1

      ... but also cheating in CS:S is not that difficult. Valve should really stop those nasty cheaters.

      Now that I've posted a reply, I'm going to RTFA.

      You're supposed to be PLAGARIZING /., not reading it! Back to work!

  10. Half of the story. by llvllatrix · · Score: 3, Insightful

    It's much easier for people to cheat in group projects than on any particular assignment. Nearing the end of my undergrad I specifically choose courses that didn't involve group projects because I got tired of doing other people's work (while they went to class).

    1. Re:Half of the story. by Nidi62 · · Score: 1

      Easy way to solve that. Hand it in personally to the teacher, with your name only on it(along with anyone else's who may have helped out) and tell the teacher that the other people in the group did not do any of the work, so you felt there was no need for their name to be included on it.

      --
      The only thing necessary for evil to triumph is for it to be pitted against a slightly greater evil
    2. Re:Half of the story. by llvllatrix · · Score: 3, Insightful

      Tried that and was hit wit the whole "you should have managed your group better". Unfortunately firing my team members for gross incompetence wasn't an option :(

    3. Re:Half of the story. by Anonymous Coward · · Score: 0

      Easy way to solve that. Hand it in personally to the teacher, with your name only on it(along with anyone else's who may have helped out) and tell the teacher that the other people in the group did not do any of the work, so you felt there was no need for their name to be included on it.

      Well. Yes. It might do the trick. But showing that level of disloyalty to your pairs will likely brand you as a certified asshole.

    4. Re:Half of the story. by i.r.id10t · · Score: 1

      Had the same issue in the programming classes I took here at the comm. college

      Everyone wanted to be in my group because I had lots of prior programming experience.

      Solved it by writing all the code, obfuscating some of it, using crappy 1 letter variable names, throwing in a bunch of code that was never actually used, and not commenting any of it.

      Turned it in to the instructor as a group, told her I wrote the code, and she should grade my group members based on their commenting of it

      Worked well...

      --
      Don't blame me, I voted for Kodos
    5. Re:Half of the story. by Anonymous Coward · · Score: 0

      You waited until the last min to tell the teacher this didnt you? Of course he doesnt care at this point you sure didnt for 3-4 months... 'Teacher I am having a little trouble with my group. The one dude never shows, the other one is always stoned. Can you give me some pointers on managing the group better?' 2 months earlier probably would have gone a long way.

    6. Re:Half of the story. by TheRaven64 · · Score: 1

      Then you would fail, and rightly so. Group projects are about teaching you to work in a team, not about the end result. On my degree, the group project was one of the few modules that was required for the degree to be certified by the BCS. If you don't learn to work as a productive team with some useless people, then you have failed the module's learning objective.

      --
      I am TheRaven on Soylent News
    7. Re:Half of the story. by Halotron1 · · Score: 1

      I think the group exercise is to teach everyone how to collaborate and share responsibilities, but it's unfair to a student to be responsible for a group member who completely refuses to perform. I think you have the responsibility to learn to communicate to your fellow group members when someone isn't pulling their weight, but if someone doesn't help at all no matter what, the teacher has the responsibility to provide a method for the students to communicate that.

      In a few of my classes the teacher provided a private method for group members to communicate to the teacher who the good and bad group members were.

      Sometimes it's ok if you end up doing all the programming, honestly in one of my favorite classes I did all the coding and left the powerpoints and cardboard cutouts etc to the rest of the group and the teacher was fine with it. I was confident that at least the rest of the group understood what was going on, but I was a lot faster at programming than the others so we each went with our strengths.

      Honestly I think group projects work the best when the group members are from separate disciplines. It's pretty hard to cooperate when you put 5 programmers on a team and tell them to write a Hello World program together.

      Oh, and I think most cheating happens because cute girls have to take programming 101 classes and nerds are easy targets. :)

    8. Re:Half of the story. by quanticle · · Score: 1

      Yeah, I've also encountered teachers that said they would not accept an assignment unless it had the requisite number of names at the top. At that point, its easier to simply ignore the group and leave their names at the top.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    9. Re:Half of the story. by quanticle · · Score: 1

      Well, its better to be have that sort of a reputation than to be the one guy that everyone wants to group with because they know they can dump all the work on you. I've been in both those roles, and believe me, the former is far better than the latter.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    10. Re:Half of the story. by llvllatrix · · Score: 1

      I've been told that by professors as well, particularly after asking them early in the term for help with my team. Unfortunately, most of the people that I've worked with in teams learned by rote and forgot all of their knowledge after exams; when it came to applying the knowledge, they just couldn't do it :( My alternative to doing the project myself was to teach them several semesters worth of electronics and software engineering. The only exception was for our large scale projects where we had the liberty of picking teams. I was not only able to pick people who could do the work but also wanted to do the work and it was very rewarding; that's a really hard thing to find.

    11. Re:Half of the story. by Rhacman · · Score: 2, Insightful

      It would be stupid to fail someone for completing a team assignement just because they couldn't get the other group members to participate. The key is making the effort to include them and letting the instructor know early on that there are difficulties. You can lead a horse to water but nobody should expect you to make him drink. You may still end up doing all the work yourself, and this does happen in real life, but you are expected to let your superiors know that someone or something is negatively impacting the project. The instructor will make the call on if they get credit or not, and you should still expect to be penalized if the project was not completed just as in the real world team-members may get fired and you may lose a sale / contract if you fail to delilver.

      --
      Account -> Discussions -> Disable Sigs
    12. Re:Half of the story. by fizzup · · Score: 1

      This is the most important part of a group project in school - learning how to deal with people on the team who are not performing. When interviewing new grads, I always ask detailed questions about group projects in school to find out if the candidate was carried through on the abilities of others, or if he or she was one of the people doing the carrying.

      If you think about your experience on group projects, you'll know what kinds of questions to ask by thinking about the traits shown by the classmates you liked to work with.

    13. Re:Half of the story. by CuriHP · · Score: 1

      My pairs of what?

      --
      If it's not on fire, it's a software problem.
    14. Re:Half of the story. by Ephemeriis · · Score: 1

      It's much easier for people to cheat in group projects than on any particular assignment. Nearing the end of my undergrad I specifically choose courses that didn't involve group projects because I got tired of doing other people's work (while they went to class).

      Yup.

      Always hated group assignments... There would always be at least one person who didn't pull their own weight.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    15. Re:Half of the story. by winwar · · Score: 1

      "In a few of my classes the teacher provided a private method for group members to communicate to the teacher who the good and bad group members were."

      Yes. The good teachers have each member of the group fill out evaluation forms about who did what, problems, praises, etc. Funny that I never really needed to fill out those forms.

      I suspect the bad ones just use groups so they have to do less work while pretending that they are teaching life lessons. These always needed feedback but there was never a mechanism. Which seems to be another life lesson. Pity.

    16. Re:Half of the story. by pclminion · · Score: 1

      My senior year of CS I was taking some some electives to fill out my non-core academic requirements. One of them was a pretty cool course on atmospheric physics, chemistry, and pollution. We had a group paper to turn in at the end of the quarter, and I was in a group of 4. One guy offered to write the entire first draft while the rest of us dug up more references. We thought this was awesome, so we went off and did our thing for two weeks or so. We regrouped and he presented what he'd worked on. It was an incredibly detailed draft over 50 pages long, with FIGURES. Well, we thought that was amazing, slapped him on the back, and went to work incorporating some of our own material into the draft.

      48 hours before the assignment was due, I was searching the web for some obscure term related to our report, and a web page appeared with some very familiar-looking text... In horror, I flipped through our final draft, entering phrase snippets, and I kept finding more and more evidence that the entire paper had been plagiarized from various web pages. I emailed the team and told them we needed to meet in half an hour. Then I emailed the professor and told him exactly what was happening. I said that I would attempt to rewrite the entire paper, and if it could not be rewritten in time, I requested to be removed from the group and that I would happily accept a grade of 0% on the final report, as I didn't want my name attached to a report that was 100% plagiarized. (Had that actually happened it would have jeopardized my graduation, but what else could I do? It was my own fault for not being more suspicious in the beginning.)

      The rest of us pulled a 48-hour sprint and got the entire thing rewritten. We didn't bother to tell the guilty person that we'd found him out. We all got together to go over the final draft, and he was surprised and happy at what we'd done to it. Unfortunately, since the plagiarized copy was never turned in, and there was no proof except my honest word on the matter, the professor couldn't do much to the cheater, and we all received an A- on the report.

      After that, I learned to only group with people I trust.

    17. Re:Half of the story. by masmullin · · Score: 1

      been there man. Try doing a writing class with a group of ESL kids... jesus fucking christ!

  11. Cheating is laziness... by Manip · · Score: 2, Insightful

    Cheating is laziness by the student but also the teacher who allowed it to take place. Cheating is very easy to avoid but it does require educators to be willing to create assignments that they themselves didn't download or buy from a teaching website. The fact is that when you use the same exact assignment year after year you're going to make cheating both accessible and profitable.

    I would also like to add, that cheating is far worse in the US since the teachers grade the students instead of third party independent testing organisations who are contracted to create unique material for each test.

    1. Re:Cheating is laziness... by Drethon · · Score: 1

      I've been told at work that the best engineers are lazy. Thought its the kind of lazy where they spend a half an hour writing a program to replace days of manual entry as opposed to getting others to do the work for them...

    2. Re:Cheating is laziness... by ThinkingInBinary · · Score: 5, Insightful

      Cheating is very easy to avoid but it does require educators to be willing to create assignments that they themselves didn't download or buy from a teaching website.

      I would also like to add, that cheating is far worse in the US since the teachers grade the students instead of third party independent testing organisations who are contracted to create unique material for each test.

      ...huh?! If we're talking about university classes, the idea that anything other than perhaps the intro courses would use materials provided by some company (say, the textbook publisher) is absurd. Also, what kind of a professor would outsource their tests to an independent organization? How can they possibly know the course material well enough, and adjust for what's been covered during the semester, and such?

    3. Re:Cheating is laziness... by TheRaven64 · · Score: 4, Insightful

      Yup, good programmers are lazy. Good programmers will write the smallest amount of code to solve the problem at hand, because the more code you have, the more potential for bugs. In general, 50-90% of development time is debugging, so a lazy developer will write code that is easy to debug (short, simple, well-structured). If this cuts debugging time in half, it can double or triple productivity.

      Unfortunately, students seem to not be learning how to be lazy very well. One course I taught had a URL at the end of the coursework sheet which pointed to a site that had code that did around 90% of what you needed for a passing grade. A lazy student would have copied this, changed a few things, and then spent some effort on the things needed to get from a pass to a first class grade. Only two of my students actually did this. In another course I taught, the back page of my hand-out notes had the complete solution to one of the questions in the assignment that I set. Only 10% of my students even attempted that question, and of those less than half got it right.

      I think I blame schools giving grades for effort. It reinforces the idea that putting in a lot of effort is laudable, even if you don't achieve anything.

      --
      I am TheRaven on Soylent News
    4. Re:Cheating is laziness... by Xest · · Score: 1

      I do have to wonder if cheating even really matters.

      People will cheat for a number of reasons including those you mention, but also perhaps because they find the assessment entirely unfitting to their way of thinking. for exams for example, tThe fact is, exams just aren't representative of real life and I've met many people who can excel outside exam conditions, but struggle with exams, even though the low grade from the exam has no relevance to their ability to perform in the real world. The other side of that of course is that there are also a lot of people out there who excel at exams, but truly suck at using that knowledge dynamically, in the real world.

      But even if people don't cheat for this reason, and cheat because they find the course boring, or because they are interested in it but really can't do it I still have to wonder whether there is any actual harm.

      Look at the effects, of each scenario:

      Scenario 1: Person cheats because they struggle with exams, despite being good at the subject in a real world situation. No real harm is done, beause they'll still do a good job, and cheating really just gave them a grade that is perhaps more representative of their ability.

      Scenario 2: Person cheats because they picked the wrong course and would rather have done something else, but need the points anyway. Does it really matter? Chances are if they didn't like the topic they wont be making use of the elements of the course in the real world anyway, and so even if they cheated to get a good grade, they're not going to end up in a real world situation where they're unable to perform.

      Scenario 3: The person who cheats because they enjoy the topic but still struggle with it is going to have one of two outcomes, the first is that they continue to work at the subject until they are good at it precisely because they do enjoy it, the second and most harmful of all is that they remain incompetent and do use their cheated grade to get a job in the subject, obviously this is bad for the employer, but I would argue only in the short term- making use of the subject will either make them better over time, or their employer will begin to realise they suck and get rid of them anyway.

      I'd argue the real problem is that despite the fact we know that people learn in different ways, despite the fact we know some people that are crap at recalling facts, but awesome at putting them to use if we have them in a reference, and contrary to that, have people who are awesome at remembering facts, but hopeless at applying them, or the much rarer case of people being good at both, we still use an assessment system that we've used for hundreds of years and which doesn't take any of this into account. That's before you factor in other complications that are important to a person's ability to do a job- some people might write good code, but can't for the life of them architect it, some are great at talking to people and getting user feedback, but hopeless at implementing and so on, none of which assessment really measures.

      So effectively, whilst we have a fundamental flaw in how we rate people to begin with, it's hard to worry that there are people who don't adhere to the rules of said system.

      I'd argue if we sort out the assessment system in general, cheating will be irrelevant anyway. I don't know what the solution is, and suspect whatever it is it'll require more effort from lecturers, but perhaps one option would be to have students both make a FOSS contribution, and peer review other contributions, and then have the lecturer or whoever evaluate the contribution and the review. Just throwing that out there though, I'm sure there are flaws in the plan but either way, it can't really be any worse than the current mainstream system which is both horribly outdated and fundamentally broken.

    5. Re:Cheating is laziness... by quadelirus · · Score: 1

      You are assuming that downloading pre-existing code is the only type of cheating. It is also cheating for two students to work together to come up with the same code (and one of them obfuscates it after they are done). This type of cheating is not created out of instructor laziness. It is only on the shoulders of the students.

    6. Re:Cheating is laziness... by QuoteMstr · · Score: 2, Insightful

      Your mentality is the reason schools no longer teach grammar. Some students are bad at it and complain: they're "bad test takers", or "the class doesn't reflect real-world tasks", or they're "bored".

      That's bullshit. Educators knew it and students knew it. (And laughed to their friends about "getting out" of things with excuses like that.) But I imagine educators tired of an endless cavalcade of students try to wiggle out of actually learning, and realizing that students who don't want to be taught can't be taught, dropped the class.

      You're merely applying the same thought toward removing rigor from the computer science curriculum. Most of the tasks you mentioned should have separate programs. Are you seriously suggesting that someone who can't code be able to graduate from a CS program because he's good at accepting user feedback?

      It was 2010, and everyone was finally lol im bored can I haz degree nao?

    7. Re:Cheating is laziness... by destroyer661 · · Score: 2, Interesting

      I wish I had mod points for you. This is EXACTLY what I'm seeing in my cs program right now. Everyone getting marks for effort, half their code works, the other half doesn't. Handing out ridiculously high marks for writing down psuedo-code is what bugs me the most. Our profs will give you marks if you can write down what you need to do, in some improper syntax but still achieve the 'right idea'. I'm apparently mistaken that learning syntax is important. I've been helping people in second year write stuff and they get hung up on writing proper if statements and implementing while loops properly. It baffles me how they got to second year without being able to pop off a for statement without even exchanging neurons. I also know a lot of people who've gotten through with friends writing a lot of their programs because they simply can't do it themselves. The lack of integrity makes me rage haha.

      I guess on the flip side, these people who mess around like that are almost a necessity. A friend and I at work had this conversation the other day, how you get management who might have gotten a CS degree but can't code to save their lives. But they're pretty good at managing because they at least have some understanding of what your job actually is. Rather than having some BA/MBA boss who just 'wants things done, now.'

      --
      #define true false // Have fun debugging!
    8. Re:Cheating is laziness... by xaxa · · Score: 1

      Cheating is laziness by the student but also the teacher who allowed it to take place. Cheating is very easy to avoid but it does require educators to be willing to create assignments that they themselves didn't download or buy from a teaching website. The fact is that when you use the same exact assignment year after year you're going to make cheating both accessible and profitable.

      How does that prevent copying work from other people in the same class?

      I was set a few exercises where I was given a random input value (or whatever), different from the rest of the class, but that's only possible in a very small number of cases.

    9. Re:Cheating is laziness... by ThrowAwaySociety · · Score: 2, Insightful

      I would also like to add, that cheating is far worse in the US since the teachers grade the students instead of third party independent testing organisations who are contracted to create unique material for each test.

      Umm, citation needed?

      Are you accusing the teachers of helping the students to cheat? If so, outside tests don't help. Thanks to the All Children Kept Behind act, every public school has been using third-party independent testing. Since the teachers and districts are evaluated based on their students' performance, the teachers and administrators themselves have been caught helping students cheat (either by giving away answers during tests, or by editing students' responses before submitting them.)

      Or perhaps you're suggesting that somehow tests produced by teachers are easier to cheat on, because the teachers ask the same questions on every exam. Well, only lazy (or stupid) teachers do that; a good teacher will subtly vary the questions each time a test is given; a teacher can do this as effectively (and often moreso) than a huge testing organization. And a good teacher will be familiar enough with his or her students to know when a low performer starts scoring well.

      In short, lazy, badly motivated, and dumb teachers promote cheating. Adding bureaucracy won't help.

    10. Re:Cheating is laziness... by Drethon · · Score: 1

      Actually syntax is less important than the concepts of how to write programs. However what I'm talking about is the syntax that a compiler can tell you what you did wrong and understanding everything above that.

      Last semester I was working full time and took two graduate school classes. During this time I was developing programs in Java, C++ and Ada. The differences in language meant nothing because the times when the syntax of one language leaked into my programs in the other language I could just look at compiler errors and catch my mistakes.

      In this case knowing how to write a program was most imporant and how to write it in a specific language was secondary. Though you are correct that being able to learn syntax is important but when I miss things in Ada due to being more familiar with C++ I can ask a coworker how to format something I'd do in C++ in Ada.

      Just my $0.02 from a few years in the buisness...

    11. Re:Cheating is laziness... by Xest · · Score: 1

      "You're merely applying the same thought toward removing rigor from the computer science curriculum. Most of the tasks you mentioned should have separate programs. Are you seriously suggesting that someone who can't code be able to graduate from a CS program because he's good at accepting user feedback?"

      No, but you're saying that someone who can remember all the sorting algorithms off by heart, but can't fit them into a full blown application should pass with flying colours, whilst the guy that can't remember them off by heart, but can look them and can then use them in a full blown application should fail, and therein lies the problem. The whole point in university is to produce people who can either do further useful research, or who are beneficial to the workplace.

      I'm not saying someone should pass a CS program because he's good at accepting user feedback, but should he fail university altogether when the A student who can recite, but is useless in the real world passes with flying colours? If he's more useful than that guy, because in the real world you do need people capable of communicating with users, then it's idiotic that we have this situation where he's "rated" lower than the other guy who would require a lot of work to be productive in the real world.

      Degrees that are simply about reciting facts are completely and utterly pointless and it's precisely why recruiters are paying ever less attention to degrees. Degrees need to be meaningful again, they need to represent what they are supposed to represent- a students worth to potential employers.

      I'm not advocating not teaching grammar, it's stupid to suggest I am, because those are things that are taught well before you start grading people- in the UK our first main exams that mean anything are GCSEs at 16, I'd sure as hell hope fundamental science, numeracy and literacy have been taught long before that, I'm not sure what country you're in if that's not the case but it sounds rather backwards. My points are in relation to the later stages, where students get to the point where they are given more choices as to what they want to do, but where it's still possible to make the wrong choice.

      Some of the finest developers I've met never even got degrees at all, whilst some of the graduates who come to job interviews fresh out of uni (and I'm not even that old myself, I'm still in my 20s) despite having first class honours degrees have shockingly low levels of ability even when coming from some of the top unis- clearly their grade does NOT represent their ability level. As a disclaimer, I was also a first class honours student in CS myself, so it's not as if I don't know what gets taught and what is required to get to the top, but I had an interest and strong knowledge of the subject well before I even started university and do not believe that university alone would've prepared me for the real world, particularly judging by the level of ability. I strongly support education, and think it's extremely important, hence why I'm doing a second degree in my spare time alongside work, this time in maths, but to suggest the grading system is somehow a useful demonstration of ability is rediculous.

    12. Re:Cheating is laziness... by cervo · · Score: 2, Insightful

      Evidently a rather large amount of professors would. Some even use slightly modified powerpoint slides from the textbook publisher to present the class. Guys with PhDs are just like the rest of us, there are some good ones, many average ones, and a bunch who totally suck. Some cannot even be bothered to read their own class textbook..... Some steal tests from other places and then invent their own "interpretations" of a problem. And when their own "interpretation" is totally wrong or based on false assumptions from 10 or 20 years ago, it's a major headache to correct them....

    13. Re:Cheating is laziness... by Anonymous Coward · · Score: 0

      THis is a VERY insightful comment. As an educator, I totally agree.

    14. Re:Cheating is laziness... by Evrion · · Score: 1
      Scenario 1: unlikely. I'm a tutor, have been for years, the number of people that have low test grades, but can actually do the stuff I've run into? none. Usually, they understand the material given, but have some gaps in background or something to that effect.

      If that is not the case, there is likely a significant learning disability which should have been noticed by somebody and acommodated for before university.

      Scenario 2: That's why there is a "drop-add deadline". There are plenty of easy courses to choose from.

      Scenario 3: If an employer hires me because I got a great mark in my CS degree (or simply got it), then I can't actually code worth a hill of beans? That's just bad all around. Oh, and I suspect the employer will no longer hire from that school.

      Grades don't mean anything in the real world. All those people who told you that grades are important? they lied. The only thing grades are good for is going on in school. The knowledge you gain, and the piece of paper representing it is what gets you on in real life.

    15. Re:Cheating is laziness... by QuoteMstr · · Score: 1

      The whole point in university is to produce people who can either do further useful research, or who are beneficial to the workplace.

      Sure, but do they need to be put in the same program? Computer science is about theory, not vocational training.

    16. Re:Cheating is laziness... by Anonymous Coward · · Score: 0

      I once had a professor who scaled everyone's marks so that he didn't look bad to the administration. Yes, this happens sometimes but this was the second class I had taken with this particular professor where the same thing had happened before. I know I should have failed but ended up with a C+. It was the same for most of my classmates, not doing well in the class but then getting a final mark clearly higher than they knew was possible based on the marking scheme he had provided the first day.

      What was so frustrating was that the university had this course as a requirement towards graduation, JCL for mainframes. This was not the only antiquated course they required for your undergraduate degree while at the same time offering limited—as in one— course in OO and desktop application programming. Several of my profs were more interested in their "academic projects" than in their students' education.

      Was cheating widespread among students? Yes. Did most of the faculty care? Not really, they were still getting paid to teach the same old subjects they had taught for 15+ years without interruption to their project funding or having to worry about upgrading their own education. The ones cheated here were the students when they went to get jobs after graduation.

      This was all in the early/mid-nineties and by 2000 when enrolment in CS continued to fall the university had to finally overhauled both their curriculum and facility to catch up with the times. I recognize very few of the staff there now with the exception of those I deemed as worth to teach.

      As for my scaling prof, he's also still there but as assistant dean and no longer teaching. Who says cheaters don't prosper.

    17. Re:Cheating is laziness... by Xest · · Score: 1

      "Scenario 1: unlikely. I'm a tutor, have been for years, the number of people that have low test grades, but can actually do the stuff I've run into? none."

      If this is the case, then why as an employer do I consistently run into first class honours graduates incapable of doing the job to which their degree is suited to? Why is it of all the graduates I've had, despite a handful being from Oxford and Cambridge the best employees I've had have been a 3rd class, two 2:2s and a single 2:1 as well as rather amusingly, a guy who did't even go to uni at all (he went straight into IT support, then moved into dev from there)? Keep in mind that I've had enough 1st class candidates to fill every post and have even got some in a couple of posts, so it's not as if there has even been a shortage that has led to this pattern. Surely probability would dictate that whilst you might run into the odd case where a lower grade is better than a higher grade, it's unlikely that not one of the 1st class graduates would be anywhere near as good as even 2:2 students? There are plenty of good 1st class students out there, but it's pretty clear that university grade is a useless indictator of real world ability, which you somewhat recognise yourself later on in your post.

      The 3rd class student in particularly clearly got low grades, but he's the type of guy I could throw a language and a set of frameworks/APIs at and in a short time he'd be able to bang out a well engineered prototype with those tools. In contrast, I've had 1st class students who just sit gazing at the API documentation, they seem to get the documentation, but seem to struggle with where to begin with it, how to use it, how to write code with it.

      Maybe this is a particularly British problem, I'll admit I've not really had any overseas candidates (I say really, because I've had a couple, but they weren't even worth taking to interview stage), but I'd be suprised if that's the case when we're one of the only countries that manages to hold a handful of universities up against the US in the global rankings.

    18. Re:Cheating is laziness... by kangsterizer · · Score: 1

      I know lazy developers who copy paste their own code all around instead of making small short blocks that are reused.

      debugging is as easy at start.. then it becomes bloat, but at this point it's not their problem anymore.

      and those developers suck. especially when you're the one dealing with their code (Already rewrote company products from scratch for this reason. gained 90% size, functionality (since its easier to add), reuseability .... but their code was as debuggable and arguybly as quick otherwise)

      in fact, the code was like 500 000 lines and my code is like 50 000 lines :/

      (yes, it took ages)

    19. Re:Cheating is laziness... by Xest · · Score: 2, Interesting

      No certainly, but what if there isn't a program for them and comp. sci. is the closest there is? I'm not saying they should necessarily get a comp. sci. degree, but that perhaps, a better solution would be to grade students in a range of ways- give them a rating on their communication abilities, their implementation abilities, their knowledge and so on. As I say, I really don't know what the solution is and it's not something that can be solved in a Slashdot thread.

      I suppose really to put what I'm saying another way, does it matter if a cheat slips through the net when there's so many other people the current system does a hopeless job of fairly grading on their real worth anyway? The current system gives an often effectively meaningless metric either way.

    20. Re:Cheating is laziness... by Anonymous Coward · · Score: 0

      instead of third party independent testing organisations who are contracted to create unique material for each test.

      I'm guessing you are referring to the rubbish coders that get churned out of india and the sand nigger countries.

    21. Re:Cheating is laziness... by TheRaven64 · · Score: 1

      Lazy developers do not copy and paste their code. If you find a bug in copied and pasted work, then you have to fix it in hundreds of places. A lazy developer will write the code once, make it sufficiently generic, and then reuse it wherever it's needed. Copy and paste developers are the ones that think effort (measured in lines of code) is useful, they are not lazy developers, who will go through a codebase and spend a day deleting code to make their life easier.

      --
      I am TheRaven on Soylent News
    22. Re:Cheating is laziness... by quanticle · · Score: 1

      Our profs will give you marks if you can write down what you need to do, in some improper syntax but still achieve the 'right idea'. I'm apparently mistaken that learning syntax is important.

      It depends on the context. Sure, if you're supposed to be handing in a working program, having code that doesn't compile is inexcusable. On the other hand, I've had tests where the professor expected you to write (by hand) correct Java without any references to the Java API. I did well on that test because I'd programmed Java before. My classmates, who were not as familiar with the language, almost universally bombed.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    23. Re:Cheating is laziness... by Froggy · · Score: 1

      A non-trivial programming assignment is difficult to write, and a good, robust marking scheme is even harder. At the university where I work (I'm what Americans would call a TA) we give our first years a supervised programming lab every week. It usually takes two or three semesters to get the bugs out of the task specifications, and that's with the lecturer and two to five TAs working together.

      Programming tasks that have never been assigned to students are like software that hasn't been beta-tested: even if the designers and implementors are top-notch, there's still likely to be some unforeseen interaction with the environment and the users.

      If cheating is worse in the US, it's unlikely to have anything to do with who does the grading; detecting cheats is really not that hard. It's more likely to be a combination of, firstly, a perceived disconnect between the task and the student's personal goals, and secondly, the general devaluing of intellectual skills that seems to be endemic in Anglophone culture.

      --
      It is a woman's prerogative to change other people's minds.
    24. Re:Cheating is laziness... by Anonymous Coward · · Score: 0

      they're lazy enough to just copy paste
      different kind of lazy
      bad lazy.

    25. Re:Cheating is laziness... by QuzarDC · · Score: 1

      An interesting reversal to 'cheating is due to teacher's laziness'. At Carnegie Mellon University all the CS courses are original to the school (although reused year to year), The problem is many schools (Stanford included) will copy the same course. This makes it easy for any student to find the page of a course at another school where they didn't take down old material and snag answers from it. One of my professors sent half of the first class lecture on what he considered cheating and what wouldn't be tolerated, including searching on google for help. On the day the first assignment was due, many were snickering at those who spent a day working out the answers (great theoretical ideas in computer sciece) and a list of names was put up on a big projector labelled 'cheaters'. The professor had created a site a few weeks prior with answers to one of the questions and guaranteed it would show up as top google result. He collected IPs, which if you used a school internet connection are easily tracable, even for students. All those students were given no credit and warned against cheating in the future.

    26. Re:Cheating is laziness... by maiden_taiwan · · Score: 1

      If your students were so lazy that they didn't read the assignment & notes carefully, shouldn't they get an A?

    27. Re:Cheating is laziness... by TheRaven64 · · Score: 1

      No, people who make more work for themselves are not lazy, they are stupid. If you can't tell the difference between lazy and stupid, then you might not be in the category that you think you are in.

      --
      I am TheRaven on Soylent News
    28. Re:Cheating is laziness... by RobinEggs · · Score: 1

      I think I blame schools giving grades for effort. It reinforces the idea that putting in a lot of effort is laudable, even if you don't achieve anything.

      Well, I think putting in a lot of effort is laudable. People almost never achieve anything new or impressive without " a lot of effort", not even geniuses. The point in giving hard-working idiots bad grades is to teach them that effort does not equal competence and prevent them from blocking competent people from good opportunities, not to convince them that effort doesn't matter compared with results.

      You want people who suck at something but work hard to go try a subject in which their hard work will achieve results, not convince them that only results matter.

    29. Re:Cheating is laziness... by Anonymous Coward · · Score: 0

      You be one dem forn'rs from over the big blu'ater ov'er yon'der aintcha? In da USA we hatn't no need fer 'adjust' or 'know the course material well enough'. Dats fer ya dam'commies aut'est!

    30. Re:Cheating is laziness... by Fallingcow · · Score: 1

      Yup, good programmers are lazy.

      My first language was Perl :)

      "We will encourage you to develop the three great virtues of a programmer: laziness, impatience, and hubris." -- Larry Wall, Programming Perl

  12. On The Other Hand by sycodon · · Score: 5, Insightful

    When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

    Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go. Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

    Besides, how many ways can you write a QuickSort?

    --
    When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    1. Re:On The Other Hand by dkh2 · · Score: 5, Insightful

      But, to be successful over the long haul you have to be capable of producing the report from scratch in the first place. Cheating your way through school does not promote that skill set. Sure, you know how to copy and paste the right code but... can you tell why it's the right code in the first place? Can you optimize a/o improve the copied code?

      So, I agree on your point re: reuseable code in the workplace but, you still need to do the work up front.

      --
      My office has been taken over by iPod people.
    2. Re:On The Other Hand by edittard · · Score: 5, Insightful

      How is a person able to "add some mods" if he's spent four years cribbing everything and never coded anything himself?

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
    3. Re:On The Other Hand by Anonymous Coward · · Score: 0

      Besides, how many ways can you write a QuickSort?

      At least two.
      There is a nice trick that helps you save memory. You don't have to use it though, but then you use a bit more memory.

    4. Re:On The Other Hand by dintech · · Score: 4, Funny

      In university my friend and I worked together on the same assignment. We were in different tutor groups so we believed it wouldn't be detectable. Indeed it wasn't but he got 80/100 and I got 40/100! Mother f$@%^&. It's not like I could complain about it but my friend thoroughly enjoyed it.

    5. Re:On The Other Hand by Ngarrang · · Score: 5, Interesting

      How is a person able to "add some mods" if he's spent four years cribbing everything and never coded anything himself?

      You've never worked with COBOL in a mainframe environment, have you? At Cincinnati Bell Information Systems, there are billions of lines of COBOL, APL, PL1, Assembler, Forth, FORTRAN and God knows what else. You didn't write any NEW apps from scratch. You took what was written, modified to do "the new thing" and you were done.

      And people were paid big money back in the 1990's for this. A buddy of mine still codes in Assembler for 5/3rd on their mainframe, because the speed of the code is so much faster, by several orders of magnitude. He occasionally gets to write a new program, but rarely. The majority of his job is modifying 40 years of accumulated code.

      --
      Bearded Dragon
    6. Re:On The Other Hand by TheRaven64 · · Score: 5, Interesting

      Depends on the cheating. If, for example, you decide to cheat by taking some code from outside and incorporating it in your product, I doubt that your manager will be happy when your company is later sued for copyright infringement.

      --
      I am TheRaven on Soylent News
    7. Re:On The Other Hand by SirGarlon · · Score: 4, Insightful

      When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

      But that's not cheating. Academic cheating is a breach of ethics: you're told your work must be original but you re-use some else's anyway, without permission from your instructor.

      The professional analogue of academic cheating is copyright and patent infringement: using third-party code without consulting your supervisor, the legal department, and so on. That is definitely not encouraged in any corporate setting I know of; the threat of an IP lawsuit is so great that it could drive a small or mid-sized company out of business.

      Sharing code between two projects at the same company may or may not be allowed depending on the business use of the respective code bases. For example, the company may not want the latest fancy libraries from R&D being imported into their internal business apps. Again, if you went and did that without approval, I doubt your boss would be happy.

      --
      [Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
    8. Re:On The Other Hand by Giant+Electronic+Bra · · Score: 2, Insightful

      Yeah, as a few others have said, I agree with you and I was going to post something similar. At least up to a point. Most software development projects are highly cooperative affairs and its rarely a matter of success hinging on one's brilliance as a coder. Still, you have to be able to contribute and at least some members of the team need good design skills of various types.

      The reality is that successful projects mostly succeed because someone in charge is good at utilizing the strengths of the other team members. Even a technically weak team can do quite well on many classes of projects if well led. CS courses have gotten better at teaching team building but still overemphasize coding. One wonders if some of the 'cheaters' might not actually be on the right track...

      --
      "Malo periculosam, libertatem quam quietam servitutem." -- Jefferson
    9. Re:On The Other Hand by travdaddy · · Score: 1, Insightful

      To be really successful over the long haul you have to be capable of both producing the report from scratch AND be capable of copying it from somewhere else while presenting it as your own to save valuable time. So, really the correct way to go through CS in school is to be able to do it but cheat anyway, and since you know how to do it then you should be able to change the copied code enough to not get caught. If that takes longer than actually creating the code from scratch, and it will be pretty close if you're ensuring not to get caught, then go ahead and create it from scratch.

      ...OK, OK, maybe it's simpler to just not cheat.

      --
      Adidas To Bring Back Sneakernet
    10. Re:On The Other Hand by TheNinjaroach · · Score: 3, Insightful

      Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go.

      Dear god, anything but a copy and paste programmer. We had one here and the results and the results are devastating. Giant swaths of repetitive code pasted in large blocks, all mangled (I mean 'modified') in their own way. It's obvious the guy had no clue what he was doing and it's even harder to understand what his code is doing because so much of it is completely unnecessary.

      Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

      Sure, but building a reusable code base is something I would hardly consider cheating. Building proper and efficient classes and then leveraging them to handle 80% of your work takes experience that you cannot obtain by cheating.

      --
      I went to eat some animal crackers and the box said, "Do not eat if seal is broken." I opened the box and sure enough..
    11. Re:On The Other Hand by zill · · Score: 2, Insightful

      Didn't catch the subtle hint from the TA, did ya?

    12. Re:On The Other Hand by hesaigo999ca · · Score: 1

      I agree, but the jist of it is to under stress be able to think for yourself, and come up with the answer because you know it, not because you looked at someone else's paper, however, I do think school and the real world are not the same. They should marry the 2 on a test, but separate the questions based on how you answered them. If you got help, using a computer and google or whatever, that question is then added to a subset for marking that is based on how you used that info rather then knowing it, and you will be judges also on how well it performs after... where as the questions you knew the answer to... are kep in that subset and marked accordingly, so 50 out of 100 questions were answered by computer and 50 by knowledge, your test score now is 2, 50/50 and 50/50...so you end up splitting the test score then taking the average between both scores to get the final score. The only critical thing is to be able to know when someone had help for an answer, it would be tough to know, but maybe facial recognition, and monitoring like they do or even an actual eTest that when you needed help (internet) you would then have to click on a link, which would set a flag for that question before moving to use the browser...?

      It could show promise.

    13. Re:On The Other Hand by Walter+White · · Score: 1

      To be really successful over the long haul you have to be capable of ... copying it from somewhere else while presenting it as your own ...

      That's actually a pretty good analogy of cheating in the corporate world. It can work well if you don't get caught and can cost dearly if you do. I've always found it more beneficial to attribute contributions to the rightful producer which gains their long term support and makes me look like a team player.

    14. Re:On The Other Hand by smooth+wombat · · Score: 1

      You're both wrong. To be really successful, you only need to fit into one of these categories.

      --
      We will bankrupt ourselves in the vain search for absolute security. -- Dwight D. Eisenhower
    15. Re:On The Other Hand by wisnoskij · · Score: 1

      Well I am sure some people cheat not because they cannot do the work but because they would rather get 90-100% instead of 70-80%.

      --
      Troll is not a replacement for I disagree.
    16. Re:On The Other Hand by Anonymous Coward · · Score: 0

      What do you suggest? That we teach cheating instead of programming?

      Your reply is stupid, not insightful, and you know it.

    17. Re:On The Other Hand by TrebleMaker · · Score: 2, Funny

      Dear god, anything but a copy and paste programmer. We had one here and the results and the results are devastating

      So, did they let you keep working there, anyway?

      --
      In Soviet Russia a beowulf cluster of these things imagines you welcoming your new, neural-network overlords.
    18. Re:On The Other Hand by Anonymous Coward · · Score: 0

      The professional analogue of academic cheating is copyright and patent infringement: using third-party code without consulting your supervisor, the legal department, and so on.

      An example would be the occasional GPL violations reported here.

    19. Re:On The Other Hand by ZeldorBlat · · Score: 3, Interesting

      I was lucky enough to take a class in college where the prof understood and embraced this idea. After all, he was teaching us to be engineers rather than coders. On the first day of class he told us in no uncertain terms that, if we found some code that would be useful in our projects, we were free to use it as-is provided we clearly noted where it came from.

      He even told us a story where, in a previous year, he (inadvertantly) gave out an assignment that was almost identical to an assignment given at another university. Many students took posted solutions from that other class, cited the source, and turned it in. Given the prof's policy, he had no choice but to accept the programs as valid and correct. As he was quick to point out, it puts a much larger burden on him to come up with more creative assignments -- which isn't a bad thing.

    20. Re:On The Other Hand by silent_artichoke · · Score: 2, Funny

      We had one here and the results and the results are devastating.

      Good example! :)

    21. Re:On The Other Hand by Anonymous Coward · · Score: 1, Insightful

      What's all that got to do with the post your replying to?

    22. Re:On The Other Hand by sycodon · · Score: 1

      You are right. I should have said, "Cheating is wrong".

      Now that would have sparked a nice discussion and brought in many view points. It may have even prevented some idiot AC from posting.

      --
      When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
    23. Re:On The Other Hand by Anonymous Coward · · Score: 0

      You worked at CBIS? I'm sorry!

      A buddy of mine still codes in Assembler for 5/3rd on their mainframe, because the speed of the code is so much faster, by several orders of magnitude.

      Well, tell him to get ready to retire soon. Fifth-third needs to implode like yesterday.

    24. Re:On The Other Hand by Anonymous Coward · · Score: 0

      That's exactly why the person who helped other cheat would be most successful.

    25. Re:On The Other Hand by SoothingMist · · Score: 1

      In the corporate environment, if one acknowledges the source, that is not cheating nor stealing. There are indeed no rewards for reinventing the wheel. In education, however, one has to learn fundamental skills and acquire rudimentary experience, while gaining a broad education. Thus, one does have to "reinvent the wheel" to demonstrate that one understands "wheels". As an adjunct teaching undergraduate and graduate students, it is amazing to me how few of them want to learn, much less think. My personal estimate is that only 25% have a worthy performance ethic. I am merciless with cheaters, giving zeros in cases I can prove. As a result, my overall grade average is very low. Another factor that leads to this low average is the increasing push to gather "students" from further and further down the left hand side of the bell curve (as defined by performance ethic).

    26. Re:On The Other Hand by Kizeh · · Score: 4, Interesting

      Besides, how many ways can you write a QuickSort?

      When I was grading programming homework a decade or two ago (theoretical physics, oddly enough) it was obvious when people shared their code. The use of spaces, indentation, variable names, curly braces etc. really made each assignment unique, and the people who resorted in copying someone's code almost never bothered to make any changes at all. My solution was to give the first assignment turned in whatever grade it deserved, and each subsequent copy a 0, and that seemed to make short work of the practice. At my current university the response would be significantly harsher.

    27. Re:On The Other Hand by Anonymous Coward · · Score: 0

      In university my friend and I worked together on the same assignment. We were in different tutor groups so we believed it wouldn't be detectable. Indeed it wasn't but he got 80/100 and I got 40/100! Mother f$@%^&. It's not like I could complain about it but my friend thoroughly enjoyed it.

      Did that once for a report in a class. Everyone had the same problem to solve so it shouldn't have been any surprise that a lot of students worked together and the calculations could only be done so many ways. Still I managed to get a higher score on it than everyone else I worked with because while we all had the same math and results, my written explanations of what was going on were much better.

    28. Re:On The Other Hand by billybacs · · Score: 1

      Professors like that are the best. My professor said the same thing; I had him both for a C programming class and for an engineering lecture. We could collaborate or even copy one another's homework, as the tests would actually judge our knowledge. For programming, we could bring a one-page "cheat sheet" with anything we wanted, including full programs.

      His point was that obviously we could have all the helpful tips we wanted, or even full programs...but if we didn't understand the appropriate concepts, sure we'd get the grades, but as posted above, we'd have a degree that we paid over $100k for and had no useful skills gleaned from it. On the other hand, I had a professor that said we could collaborate on DB design work as long as we noted that we worked on it with another group. We then were accused of cheating, and it took a few weeks to sort everything out.

    29. Re:On The Other Hand by TheRaven64 · · Score: 1

      One of my professors explained that he'd do this to a degree based on the student. He taught theory stuff, so most of his exam questions were of the form 'Prove that...' If you missed some steps in a proof, it was either because you didn't know how to do them, or because you thought that they were so obvious that they didn't need stating. He'd mark you based on which of these he thought was true, based on your other work and your contributions in lectures.

      --
      I am TheRaven on Soylent News
    30. Re:On The Other Hand by edittard · · Score: 2, Funny

      A perfect rebuttal. Or it would be if was in reply to a post saying, "You need to write programs yourself in college, from scratch for this sole reason: that it's exactly what programmers do at work". Did you cheat on your English comprehension assignments, perchance?

      --
      At the bottom of the /. main page it says 'Yesterday's News'. Well they got that right.
    31. Re:On The Other Hand by TheRaven64 · · Score: 1

      Better, teach code reuse. Provide some libraries that the students are allowed to use in the coursework. Some of the code in them will be irrelevant, some will have bugs, and some will solve some of the coursework problems. A passing grade will implement everything, a good grade will call the bits of the library when they work and comment saying why other bits were not used (i.e. because they contained bugs) and a top grade will contain a patch to fix the library.

      --
      I am TheRaven on Soylent News
    32. Re:On The Other Hand by ParanoiaBOTS · · Score: 1

      When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

      Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go. Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

      Besides, how many ways can you write a QuickSort?

      While I agree with you on the corporate environment, I think we miss a fundamental point here. People who understand these concepts, and have a basic handle on the language they probably should know by now have no need to cheat. If you understand what a quicksort is and how it works can replicate it fairly easily. People who don't understand it are going to be the ones cheating by copying off a site somewhere. I saw this a lot while I was in school getting my degree, and the people who cheated were the ones who eventually dropped out, or got to a point where they just *couldn't* cheat their way through anymore.

    33. Re:On The Other Hand by cerberusss · · Score: 1

      Dear god, anything but a copy and paste programmer. We had one here and the results and the results are devastating

      So, did they let you keep working there, anyway?

      Dear god, anything but a copy and paste programmer. We had one here and the results and the results are devastating

      So, did they let you keep working there, anyway?

      --
      8 of 13 people found this answer helpful. Did you?
    34. Re:On The Other Hand by KDR_11k · · Score: 1

      You decide on how to handle cheaters? Over here universities put it in their rules that cheating means an instant failure, possibly with further repercussions.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
    35. Re:On The Other Hand by pnewhook · · Score: 1

      And what possible difference would that make in the general case? If people spent more time actually fixing bugs and paying attention to usability issues than trying to recode sections that are working perfectly because 'the current solution is not elegant enough', a lot more software would be a lot less frustrating to use.

      --
      Tesla was a genius. Edison however was a overrated hack who liked to torture puppies.
    36. Re:On The Other Hand by petes_PoV · · Score: 1
      While I agree with your point from an abstract, moral standpoint never forget that in programming nothing beats speed of production. Even bug-free code is secondary to getting it out quickly. Now, a good programmer should be able to manage both (and even, possibly, make something that's not too bloated, or even properly documented - but I'm dreaming here) but given the choice between keeping a speedy coder and a low-mistake count programmer ISTM most managers will go for quantity over quality.

      (Of course, they don't teach you that on CS courses)

      --
      politicians are like babies' nappies: they should both be changed regularly and for the same reasons
    37. Re:On The Other Hand by Cylix · · Score: 1

      There is no cheating in the corporate world.

      The code is owned by the company and should be available internally. This allows for both an internal audit and re-use of good code.

      This was really beneficial because it allows me to improve upon the code of others or introduce completely new works.

      The down side is if you get lazy... someone might actually notice ;)

      --
      "You should always go to other people's funerals; otherwise, they won't come to yours." -- Yogi Berra
    38. Re:On The Other Hand by steltho · · Score: 5, Interesting

      In university my friend and I worked together on the same assignment. We were in different tutor groups so we believed it wouldn't be detectable. Indeed it wasn't but he got 80/100 and I got 40/100!

      Actually, it sounds to me like you were caught. Giving different grades to people who "worked together" is a way for the teacher to punish people for cheating, if he or she doesn't want to go through all the bureaucracy involved with making a formal accusation.

    39. Re:On The Other Hand by Lumpy · · Score: 1

      And people like you are 100% useless when debugging.

      If you dont know how to write the function you cant debug it. it's why I always eat the new CS grads lunch when they end up stuck. Because they use libraries and shortcuts everywhere.

      Using Those are fine, but learn the damn skills. I cant believe how many CS grads cant code a network socket connection to save their own life.

      --
      Do not look at laser with remaining good eye.
    40. Re:On The Other Hand by Anonymous Coward · · Score: 0

      lick my nuts

    41. Re:On The Other Hand by Anonymous Coward · · Score: 1, Insightful

      One more chime here for you not being able to read. Do you think you're friend could do this if he had never written a program himself in school or on his own?

    42. Re:On The Other Hand by Lumpy · · Score: 2, Insightful

      You've never worked with COBOL in a mainframe environment, have you? At Cincinnati Bell Information Systems, there are billions of lines of COBOL, APL, PL1, Assembler, Forth, FORTRAN and God knows what else. You didn't write any NEW apps from scratch. You took what was written, modified to do "the new thing" and you were done.

      and this lazy approach is why Y2K scared the shit out of all the banking companies. They have been reusing old broken code everywhere.

      Why? because the managers were too stupid to allow code repository maintenance. Modules need to be reviewed regularly and resources spent to update them. Most companies dont... that code from 1972? USE IT!

      --
      Do not look at laser with remaining good eye.
    43. Re:On The Other Hand by clone53421 · · Score: 1

      Depends on whether you get caught. If, for example, you decide to cheat by taking some code from outside and incorporating it in your product, I doubt that your manager will be happy

      FTFY.

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    44. Re:On The Other Hand by gnapster · · Score: 1

      So long as one is not frustrated by overuse of system resources.

    45. Re:On The Other Hand by batquux · · Score: 1

      A buddy of mine still codes in Assembler for 5/3rd on their mainframe, because the speed of the code is so much faster, by several orders of magnitude. He occasionally gets to write a new program, but rarely. The majority of his job is modifying 40 years of accumulated code.

      And suddenly, my job doesn't seem so bad...

    46. Re:On The Other Hand by Ngarrang · · Score: 2, Insightful

      What you call lazy, the company calls good business. They want to pay for all-new code.

      So, learning the mindset of a "code modder" instead of "code originator" is a survival skill. This is about putting food on the table and shoes on the kids. You do what the companies are willing to pay to be done.

      You and I, we know this is the wrong way to do it for the long run. Businesses of that size have done their math and simply think it is cheaper to mod the existing code, than write all new code. And since it is their money, that is their choice to make.

      Don't like be a code-modder, find a job somewhere else.

      Honestly, I think the wrong moral battle is being fought here. The world needs both kinds of programmers.

      --
      Bearded Dragon
    47. Re:On The Other Hand by cnoocy · · Score: 1

      The rules change as you get into different environments, but you still have to follow them. In the "real world" all of the tests are open-book, but they are often timed, and 90% is usually a failing grade.

      --
      This sig is not the Zahir. Lucky for you.
    48. Re:On The Other Hand by Skreems · · Score: 1

      A lot of the time bugs are caused by enough new features being tacked on to the system that the model has changed. Which means that the old code that's "working perfectly" happens to no longer describe half the cases you're handling, hence the layers of hacks on top of it. Yeah, you lose the old "working" core when you refactor, but you also lose all the hacks, and hopefully (if you're doing it right) end up with a new core that can describe a more complete set of use cases in a consistent manner, which leads to fewer bugs and less maintenance cost overall.

      --
      Slashdot needs a "-1, Wrong" moderation option.
      The Urban Hippie
    49. Re:On The Other Hand by Idarubicin · · Score: 1

      When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

      Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go. Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

      Ah, but when you hand it to your boss, you don't tell him that you wrote the whole thing from scratch, do you? You say "Here's the updated code. I started with Bill's TPS report, and then added the three new features we were looking for. I saved the company two weeks and several thousand dollars by reusing the code." If you don't do that, do you think that Bill is going to want to help you in the future?

      Taking credit for someone else's work is slimy, whether you're in school or not.

      In any event, the goals are different in the two cases. The twin purposes of school assignments are to teach concepts and techniques (and build experience in using them) and to test whether or not each student has mastered the concepts taught in the course. The purpose of writing code in a company is to make money.

      Reusing Bill's code achieves the goal in the latter environment; it does nothing in the former.

      --
      ~Idarubicin
    50. Re:On The Other Hand by JWW · · Score: 1

      Actually they do. CS courses have somewhat arbitrary deadlines (due dates) for assignments. Failing to meet them (lacking speed) affects grades profoundly.

    51. Re:On The Other Hand by JWW · · Score: 1

      I'm not so sure that the expanded rigor you espouse would have cost less then the Y2K triage that was actually done....

    52. Re:On The Other Hand by Anonymous Coward · · Score: 1, Insightful

      This still requires understanding what the code is doing rather than finding a student who completed the assignment the year before.

    53. Re:On The Other Hand by Idarubicin · · Score: 3, Interesting

      My solution was to give the first assignment turned in whatever grade it deserved, and each subsequent copy a 0, and that seemed to make short work of the practice. At my current university the response would be significantly harsher.

      My father once taught computer science to high school students. His approach was to grade the assignment, and divide the points equally among all the students who handed in substantially identical work. (One good assignment, total grade 90%. Handed in by three people -- everyone gets 30%.) The problem didn't usually recur.

      --
      ~Idarubicin
    54. Re:On The Other Hand by Anonymous Coward · · Score: 0

      I worked at CBIS/Convergys and enjoyed it. With the exception of the looming spectre of layoffs every 3 years or so, it was a good place to work.

    55. Re:On The Other Hand by mcvos · · Score: 1

      At my university, they used a program that analysed the parse tree, rather than the source code. Even changing spaces and variable names wouldn't distinguish it sufficiently from a copy. You need to really change the structure of your code, and then you might as well just write the whole thing yourself.

    56. Re:On The Other Hand by Anonymous Coward · · Score: 0

      I think you really don't get the point. Modifying an existing app is actually way harder than designing a new one. Thus it requires more skill. So unskilled coder fail at that. Simple, isn't it ?

    57. Re:On The Other Hand by Zalbik · · Score: 1

      When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

      Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go. Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

      What a great idea! Too bad there isn't some way in most languages to re-use most of the functionality of a...what should I call it?...widget? component?... oh I know, an object, but "override" those pieces that you need customized. That way when the base component changes, you wouldn't need to re-implement that change for every developer who borrowed some code and tweaked it.

      That would be so useful! And it would prevent the hundreds of duplicated "almost the same" pieces of code out there that all need to be rewritten when the company decides to (for example) upgrade their reporting engine. And when a bug was found in the core component, everyone would get the fix rather than each developer hacking their own fix into their "slightly tweaked" version.

      Wow, this is such a great idea, I should patent it!

      I wonder why none of the major languages out there ever implemented it.
      [/sarcasm]

      Seriously, my boss would consider me an idiot if I copied/pasted code across every development project like an drunken half-mad clippy. It's a huge pain trying to cleanup an environment where copy/paste is considered the height of re-usability.

    58. Re:On The Other Hand by JWW · · Score: 1

      Often, professors are reluctant to drop the big instatutional hammer on cheating right away. So yes, discretion has to be used when you have to figure out who to send up the river and who to slap on the wrist.

      I personally would be very reluctant to bring down the full wrath of the University unless the cheating was very blatant and repeated.

    59. Re:On The Other Hand by MobyDisk · · Score: 1

      I'm glad you put "cheating" in quotes because delegating is not cheating. And using lower-level building blocks to create something new is not cheating.

      You can't use those building blocks without knowing how they interconnect. You can't delegate unless you know who to delegate to, can tell them what must be done, and can verify the resulting work. Although it has been a looong time since I wrote my own quicksort. Or sort of any kind. But I could do it. And I ask those things as interview questions.

    60. Re:On The Other Hand by melted+keyboard · · Score: 1

      Just to give some perspective on a harsh university response to cheating, the policy at my alma mater was as follows:
      First offense in your academic career: -100% on the assignment you cheated on. (e.g. if an assignment was worth 5% of your final grade, in addition to not getting that 5%, you would lose an additional 5% making the maximum grade possible in that course a 90%).
      Second offense in your academic career: expulsion.

    61. Re:On The Other Hand by Taser · · Score: 3, Interesting

      I have two anecdotes from my years of teaching low-level courses in CS:

      1) An introductory Java course had about 5 TAs that took care of programming labs, helped grade assignments and tests. One TA received an assignment for a student, but comments in the code mentioned that the author of the code was another student who was under a different TA. Both TAs spoke to these student separately, and it was pretty simple to determine which one had the student that was copying code from the other. When *that* student was confronted with the damning evidence, he retorted "What do you want me to do, change the variable names?"

      2) I received assignments from my students, both electronically and in printed form. When going through the code, it was obvious that three students had colluded and made token changes to the code; functions were in the same order on each of these printouts, to the point that laying them out on a table side by side and flipping the pages one by one for all three printouts had the exact same spacing from the left margin, the same spacing between functions, indentation, etc. Since the program worked as intended, they got a score of 100. . . split into three grades of 33 each.

    62. Re:On The Other Hand by Anonymous Coward · · Score: 0

      But, to be successful over the long haul you have to be capable of producing the report from scratch in the first place. Cheating your way through school does not promote that skill set. Sure, you know how to copy and paste the right code but... can you tell why it's the right code in the first place? Can you optimize a/o improve the copied code?

      So, I agree on your point re: reuseable code in the workplace but, you still need to do the work up front.

    63. Re:On The Other Hand by Bill,+Shooter+of+Bul · · Score: 1

      That's why I think the solution to the ethical problem of cheating in the academic world is to make it impossible. Take code samples from open source programs and ask for new features to be added to the existing code base, or maybe just a re-factoring of an existing function. It would be impossible to cheat other than to copy off of a fellow student. Detecting cheating patterns could be as simple as md5 checksum. Plus, if anyone does anything perfectly that code can be contributed and we all benefit.

      --
      Well.. maybe. Or Maybe not. But Definitely not sort of.
    64. Re:On The Other Hand by MachDelta · · Score: 1

      My CS prof is the same way. He keeps telling us that "In the real world your boss is not going to slap you on the wrist for looking up a solution - the point is to know where to find it and how to use it properly". I literally just came from my intro CS midterm exam, and it was open-book, open-laptop, open-whatever we wanted. Mind you, the questions were more about comprehension ("Given the following code, where does the maze-robot wind up?") than straight notes reference. Though there were a few "convert to/from binary/hex/octal" free marks too.

      Now the problem in my university is that we have a VERY strict anti-cheating policy and if the profs suspect plagiarism they are "obligated" to report it to the anti-cheating board. A board filled with Arts profs who don't understand collaboration in programing and will hang your ass out to dry before you can say "oh snap". So while we are encouraged to use code from other sources as "reference" (read: disguise the damn thing), we're not officially supposed to copy anything. But that's a clash between CS and general academics. Oh well. At least the prof is on our side. He said the only time he's ever reported someone to the board was when they copied one of the profs own programs, renamed it and handed the whole thing in as their own work. Smooth.

    65. Re:On The Other Hand by Anonymous Coward · · Score: 0

      I've had professors insist on certain naming, indentation, and brace conventions. That kills a lot of your listed fingerprints, but probably still leaves enough that most assignments should be unique.

    66. Re:On The Other Hand by DutchUncle · · Score: 1

      Look at it the other way - "That code that's been working and trusted for years - USE IT instead of your new untried untested code that we have to review and certify and write completely new tests for and document and and and...."

      Do you write a new file system for every application, or do you rely on the OS to be stable and trustworthy? Once things become "infrastructure", their stability is a *positive*. Of course, like the railroad track width being related to Roman chariot wheels, sometimes the consistency becomes stupid; but compatibility is a good thing too.

      Y2K happened because once upon a time memory and storage were *expensive*. One 6250 BPI tape gave you 170MB. Today you see 2GB flash cards as impulse buys near the cash register at CVS! We would have killed for that much spare storage that small.

    67. Re:On The Other Hand by Bob-taro · · Score: 1

      and the people who resorted in copying someone's code almost never bothered to make any changes at all.

      Based on my experience as a T.A. for a programming course, it's probably not that they didn't bother to make any changes, but that they were afraid to make any. If they understood the general syntax, they probably would have made a stab at doing their own work.

      --
      Prov 9:8 Do not rebuke mockers or they will hate you; rebuke the wise and they will love you.
    68. Re:On The Other Hand by JWSmythe · · Score: 1

          Nope, to be REALLY successful in the corporate world, you need to know how to delegate your work in such a fashion that it's completed in a fraction of the time of your peers, and is accurate.

          Once you're management, you'll get the praise for successes, and can pass blame on any failures down to your subordinates.

          I've known many managers who have no clue how to do their required tasks, but they do know how to tell someone else how to do it. It becomes painfully apparent when a department is downsized, and the manager is left holding tasks that they have no clue on how to do.

          At one company, my manager left suddenly. I told the boss just to direct anything to me. Nothing in speed or quality changed, so the boss asked me why. I responded, "Because I was already doing all the work. He didn't know how to do any of it."

          I don't really believe in that management style (delegate everything), but it happens so often, I'm surprised most operations manage to continue working. At very least, they could trim off quite a bit of their management staff, and things would continue working, and decrease their operational expenses.

      --
      Serious? Seriousness is well above my pay grade.
    69. Re:On The Other Hand by dintech · · Score: 1

      We had two different tutors and the paper was hand written. I was trying to imply that one guy just marked it more harshly rather than two guys getting to gether and solving the riddle. You could be right though.

    70. Re:On The Other Hand by shentino · · Score: 1

      You mean if.

      Microsoft has been getting burned a lot lately by GPL violations. Now, if they're actually getting caught these days, how often have they already gotten away with it?

    71. Re:On The Other Hand by tazzles · · Score: 1

      Besides, how many ways can you write a QuickSort?

      Well, it's easy to make a hash of it.

    72. Re:On The Other Hand by MaximumFrost · · Score: 1

      Mod this guy up, that's brilliant, and I hope some CS professor out there uses this method.

    73. Re:On The Other Hand by lwriemen · · Score: 1

      To be successful in the long haul, you just have to be able to get by long enough to get on the management track, because the coding portion of the business will eventually go to some low-cost site.

    74. Re:On The Other Hand by VGPowerlord · · Score: 1

      When I was grading programming homework a decade or two ago (theoretical physics, oddly enough) it was obvious when people shared their code. The use of spaces, indentation, variable names, curly braces etc. really made each assignment unique, and the people who resorted in copying someone's code almost never bothered to make any changes at all. My solution was to give the first assignment turned in whatever grade it deserved, and each subsequent copy a 0, and that seemed to make short work of the practice. At my current university the response would be significantly harsher.

      In college I've had programming instructors who insisted that things had to appear in a specific order.

      For instance, in a class meant to teach OO concepts using Java, you had to have the code in the following order.
      (If you're a C# person, static final is identical to static const, while final may is identical to readonly or const depending on whether a value is specified inline or not.)

      package statement
      import statements
       
      class {
       
          public static final variables (alphabetically ordered)
          protected static final variables (alphabetically ordered)
          private static final variables (alphabetically ordered)
          public static variables (alphabetically ordered)
          protected static variables (alphabetically ordered)
          private static variables (alphabetically ordered)
          public final variables (alphabetically ordered)
          protected final variables (alphabetically ordered)
          private final variables (alphabetically ordered)
          public variables (alphabetically ordered)
          protected variables (alphabetically ordered)
          private variables (alphabetically ordered)
       
          public static methods (alphabetically ordered)
          protected static methods (alphabetically ordered)
          private static methods (alphabetically ordered)
       
          constructors (ordered by number of arguments, then variable names alphabetically)
          getters/setters (ordered by field name)
       
          public methods (alphabetically ordered)
          protected methods (alphabetically ordered)
          private methods (alphabetically ordered)
      }

      Variables were expected to be in alphabetical order.
      Constant names had to be in uppercase, with _ between word (IN_THIS_FORMAT).
      Variable and method names had to be in Camel Case with a lower-case first letter (inThisFormat).
      Indents had to be two spaces per indent-level.
      I don't remember her exact rules for comments, though.

      The catch was, this particular class also expected you to come up with your own application idea that used specific programming concepts, including writing a business justification for it. So, it'd be pretty obvious if someone cheated, as the instructor didn't give any ideas in the actual assignment instructions.

      (TL;DR)
      The point of all this is that if the rules are strict enough, and the program is simple enough, there will eventually be overlap, even if unintended.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    75. Re:On The Other Hand by IndustrialComplex · · Score: 2, Funny

      My father once taught computer science to high school students. His approach was to grade the assignment, and divide the points equally among all the students who handed in substantially identical work. (One good assignment, total grade 90%. Handed in by three people -- everyone gets 30%.) The problem didn't usually recur.

      Slight permutations of the assignment also provide interesting results, as each student hands in identical answers to different questions.

      My friend had an interesting tale when a student came up to him (He is an English teacher) and complained that she got a 0% (everything wrong) even though her friend had the exact same answers.

      His response:
      Did she have the exact same questions?

      She had copied her friends answers verbatim without checking that they had the same exam. It was multiple choice, so the beauty was that she scored even lower than if she had just picked all off column 'B'.

      --
      Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
    76. Re:On The Other Hand by flabordec · · Score: 1

      We had this temperature measuring application which got a new measurement every couple seconds, we had to sort the temperatures every time a new measurement was taken so I quickly googled a QuickSort implementation

      Things worked great! All the CS graduates who had actually studied were really red faced when my quick sort was so much better than their solutions "but it can be sorted with a single for loop", they said. Don't they know QuickSort is the fastest?? HA!

      Of course some time later when we started measuring more stuff and sorting it we had to buy faster hardware, but it had nothing to do with my algorithm, its just that more measurements require more expensive hardware

      --
      "I see undead people" Warcraft III - Necromancer
    77. Re:On The Other Hand by Anonymous Coward · · Score: 0

      Big deal. I turned in completed self-authored code for Data Structures homework.

      The professor made a point to stop me after class and thank me for 'how good my code works and looks.'

      I asked him why he flunked me on the assignment even though my code passed all the required tests.

      "Oh, I don't the grade homework, my TAs do."

      Apparently students aren't the only ones having others do their work and taking the credit in the CS program.

    78. Re:On The Other Hand by leuk_he · · Score: 2, Insightful

      This isn't about code only. THis is about all knowledge. At school you learn to protect your work. In an office you will have to learn to reverse a lot of that. If you do not share your knowlege you will be doing the same trick still in 20 years. Ever heard about problems in a organisation because of "lack of communication?". Could this be that all those people who were in shigher education for many years never learned to communicate, but only learned to protect their own work. why do you think all kind of towers/islands exist in your coorperation? because people want to protect their work.

      If you want to extend this, look at the direction copyright is going into. This is because some industies are mover involved to protect their won work, even enough to sue their own customers.

      On the other hand look at the success of wiki's where it is all bout sharing.

    79. Re:On The Other Hand by Myopic · · Score: 1

      Yeah, that's a good point, but everyone here on Slashdot needs to be careful not to dismiss academic standards just because they are different than corporate standards. There are different rules for different situations.

      Yes, in industry we are paid to solve the problem as cheaply (quickly) as possible, whereas in college we are expected to solve the problem ourself, or withing whatever constraints the professor applies.

      College isn't about teaching you how to work in industry, it's about making you educated, and hopefully a good education will result in a person who can work in industry, and who can also function in other roles (public life, family life, back in academia, in humanitarian situations, whatever).

    80. Re:On The Other Hand by TreyGeek · · Score: 1

      What's worse is when student #2 makes no modifications to student #1's work.... including changing the name at the top of the code. Student #2 hand wrote their name at the top of the printout though.

    81. Re:On The Other Hand by ottothecow · · Score: 1
      Hate it when this happens. I remember I had class during my first year and the pile of papers was divided between the teacher and the TA for grading. It worked out that every other paper of mine was graded by the professor...this would be ok except the TA and professor were polar opposites. I would get comments on a paper, try to follow them in the next paper only to have them graded by the other person who would mark me down and tell me to do the opposite. It took me until the end of the quarter to figure out what was going on...I ended up with a different professor for the next quarter and the grading was consistent so I couldn't really take advantage of the disparity.

      I instead prefer if grading is kept tied to the same person...either by having one TA stick with a group of people for the entire course (and then correct for any systematic score gaps when assigning final grades) or have each TA grade a single part of each persons work (works for short answer/multiple choice...not so much for papers or long/single prompt exams)

      --
      Bottles.
    82. Re:On The Other Hand by Anonymous Coward · · Score: 0

      Yeah, I'm from Cincy and worked at CBIS - you forgot all the *NIX code also.. Are you talking about Brad at 5/3? He did assembler. I graduated with him in the 90s and was my friend also.

    83. Re:On The Other Hand by serialband · · Score: 1

      Besides, how many ways can you write a QuickSort?

      When I was grading programming homework a decade or two ago (theoretical physics, oddly enough) it was obvious when people shared their code. The use of spaces, indentation, variable names, curly braces etc. really made each assignment unique, and the people who resorted in copying someone's code almost never bothered to make any changes at all. My solution was to give the first assignment turned in whatever grade it deserved, and each subsequent copy a 0, and that seemed to make short work of the practice. At my current university the response would be significantly harsher.

      I second that. You'd be amazed at how many different styles the code will look. Duplicates can only implicate them as likely cheaters. I graded math assigments too, and I was amazed that each student turned in differently structured work to arrived at an answer. I was also able to immediately spot the duplicates, even after I had gone past and corrected dozens of other papers. They stick out like sore thumbs.

    84. Re:On The Other Hand by DarthVain · · Score: 2, Interesting

      Ya I had the same thing happen to me.

      I had some fiends take CS 101 late in their education. They had the same assignments. Two of them were in a bind, so I dug out my old assignment and gave it to them and said "go nuts". I did pretty well on it with a 80%, which I cobbled together the night before in about 2 hours before going to the University pub.

      Anyway one come up to me all excited, they got a 90%. I was about to say "Son of a..." when the other showed me theirs, and the got 100%. W.T.F. I was pissed.

      I did something myself years later (not CS), where I did the exact same paper, for two different 3rd year courses with different professors. Exact same topic, same everything. I think I changed the font of one just to be not so blatant, though I think the actual title was the same, so likely moot. I got a 60% on one and 80% on another.

      I had one CS prof deduct points one time for not using a recursive algorithm and another the same year deduct points for using one, even thought the purpose was pretty much the same (different languages however, one was COBAL the other was C+ I think).

      I came to the conclusion through University, that unless you really screw it up (aka you have no idea what you are doing or talking about), professors have a large latitude in which to determine grades, and much of that does not seem to be based in any sort of technical rigor but rather personal preference. So A) Figure out what they like to see, and B) try to have them like you a bit.

    85. Re:On The Other Hand by cephus440 · · Score: 1, Interesting

      There's a difference between cheating because of time constraints and cheating because you can't comprehend. I've worked with a developer who cheated durring school and his resume looked great - GPA, etc. When working with us, he didn't know much and would ask basic questions (Google-able questions). Eventually it was discovered that he was basically outsourcing his projects from work because he didn't know how to do them - no really, he had someone else write code for him outside the company. So when he was explaining the code, he crashed and burned. I personally "cheated" on projects in school because I didn't have enough time to get them done (work full time + school full time = not enough time). So when I "borrowed" code for something like a QuickSort (HeapSort, etc), I would at least go through it to understand it and generally after taking one stab at it by myself first. And I wouldn't do a direct copy/paste, I would at least make it "my" code. I digress; my point is that "cheating" isn't the end of the world if the "cheater" is competent. And I agree with this message's parent. In a corporate environment if I can find code to get the job done quicker instead of writing code for the sake of writing code, then do it - as long as you're not breaking a copyright. One more case in point. I spent 20 hours learning Service Broker (don't hate me for mentioning a MS product), I could have written my own queueing technology in 60 hours (that would have holes). It's the same but different.

    86. Re:On The Other Hand by fahrbot-bot · · Score: 1

      Besides, how many ways can you write a QuickSort?

      27

      --
      It must have been something you assimilated. . . .
    87. Re:On The Other Hand by 3.1415926535 · · Score: 1

      Yeah, totally. I've come to the conclusion that the best programmers are the ones who delete the most code (while improving functionality, obviously). The only code that clearly has no bugs is code that doesn't exist.

    88. Re:On The Other Hand by Anonymous Coward · · Score: 0

      Professor always gave me a hard time, maybe because I was a frosh in a class of mostly seniors.

      He was very sloppy; late to exams and showed up with them cold/wet (in the days of mimeo machines).
      Not well prepared.

      On his final, he botched the solution to one of his questions. One person in the class got the same
      botched answer, so he figured he'd done it right. Everyone in the class who'd done it right got 4-8
      points off a 20-point question. Except me: I got 16 points off.

      Idjit. But he's really famous in his field.

    89. Re:On The Other Hand by fahrbot-bot · · Score: 1

      If you missed some steps in a proof, it was either because you didn't know how to do them, or because you thought that they were so obvious that they didn't need stating.

      Simply insert: "Step 4: Then, obviously, a miracle happens."

      I had a professor with a good sense of humor that would have given a few points for that, because "knowing your limits" is a good thing - which, ironically, means something completely different in Calculus class :-)

      --
      It must have been something you assimilated. . . .
    90. Re:On The Other Hand by Anonymous Coward · · Score: 0

      You'd be shocked how many ways you can write a quicksort.

      Even if the students change all the variable names and run it through a pretty-printer, the copying usually sticks out like a sore thumb. There are invariably small mistakes in most worthy assignments, and they stick out.

      Most of the times I found it, it was groups of people working together. But not always -- in at least one instance, some students had found another student's work in a lab trash can and had typed it in and gotten it to work.

      Oddly, perhaps, it was the students who took classes through work that were usually the worst/most prolific cheaters.

    91. Re:On The Other Hand by rxan · · Score: 1

      In university the prof gave us an assignment and specifically said "Do not launch any threads. This is to be a single-thread application." The whole class goes single-threaded and gets hosed, while the one guy who didn't understand the rules and launched something like 30 threads got the highest mark.

    92. Re:On The Other Hand by delinear · · Score: 1

      When I did statistics (long time ago), we had an in-class test where there was a right and a wrong way to calculate the same answer. The tutor spent some time the prior week drumming into us the importance of using the right method. When it came to the test, half my group copied me and used the right method, the other half used the wrong method. When we got the tests back, we all had the same low mark for using the wrong method, the guy had clearly flipped through a few and assumed we had all made the same mistake without bothering to read the rest. He even admitted as much when we pointed out to him the mistake, but he refused to regrade us with a higher mark!

      In the end, I missed out on the top grade by 2% of the overall mark, I'm convinced if this idiot had properly marked the papers I would have received the higher grade, but it was an optional module anyway so not worth my getting into a big political battle over.

    93. Re:On The Other Hand by FingerSoup · · Score: 1

      Harsh policy means nothing if it is not enforced... If you cheat but don't get "caught", then you get away with it. My College had a 3 strikes rule, similar to your 2 strike rule above. But because expelling half your class means lost revenue for the school, and less Prof / TA positions, it is in the best interests of profs to overlook a few cheaters... In other words, When your Prof cheats, you are likely going to get around such harsh policies....

    94. Re:On The Other Hand by ACS+Solver · · Score: 1

      So what about false positives? Typical homework assignments in CS courses are pretty simple. Take an input file containing one integer per line, output a file with those numbers in ascending order, using bubblesort/quicksort/mergesort. It would seem that the code structure for such assignments would be fairly similar, if they're done correctly.

    95. Re:On The Other Hand by dgatwood · · Score: 1

      They must have used the for loop to figure out where to insert the new entry as well. If they had used a binary search to find the insertion point, their algorithm would have massively outperformed yours. Quicksort's worst case performance is on already sorted lists, and you were really close to that. By contrast, an insert-and-shift would be O(log(n)) to find the location to put the new value and O(n/2) to copy the other values out of the way. It's mathematically provable that Quicksort cannot do fewer swaps than that because by definition it must move each of the old values one position to the right. And they could have gone one step further and vectorized the shift by calling a decent bcopy or memcpy or similar and further increased their lead.

      The best choice for that is probably a balanced binary tree using a linked data structure (pointers). The performance there is O(log(n)) with no copying of data around at all.

      --

      Check out my sci-fi/humor trilogy at PatriotsBooks.

    96. Re:On The Other Hand by Anonymous Coward · · Score: 0

      The managers can delegate stuff to me, as long as they (the managers) attend all the bullshit meetings.

      And fact is, someone needs to attend those bullshit meetings - it's part of getting work done - "configuring people".

    97. Re:On The Other Hand by Anonymous Coward · · Score: 0

      But maybe they only recently started outsourcing to India or whereveristan? ;)

    98. Re:On The Other Hand by Anonymous Coward · · Score: 0

      This is so much bullshit...

      My son and I have been programming together for years. We have the same syntactic style (indentation, spaces, etc.) and the same penchant for single variable names (integers begin with h, then i,j,k,...; floats with a,b,c... etc). We have similar habits of thought and approaches to algorithm design/analysis, and choose short, marginally descriptive, single-syllable names for functions. It is not uncommon for us to produce symbol-for-symbol the same code in simple situations even though there was no collaboration. To penalize someone based on the *presumption* of copying is just bullshit.

    99. Re:On The Other Hand by treeves · · Score: 1

      Why is getting to 70% "work" but getting from 70% to 90% not work? Are you saying it's OK to cheat to go from 70% to 90% but not to get to 70% in the first place? Why?

      --
      ...the future crusty old bastards are already drinking the Kool-Aid.
    100. Re:On The Other Hand by techhead79 · · Score: 1

      If you own the copyrights or your company owns the copyrights then no it is not "cheating". If you do not own the copyrights then legally speaking the copyrights sure as hell better say that you have permission to use the code in the way you want. Regardless of where the code comes from, if you didn't write it. You ALWAYS GIVE CREDIT WHERE CREDIT IS DUE. Do not take someone else's work and present it to your boss as your own. Do not take someone else's code and give it to your teacher as your own. Do not take someone else's code and incorporate it into your program without following the very clearly define legal system regarding such acts.

      Kids play with blocks. It doesn't take a genius to either.

    101. Re:On The Other Hand by DamnStupidElf · · Score: 1

      Technically, there are an infinite number of ways to write quicksort. Any arbitrary function can be used to choose a pivot element before partitioning the rest of the elements.

    102. Re:On The Other Hand by Schadrach · · Score: 2, Interesting

      There is a place for the "delegate everything"-type manager though. It's just only in a moderate to large department and one who knows how to "delegate everything" **properly**. At that point, said manager is more or less a "workflow router" distributing tasks preferentially to those who are best capable, with an eye for load balancing. It requires a fine hand and close understanding of each employees capabilities, speed, and accuracy. Hell, where I work (and we have a very *weird* organizational structure) there's a guy in shipping that has as a side duty "determine what ideas are worth bringing to me in my programmer capacity (as opposed to my other 4 hats)" for whenever the owner or operations manager have a "neat idea". He doesn't know enough to actually build onto our intranet app in any significant way, but he knows enough to be able to eyeball an idea and know if it's reasonable to do in the first place, and accordingly acts as a "gateway", saving me from having to explain *why* some things are unreasonable as opposed to getting something done in one of my other assorted roles with that time (we actually jokingly refer to my job title as "wearer of hats" sometimes...the phrase came up at my last review).

    103. Re:On The Other Hand by Surt · · Score: 1

      Real managers plan and prioritize, not delegate. The assignment of tasks should be handled on a pull basis by the team.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    104. Re:On The Other Hand by Schadrach · · Score: 1

      Hehe. I got some grades based on that on a few occasions. I got a reputation as a bit of a slacker and a bit of a procrastinator but someone who'd always get it done before the deadline, even if it was a couple thousand lines and due tomorrow...

      I once had a calc professor who docked me points because she didn't see how I got from one step to another in a problem. I actually turned around and submitted a proof demonstrating that the one step was always true and saved several intermediary stes resolving the problem the "normal" way and she restored full credit for it. Same professor once offered bonus points on the next test for anyone who solved the indefinite integral of sqrt(tan(x)) dx just to see how people in 2nd semester calculus would try to tackle it...

      OTOH, I also had one professor who *never* gave a perfect score on a test. He absolutely refused. He once gave me a 97/100 on a test for using an abbreviation because he couldn't find anything else wrong.

    105. Re:On The Other Hand by Surt · · Score: 1

      I used to ask for a quicksort implementation as an interview problem, and I've received well over a hundred answers, and at least 20% of those worked.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    106. Re:On The Other Hand by Darinbob · · Score: 1

      A snag in computer science, especially with the programming side of it, is that you often want to encourage cooperation. Ie, to have groups of 2 to 4 working on the same assignment. This is helpful as it allows students to work on larger projects, and it gives experience with working in teams (CS isn't really a "trade school" but learning to program is a nice side benefit). The drawback is that someone can (and often does) slack off and let everyone else do the work. It's a lot of professor and TA time to have to interview each student individually to ensure they actually did the work.

      Of course this comes up in a lot of engineering and science classes; you want people to work in teams, but also not let cheaters slide along. Sometimes labs are separate classes from the main course, so if you cheat in a lab it won't help you in the main class. But CS courses very often integrate the lab and practical side in the same classes as the theory and lectures; that is you don't have an algorithms class separate from an algorithms lab class.

      Some classes I graded that had larger projects involved the teams coming in to demonstrate the project, and then every member had to be able to answer questions you had about it or the design. Granted, you wouldn't catch the people who crammed with their team members the night before so that they could bluff, but the fact that they had to cram was better than nothing (plus there were still midterms and finals).

      Generally in upper division courses the concern isn't over good programming. The profs generally just wanted to know that the programs mostly worked and that you pulled your own weight, as these were just exercises to help you understand the core material better.

    107. Re:On The Other Hand by Darinbob · · Score: 1

      Hardest CS final I took (grad school) had only 5 questions, we were allowed to talk to each other, and we had one week to turn it in.

    108. Re:On The Other Hand by Darinbob · · Score: 1

      You don't necessarily need to accuse a student of cheating, you just assign a lower grade. You interview them about the project they did and if they're not very good at answering you lower the grade, even if it works perfectly.

      This fits the real world too. Sure engineers copy solutions from other places, but the good engineers understand the solutions they're copying.

    109. Re:On The Other Hand by ucblockhead · · Score: 1

      The question is: can you understand QuickSort if you can't write it from scratch, on your own?

      As a manager, there are two sorts people I'd see as idiots (in the context of CS):

      1) People who write QuickSort from scratch
      2) People who can't write QuickSort from scratch

      Neither is worth hiring.

      --
      The cake is a pie
    110. Re:On The Other Hand by Anonymous Coward · · Score: 0

      That would explain a few things I've seen from 5/3's IT department.

    111. Re:On The Other Hand by ucblockhead · · Score: 1

      Many years ago, my intro to programming course had a very simple solution. You not only had to do the assignments, but you also had to explain what you did, face-to-face, with one of the TAs. It was extremely labor intensive, but there is no way you could cheat your way through it without knowing the task well enough to have done it anyway.

      --
      The cake is a pie
    112. Re:On The Other Hand by dbIII · · Score: 1

      My trick was to get all the identical assignments, staple them all together, mark the top one and divide the mark over the number of copies. Not very subtle but I think everyone got the hint before the end of the semester.
      The even more depressing thing is that I never saw better than average work copied and this was all for incredibly easy first year subjects.

    113. Re:On The Other Hand by wisnoskij · · Score: 1

      I think you misunderstood what i was going for.
      Cheating is never OK.
      But some students can moderately easily get a passing grade of less then 80% (for example), but are unwilling to do the work or just unable to get 90-100%.
      So a person that cheated on many tests in university will not necessarily be incompetent at his job, and could still "add some mods".

      --
      Troll is not a replacement for I disagree.
    114. Re:On The Other Hand by mkiwi · · Score: 1

      I was a TA at a Major State University teaching sophomores Java. We actually had an incident where the _exact_ same homework was submitted to our WebCT between two people. One student had actually written the program had put his name in the comments. The other was a little... shall we say... lazy?

      So we go to correct these homeworks, and the student who had cheated did not bother to change the original student's name in the comments. You could have MD5'd the files and they'd be exactly the same. The prof was nice about it and gave the cheater 0/2 points for the assignment, plus an apology letter to the TA. I would have expelled the little bastard. Then again, I was rather heartless that semester...

    115. Re:On The Other Hand by geminidomino · · Score: 1

      Besides, how many ways can you write a QuickSort?

      At least two.
      There is a nice trick that helps you save memory. You don't have to use it though, but then you use a bit more memory.

      Three.

      Modifying the partition/pivot scheme can change the WCRT to THETA(n^2) but result in a stable (in the sorting sense, not in the "this thing never crashes" sense) sort.

    116. Re:On The Other Hand by flabordec · · Score: 1

      From GGP:

      When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

      I think you missed the point... I know it would be outperformed. Turns out that copying was not the preferred solution for the enterprise.

      My point (which seems to be a bit too subtle) is that programming is a lot more about the details and the subtleties that can only be learned by not cheating. Copying code when you don't understand the code's implications could be a terrible mistake.

      --
      "I see undead people" Warcraft III - Necromancer
    117. Re:On The Other Hand by CAIMLAS · · Score: 1

      In uni, a friend and I worked on our final CS101 project together - something in C++, I don't recall specifically. I did the better (80%+) part of it, and he ended up going into it. From what I can tell, he's not half bad.

      Ironically, he's the programmer now, and I hate programming (preferring the system side of things).

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    118. Re:On The Other Hand by pete6677 · · Score: 1

      Any prof who is this anal deserves to have students cheat. Usually they are too preoccupied counting lines of spacing that they completely overlook what the assignment is really supposed to teach.

    119. Re:On The Other Hand by pnewhook · · Score: 1

      And then because it is new code, you have to test the entire system from scratch again, and re-establish confidence in the stability.

      Every once in a while code is soo shit poor that it needs rewriting - I've had to do this myself recently with one of my ex-developers pile of *ahem* code.

      But the instance we are talking about here is recoding a simple function (the example was quicksort) to do it in a few less k or a few less ms. I content that for the vast majority of applications this type of rewrite is a waste of resources and completely pointless.

      --
      Tesla was a genius. Edison however was a overrated hack who liked to torture puppies.
    120. Re:On The Other Hand by Skreems · · Score: 1

      In cases of specific, isolated algorithms sure. When you're out in the business world, though, very little is that small or that isolated. A lot more of the time, from what I've seen, you're dealing with relatively complex entangled systems, where the data and interaction model is a lot more complicated than manipulating a single array.

      --
      Slashdot needs a "-1, Wrong" moderation option.
      The Urban Hippie
    121. Re:On The Other Hand by LihTox · · Score: 1

      And then there will be that one time when the company actually needs something new, and there is nobody to steal from....

    122. Re:On The Other Hand by Anonymous Coward · · Score: 0

      You've never worked with COBOL in a mainframe environment, have you?

      I have, and I did write a program from scratch, because there was no existing program that did anything similar.

      You took what was written, modified to do "the new thing" and you were done.

      Seen that, debugged it, threw it away. In one case the program was four times as long as it needed to be and full of dead code. Some genius like you had taken a program that did nothing like what was required, and in the process "reused" data declarations for entirely different uses. Didn't matter that they weren't compatible with the values they needed to hold and things were dumping, or getting silently truncated.

    123. Re:On The Other Hand by Sardaukar86 · · Score: 1

      Universal health care is a good thing. It's not socialist. Get over it.

      I respectfully disagree with your sig; Universal Health Care is most certainly socialist, but that is not mutually exclusive with being a good thing. Personally, I hate socialism almost as much as you 'merkins, but a good system of government needs to take lessons from everyone's books in the pursuit of the best system for the greatest number of people.

      Universal Health Care is one example of a socialist policy that works well in the real world - America would be cheating itself if it let its phobia of socialist ideas get in the way of making things better for everyone.

      In New Zealand where I live we have a system of Universal Health Care. It -- like every other governmentally-controlled mechanism -- is deeply flawed, but it does work in the majority of cases.

      That said, you won't find me voting any left-leaning crowd into power any time soon.

      --
      ..Mullah or Pope, Preacher or Poet, who was it wrote: "Give any one species too much rope and they'll fuck it up"?
    124. Re:On The Other Hand by pnewhook · · Score: 1

      I agree with you, except that a social program such as health care or a public school system does not equate to socialism.

      --
      Tesla was a genius. Edison however was a overrated hack who liked to torture puppies.
    125. Re:On The Other Hand by Anonymous Coward · · Score: 0

      I looked up the relationship between railroads and chariot wheels, and it looks like that "fact" came from a viral email, not history.

  13. anti-cheat by nnxion · · Score: 1

    Well the professor used Valve anti-cheat and temp-banned him. :)

  14. No outside help ? by ccandreva · · Score: 5, Insightful

    I am wondering what exactly they are calling cheating here, since the code says they "will not plagiarize, copy work or get outside help."

    Plagiarize and copy are obvious, but I never heard of asking for help on homework being cheating. How else does one learn ?
    If you didn't get the concept in class, you are out of luck, that's it ?

    I was in an Engineering program (Stevens Institute in Hoboken), and I would venture that at least half of homework was done in study groups, sometimes just to bounce idea off each other, sometimes as a collaborative group effort. This was part of the learning process.

    1. Re:No outside help ? by gatzby3jr · · Score: 2, Interesting

      I think this more has to do with contracting a 3rd party to do the project for you. While you might say this is redundant, as that is plagiarizing, there's a subtle difference. I would take it to mean plagiarizing to be taking code off the net and passing it as your own, copying to be copying your work from another classmate, and outside help by just asking another programmer to specifically do your project.

      When I was in my senior year of CS study, our OS teacher made us do code walk-thru's with the TA's to demonstrate how our code worked on our last project. I didn't think much of it other than a time waster. My opinion changed drastically when I arrived at my appointment.

      The student in front of me was still in his appointment, and was being questioned by the TA. After listening in for a few seconds, I learned that the student could not tell the TA where the entry point to the program was. He didn't know where the main() method was in the program. Nevermind the complexity of the whole program (that worked), but he had no idea where it started. He kept INSISTING that the work was his, but couldn't tell the TA how it began.

      It was pretty clear he had someone else do the program for him, whether he contracted or copied it from a friend as the project was pretty specific in nature, don't think you could have downloaded it from the web.

      I soon had a whole new outlook on code walk-thru's in an academic environment.

    2. Re:No outside help ? by plover · · Score: 2, Insightful

      Agreed. Learning to ask for help, getting outside help, and incorporating that advice into your work is a huge part of learning.

      There's definitely a sliding scale between: "will you help me to understand X?" and "will you do X for me?" And it's more than just a line between those two points, because there are other ways to get help, such as group projects, or working side-by-side with an expert. It seems obvious to me that the intent of the code is to stop students before they get all the way to the latter.

      Or perhaps the clause is temporally dependent: maybe they really mean the code to say "will not plagiarize ever, will not copy work ever, and will not get outside help during an exam or quiz unless it has been explicitly permitted by my instructor." (I'm thinking of one of my profs who holds "open-notes / open-laptop / closed-neighbor" exams.)

      --
      John
    3. Re:No outside help ? by quadelirus · · Score: 1

      If you didn't get the concept in class and the policy is not to get outside help then you email your professor and/or TA and go to their office hours. Not getting it is no excuse for cheating.

    4. Re:No outside help ? by Anonymous Coward · · Score: 1, Informative

      Usually, when honor codes are involved, phrases like "outside help" or "unauthorized aid" are meant to be determinded by the professor per assignment. So, for homework, everything might be fair game short of CTRL-C + CTRL-V, then a project might have stricter rules, and a test maybe no outside help.

    5. Re:No outside help ? by Anonymous Coward · · Score: 0

      Collaboration is fine, but when people routinely post their homework assignments on sites like rentacoder.com, it should be considered cheating and an automatic fail for the course.

    6. Re:No outside help ? by Anonymous Coward · · Score: 0

      I guess the "outside help" thing is a wildcard statement to avoid students hiring other people to code for them. Yes, I've seen this happen.
      As long as you know what the stuff you handed in does, why it does it, and where its problems might be (ie. you are capable of telling a coherent story about your work), that should be good enough.

    7. Re:No outside help ? by AlexCorn · · Score: 2, Interesting

      That is the policy at Carnegie Mellon. The first time a student is caught cheating, they lose their financial aid. The second time, they get expelled. Discussing homework counts as cheating and because of the consequences, everybody is too paranoid to even discuss class material that might be related to homework. Everyone hates it but the administration doesn't care because the incidences of cheating have gone way down since introducing the policy.

      Infuriating.

    8. Re:No outside help ? by Anonymous Coward · · Score: 0

      I'm a CS prof. who has this policy -- no outside help. Your course textbook, the course website, and me are your options. However, I encourage my students to come talk to me, and most do. My students (the ones who do the work) *do* in fact learn.

    9. Re:No outside help ? by martyros · · Score: 1

      Plagiarize and copy are obvious, but I never heard of asking for help on homework being cheating. How else does one learn ? If you didn't get the concept in class, you are out of luck, that's it ?

      Yeah, my first 2 years I did a lot of problem sets working with other people. It was really working *with*: we all tried the problem on our own, and then talked about things if/when we got stuck, and compared answers. I was surprised when, in my 3rd year, I suggested getting together and doing the same and the person gave me a funny look and said, "Well, that's cheating isn't it?" We all knew that the problem sets weren't going to be as big in our grade as the exams, where we'd be totally on our own, so everyone was really motivated to actually learn the material.

      But some of my friends (in other disciplines) would get together and "share out" problem: I'll do 1-2, you do 3-4, and he'll do 5-6, then we'll copy each other's answers. Obviously not the same thing.

      At my school, the statement we signed at each exam was "I have neither given nor received unauthorized aid, nor have I concealed any violations of the honor code." (Emphasis mine.) The "unauthorized" was key: some teachers authorized books, notes, and papers from class; one even authorized "internet connections" (though I assume he meant web pages, not IM).

      The nice thing about accepting real computer programs is that it's very easy to 1) change the definition sufficiently year-to-year so that last year's solution won't work out of the box, and 2) it's easy to run analysis on the programs to find similarities between students' submissions.

      --

      TCP: Why the Internet is full of SYN.

    10. Re:No outside help ? by sorak · · Score: 1

      I am wondering what exactly they are calling cheating here, since the code says they "will not plagiarize, copy work or get outside help."

      Plagiarize and copy are obvious, but I never heard of asking for help on homework being cheating. How else does one learn ?
      If you didn't get the concept in class, you are out of luck, that's it ?

      I was in an Engineering program (Stevens Institute in Hoboken), and I would venture that at least half of homework was done in study groups, sometimes just to bounce idea off each other, sometimes as a collaborative group effort. This was part of the learning process.

      I would draw the line (if making an objective policy) at written code above a certain length. You can discuss algorithms, or even give an example of how a certain function might work. And, if discussing database code, you would need to cover several lines of code to show the student how to establish a connection, run a query, and close that connection.

      You may also want to have a rule against code that is custom tailored for the specific application. For example, I would consider it cheating if someone else wrote a SQL query, that did not have to be modified to be used in the current assignment.

    11. Re:No outside help ? by Atraxen · · Score: 1

      That would be because different educational activities can have different goals. I give analytical chemistry exams that are supposed to be somewhat collaborative, to provide an opportunity to learn (something called a "formative assessment") - this gives the students peer-guided instruction, and gives me feedback about where they stand in the process.

      But, at some point I'll need to know how the individuals are getting it. These assessments/assignments may still be a formative assessment, depending on how I am using it as the instructor. Eventually, I have to sort the students based on achievement (or maybe I don't - this isn't the place for that debate, but I think we can all agree it's the most common practice) - this would be a "summative assessment".

      And your example of homework is relevant - profs will often not care about whether it's done solo or in groups. But, when a _project_ contains an explicit requirement for solo work, it's (supposed to be) because the instructor has a purpose - and how often do prof.s explain to their classes their summative/formative intent? These intentions may be opaque to the student.

      In reality, most profs are pretty savvy about how they work (even if you don't see it) and are using a mix of summative and formative goals in their grading and assignments. Discussions on /. about cheating and education have lots of people coming out of the woodwork to say, "I think this educational approach is dumb, so I did what I wanted instead - and I say it's more authentic!!1!", or some variant of this. I love the hubris involved in assuming that not only does the student have a better awareness of the material and the 'realpolitik' of the eventual career, but that they know education better than the prof (and that the prof's goals are necessarily transparent). Or that the classroom is only supposed to emulate the daily job - that students should learn only to consume knowledge and approaches, not to originate them ("When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done." - http://news.slashdot.org/comments.pl?sid=1547360&cid=31111942). And yet, how does the student produce new work unless taught how? That's one of the curricular decisions the instructor makes - am I pursuing the 'originator' or 'realpolitik-daily' approach as my learning goal today?

      Those wearing the instructor-hat were a student for a long time, and (should) have an awareness of the benefits of group work. But when students simply declare that they've decided to ignore rules and requirements because they've chosen their own goals, in my experience they're either:
          so self-aware in their learning that they'll succeed no matter what;
          or they're being lazy or self-delusional and using their own notions of 'what good learning is' to justify it.

      --
      Be careful of your thoughts; they could become words at any minute...
    12. Re:No outside help ? by VShael · · Score: 1

      I would venture that at least half of homework was done in study groups, sometimes just to bounce idea off each other, sometimes as a collaborative group effort. This was part of the learning process.

      Absolutely. In fact, working in groups is a particularly difficult part of the learning process for some. Back in the day, we didn't have collaborative tools or change management systems. I remember working on a TCP Layer project with another student. We'd work on the code for a few hours, then I'd go home. I'd come in the next morning, and find an email saying "I kept at it until 11pm. I'll be around noon." Then I'd take a look at the code, and EVERYTHING had changed. (And I do mean everything.)

      Learning how to collaborate successfully (and the pitfalls that can happen when you don't) were very useful skills for me once I entered the job market.

    13. Re:No outside help ? by Anonymous Coward · · Score: 0

      I went to school at UMBC and I also had the same experience. While, I suppose it could foster cheating, most professors encouraged it because it allowed learning from each other.

      In addition, I even had a professor who said, "I you work in groups--and I encourage you to do so--please only turn in one homework assignment with ALL of your names on it. I hate grading the same exact thing multiple times."

      I also had another professor, Waves and Communications, who was also in charge of the EE department, who gave exams that were open note, open book, open laptop. Her argument was that in the "real world" it would be absurd for you to try and do the work without any kind of reference. Memorizing formulas shouldn't be intentional but merely the product of using them repeatedly over time. However, this does put more work on the professor, since exams need to be original and force the students to really understand the concepts (as they should), otherwise you could just find the solution on Google.

      I really enjoyed my professors there. Almost all of them were intelligent, approachable, and didn't force us to do unnecessary work to either save themselves work or to reinforce archaic teaching practices.

    14. Re:No outside help ? by sartin · · Score: 1

      "I have neither given nor received unauthorized aid, nor have I concealed any violations of the honor code." (Emphasis mine.) The "unauthorized" was key

      I had an assistant professor for a seminar class who said we were "allowed to bring in anything you can carry, including the TA." One student actually carried the TA into the exam piggy back as a joke. Turns out none of the questions were hard enough to need his help.

    15. Re:No outside help ? by TheRaven64 · · Score: 4, Interesting

      Why bother with university then? Do a distance-learning course and hang out in coffee shops near a university and you'll get the same experience at a fraction of the cost (as I recall, CMU charges something around $40K/year). One of the greatest benefits of university is that you are surrounded by other intelligent people and can exchange ideas and teach each other.

      --
      I am TheRaven on Soylent News
    16. Re:No outside help ? by MrCrassic · · Score: 1

      I was in an Engineering program (Stevens Institute in Hoboken), and I would venture that at least half of homework was done in study groups, sometimes just to bounce idea off each other, sometimes as a collaborative group effort. This was part of the learning process.

      I'm a Computer Engineering student at the same school, and I know for a fact that cheating was rampant in the lower-level courses. The "study groups" that you mention, or at least the ones I partook in, consisted of 85% procrastination and BS'ing and 15% work, usually on the day of. I don't think too many people got caught, but those that did went through all kinds of scrutiny and suffering. Apparently, cheating is also popular amongst grad students here, though I can't speak for them as an undergraduate.

      I do agree that an effective study group anywhere can go a LONG way towards getting good marks.

    17. Re:No outside help ? by quanticle · · Score: 1

      So you're in your office 24/7? What about students (like me) who don't live on campus, and therefore have trouble making it to office hours?

      I understand where you're coming from, but I still thing a "no discussion" policy is unreasonably harsh. I mean, what's the point of going to university if the only person who is allowed to help you is your professor? As a sibling poster mentioned, you may as well teach a distance learning course.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    18. Re:No outside help ? by getSalled · · Score: 1

      Kudos to you. You also have the benefit of learning your students' tendencies in code. I failed an assignment with a note from the professor that basically said "what the hell?" It was my first thought as well but for another reason -- it wasn't my code. I went to retrieve my original from my network account and my profile had been erased. If I remember correctly, the prof gave me full credit for the assignment largely because I had talked to him about how I had found another algorithm online (implemented it myself) that was 20% more efficient but was not valid for the assignment (it wasn't A*). I have no idea if someone else actually stole it and turned it in (or if it was some fluke with the server) but I imagine he would've failed the student that turned in the other solution...

    19. Re:No outside help ? by clone53421 · · Score: 2, Insightful

      And are you willing to answer your cell at 2 AM on the morning a big project is due?

      I didn’t think so.

      I’ve had one prof. who would. He was, quite probably, the best prof. I ever had.

      --
      Alexander Peter Kristopeit bought his basement from his mommy for one dollar.
    20. Re:No outside help ? by aronschatz · · Score: 1

      I went to the same school (Masters as well) and I usually did coursework in groups as it was easier for other people to learn by doing problems together. I wasn't a computer science person, but a computer engineering grad. Less programming.

      By the way, Stevens doesn't give engineering degrees anymore! I'm glad I got one (BEng, MEng). Class of 2005 (BEng) and 2006 (MEng). How about you?

    21. Re:No outside help ? by Anonymous Coward · · Score: 0

      One of my teachers had a similar clause. What he meant by this was that you couldn't: look at someone else's code, have them look at yours or look at example code of the same problem on the net (like, directly copying something bigger than just a quicksort for higher-level classes). What WAS allowed was talking to the professor and showing your code to him, as long as it wasn't just a few hours before the assignment was due or just talking about the problem to a classmate in the hall and how they solved it in general.

    22. Re:No outside help ? by Anonymous Coward · · Score: 0

      > If you didn't get the concept in class, you are out of luck, that's it ?
      Talk to your professors and teaching assistants.

      Do NOT talk to someone else who took the class a year or two ago, because they've since moved way on, don't remember exactly where they were in the original class, and it's all trivial to them now. A cheater (in an intro class, at least) who words things correctly will basically be able to get someone to do the work for them.

    23. Re:No outside help ? by Voltara · · Score: 1

      I am wondering what exactly they are calling cheating here, since the code says they "will not plagiarize, copy work or get outside help."

      Here's a good example of outside help:

      http://www.rentacoder.com/RentACoder/misc/BidRequests/ShowBidRequest.asp?lngBidRequestId=1242899

      I once saw a RAC posting from someone who wanted all of his job interview pre-screen questions answered for him. It was no surprise, when I had a look at his project history, that he had cheated his way through his degree as well.

    24. Re:No outside help ? by emohawk · · Score: 1

      Where i studied the grade was always decided by the final closed book off site hand written exam, 90% of the grade. So copying code didn't change anything, you didnt even need to do the assignment since they were only 10%. The only way to cheat was to bring notes into the exam and hope you dont get caught looking at them.

    25. Re:No outside help ? by Ephemeriis · · Score: 1

      Plagiarize and copy are obvious, but I never heard of asking for help on homework being cheating. How else does one learn ?
      If you didn't get the concept in class, you are out of luck, that's it ?

      I come from a family that's big on education...

      Both my parents have an assortment of degrees. My mother was a college professor. My sister and I have both got our own degrees.

      And one of the things they always stressed to me about going to school was not that it taught you any particular bit of information - it taught you how to learn.

      The most important thing you can get out of any degree is the ability to learn. The ability to read a book for comprehension... Pick out the relevant bits of a lecture... Put together useful notes... Look up the information that's missing... Realize where the gaps are in your understanding... And ask the necessary questions to fill in those gaps.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    26. Re:No outside help ? by Anonymous Coward · · Score: 0

      The phrase "get outside help" probably meant don't get others to *do the work* for you. Asking somebody about the general concepts should be allowed.

    27. Re:No outside help ? by Anonymous Coward · · Score: 0

      As a graduate of the Computer Science program at Stanford and a TA for the class the article was about, we had a pretty straightforward definition of what counted as "too much help": if you are discussing the problem in sufficient detail that what the person tells you translates into specific lines of code, that's not allowed. Discussion of general strategies for solving problems is encouraged, but each person should be able to translate that general strategy into a specific implementation on their own. For the introductory courses there is also a computer lab staffed 40-50 hours a week by TAs (generally from about 6-midnight, so not a lot of overlap with classes), so there really isn't an excuse for having your roommate tell you what to write, lots of help is available.

    28. Re:No outside help ? by winwar · · Score: 1

      "But, when a _project_ contains an explicit requirement for solo work, it's (supposed to be) because the instructor has a purpose - and how often do prof.s explain to their classes their summative/formative intent? These intentions may be opaque to the student."

      And how do you define solo? It's pretty obvious that you can't use another student. But how about another book? The internet? At the root of the problem is communication-you know what you mean but do the students? As someone who has been on both sides, I find it amazing how an obvious question or statement becomes very unclear when looked at from a different perspective.

      "In reality, most profs are pretty savvy about how they work (even if you don't see it) and are using a mix of summative and formative goals in their grading and assignments."

      I would have to disagree. If you replace "most" with "many", I would agree. I would believe that most have a very good idea of what works and doesn't with regards to assignments and tests. As many haven't changed for decades, they should. Their (and their students) grasp on the "real world" depends entirely on having worked in industry recently or regularly dealt with it.

    29. Re:No outside help ? by Anonymous Coward · · Score: 0

      I agree - that description is lacking. What was meant was "get EXCESSIVE outside help". As I tell my students: Discuss concepts all you want. It crosses the line when you show somebody your code or tell them the command to write.

      Since students are loathe to speak specifics, it usually comes down to "don't share your code".

    30. Re:No outside help ? by ucblockhead · · Score: 1

      When I was in college, I worked in the computer lab, and the bulk of my time was spent helping students with their assignments. Sometimes, it was valuable, explaining how things worked, what the algorithms were, etc. Other times, I'd get the "what do I type now" guys, who just wanted me to rattle off what the solution was. I presume by "no outside help" they mean the latter.

      --
      The cake is a pie
    31. Re:No outside help ? by kjones692 · · Score: 1

      Are you a CMU student? I am. This is certainly not a university-wide policy, and I can't think of any class that I or my friends have taken that has this policy. Indeed, many classes (such as the legendarily difficult 15-251, Great Theoretical Ideas In Computer Science) practically require you to work in groups, and woe betide anyone who goes it alone.

      Do you just take completely different classes than me or anyone here that I know? Or are you delusional? Or are you just talking out of your ass?

      --

      Love the Third Amendment?
  15. Dumb cheats are easy to catch by Anonymous Coward · · Score: 1, Insightful

    You can obfuscate someone else's code such that the prof won't notice. OTOH, if you don't know what you are doing, you will make some dumb mistake that will lead to your detection. My favorite was the student who left in all the inline comments (probably because he didn't recognize them for what they were).

    Students who can successfully disguise someone else's code could probably write their own code and are just being lazy. As such, it isn't a complete disaster if they pass the course somewhat undeservedly.

    1. Re:Dumb cheats are easy to catch by Tragek · · Score: 2, Informative

      Nope; Obfuscation isn't enough. Specialized parsers measuring similarity exist:

      http://www.wired.com/science/discoveries/news/1998/02/10464

      While you can't catch everyone, disguise is not enough. (And not a measure of skill either).

    2. Re:Dumb cheats are easy to catch by ColoradoAuthor · · Score: 1

      Cheaters, lazy bums that they are, tend to do everything together, including shopping and walking to class. Hence the old teacher's trick: require hardcopies to be placed in folders or envelopes and turned in via a drop box. 90% of the time, the cheaters' assignments will be turned in together, one right on top of the other, using identical folders/envelopes. Just be careful not to shuffle the pile when grading. A clever prof can probably figure out an equivalent scheme for the virtual classroom.

    3. Re:Dumb cheats are easy to catch by canajin56 · · Score: 1

      You don't need a specialized parser lol. Just strip out variable names, comments, and whitespace, then just use zip. zip A, zip B, zip AB. Compare sizes. If the size of zipping A and zipping B are both pretty close, and also pretty close to the size of zipping AB, then odds are, cheating, so look at it manually. Zip is already a specialized tool for finding patterns in text ;) It doesn't work every time, but it's way better than any other technique, by far. Obviously, the threshold would vary depending on how much variation you're likely to see in independent answers.

      But that notwithstanding, obfuscation is the easiest thing in the world to catch your attention. I've seen a student do "x = x;" once. The question was so simple, we couldn't do cheating detection since there would only be a few answers. But still, circled "trying to obfuscate something?" ;)

      --
      ASCII stupid question, get a stupid ANSI
  16. Does the school have tutors? by SirLurksAlot · · Score: 1

    If the school has any number of gullible/inexperienced Comp. Sci. tutors then it may be very easy. I tutored Comp. Sci. for a while and there was no lack of students who thought they could get me to do their homework for them. It always started off with "I have this assignment and I'm confused about this part of it.... can you help me?" Of course most of them understood when I only gave generalized answers that didn't have anything to do with the assignment, but there were always a few that thought I was simply being unhelpful. I know some Comp. Sci. tutors though that simply went along with the students and practically did their assignments for them, but it didn't really bother me because I knew the cheaters would either get caught in school or (worse) it would come out in their work if they ever got hired somewhere.

    --
    God, schmod. I want my monkey man!
  17. Like... wall hacks? by Arancaytar · · Score: 1

    Oh, wait.

  18. Why cheat at all? by gatkinso · · Score: 1

    It isn't as if Computer Science is extremely challenging.

    Buckle down and study. Sheesh.

    --
    I am very small, utmostly microscopic.
    1. Re:Why cheat at all? by Anonymous Coward · · Score: 0

      I must second this.

      CS is fun. I like CS. But lets be honest, it is not hard. Time consuming? Hell yeah, but it's not hard by any means.

    2. Re:Why cheat at all? by xaxa · · Score: 1

      CS is fun. I like CS. But lets be honest, it is not hard. Time consuming? Hell yeah, but it's not hard by any means.

      And for those of us that went to the best universities?

    3. Re:Why cheat at all? by TerranFury · · Score: 1

      Troll, Insightful?

    4. Re:Why cheat at all? by gatkinso · · Score: 1

      I went to Johns Hopkins. The difficult CS classes were for all intent and purpose applied mathematics classes with a "605" (i.e. Computer Science) prefix.

      Some of the CE classes were hard.... oh looksie no longer CS.

      --
      I am very small, utmostly microscopic.
  19. Of course it is easy! by B5_geek · · Score: 0

    This is how AND why computers work.
    Simple and exact reproduction.

    Another way to look at it:

    There are only so many ways you can type:

    10 print "Hello World!"
    20 goto 10

    (Yes folks that is the limit of my programming knowledge. I busted my cherry on a C64.)

    --
    "The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
    1. Re:Of course it is easy! by dkh2 · · Score: 1

      Why do I feel dirty after reading that parenthetical comment?

      --
      My office has been taken over by iPod people.
    2. Re:Of course it is easy! by lxt · · Score: 2, Insightful

      I think I disagree - the beauty of programming is everyone codes in a different way. I taught entry-level CS. A simple java 'print "hello world" 10 times using a for loop' question may only have one solution, but dozens of stylistic variations. Square braces on the same line? Spaces between your commas? System.out.println() or System.out.print? Cheating in CS is generally pretty easy to catch when somebody is just copying code, because it will be totally out of style with their usual work. The problem comes when someone is cheating to such an extent that *none* of their code is original!

  20. When stealing code... by shoppa · · Score: 1

    When stealing code, you should at least be able to discern whether it's good code or not. Seriously.

    Most undergrad-type computing courses tend to have homework or test questions that have one really super obvious working answer. "Obvious" at least after you know it! There often really is a single best way to do something. Obviously local variables and order of initialization don't always matter.

    But there are lots of suboptimal approaches and some really wrong ways to do things too. You have to give them some credit for trying. But if half the class tries to do a suboptimal approach and they all used the same local variable names and forgot to initialize the same thing that should've been initialized, it really is painfully obvious to the graders.

    Stealing good code or at least learning from good code should be encouraged. But stealing bad code, or even worse code that doesn't actually work, really is a crime. Not just from the academic-honor system standpoint but from the "Crimes against nature" standpoint.

    1. Re:When stealing code... by TheRaven64 · · Score: 1

      When stealing code, you should at least be able to discern whether it's good code or not. Seriously.

      Oh, for a mod point. I haven't taught for a little while, but I was astonished that all of the people who cheated seemed to pick the worst person in the class to copy from. The code didn't even compile, let alone work. If you're going to copy, at least copy from someone competent.

      --
      I am TheRaven on Soylent News
    2. Re:When stealing code... by xaxa · · Score: 1

      If you're going to copy, at least copy from someone competent.

      Problems with that:
      1) The highly competent person has already finished the work, so he's not around to ask. He's in the pub, or doing extra studying at home, or is a TA for another class, etc.
      2) The highly competent but disorganised person hasn't started yet, since he knows he'll be OK if he starts three hours before it's due. (This was me.)
      3) The highly competent but antisocial person's name evades you. Does anyone know his name?

      Helping people in my class was also boring: their work was exactly what I'd done earlier in the week, and usually only the least-able wanted help (or to copy). It was much, much more satisfying to help the first (and second) year students -- the work was either different or I'd forgotten it, the best students really appreciated hints towards the neat/clever/clean solution, and I liked seeing how they'd all thought differently about the problem. Helping the less-able students was good too, that was more challenging for me -- I'd have to work out how to explain something that was obvious to me, but clearly not obvious to the student.

    3. Re:When stealing code... by SatanicPuppy · · Score: 2, Interesting

      I stole bad code once. True story.

      Senior year, tons of hellish classes, and two huge project-driven coding classes. Now, one class was group projects, and the other class was solo. And it turned out that 3 of the 4 people in my group were in both classes.

      So due date is coming around for both projects and they were due 8 hours apart (midnight thursday and 8am friday) and the two other guys in the group stop working on the group project and start working on their solo class project...Together. I say, "Fine, I'll do your share of the group project, but I want a copy of the solo thing."

      So they give me a copy, and I take it home and try to make it work. Can't make it work. Can't even figure out how it's supposed to work. Ended up giving up and going to bed. Got up, did the solo project from scratch and turned it in 2 days late for a 40% reduction in the grade. Fine.

      So I get my grade, 58, missed some little stupid 2 point thing somewhere, woulda been a goddamn 98 grumble grumble. One of the guys from my group came up to me and said, "Hey, what did you get?"

      I say "58," and I kinda snarled it because I was pissed.

      He says, without missing a beat, "58? I got a 5! Why didn't you give me your code?!"

      Turns out the class average for that project was a 7. Heh. Those two jokers never managed to contribute anything to our group project either. We got the highest grade in the class on the group project for that turn in...Not because we were the best, but because the group who was the best let people copy off of them, and they both got 0's.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    4. Re:When stealing code... by masmullin · · Score: 1

      When stealing code, you should at least be able to discern whether it's good code or not. Seriously.

      Well thats the catch22 isn't it? if you could discern whether its good code or not you wouldn't have to cheat.

      I guess the people who just want to cheat but dont have to dont get caught.

    5. Re:When stealing code... by masmullin · · Score: 1

      Its cause the guys that work hard and play fair get pissed at the cheaters and wont help them... the cheaters tend to pack together.

      Sometimes the cheaters get pretty innovative and organized... there was a group in my school who did the whole "ill do this project and you all copy from me if you guys do these other projects and I can copy from that"

      I was the hard worker who played fair, I would have gotten pissed that the "cheaters mafia" if I didn't actually admire their organization and inherently know they all the projects would be crap anyway (they were all too lazy to even do a good job on the single project they were tasked with).

    6. Re:When stealing code... by kbielefe · · Score: 1

      If you're going to copy, at least copy from someone competent.

      There's much less incentive for a competent student to cheat. He has more to lose and only a few hours of saved effort to gain, whereas an incompetent student stands to gain both a better grade and save effort when it's his turn to copy, and he has a good chance of flunking out anyway so he has little to lose.

      --
      This space intentionally left blank.
    7. Re:When stealing code... by TheRaven64 · · Score: 1

      Not so much at university, but I was always happy for people to copy me at school. The exams at the end of term were competitive, and if they copied me they'd learn less so do relatively worse on the exam.

      --
      I am TheRaven on Soylent News
  21. Cheaters by Anonymous Coward · · Score: 3, Funny

    How can I reach theeese keeeeeeeds???

  22. So funny.. by Anonymous Coward · · Score: 2, Insightful

    Why people would even try cheating in a CS class at a decent university is a mystery to me. At my school in Cambridge, Mass. (not MIT, the other one), every line of code turned in for intro CS classes was run through a code analysis and similarity detection system. The system was very good, I am not aware of any false positives, and it would be more work to re-engineer somebody else's code to avoid detection than to just write it from scratch.

    This system was in place somewhere in the early to mid 1990s (I was a freshman in 1996, and it had been used for at least a year). This was explained to everybody the first day of each of the 2 intro CS classes. There were several people in my freshman class in '96 who were expelled as a result of being caught cheating in CS 50. Oops. Anyway, this is now old technology - if you don't know it exists or don't believe it's so easy to fingerprint code, you are an idiot.

    Furthermore, if you were the "cheatee" and there was reason to suspect you willingly provided the cheater with your code to copy, you would both be subject to expulsion. Ouch.

    If you are too stupid to realize that when you hand in plagiarized code, you aren't taking a *risk* that you will be caught, you are engaging in the certainty that you will be caught, then you don't deserve to be at a university of this caliber.

    1. Re:So funny.. by donaggie03 · · Score: 1

      ... and it would be more work to re-engineer somebody else's code to avoid detection than to just write it from scratch.

      This has been mentioned a few times already, and I completely disagree. Yes, if someone is given an algorithm to implement, it may be easier to do it themselves than to obfuscate someone else's code. BUT an important part of many computer science assignments is to first figure out the algorithm you are trying to implement. If a student understands the very basic code syntax and structure, but sucks (or blows) at problem solving, then it may actually be easier to change someone's code.

      Since problem solving and algorithm development are arguably the more important aspects of most CS assignments, the cheater places himself at an even greater disadvantage.

      --
      Three days from now?? Thats tomorrow!! ~Peter Griffin
    2. Re:So funny.. by LargeMythicalReptile · · Score: 1

      it would be more work to re-engineer somebody else's code to avoid detection than to just write it from scratch.

      Very true. I've been a TA in CS at a well-known university, and it's surprising how many students don't realize how easy it is to catch cheaters.

      Much of our work is cooperative--either explicitly group work, or of the "you can talk with friends about the ideas or help them debug, but write it up yourself" variety. In addition, the TAs are available for any questions (and don't mind helping you--really!). So, it's really not that hard to do the work honestly and do ok. Maybe you won't do great, but you'll do ok.

      But I never saw the people who ended up cheating during office hours, or saw other signs that they were putting forth any effort to actually learn. So I don't think cheating is a matter of ability so much as laziness. The issue, as parent rightly points out, is that while it's certainly possible to cheat in an undetectable manner, doing so requires at least as much work as doing the assignment. And if someone is cheating due to laziness in the first place, they often don't put much effort into cheating, and it's very, very easy to catch them.

      If you are too stupid to realize that when you hand in plagiarized code, you aren't taking a *risk* that you will be caught, you are engaging in the certainty that you will be caught, then you don't deserve to be at a university of this caliber.

      I'd agree, but sadly the full consequences don't always filter through, because departments and institutions make it hard. One of my students once blatantly cheated on a large final project. As a TA, I would have supported very harsh penalties. I was a bit let down when the professor gave a lesser penalty...and mentioned the reason for it to me: ultimately, if the professor tried to institute a penalty with long-lasting academic effects, it would mean a ton of paperwork and annoyance on the professor's part. I don't blame the professor for this (since I know how much he really had going on at the time), but I think the department should have made it a bit easier for people to deal with cheaters.

    3. Re:So funny.. by plover · · Score: 1

      You might have been tricked by your school, too. Your similarity detector might have been a Mechanical Turk.

      Are you sure the analysis tool was actually all-knowing and all-powerful? Perhaps it was the T.A. grading the exams who noticed the plagiarism, but was told to give the credit for the detection to the analysis tool? Perhaps the T.A. even generated the tool's output to convince you all that the tool was all-powerful and all-knowing.

      Or do you know for a fact that they really expelled real students? Did you consider that they might have hired a couple of "plants" with the intent of publicly humiliating and expelling them, and frightening the rest of you into believing that their code analysis tool was infallible when it was really just a bash or perl script written with indent, sort, diff, wc, crc32, and grep? (Of course, I could probably make a pretty effective copy detection tool with just those components, at least effective enough to catch the cheaters who aren't even trying.)

      Stage magicians, revivalist healers, psychics and mentalists use these tricks all the time to get their audiences to lower their guard, and to temporarily believe in something they would otherwise think is impossible.

      Either way, it obviously made an impression on you as you are still quoting the story 14 years later. So I'd say that whatever they did was effective, even if there is no proof that the tool actually did the task.

      --
      John
    4. Re:So funny.. by SatanicPuppy · · Score: 1

      Where I went everything was run through an automatic code tester. That was part of the point: you were given a spec and a design document, and you were expected to produce a piece of code that matched the spec and could be plugged flawlessly into the hypothetical "greater" project...Some of the classes even did all their assignments so as to combine into one big project at the end.

      So it wasn't a matter of faith, it was certain knowledge. You wrote your code, and stuck it into the tester, and it spit out your grade, and where your error was. You could submit it as many times as you wanted, up until the deadline.

      At the deadline your code was compared with other peoples code, and if it was too similar, you'd get flagged for cheating and automatically flunk the assignment.

      --
      ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
    5. Re:So funny.. by quanticle · · Score: 1

      Furthermore, if you were the "cheatee" and there was reason to suspect you willingly provided the cheater with your code to copy, you would both be subject to expulsion. Ouch.

      I like the fact that you put in the word "willingly" there. At my university there was a kid who accidentally left his laptop unlocked and had his code stolen. He came very close to being expelled, and had to appeal his case up through two layers of the administration before he could find someone who saw sense.

      The really terrible thing was that the other person admitted that he had taken the code without authorization. Even so, the professor insisted that the kid "should not have left his code in a position where it could be stolen."

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    6. Re:So funny.. by kscguru · · Score: 1

      Go read about the plagiarism detector used at Stanford. It works on abstract syntax trees inside the compiler, and it essentially gives no false positives while seeing past most obfuscation techniques.

      Yes, it is possible, and if you were a compiler expert (like Professor Aiken, who's PhD thesis was this system) your disagreement might mean something. It is very difficult to modify some code enough to get a different-enough syntax tree yet still preserve the core algorithm - I actually believe that knowing how to do so requires MORE knowledge than the solution to the original problem. The idea that somebody could be skilled at obfuscating existing code but not have the ability to write original code is absurd.

      Realistically, a professor will not care if you pick up a similar solution, understand it well enough to write your own implementation of the core algorithm, and clearly cite where you got the inspiration. A good professor will either compare the original source to see that you made intelligent modifications or adaptations, and/or will call you in to explain the code to show that you understand the original well enough to have implemented it yourself. Happens all the time, and anyone clever enough to find another source without blatantly cheating is clever enough to demonstrate that understanding.

      --

      A witty [sig] proves nothing. --Voltaire

    7. Re:So funny.. by jim_deane · · Score: 1

      Why people would even try cheating in a CS class at a decent university is a mystery to me. At my school in Cambridge, Mass. (not MIT, the other one), every line of code turned in for intro CS classes was run through a code analysis and similarity detection system.

      I wonder what it was like for the first two or three years using that detection system. It must have been rough, expelling entire Intro to CS classes from the university after their "Hello World" assignment.

    8. Re:So funny.. by donaggie03 · · Score: 1

      I cede the point. I was unaware of just how complex these plagiarism detectors have become. I had in mind something more like a TA looking over the printed source code of multiple students. I guess it all boils down to this : what plagiarism detection methods are employed in YOUR computer science department?

      --
      Three days from now?? Thats tomorrow!! ~Peter Griffin
    9. Re:So funny.. by Anonymous Coward · · Score: 0

      I have been on both sides of the coin. I was a TA, and saw students cheat. The systems that detect cheating are good, but certainly not foolproof. If you have a relatively small program (2000 lines) you could easily do some quick search and replaces on variables and function names, move the function order around, maybe tweak a little logic in spots, and in about 10 minutes, you have a hopefully working program that works and slips past the goalie. That is a lot more attractive than spending 6 hours or so on assignments fighting with cryptic compiler and logic errors. I think most that got caught cheating were making desperate moves at the very last minute, or just complete F ups trying to get out of doing the work in the same way they had done in their high school science class. I am not even really sure where the limits of the cheating detection system were, all the cases in my section were clear direct copies, all with 90+% similarities between the copies (some did try to change some variable or function names). All work was done on a shared unix server, and home directories were all 777 by default, so many times the person who was copied from had no idea they were having their code lifted. In either case, I am pretty sure that the act of re-arranging the code would defeat the system, it seemed to rely on some sort of diff comparison.

      I know this, because I will admit, I cheated a few times. Being under intense pressure, and a general procrastinator, sometimes I couldn't get a part of an assignment working, and I would get code for it, generally from someone who took the class in previous semesters. Maybe I was not your "typical" cheater in that I would tactically pick and choose code segments, understand them, and then rearrange them, but I was never caught. My school used C/C++ in its courses, and the problems I struggled with were often more about me not understanding the compiler error or tracing down a seg fault, than the actual CS problem at hand. I was never caught, and returned the favor a few times, handing over code to the same guys who gave it to me, or helping with other assignments. When it comes down to a few hours left until the deadline, your grade is on the line, and you can't find the cause of that seg fault for the life of you... sometimes you give in to temptation.

      Interestingly enough, my school tended to weigh projects far more heavily than tests in the final grade. Tests were usually around 30-40% of the total, and projects made up the rest, and this was actually to prevent cheating! The easier/smaller projects in the beginning were weighted less than the meatier projects later in the semester. The system generally worked well, cheating in the later projects was often way too difficult to mask.

      As a final amusing note note- some of the most clever cheaters didn't rip off code at all. Particularly in the lower level classes, the professor would say on simpler assignments "We are going to grade your code by giving you input X, and we expect to see output Y" and provide the suite of tests that they were going to be graded on. So a student decided to just take detect the input, and print the correct output. This being a lower level class, we reviewed the student's code, graded them on their style, and made comments on how they could/should improve their code not much unlike an English teacher, and the student was caught during the review. IIRC, the professor was rather amused and didn't go too hard on the guy.

  23. i won't say where i went to college by circletimessquare · · Score: 1

    but the class was LISP, and we had to write a program to play the card game "go fish". our algorithms would compete against each other (the winner and runner up algorithms were both claimed by a high school student auditing the class, but that's another story)

    i took the class along with my physics TA

    he came to me and offered a good physics lab grade in exchange for me writing a separate "go fish" algorithm for himself

    i took him up on the offer. the algorithm i wrote for myself did ok, but the algorithm i wrote for him sucked. problem was, i wasn't doing that bad in physics lab to begin with. so i think i actually wound up putting my grade in jeopardy by disappointing my physics TA

    just do the work, because any schemes you concoct will wind up backfiring in ways you don't intend and don't foresee. good cheating requires control of too many variables, so to cheat successfully, you often wind up stressing yourself out more than just slogging through the work

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  24. It is not just the student... by iOdin · · Score: 1

    The story is usually aimed at why students are cheating instead of going through the work and learning. Well, that is partially the story. As others have commented, course instructors are also to blame. I did my bachelors in CS at Illinois a few years ago, and this "cheating" issue popped up in almost every course I took there. Typically, it went like this: First day of class, the professor will threaten damnation and hell on earth if students are caught cheating (in assignments, programming projects, etc). Then, after the first homework is graded, the professor will show up and claim that he is disappointed in about a quarter of the class that ripped someone else's code/solution and submitted as their own. Lastly, the professor asks those students to formally apologize to him and re-submit the homework again. (In fact, only two courses did this, the rest just stopped at step #2). Did students learn anything? Of course they did not. They always got a second, and third, and fourth chance. As if that were not enough, professors would typically recycle both assignments and exams. While this point could be argued both ways, it does not take much to find solutions online and just rehash them. With this approach, students typically do very well in assignments and take home exams, do terrible in closed-notes exams, but still manage to pass and graduate - from supposedly top notch institutions. Interestingly enough, these are then the same persons that take a job (mostly because they come from good CS programs) and can't handle simple 101 crap.

  25. Why bother cheating at Stanford by Gothmolly · · Score: 1

    When the GPA there keeps going up and up ?

    http://www.gradeinflation.com/Stanford.html

    --
    I want to delete my account but Slashdot doesn't allow it.
  26. banned! by Anonymous Coward · · Score: 0

    Where i come from, cheating is a potential criminal offence, or grounds for expulsion from school.

    1. Re:banned! by GeorgeS · · Score: 1

      Welcome to Earth. Enjoy your stay!

      --
      "I'd rather have a bottle in front of me than have to have a frontal lobotomy."
    2. Re:banned! by rfc1394 · · Score: 1

      I'd rather have a bottle in front of me than a frontal lobotomy.

      I prefer the one, "I'd rather have a free bottle in front of me than a pre-frontal lobotomy."

      --
      The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
  27. I caught several cheaters by RichMan · · Score: 5, Interesting

    I did many years in grad school and discovered several cheaters. The lack of punishment for such was part of what caused me to abandon a career in academics. Part of the discovery that academics is a very very political space. A system that tolerates cheating perpetuates cheating and rots itself from within.

    1) Crowded class writing mid-terms. There are 2 copies of the exam with minor but significant variances handed out in a checkerboard pattern. Am proctoring and see a student looking at another paper get another to proctor to witness it. Make a note on the exam when collecting it. Sure enough they guy has the right answers to the wrong questions. No way that would happen without copying. Have to write a formal description of what happened, it goes up the chain. Nothing but a "formal reprimand" on the record and zero for that exam.

    2) Programming lab is scheduled 1/2 the class every other week. They are supposed to write code during the lab and have the help of the tutor to explain things. On second week I have people handing me a program "how does this work". I reply "didn't you just write this?" It takes me a couple of minutes to get them to admit they did not write it.

    This is university, they are paying to learn. Yet they are unwilling to work at it. I wonder what they are looking at getting out it?

    The number of taxi cab drivers with university degrees does not surprise me.

    1. Re:I caught several cheaters by Dolohov · · Score: 1

      This was my experience too. To some extent, it's because the university considers cheating such a big deal they've ratcheted up the penalties so high that they cannot bring themselves to mete those penalties out. So they lean on professors to water down their cheating claims (let alone the BS they pull with grad students who catch cheating) and the students get off with a smack on the wrist at worst, plus the knowledge that they can get away with cheating as long as there is just enough doubt.

    2. Re:I caught several cheaters by Anonymous Coward · · Score: 0

      Sure enough they guy has the right answers to the wrong questions.

      Old joke:

      A hiring manager at an Irish engineering company needs a new engineer. After going through the pile of resumes, he picks the top two candidates, an Irishman and an American.

      Since they both look good on their resumes, he invites them in for interviews. Both do equally well, so he tells them he'll have to break the tie with a ten question written test. He gives them the test and says he'll be back in half an hour to see the results.

      He comes back, looks over the test papers and says, "Interesting -- you both got nine right and both got the same question wrong. I'm offering the job to the American applicant."

      The Irishman gets upset and says, "If we're both equal and only got the same answer wrong, why are you hiring the Yank instead of one of your own countrymen?"

      The manager says, "Because he answered, "I don't know" and you answered, "I don't know, either."

    3. Re:I caught several cheaters by raddan · · Score: 2, Interesting

      That's strange. At my current university, getting caught cheating is grounds for immediate expulsion. At that school, in my experience, the problem is more with the teachers inflating grades. This happened in a math course I took, and because the teacher essentially gave everyone A's, the grade's use as a measure of understanding was completely eliminated. In my mind, our grades were meaningless. Fortunately, in my other classes, I'd had to work my ass of for those A's (or that B in physics-- whoa!).

      At my last uni, I TA'ed a course where the honors students substituted a written paper for a produced radio program, that aired on the campus radio station. For most students, this really lit a fire under their asses, and most of the finished products were outstanding. But one student, who almost never came to the radio production lab (which was required), or met deadlines, handed in a piece of work that was terrible, and about a week late. I had explained our late policy to the class beforehand, so she knew the rules-- she got an F in the honors section. After receiving her grade, she came to me, begging me to change it, saying that if she had anything less than a C average, she would lose her scholarship. I told her that I could not, in good conscience, give her a better grade. It would be dishonest and unfair to other students.

      Well, she took it straight to the academic dean for the college. Fortunately, my school had some integrity (and, I suppose it also helps that the dean was actually my academic advisor when I was an undergrad, so she knew me well). The department asked me for my rubric, asked for a quick explanation of my evaluation, and then, that was it. The grade stood. That's the way it's supposed to work, but I have to admit, it put a fear of vindictive students in me.

    4. Re:I caught several cheaters by neurovish · · Score: 3, Interesting

      I attended a school where cheating was also grossly ignored. The most flagrant example I can think of was in an intro to software engineering course where about 70% of our final grade was based on a semester-long project. Of course, the semester-long project does not change from semester to semester, so last semester's (and the one before that, and the one before that) projects were readily available. On the final day of class, each group (maybe 10 groups of 3 or 4) presented their projects. More than half of the class turned in the same project from the previous semester. Some of them actually took the time to at least change the colors on the GUI, but two or three did not. I talked to some of the students that turned in the same project the next semester and asked if anybody had called them out on it, and they all said that they got their A and nothing happened. The professor did not care at all.

    5. Re:I caught several cheaters by Anonymous Coward · · Score: 0

      I disagree with a statement you made there at the end.

      Students are paying to get a degree so that they can get the type of job their parents want them to get.

      Dont get me wrong though. Im learning more and faster today than I ever have in my entire life, and I think thats thanks to some of what I learned in college. But I havent been in college for several years now. I think that not having to worry about the courses that my university wants me to take (I didnt really want to take spanish or english courses or algebra physics), not worrying about gpa, and not having the constant stress of deadlines for projects, homework, and tests are all things which makes it a LOT easier for me to learn now that I have the basis that college provided.

    6. Re:I caught several cheaters by TheDreadSlashdotterD · · Score: 5, Insightful

      They are unwilling to learn because University wasn't really their choice. Students are told, in no uncertain terms, that they will be miserable failures if they don't seek higher education. Since society feels justified in propagating this stupidity, millions of students each year head to universities and colleges in order to grasp that golden vine, and they'll do whatever it takes to grasp it with as little work as possible. Only the students who actually want to be there know that the golden vine doesn't really exist. And they are the ones who suffer.

      --
      I have nothing to say.
    7. Re:I caught several cheaters by Rhys · · Score: 0, Troll

      I had a couple students cheating in an intro to C class I was teaching. How did I know? Let me give you a hint: neither I nor the book were teaching the K&R C style their program was in. I searched the net but couldn't find any chunks of it. So I pulled them aside when I handed it back and said, "Look, I know you cheated on this. You don't know K&R style C. But I can't find a copy of this code on the net so I can't prove you cheated. You have full marks for this assignment. However, next assignment will have as a requirement the code to be written in ANSI C style, just like the book and I use."

      And yes, the next assignment had as a ANSI C style as a requirement with a note that failing this failed the assignment. Said students also were no longer in the class after it came out.

      Pretty sad when you can't even do minor formatting editing to cheat.

      --
      Slashdot Patriotism: We Support our Dupes!
    8. Re:I caught several cheaters by kevinNCSU · · Score: 1

      I'm confused why you became disillusioned about "nothing happening" to punish the cheaters. The student already screwed himself by cheating in the first place since you had different versions of the exam, and then he got a letter of reprimand in his file so if it happened again he'd probably be kicked out or forced to take a semester off to think about it, and a zero on his exam, and if your like most colleges I assume this exam is somewhere between 20-30% of his grade, making it rather hard to pass.

      Exactly what form of punishment would have satisfied your thirst? The two students I caught were given the chance to either admit that they cheated and receive a negative 100 as a grade or have the matter taken before the academic ethics board or court or whatever they call it where they could plead innocent but. They of course chose to take the negative 100s as the board could have handed out far more serious repercussions and this was a first semester, first year course. Sometimes it's better to scare people and make them realize that this is the real world with consequences now, and then give them the chance to straighten up.

    9. Re:I caught several cheaters by Anonymous Coward · · Score: 0

      At most schools, grades are supposed to be a measure of understanding of the material. Both of the universities I have attended have, in the published academic guidelines, a table of descriptions grade ranges associated with the degree to which knowledge of the subject matter has been displayed. They also have guidelines with respect to the time limits for submission of term work. I always wonder how, with university-wide guidelines on when work must be submitted and how displaying knowledge of the subject matter translates into a grade, instructors justify late penalties. I get that it's a pain in the ass if some term work is submitted outside of the "due date", and that there's general value in having an incentive to meet deadlines.

    10. Re:I caught several cheaters by dkleinsc · · Score: 4, Funny

      Regarding your first scenario: My favorite story on that front was from my dad, who teaches math at a private high school. He handed out a midterm with multiple versions, and within a few minutes had a student raising his hand to tell him "Mike's test is different than mine!"

      --
      I am officially gone from /. Long live http://www.soylentnews.com/
    11. Re:I caught several cheaters by noidentity · · Score: 1

      Why would you care whether fellow students are cheating? That isn't stopping you from learning.

    12. Re:I caught several cheaters by dcollins · · Score: 1

      "This is university, they are paying to learn. Yet they are unwilling to work at it. I wonder what they are looking at getting out it?"

      I think this is a common misconception. For example, the majority of my college students are getting financial aid, and are therefore not paying to learn (for now, I suppose). In fact, they get health benefits and can even pocket excess cash above the low tuition. Rather dramatically changed my perception once I realized that.

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    13. Re:I caught several cheaters by Sobrique · · Score: 1

      A lot of professors don't care either - they've got their research projects they'd much rather be working on, than giving basic teaching to undergrads.

    14. Re:I caught several cheaters by quanticle · · Score: 3, Insightful

      This is university, they are paying to learn.

      That's a misconception on your part. The vast majority of kids at university are there to do whatever it takes to get that piece of paper. The goal isn't to get educated; the goal is higher earning potential by virtue of a better job.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    15. Re:I caught several cheaters by Anonymous Coward · · Score: 1, Interesting

      Caught lots of cheaters as TA, more as prof.

      As a prof, I always created new exams. Students had to write on the exams themselves and hand them in. At the end of the day, I posted answer keys on the wall. (To prevent anyone else from re-using the exam, since I might not be prof next year). I also used multiple forms with similar layout but different questions. Every exam I ever gave had some students with at least one answer to the wrong question.

      Saw lots of copying on homeworks too. Often times it was stolen, other times group work. I could usually tell who'd done the work after a few minutes talking to those involved, but proving it would have been very difficult. I could at least give those who didn't understand it zeroes, but the dept. never did much to cheaters, even when caught red-handed.

      We certainly had a few who should never have gotten degrees since they'd never demonstrated any original work.

    16. Re:I caught several cheaters by Anonymous Coward · · Score: 1, Interesting

      At most schools, at least to the best of my knowledge, cheating is technically grounds for immediate expulsion. This was certainly the case at my alma mater; however, I'll share a disappointing anecdote. Students at my university seem to be given an insane number of "second chances". I once raised an academic dishonesty concern with the Dean of Engineering, who also happened to be the instructor for the course involved; even when faced with damning evidence presented by myself and several other classmates, I was told that there was nothing that could be done. The students had not only copied code line-for-line from a Matlab example repository but also copied the entirety of the report from a researcher in the subject area who had posted his work on his website. The most lenient punishment for this is immediate failure of the course, and the recommended punishment was expulsion from the university. The Dean told me that if he failed or expelled these students it would look bad for the program and the university; furthermore, if he punished them, they would spread word back home and discourage future students from enrolling at the university (they were international students). They ended up passing the class with the rest of us. Gotta love politics. :) Posting as AC because I still attend this university.

    17. Re:I caught several cheaters by khallow · · Score: 2, Insightful

      Why would you care whether fellow students are cheating? That isn't stopping you from learning.

      It's not just learning, but also getting that diploma. It devalues the accomplishment of getting a college degree.

    18. Re:I caught several cheaters by Ephemeriis · · Score: 1

      This is university, they are paying to learn.

      Not necessarily.

      Some folks are actually paying their own way... And I think you'll find that they're generally the ones who actually want to learn... But a lot of them aren't paying their own way.

      Some of them have parents paying their way. Some of them got a grant or scholarship of some sort. Some of them just got a pile of loans and haven't yet realized they'll have to pay it off eventually.

      I wonder what they are looking at getting out it?

      If I'm being generous, I'll say that they've been told that they need a college degree to get any kind of job. They probably don't really know why they're there... It's just the next step after high school.

      If I'm being a bit more realistic, I'll say that a lot of folks have this idea that college is a four-year long party. They're just there to have fun and couldn't care much less about the academics.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    19. Re:I caught several cheaters by Ephemeriis · · Score: 1

      They are unwilling to learn because University wasn't really their choice. Students are told, in no uncertain terms, that they will be miserable failures if they don't seek higher education. Since society feels justified in propagating this stupidity, millions of students each year head to universities and colleges in order to grasp that golden vine, and they'll do whatever it takes to grasp it with as little work as possible.

      Exactly.

      Everyone wants a college degree, but most people don't know why.

      To be fair, an absurd number of employers ask for a degree even when one isn't necessary... And you'll have a hard time getting hired if you don't have one...

      But the message is very clear from day one - get a degree or you won't go anywhere.

      So you get an awful lot of folks going to college just because they're supposed to. They've just turned 18... They have no freaking clue what to do with themselves... Very little grasp of what freedom or independence mean... No direction in life... And college is just the next logical step. It's what they've been told is next. And they're really in no position to say I don't want to go to college.

      And so they muddle through a few years of college... Take some classes... Maybe they get lucky and something sparks their interest, maybe not.

      And they eventually graduate with a degree and a pile of debt.

      And that shiny new degree doesn't do much more than get your foot in the door at your first "real" job... After that nobody really cares whether you've got a degree, they just want to see the professional experience.

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    20. Re:I caught several cheaters by Anonymous Coward · · Score: 0

      As a TA I caught cheaters and did what I thought was the right thing and told the prof. They all contested it and I spent many painful hours of my life listening to people lying. It was so obvious they cheated and so obvious they were lying that the panel kept the punishments, but it was so much effort on my part I never caught anyone again.

    21. Re:I caught several cheaters by Sean0michael · · Score: 1

      You are absolutely right! A 4-year degree should not be the path everyone is forced to choose. For some, it will just be tens of thousands of dollars of debt with little reward (perhaps hundreds of thousands).

      Some people only need a high school diploma.
      Some people only need a trade school's training.
      Some people only need a few certifications.
      Some people only need an Associate's degree.
      Some people only need an apprenticeship.

      But society forgot all of that and made a 4-year degree the minimum standard for education. And what a debt-load we've created for many that have nothing to show for it.

      --
      Funtime Candy Wow! - my plan for eventually conquering Japan.
    22. Re:I caught several cheaters by masmullin · · Score: 1

      Yeah it was so unfair... Mike's test was different than mine and was easier too... totally unfair!

    23. Re:I caught several cheaters by Anonymous Coward · · Score: 0

      What really gets me is how my department (I'm a grad student) reacts.
      From what I've seen at least 3/4 grad students cheat regularly. I've had an entire class of undergrads admit that they just go into one room, write one piece of code, and then run it through various online anti-cheating software until it reports every assignment is different enough.

      Now if I were to bring this up officially, my advisor would get hell because people in his class are cheating (the students would essentially get off, because the department doesn't want to admit that most people cheat). When things like this are discovered the department publicly notes how much they support course staff and that cheating must be stopped, while privately they screw course staff and let students off.

      I can sort of get undergrads, they're here for the piece of paper, but grad students? That's just ridiculous.

  28. A ramble from the TAs view by lxt · · Score: 4, Interesting
    I used to head TF CS classes at an Ivy League school (you can probably guess which one from my job title alone). I worked both in session with undergraduates, and in the summer for the high-school/further learning program.

    Cheating in CS is terribly easy to detect. We had programs we could use to pick up anything suspect, but I never actually used them - at the entry-level I was teaching at, it was pretty easy to catch someone out. In fact, often you can complete the assignment in the time it would take you to modify your stolen/plagiarized code so as to be undetectable. Half the time you just need to google the code they submitted before you find a forum/Yahoo Answers post from the student in question, and once you've been coding a student for a while you get a good feel for what exactly is and isn't their style and their code.

    As to preventing it: there was a very simple policy at my university. You cheat, you fail. In most cases, it was rarely followed. We tended to be far more strict at the Summer School sessions, but then again, we also tended to get considerably more problems, mainly because the high school students and foreign exchange students attending didn't know better. The university also didn't really have a problem showing them the door.

    Undergraduates were more of an issue. A lot of the time, we would let them know we'd discovered it, and let it slide. Repeat offenders were usually dealt with by using some kind of grade penalty. Very rarely did students get referred for academic discipline (although this is partly due to the entry-level nature of the courses I taught. Something high-level, or with a substantial amount of original research required, would be another story).

    Finally, and perhaps most importantly - why were these students cheating? Well, honestly, I suspect because of the academic pressures placed upon them. I'd be extremely interested to compare the rates of detected cheating at somewhere like MIT, where grades are rounded up/down for GPA (ie, get a B+ and it's recorded as a B in your GPA, get an A- and it becomes an A) and at my university. Given the vast number of emails I used to get at the end of each semester from students desperate for a grade boost to help their GPA, I can see how some might have convinced themselves it was 'ok' to cheat. And maybe....just maybe...people are cheating because they're not getting the support they need. The article says the guy was taking the class for the second time. Sounds like maybe he wasn't getting the one-on-one help and extra support teaching staff should be giving him. Just a thought.

    1. Re:A ramble from the TAs view by Anonymous Coward · · Score: 1, Interesting

      I was also a TA at a major university.
      On the CS 101 final project, cheating was common. We found about 2 to 3% cheated without us really looking for cheating.
      There is some comfort that cheaters don't copy off smart people. They copy off their friends and birds of a feather flock together. Most cheaters were found by one of the 8 graders at the table saying "look at the stupid thing this guy did!" and another grader saying "that's funny, I just saw the same idiocy 5 minutes ago..."
      I eventually wrote a program to find cheaters. It just produced a hash number for each project - a function of numbers that probably wouldn't change given simple program changes. (Number of functions, loops, branches, etc. Ignored names, comments, etc.) We found a group of 3 cheaters when all their projects had the same hash number.
      The university has a strong and historical policy known as The Honor Code, which should immediately expel cheaters. However, the CS department had had a hard time winning a particular case and had given up on the The Honor System. The usual punishment was failure on the assignment and never being allowed to take a CS class again. So if a CS major cheated, they were no longer a CS major...

    2. Re:A ramble from the TAs view by Kryptikmo · · Score: 1

      Hm - it could be that he wasn't getting the support he needed. But, in my experience the people who cheat are not the type who would directly come and ask for support. Cheaters tend to be people who don't know the answers because they never really tried, and therefore don't have a huge emotional investment in the course. The cheating generally occurs as a last-minute attempt to hand in something 'reasonable' without having had to do the work.

      I've found that the students that come and ask for help directly are a little too proud to scheme off someone else's work - and that since they are willing to work at the course and come for help when necessary, they rarely need to cheat.

    3. Re:A ramble from the TAs view by grokcode · · Score: 1

      Sounds like maybe he wasn't getting the one-on-one help and extra support teaching staff should be giving him. Just a thought.

      Bullshit. This is a class in a top university with a fairly well ranked CS department. If he needed help he could have hired a tutor or went to see the prof or TA during office hours. No one is under obligation to seek him out and give him special attention - all that does is waste time on people with no initiative to understand the material, and degrade the quality of the class for everyone else. If he can't cut it he needs to change majors or switch universities.

      I graduated from a top ranked CS program and the work was brutal, but that how I learned and I wouldn't have had it any other way.

    4. Re:A ramble from the TAs view by Anonymous Coward · · Score: 0

      I used to head TF CS classes at an Ivy League school (you can probably guess which one from my job title alone).

      Team Fortress Counter Strike?

    5. Re:A ramble from the TAs view by Anonymous Coward · · Score: 0

      In hindsight, I can't see the point of grades in universities. Anything from a D to an A still graduates. It might as well just be pass/fail. I know that GPA is considered for graduate admissions, but should it be? Grades are terribly subjective and not indicative of future success. How much is undergraduate GPA weighed against GRE scores or works by the applicant that can be directly assessed by the graduate school? Grades should just go away in universities.

    6. Re:A ramble from the TAs view by metlin · · Score: 1

      Yeah, TFs have always been a pain to deal with.

      Then again, some schools are well known for their grade inflation, and letting people back in even after suspension because they're caught cheating. A recently deceased Kennedy comes to mind.

    7. Re:A ramble from the TAs view by Nov+Voc · · Score: 2, Insightful

      And a related ramble from a current CS student's point of view...

      These students aren't cheating because of pressure, or because they don't get support. They are cheating because they want a degree to get a job to get paid, without actually doing real work.

      In my last programming class, which was a simple structure and algorithm introduction, there were groups of students that shared code on every assignment. Was there not enough support? The only time I'd emailed the professor, he spent fifteen minutes helping me at two in the morning, far beyond what anyone would expect. Was there too much pressure? The computer science requirements here meant they were taking maybe five courses per semester, which were largely just "fluff" sorts of general education requirement courses. A lot of courses didn't even have homework, or an exam tougher than a few multiple choice questions. Most people that showed up to class didn't do anything more than fill the chairs.

      Not to seem like a pessimist, but students now are lazy, not strained. I know so many students that will gladly beg the instructor for extensions and extra credit at any opportunity, because they spent the weekend playing Call of Duty instead of doing the homework.

    8. Re:A ramble from the TAs view by pablodiazgutierrez · · Score: 1

      I'm curious about the Kennedy reference. Honestly, I'm not so familiar with US politics/history. Can you elaborate?

    9. Re:A ramble from the TAs view by Anonymous Coward · · Score: 0

      You sound like you haven't actually gone to college.

      > Anything from a D to an A still graduates.

      Uh, no. I don't know of any accredited school that doesn't have a minimum standard higher than D. In fact, many will kick you out for doing that poorly. My own has an overall minimum for graduation, but the individual departments have higher standards for their specific degrees. (For example, an average of C is the minimum for the entire school, but the CS department requires a minimum average of B- in your CS classes, and will force you to retake classes if you got more than one D.)

      > I know that GPA is considered for graduate admissions, but should it be? Grades are terribly subjective and not indicative of future success.

      Grades are not terribly subjective in the "hard" classes. You may think you can waltz on through a philosophy class or something, but it won't work in math, CS, science, or engineering classes. Those grades are only 'subjective' in that an A- isn't much different from a B+.

      But damn, Cs and Ds are *very* hard to handwave away and are *very* indicative of future lack of success. If you couldn't hack it in your undergrad degree, why should a grad school waste any time on you?

    10. Re:A ramble from the TAs view by khallow · · Score: 1

      The university has a strong and historical policy known as The Honor Code, which should immediately expel cheaters. However, the CS department had had a hard time winning a particular case and had given up on the The Honor System.

      This is what I see as the real reason for cheating. Namely, the consequences of cheating aren't that severe. Here, the cheater just fails a course they would have failed anyway or gets kicked out of a program that they would have been booted out of. Then they can try again somewhere else. Eventually they'll either get kicked out or slither through.

      My concern here is that while you might have a dumb cheater rate of 2-3%, there may well be a smart cheater rate several times that high. If you aren't really looking for cheating and the university doesn't really punish cheating, then that's a recipe for rampant, widespread cheating.

    11. Re:A ramble from the TAs view by metlin · · Score: 1

      I'm hoping you're joking -- are you serious?

      Ted Kennedy got kicked out for cheating, spent some time in the military, and was accepted back.

      Just look it up.

    12. Re:A ramble from the TAs view by winwar · · Score: 1

      "They are cheating because they want a degree to get a job to get paid, without actually doing real work."

      It also works. Every place I've worked there have been the slackers, the cheaters, etc. They exist because they are tolerated by management or are management.

      "Not to seem like a pessimist, but students now are lazy, not strained."

      Students have always been lazy. It's just easier than ever to be so.

    13. Re:A ramble from the TAs view by pablodiazgutierrez · · Score: 1

      Uhmm... no, I'm Spanish and I'm only vaguely familiar with all but the highest profiles in US politics. Did you know the King of Spain killed his brother in a gun accident? I bet you didn't. But thanks for replying.

    14. Re:A ramble from the TAs view by metlin · · Score: 1

      Well, actually I did - but that's because my roommate was Spanish. Well, actually he was from Cataluña (Barcelona), but we did talk a lot about Spanish history. :)

      But anyway, I wasn't meaning to phrase that question out of incredulity; I just wasn't sure if the question was sarcastic or not.

      Back to the topic at hand, funnily enough Ted Kennedy cheated in Spanish at Harvard and asked a friend to take the exam for him. He was kicked out, but after spending a couple of years in the US Army, he was readmitted for demonstrating "good behavior".

    15. Re:A ramble from the TAs view by eyore15 · · Score: 1

      I each HS ... your problem is that it's my problem. Cheating here is rampant, especially in the honors classes. It seems the more important the grade, the more cheating we see. If we follow the guidelines for dealing with a suspected teacher, mom just calls the department chair, and the penalties no longer apply. Or if you have the right last name. I suspect that it's become so second nature to them that they just presume cheating will be OK in what comes next.

  29. CS by Anonymous Coward · · Score: 0

    Man, I thought this article was about Counter Strike...

  30. He performed the operations out of order by Shivetya · · Score: 1

    The new method is to be declared a criminal before entering politics.

    It has been adopted because it is much more efficient and sets the standards lower.

    --
    * Winners compare their achievements to their goals, losers compare theirs to that of others.
    1. Re:He performed the operations out of order by Anonymous Coward · · Score: 0

      Neilette: 'We put all our politicians in prison as soon as they're elected. Don't you?'
      Rincewind: 'Why?'
      Neilette: 'It saves time.

      -- Terry Pratchett, The Last Continent

  31. Not sure about that strategy... by 8tim8 · · Score: 1

    >One interesting strategy discussed is for the professor to make the final count for more of the final grade each time cheating is discovered.

    I don't teach CS but I do teach college-level history, and I think that would cause some problems. For one thing (if I understand what they're saying), essentially everyone's grade changes whenever even a single student is caught cheating. If you aced the midterm that was 40% of the grade, well, sorry, now it's only 30% of the grade and you'll have to make it up on the final. While cheating is, obviously, a bad thing, I don't think the entire class should be made to suffer because of it.

    1. Re:Not sure about that strategy... by donaggie03 · · Score: 1
      This idea definitely wouldn't fly at the college I went to; the course syllabus always contained a table with the assignments and the grade percentage that each was worth. The course syllabus was basically seen as a contract between the professor and his class and it couldn't be changed willy nilly. I suppose it would work if this system were incorporated into the syllabus . .

      Another problem I have with this is it makes the cheater the enemy of the rest of the class. What exactly is this supposed to accomplish? Getting the cheater beaten up at the bar next Saturday? There's an official system to deal with cheaters. It is there for a reason. Use it.

      --
      Three days from now?? Thats tomorrow!! ~Peter Griffin
    2. Re:Not sure about that strategy... by RogueyWon · · Score: 1

      If I were part of that class, I would be scrupulously avoid cheating myself (don't want to be suspended), but would take every possible opportunity to encourage my class-mates to cheat (and get caught).

      I've always performed better in exam situations than at course-work. I work much better when I have an examination hall dumping adrenelin into my system. I've seen plenty of research that suggests that I'm by no means alone in this, with males being particularly likely to perform better in exams than coursework.

    3. Re:Not sure about that strategy... by TheRaven64 · · Score: 1

      It seems to be what happens for the student caught cheating anyway. They get 0 for the coursework, so they need t higher score in the final to get the same overall grade.

      --
      I am TheRaven on Soylent News
    4. Re:Not sure about that strategy... by kbielefe · · Score: 1

      I agree. I like the solution my data structures professor had better. In that class, your final grade couldn't be higher than one letter grade above your average exam grade. Essentially, exams were only weighted heavier for students with large disparities, presumably those more likely to be cheating on assignments, but there was still a fair bit of leeway for people who don't test well.

      --
      This space intentionally left blank.
  32. CS doesn't require cheating by erroneus · · Score: 2, Interesting

    It requires a personality trait. If you don't have it, then you shouldn't be taking that course. The last thing the workforce needs is another cert chaser who has no talent and no skill in that line of work.

    And frankly, if you have that personality trait, then cheating is far from necessary. CS isn't so much about memorizing as it is about understanding the material. There are often many correct answers in CS.

    1. Re:CS doesn't require cheating by IndustrialComplex · · Score: 1

      There are often many correct answers in CS.

      And that is what killed me when my CS professor handed me an exam with mostly true/false questions. (I described it earlier)

      She wasn't a very good professor.

      --
      Out of modpoints but really liked a post? 1BDkF6TtmmeZ3yqXbz9yhdYVqRYnwFoXDj
    2. Re:CS doesn't require cheating by Bemopolis · · Score: 1

      Not everyone who takes a CS class is a CS major.

      --
      "I guess the moral of the story is, don't paint your airship with rocket fuel." -- Addison Bain
  33. CS by sirber · · Score: 1

    Always easy to cheat in Counter Strike ;)

    --
    Be or ben't
  34. It's probably harder now than it was... by Phil_at_EvilNET · · Score: 1

    ...back when I was in college. Part of my CS studies included classes that involved coding for the AS/400, the VAX/VMS and COBOL. I had the good misfortune of being at a school that was rather relaxed in terms of security and almost everyone left their "password" the same as their user ID, which just happened to be the same name used for their personal directories. It didn't take much time to sort thru every possible directory and copy every possible file you could to "learn from example". During the next semester, I managed to finish all the labs for my first course of C programming in 3 weeks, and I got a "B" on the final. Did I cheat? Yeah, I guess you could call it that. Did I learn anything? Sure did. Take security seriously.

    --
    To avoid corruption, one must remain dishonest.
  35. dont fail students for cheating by Nidi62 · · Score: 1

    You dont fail students for cheating. You fail them for getting caught.

    --
    The only thing necessary for evil to triumph is for it to be pitted against a slightly greater evil
  36. Yeah, it's very easy to spot. by Sowelu · · Score: 1

    I TA'd for an Intro to Java course. (Say what you will about Java being a crummy language to start with, or early classes being slow--our second-year-plus classes were brutal.) For a fair chunk of the first quarter, programs were basically identical...but after the point when we WANTED you to write identical, correct code, cheating sticks out like a sore thumb. I don't know the details of our cheating detection program, but it operated partway into the compilation step so it sees through superficial changes. Change a comment? Wouldn't matter, it wouldn't notice. Change your variable names? Same thing. Declare your variables in a different order? Yeah, it'll spot that too. You have to actually start changing the program flow--in significant ways, no less!--before it stops tripping on your program. And even then, it'll often flag similar programs as "hey, a human should check these out". Cheating happens a lot more than you'd think in CS classes. And in my department, at least...I know that we sent every last one of them to the Dean.

    1. Re:Yeah, it's very easy to spot. by nedlohs · · Score: 1

      It's almost impossible for cheating to happen more than I'd think in a CS class.

      Back when I taught I used a really simple plagiarism detection program - so simple that implementing it was one of the class assignments.

      You don't need to do any of the advanced stuff since the people who cheat are too either too dumb or too lazy to hide things well.

    2. Re:Yeah, it's very easy to spot. by kbielefe · · Score: 1

      Wouldn't you get a lot of false positives for intro-level assignments compared that way? There are only so many ways to write a simple program.

      --
      This space intentionally left blank.
  37. are you marked as a cheater for reusing your code? by Joe+The+Dragon · · Score: 1

    are you marked as a cheater for reusing your own code?
    Under that coding checking system?
    How does the code checker not flag common parts and it's up to the professor to know that and you just hope that some dumb TA or sub knows as well or you may be marked as well.

    any ways pro codes reuse code and copy and paste others work all the time and most of the time there are no 1 man coding out there for a lot of software.

    also some times part of the job is working off of some old code based and adding to it / hacking it to work with newer stuff.

  38. Easy. Wallhacks, aimbots, all at hand's reach... by SharpFang · · Score: 1

    oh, this is not about CounterStrike?

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
  39. Very easy, and very easy to get caught by ThinkingInBinary · · Score: 2, Insightful

    I've been TAing every semester since I got to college, and every semester we tell people that we run their submissions through MOSS (the canonical code plagiarism detector, hosted at [and perhaps developed at?] Stanford). We exhort that it's really not worth their trouble to try to get their code past it, and that they really ought to just contact the course staff if they're in a bind, as there's really nothing worse for them than getting caught cheating. And every semester, we find several pairs of students who have copied each others' code. Sometimes it's a literal, word-for-word copy (comments too) with the name changed (or occasionally without!); sometimes it's the same structure with different comments, suggesting they just sat side by side and wrote the lab together.

    I'd really like to see the penalty for cheating to be an immediate failure in the course, if not expulsion. The idea that honest students spend hours working on an assignment, and then someone who didn't plan their time well, or doesn't get things as well, or is too lazy to ask for help thinks they can just not do the work and get the same grade is offensive, and cheaters should be punished accordingly.

    1. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      I am a CS TA also, I I can honestly say that I have caught people cheating in every single class for which I have graded homework. I recently watched the movie "Stand and Deliver" and I was a little bit disturbed by how self righteous the students were after being suspected of wrongdoing. Obviously people don't realize how big a problem cheating really is. The percentage of cheaters is staggering, suggesting that most of them have learned how to get away with it. I have even had the same students cheat in different courses! I think it is like a numbers game for them where they weigh the risks of getting caught. Some professors take off points, while others just do nothing. At least one professor who did nothing had preemptively made the final worth 80% of the grade. Needless to say there ended up being a ton of obvious cheating in his class.

    2. Re:Very easy, and very easy to get caught by jayme0227 · · Score: 1

      I have no love for cheaters, but I think there is entirely too much focus on grades in schooling. Who cares if the cheater got a good grade if he worked with his friend? In a university environment, odds are that students are paying for their education. If they want to waste their money, why not let them? When you catch a cheater, just give him a 0, mark it on his transcript, and move on.

      If you are truly focused on helping your students get the most out of their education, what you should be concerned about is whether or not he learned the material. To me, the best solution would be to have a cheater do a unique assignment in a lab with an authority figure present. This way you have an effective method for both punishing him and ensuring that he learns the material.

      --
      But then I realized the cable was blue, so I only gave it one star. I hate blue.
    3. Re:Very easy, and very easy to get caught by Kryptikmo · · Score: 1

      I teach an entry-level computing class in a large European university. So long as it doesn't comprise the entire assessment, students sitting together and working the lab out is a good thing, I think. It's how most of the real world works, after all. You need to have some individual assessment, but working in small study groups to crack a problem is probably the best way to learn. Having the peer-pressure to do the work, and to contribute to the group, can really encourage a student to surpass the effort that they may have been happy with individually.

    4. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      Writing code side-by-side with another person is superior to solo-coding in all aspects.

      They bounce ideas around. Talk about what they like or dislike in proposed solutions. If there's no clear winner, they will negotiate and agree on some trade-off. They pick up coding techniques from each other. They talk about technique. Talk about style. Does any of that sound like a bad learning experience?

      Anyone who has paired will tell you the resulting code is higher quality compared to what either member of the pair could produce individually. Is higher quality code a bad thing?

      The future of coding is teamwork, no longer the anti-social hacker.

    5. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      I've been TAing every semester since I got to college, and every semester we tell people that we run their submissions through MOSS (the canonical code plagiarism detector, hosted at [and perhaps developed at?] Stanford). We exhort that it's really not worth their trouble to try to get their code past it

      I always wonder how many people thought they "cheated" by copying code but then ended up changing so much they actually did end up making their own unique code and learning a lot. I know, probably rarely would happen, but just thinking aloud.

      I'd really like to see the penalty for cheating to be an immediate failure in the course, if not expulsion.

      Now I don't want to advocate cheating but I don't know how well it does for a person to give them a "one strike and your out" deal. As someone pointed out earlier, the pressures of certain universities can be quite high as well as the pressure from just your family and friends. This can push even the best students to think about cheating and I'm sure some have at some point. I think a fat zero on that assignment is mandatory and a firm warning of "we told you before not too" can scare most people straight and not totally screw them over. I know I know, some would say a zero for the course should be a good scare as well but that can sometimes also totally destroy people which I don't think is helpful. A zero on the assignment and a firm warning I would think is good, after that if they do it again, yes, fail their ass cause they won't learn.

      In a sort of back asswards way I'd think that cheating and getting caught is almost a learning experience on it's own. You're constantly testing them throughout the semester on this test. They get the material ("Don't cheat, we will catch you"), take the test ("Hmm, maybe I could cheat"), and learn that that was wrong ("Uh no, don't cheat"). Give them a zero for that test and if they fail it again, then they're gone. Well, you're not really ever giving them the test, but I think you get where I'm going with the idea.

      But I'm not a teacher, just thinking aloud.

    6. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      Yes, I love the idea that if two people work together to code something, they should fail. Teamwork is definitely a sin.

    7. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      > suggesting they just sat side by side and wrote the lab together.

      This is an excellent way to learn. You should probably encourage it for routine assignments. If the students aren't learning from it (which they almost certainly are, and if well paired probably learning more much than if they struggled through it alone), then they'll get horrible exam scores. Weight the exams accordingly.

      From personal experience working in groups, I found I didn't really understand anything until I could explain the nuances of it to a classmate. I learned many of those nuances from other students who helped explain things to me. Working in groups so students teach each other is a very efficient, very thorough, way to learn. It keeps students better engaged in the topic, they come up with better solutions, they understand it more thoroughly, and last but not least, they save your time by answering questions for one another.

      Seriously, encourage students to work together! If you do, you're doing everyone a favor. When your students get hired down the road, their employers will thank you.

    8. Re:Very easy, and very easy to get caught by cervo · · Score: 1

      The problem with these plagiarism detectors is that often for simple programs there are common ways of doing it that everyone knows. Ie for selection sort, how many ways can you write it? If it keeps growing based on other people's submissions, I'm sure someone wrote it similar to me. Also java.sun.com/tutorial is full of examples. Quite often you just cut/paste and modify an example that does what you want. Even if you were to write per scratch from the tutorial you'd end up with something similar to their example.

      Quite often in programming you see many small example programs/problems through books/tutorials and string them all together in one program to do what you want. If you all used the same textbook, it is highly likely that some portions of the code will be identical. Ie eliminate duplicates from a list...Well you have to sort it first, the textbook has several sorts, but in class Quicksort was discussed as the quickest and the textbook has an implementation. Now any halfway intelligent student will just copy the book's quick sort implementation. Is that cheating? I don't think so. Even if I was to write a bubblesort from scratch, it would probably be something that I am remembering from some CS textbook or another. Is that cheating? Again I don't think so.

      I tell my friend Jim to do the program for me. Is that cheating? Yes. Can you always tell by using a cheating program? I don't think so. Take the sorting algorithms, they often have the same loops, just slightly different indexing/variable names between them. It seems like a cheating program would flag up false positives.

      I think a better approach is to assign a program. And then to ask questions about it on the exam. If someone has no clue how their code works, it is a sign that something is wrong. That combined with a positive on a cheating program may be enough to merit a conviction. And on the bright side, people who did the assignment would see extra rewards for doing the homework.

    9. Re:Very easy, and very easy to get caught by ColoradoAuthor · · Score: 1

      The surprising dark side of automatic failure/expulsion: it can discourage the institution from investigating accusations of widespread cheating.

      True story 1: TA'ing at an institution with a mandatory-failure policy, I noticed two students copying each others' assignments. Thing was, they were mid-career professionals married to one another. What to do?

      True story 2: Friends taking an "introduction to computers for business majors" class came to me for tutoring. The assignments were something like "Week 1: Write a gradebook program using file I/O and arrays; Week 2: Write a solitaire game using linked lists; Week 3: Write a tree sort using recursion; Week 4: Add a column of 5 numbers using Excel." Remember, this was for folks who were at the "What is a text file and why would I want to save one?" stage (as evidenced by the Week 4 assignment)! The assignments were identical from semester to semester, and the majority of students--especially the Greeks--were getting A's on these assignments.

      It was obvious to me that there was only one way for students to succeed in the course: widespread cheating. Visiting the computer lab, it was easy to visually observe the cheating. So I went to the dean. Accepting my story would have meant a big investigation and ultimately the automatic expulsion of a large fraction of the student body, so I was abruptly informed that they would not tolerate baseless allegations of "such a serious nature." Action would be taken only if I could supply incontrovertible proof, including specific names and dates, and only if I would personally testify against each accused student at the hearings. (They did, however, change the assignments the next semester.)

    10. Re:Very easy, and very easy to get caught by D+Ninja · · Score: 1

      We had something similar at my university as well. The line for line copying is understandable - cheating is easy to spot then. But, I was always concerned with the "copied structure." With a large enough class (or classes as the case for intro CS class would be) and a simple enough problem, structures should typically look very similar. I wonder how programs like MOSS account for this.

    11. Re:Very easy, and very easy to get caught by cerberusss · · Score: 1

      ThinkingInBinary says:

      I'd really like to see the penalty for cheating to be an immediate failure in the course, if not expulsion.

      I think jaywalking should be punished with a shot to the head, delivered in the local football stadium.

      Seriously, haven't you done anything stupid in college? This zero-tolerance mentality is starting to sound like "eye for an eye", and we know what Ghandi said about that.

      --
      8 of 13 people found this answer helpful. Did you?
    12. Re:Very easy, and very easy to get caught by tsalmark · · Score: 1

      It can be argued that the primary goal of going to university is to learn, in which case cheating is only hurting your self. But in the real world, most people that graduate start using their little piece of paper to justify a higher wage than someone else. At which point the cheater is also hurting there future employer and the person they beat out for the job.

    13. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      It was actually developed at UC Berkeley by the professor who took it with him when he moved to Stanford. I was a TA for him at Berkeley when we used early versions of it.

      Even then, the output was pretty incredible, giving essentially a sorted list of all pairs of solutions weighted by the amount of similiarity they had. So for a 200 student lower-division lecture, you could run through all 200-choose-2 combinations. Or better yet, feed it retained submissions from previous years and get 600-choose-2 comparisons done to catch people turning in last year's work on an evolving term project definition.

      You didn't bother with projects that had a small percentage of similar code fragments here or there, but just worked your way down the list starting with the most flagrantly common ones. For each comparison you could see a side-by-side comparison of the matching code regions, so a human decided whether it was really copying or just a bit of idiomatic control structure one would expect.

    14. Re:Very easy, and very easy to get caught by shentino · · Score: 1

      Herein lies the problem:

      1. You are told not to collaborate
      2. You do it anyway

      Sounds like a run of the mill case of not doing what the fuck you're told.

      Also known as INSUBORDINATION, which almost always gets you canned no matter what line of work you go into.

    15. Re:Very easy, and very easy to get caught by Anonymous Coward · · Score: 0

      ThinkingInBinary says:

      I'd really like to see the penalty for cheating to be an immediate failure in the course, if not expulsion.

      I think jaywalking should be punished with a shot to the head, delivered in the local football stadium.

      I agree, so long as police officers not officially on duty and in hot pursuit, complete with independently logged radio call in to base to report it are similarly executed for violations. Ditto for government officials kids too.

      Too harsh? Then don't punish me or a black male teen for it either.

    16. Re:Very easy, and very easy to get caught by SheeEttin · · Score: 1

      sometimes it's the same structure with different comments, suggesting they just sat side by side and wrote the lab together.

      I've always been confused as to why this is considered cheating. If you and another student cooperate to attack a problem together, why is that a bad thing? You both (supposedly) learn whatever was being taught... It's not plagiarism, either.

    17. Re:Very easy, and very easy to get caught by sYn+pHrEAk · · Score: 1

      I realize that you wouldn't expect to see it every time, but if every student is writing a program that should do exactly the same thing, it has to be pretty likely that 2 or more of them will come up with very similar structure. How can you really tell that it's cheating? Especially if the professors are anything like mine where they tell you exactly how many variables, functions, arguments, etc you're supposed to have. The more specific the assignment, the more likely that students will independently write very similar code.

      How many different ways can you write a C++ program that takes an integer between 0 and 255 and outputs it as 8 bits of binary, writing 3 functions: pow(int x, int y), validate(int x), and convert(int x)?

    18. Re:Very easy, and very easy to get caught by davidgay · · Score: 1
      through MOSS (the canonical code plagiarism detector, hosted at [and perhaps developed at?] Stanford)

      Hint: it's hosted on its author's web page (surprise!), and the next-to-last link should make it clear where it was developed...

      David Gay

    19. Re:Very easy, and very easy to get caught by ThinkingInBinary · · Score: 1

      This is only beneficial if both partners in the pair know what they're doing. In a classroom environment, it's quite possible that one of them will know entirely how to do the lab, and simply walk the other through it.

    20. Re:Very easy, and very easy to get caught by ThinkingInBinary · · Score: 1

      Teamwork only works if all the team members can contribute. These labs are where they individually learn the skills they need. If we let them work together, some of them won't end up actually learning the material because their partner helped them through it, and then they'll pass the class when they don't know the material.

    21. Re:Very easy, and very easy to get caught by ThinkingInBinary · · Score: 1

      We do encourage our students to work together on some projects, but we also need individual assignments to test students' understanding. When they're just learning how to program, we can't risk that one partner in a group won't really get it -- we need to make sure they all know how to do the assignments individually.

    22. Re:Very easy, and very easy to get caught by ThinkingInBinary · · Score: 1

      True story 1: TA'ing at an institution with a mandatory-failure policy, I noticed two students copying each others' assignments. Thing was, they were mid-career professionals married to one another. What to do?

      Absolutely fail them. Why does their marriage have anything to do with academic honesty?

      True story 2: ...

      I'm not sure what I'd do about this, although it sounds like the eventual outcome (new assignments) was good.

    23. Re:Very easy, and very easy to get caught by ThinkingInBinary · · Score: 1

      ...just to clarify, our course policy said that student work was supposed to be done individually. If students need help, they are supposed to come to office hours or email the staff, not ask a friend.)

  40. My experience with cheating by Anonymous Coward · · Score: 1, Informative

    I was an undergrad at a small state school at a time when CS was the ticket to a guaranteed well-paying job. The department at the time was growing in the tens of percent per year due to the rate of people joining the program. Unfortunately, cheating rapidly became so rampant that when I graduated, as few as 10% (by one professor's estimates) of those graduating could actually write a compiling program in any language. The department was set up from the start in a way that encouraged students to copy code. The introductory class in Java consisted of copying a professor's code off of an overhead and running it for credit, so that only students that started with an understanding of Java actually left introductory CS with an idea of how to write a Java program. Fast-forward to my senior year to see just how bad the problem actually was:

    One professor, upset with rampant cheating, suggested that a second-year competency exam should be given where students are expected to write programs to do something basic like a sort or search in an environment where they were supervised in order to prevent cheating. Professors more concerned with the growth in the department and with the influx of funding were so angry about this suggestion that they nearly came to blows.

    In a senior-level assembly programming class, a student came to me for help because he didn't understand it. Looking for an analogy he'd understand, I started going backwards through everything we'd ostensibly learned in the program asking, "Do you understand this? Can you do this?", and the response to each question was no. Finally, I came to, "Can you write a Hello World program in Java?" He responded, "No." At this point I told him that there was no way I could help him and that he'd probably want to consider retaking the introductory courses to CS. He started crying. It is really pathetic to see a grown man with a wife and kids cry. I asked him to stop, suggested that he reflect on how this came to be, and consider a different career since he'd never survive as a programmer. He asked me if he could make a copy of my notes and I agreed. The next day, he and about 12 other foreign students handed in photocopies of my notes (which weren't even a functioning assembly program) with my name still on them. They all got an A on the assignment, which the prof had obviously never even looked at.

    For a larger sample, consider our senior project. We were assigned groups of four students to write a complex program over two semesters. Each group had to meet with a faculty advisor every week, and I was usually the only one of the four that actually showed up. Incidentally, I was also the only one actually working on the program since the rest of my group simply wouldn't respond to e-mails for months at a time. In the last weeks, desperate to show that they had done some sort of work, the rest of my group came to me begging for something to do. I told one to write some HTML for the web front-end of my program, and asked the other two to work together to use the API that I'd developed in a user-friendly GUI. The results were hilariously bad. The HTML I was handed was the department web-page with some images and text changed. The GUI was the e-mail I sent them with some random pieces of Java and C++ sprinkled in here and there. When I brought this to the attention of the prof, he agreed that my group had done essentially nothing and passed them all. The major observation here is that out of four randomly selected students, the only one that could even provide something that worked had copied it from the department web page. Further, most of the other senior projects that I saw that day looked like something I could have slapped together in a couple of hours.

    The moral of the story is that, at least in the early 2000s, cheating had become easy due to the easy availability of code, apathy on the part of the faculty, classes built around a fundamentally bad premise, and that the department was more interested in funding than producing qualified students. I don't know if this is still the case, but this article leads me to believe that it may still be.
       

  41. Algo by Broken+scope · · Score: 3, Insightful

    There are only so many ways to write a Las Vegas Algorithm when the teacher counts off for not following the algorithm as stated in pseudo code in the book.

    Then he wants you to structure it a specific way. Then he wants a certain input. Then he wants a certain out put.

    By them time your done, the only part of your program you get to "write" is the gui to display the output.

    Oh and it has to be in the prof's preferred language, java.

    So you end up with alot of remarkably similar programs, especially when the teacher has all these style demands and the same prof teaches students 2 or 3 classes in and everyone starts naming classes and methods the way he does.

    --
    You mad
  42. Stevens Institute in Hoboken and Internships by JakFrost · · Score: 1

    I was working at a major investment bank around the year 2000 or 2001 and my manager and I interviewed candidates from your school, Stevens Institute in Hoboken, for a summer internship that year. We came back with three male interns for a Windows Server Administration department who I worked with personally. Their internship was pretty good for us but kind of boring for the kids as we'd see them spend more time on the Internet browsing than learning how to do real work, then again I don't blame these kids since corporate server work is pretty dull from their perspective. We took the interns along with us on all the interesting projects and support cases and even gave them long term design and coding projects to do during their term. We got some help out of their internship and they got a taste of what it is like to work in a major corporation over a fairly easy summer.

  43. Cheating - remove the incentive to cheat instead by janoc · · Score: 2, Interesting

    I have taught several introductory CS courses and to be honest, I was not interested in playing policeman and checking whether students are cheating or not. Instead, I have established a two tier system: - For homeworks that had to be turned in, these were corrected by the students themselves. I did some spot checks to warn those who were cheating and to ensure that the corrections are up to par, but didn't really put much effort into chasing cheaters. The homeworks were primarily a feedback for the students and an opportunity to learn. However, to give them an incentive to actually do them, they could pass the exam orally in advance instead of a practical programming exam if they had 80% of homeworks right. That was strong motivation for many of them, because they perceived the oral exam as easier (even though in reality they had to do much more work over the semester for it). Now, the purpose of the oral examination was simple - to establish whether the homeworks were actually done by that student or not. In my experience, if someone was cheating, he didn't have a clue whatsoever what the code he has handed in does. At best, he could memorize some superficial stuff and do some hand-waving over it. One or two targeted questions over the details of the assignment has always uncovered this. No need for any computerized code comparison tool (which would be always gamed) or tiresome reviews of the homeworks. - For the regular exam which was always written, practical programming assignment on a computer in the lab (CS exam on paper?? WTF?), I have allowed the students to bring their own code snippets (e.g. from homeworks), use their books, even internet. This essentially makes all what would usually be considered cheating allowed, lessening the burden on me - I did not have to spy on them whether or not they are cheating. My reasoning was that the students should demonstrate practical knowledge how to solve problems, not whether or not they have memorized stuff (which is what the exam would be about if the books were forbidden). Now, of course, if the student didn't learn anything, the books will not help - they would spend most of their time searching for information and run out of time. One disadvantage of this approach is obvious - it puts a bigger onus on the examiner to prepare meaningful exams. Assignments like "Implement quicksort" are useless, because the students can find them ready made online or in the book. On the other hand, I do not think it makes much sense to examine whether or not a person can implement quicksort - it is not a real-world problem. Better give them an assignment where the quicksort needs to be used - the clueless one will not find it online so he cannot readily cheat and the smarter one will see the similarity and solve the assignment without problem. To conclude, I do not believe in the various software to catch cheaters. Especially not in CS - the students are very smart and will be always able to game it. If the teacher is doing their job, this is not needed.

  44. Re:which snappy comback to choose? by BForrester · · Score: 2, Funny

    A - You're talking about CS students here. No need to include the possibility of "she."
    B - Is that you, Tiger?

  45. At my state school... by duffbeer703 · · Score: 1

    It was easy to cheat if you were an Asian, and you cheated using a foreign language. In one egregious example, some students were sharing a graphing calculator with study material loaded on it. The professor kicked them out of the exam, but was brought up on charges for racial insensitivity and the students were allowed to retake the test.

    --
    Conformity is the jailer of freedom and enemy of growth. -JFK
    1. Re:At my state school... by jittles · · Score: 1

      Did you go to CSU Fresno? Although it was usually people speaking Punjabi... and they would actually cheat verbally on the tests in this language. My teacher got so pissed that he wrote an impossibly hard final for that section of the class. Everyone who took it failed it. Lucky for me, I had two finals at the same time and I took my final with the other section.

    2. Re:At my state school... by duffbeer703 · · Score: 1

      No, I went to a SUNY school.

      I found it really outrageous that this professor was successfully accused of being a racist -- which is an accusation that carries alot of weight and can affect tenure. Talking, passing a calculator that is essentially a computer and cheating isn't a cultural or racial issue. What kind of message did that send?

      At the same time, I observed plenty of cases where the university (not the academic staff) engaged in very blatant gender and racial bias that was ignored.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
  46. Slap on the wrist? by Pedrito · · Score: 1

    One interesting strategy discussed is for the professor to make the final count for more of the final grade each time cheating is discovered.

    Another interesting strategy is to fail them out of the class. There's no excuse for cheating. The punishment should be severe. Especially if it's something obvious. For example, when I was in school, some moron managed to get a copy of my code for an assignment (possibly a copy I left on the hard drive). They were so stupid, they didn't even remove the comments from my code, including the ones with my name. Given that I was getting an A in the class and the other person was doing pretty poorly, the professor had no question about who wrote the code. His only question was, how was I connected with the person. I was like, "Who are they?" I didn't even know the person and fortunately the professor believed me.

    But the point is, they could have hurt me by their cheating. If the professor thought we were in cahoots, I could have been punished for merely being thoughtless and leaving a copy of my code on the hard drive. The cheater should have been failed out of the class, as far as I'm concerned, if not suspended or expelled. I busted my butt in college and never cheated and I observed a great deal of cheating. It's completely unfair to the rest and I have no tolerance for it.

    1. Re:Slap on the wrist? by VisiX · · Score: 1

      Same thing happened to me. The guy across the hall from me got my code from my roommate because he "just needed a little help understanding the assignment". When I was "caught cheating" I told the professor that I had no idea how he got my code and that I had no reason/opportunity to cheat (I turned my assignment in the day it was assigned). Unfortunately, they didn't believe me, and told me that unless I could get the "other cheater" to admit that he stole my code without my knowledge I would be failed out of the course.

      I was furious of course. I went back to my dorm and found the cheater. First appealing to logic (we're both failing anyway you might as well just tell the truth) and then threatening to destroy him (I started listing off all kinds of horrible things I would do). Eventually I got him to admit it, and even though the professor still didn't believe me they were forced to allow me to continue since I would have won had I appealed their decision.

      After that I never left my computer unprotected, never used network drives, and never helped anyone with code (I'd answer questions but I would not view or contribute code, EVER). This was at RPI in Troy, New York. If you are a cheater who is thinking about attending there, you might want to consider another school.

    2. Re:Slap on the wrist? by Anonymous Coward · · Score: 0

      ... and if you cheat, don't EVER consider taking a course by Dave Hollinger.

    3. Re:Slap on the wrist? by shentino · · Score: 1

      And you got a free education in politics, which you really do need to deal with in the real world, sad to say.

  47. Depends how CS101 goes by kiehlster · · Score: 1

    We had the case of redundant solutions in our 101 classes, where everyone came up with the same solution to the same problem even though we didn't copy off each other. After that, the professors didn't seem to care because they decided the homework problems were so simple that anyone could code the same solution without collaborating. I certainly was honest, but when comparing solutions with classmates, it became pretty apparent how easy it would be to cheat.

  48. Georgia Tech by gtarget · · Score: 1

    I am a student at GT, and the MATLAB class that all the Engineering majors have to take is rampant with cheating. Out of a class of 100 people maybe half that do the assignment, they just get some 'smart' kid to do it and they all just submit the exact same code (minus changing their name) - the instructors don't even bother to look for cheating. However, in the CS dept, in the classes, the TA's often will read your code, so you aren't really able to get away with it.

  49. Punish-the-group theory... not so good by adosch · · Score: 3, Insightful

    FTFA, I understand the argument of, "Your friends want to cheat, great. Good luck on my uber-weighted final worth, now, 102% of your final grade", and I am personally not a fan of it. I've seen that type of methodology applied at the 101-level and gen-ed classes but I just don't like it at any level as it applies to college. IMHO, I paid for my schooling with the G.I. bill and the rest of it in loans and of course it would piss me off when I'm putting in hard, valid work in a class and not cheating to be punished for what others are doing. If people cheat and don't take the class seriously, the Mr/Mrs Professor should deal with that student accordingly and make sure it qualifies for an automatic failure of the class. I had professors in college that has a very low threshold for that type of behavior and the student would learn (or mom and dad fronting the college bill every semester would learn) that taking classes over and over will only make you either a 7 year senior or a drop out. Furthermore, I don't like how the professor gives up his authority and puts a layer of discipline on the students by punishing them. Is he looking for a militaristic approach? Does he think all the kids in the dorm are going to gang up on "the cheater" and give him/her a blanket party? Absolutely not.

    However, when I started working in the real world in the Information Technology field, I never knew that this "group-punish" methodology would apply at most of the jobs I've been at with substantial perks (e.g. Work-from-home a good portion of the week, very flexible and accommodating work schedules with the option to make up time whenever).

    To me, it just reminds me of being treated as less as an adult and more like a 2nd grader having to lay their head down on their desk for someone talking in the back of the classroom during teacher instruction time.

    1. Re:Punish-the-group theory... not so good by pavon · · Score: 1

      I've had the same problem in my graduate level classes. The foreign students just can't seem to get it through their heads that they need to do their own homework. As a result, the professors have been forced to put more and more emphasis on exams, especially for the core classes.

      This is really difficult for me, as I have never been a fast worker. In my undergrad, I usually got one of the best grades on the exams, but was also one of the last to finish. The first exam I took last semester, I got a 57% - which amounted to 95% on the 6 problems I finished and 4 which I didn't even have time to start. I've gotten better at studying for the tests knowing that I have to finish them in 1/6 of the time I spend on comparable homework, but it is still frustrating to me.

      The other unfortunate aspect is that most of the foreign students have a relatively strong background in theory, but have difficulty applying it. This emphasis on exams just reinforces that and doesn't push them to improve where they are weak.

    2. Re:Punish-the-group theory... not so good by Anonymous Coward · · Score: 0

      Don't go to law school. For most classes there's a single exam, worth 100% of your grade, and grading is curved. Personally I prefer it this way. It means I'm chiefly responsible for learning the material without having it spoon-feed to me in bite-sized assignments. The classes that cause me the most grief are the ones with weekly or semi-weekly assignments. Sometimes one week I'll want to focus on a particular class, but because of the intra-semester assignments I have to interrupt that immersion.

  50. cheating in CS by dnaumov · · Score: 1

    I thought VAC was pretty decent in preventing cheating in CS and Valve has been banning cheaters left and right?

  51. as a CS professor i caught several cheaters by schleprock63 · · Score: 1

    i encouraged collaboration in my programming assignments, but i was very clear in that the final work was an individual effort. in programming, it was rather easy to find people that were cheating, even if they tried to mask it by changing variable names. when the blocks of code line up, the formatting is identical, it's not hard to find the cheater. in the real world (of which i am now a part of) programmers do collaborate, but in the end, some individual needs to produce the end product, and if all they learned in school was to copy their friends work, they will be useless, IMHO. schleprock

  52. Slippery slope by toastyy · · Score: 1

    As a college student cheating in any programming class is the dumbest thing you can do. Sure you get your homework assignments in but the exams your screwed. I knew people who near the end of the semester couldn't even create a new class in Java. And these are the same people with Java programming on their resumes

    1. Re:Slippery slope by quadelirus · · Score: 1

      As an entrance exam to our algorithms class we ask the students to write both a while loop and a for loop (this is after having taken programming classes). Some of them can't do it.

  53. Reuse != Cheating by curri · · Score: 2, Informative

    The problem with cheating is NOT reuse, but dishonesty; the right analogy is not to reuse *your company's* code or report, but *somebody else's* report or code, which leads to lawsuits against your company and firing. In many (most?) programming assignments in school, you are given starting code (like this one except for ....)

  54. Parse Tree Analytics by gers0667 · · Score: 1

    Although I never saw it in action, my professor told us in our compilers class that they use a piece of software for the intro classes which compares the parse tree of the Java apps the students submitted and could show commonality between the programs.

    Of course, you would see similarity because everyone was writing a similar program, but it would catch someone just renaming a pile of variables and changing comments.

  55. Talent PLUS luck by curri · · Score: 5, Insightful

    There's many talented and hard working people (much more talented and much harder working than myself), but only some of them are gazillionaires; the external environment (that I summarize as luck) counts a lot; both who are your parents (which heavily influences how you develop your talents, which schools you go to etc) and being at the right place at the right time.

    If you think about it, Bill Gates was probably going to be a millionaire (his parents were very well off, he was (is?) driven, very smart and an SOB :), however, if IBM hadn't messed up, the timing hadn't been right etc he'd probably just be one more millionaire.

    1. Re:Talent PLUS luck by Anonymous Coward · · Score: 0

      Bill Gates was probably going to be a millionaire (his parents were very well off, he was (is?) driven, very smart and an SOB :)

      This is offtopic and probably nit-picky because the SOB jab feels to be toungue-in-cheek. I will just note that Mr. Gates donates more to charity than Linus, FakeSteveJobs, and all other /. demagogues combined.

    2. Re:Talent PLUS luck by Anonymous Coward · · Score: 0

      Bill Gates was probably going to be a millionaire (his parents were very well off, he was (is?) driven, very smart and an SOB :)

      This is offtopic and probably nit-picky because the SOB jab feels to be toungue-in-cheek. I will just note that Mr. Gates donates more to charity than Linus, FakeSteveJobs, and all other /. demagogues combined.

      And? He has more money than all of those groups put together. It isn't hard to be extra generous when you are so rich you could buy a new luxury car ever few hours for the rest of your life without denting your fortune.

    3. Re:Talent PLUS luck by ae1294 · · Score: 1

      will just note that Mr. Gates donates more to charity than Linus

      It looks good and it's a tax write off... He wouldn't be able to keep that money anyway. It's a form of PR advertising but I'm sure it makes him feel slightly better that he rape's all of you.

    4. Re:Talent PLUS luck by ae1294 · · Score: 1

      I can only speak from my own experience of running my first business with my partner and trying to play by all the rules and not cheat anyone. Just making enough to pay the rent every month was the norm. Anyway we closed down that business and he decided to go over to the dark-side and so ran up all his credit cards, then went bankrupt, bought a new Honda right afterwords with cash and has made more money in one year than we both made in 7. He doesn't break any laws or at least not with what his business does but if his customers only knew how much he was dicking them for...

      LoL, anyway he's got me convinced to do evil in my future endeavors... I wish the rest of you idiots good luck...

  56. Not a problem here... by Anonymous Coward · · Score: 0

    Here in Germany, it would be pretty hard to pass the class, if you are cheating.

    The final exam is 100% of our grade and we have to succesfully solve the problems in the assignments to be even allowed to take that exam. Of course you could just copy every assignment, but you will definitely fail that final test. I dont know if that will provide better test results overall, but it sure as hell motivated me to do everything by myself.

  57. I can has degree nao? by QuoteMstr · · Score: 2, Interesting

    I apologize for the long post. The issue of cheating is very dear to me. It was the single most frustrating part of my education, and I often felt as if I were the only honest student in my undergraduate program.

    As another poster mentioned, blame can be pinned on both instructors and students. But "blame" is only useful when it can be used to fix the original problem, and this problem is too big to fix by pointing fingers and admonishing each other. It's a cultural shift toward the worst, and we're powerless to stop it.

    You can only deal with cheaters when cheating is uncommon and has an attached stigma. We've come to the point where cheating is so common that accusations of plagiarism are just met with "so, lol?".

    Really, what we have here is a failure to take life seriously. In school, everything is a joke, a show. Nobody earnestly attends class, or does homework. People who ask questions in class are either trying to delay the lesson or merely stroke their ego by one-upping the professor. (I've been accused of both.)

    At least in my experience, the typical student doesn't even seem to consider the idea that someone might want to actually learn. Learning is a chore, class an ordeal, and the professor the enemy. As a result, shameless, rampant cheating is rampant in the "I can haz degree nao?" generation.

    My favorite example involves a project to build a userspace filesystem "driver". It was simple enough, and the professor even gave us interface specifications.

    The reaction was catastrophic. Students complained that the assignment was too hard, that they didn't know the algorithms, and that half a semester was too little time. They talked in the hallway in hushed tones of outrage and asked whether they could appeal to the dean.

    The real issue behind the complains is that the assignment would make them think, and most of them had no idea how to do anything beyond compile code fed to them with a spoon. The assignment involved analytic thought, which my fellow students appeared to consider Herculean.

    "Poor students whine about having to do real work for once," you might say.

    Except that the TAs for the class shared this adversarial, anti-intellectual mentality. In recitations, the TAs provided "sample code" sufficient for the whole project. Crisis averted, right? A grades were handed out to people I personally knew had no idea of when to use a loop instead of a function call.

    These people graduated with degrees in CS, but they're completely unable to develop original software. Tasked with an assignment, they'll just copy code from the internet or ask on IRC, laughing about it the whole time. They'll choose systems based not on their technical merits, but on "documentation" --- meaning they'll choose the system that has the easiest-looking introductory tutorial. Their code will have bugs because they have no idea how to code, and their programs are chimeras of copy-and-pasted examples.

    We're all worse off for these imbeciles running around, and those of us who consider this profession a craft, and who take pride in our work, and impoverished by having to share a degree with people who want to avoid thinking at any cost, and who laugh at the idea of serious work. The laughter is what bothers me most. It's how I know we're doomed.

    *Never mind that the "operating systems" class never involved leaving ring 3.

    1. Re:I can has degree nao? by Anonymous Coward · · Score: 0

      CS4410/4411?

    2. Re:I can has degree nao? by Ma8thew · · Score: 1

      Care to share the university you attended with us?

  58. when i was a TA... by buddyglass · · Score: 1

    Some people did some pretty dumb cheating. Dumb as in easily caught. But it was a intro class that was mainly taken by non-CS majors, so maybe that's to be expected. One guy submitted a programming assignment that was identical to another student's except for the variable names. Actually, now that I think of it, maybe he didn't even change those. Then he had the gall to argue with me about how it was legit.

  59. Cheating In Upper Level Engineering Courses by BuildMonkey · · Score: 1

    In many of the engineering courses I took, there was a choice to get a sold A or to learn the material. Those wanting the best grade got the old tests from student organizations or friends. It's difficult to compete with students who already have the full test. Granted, they don't learn much from the course but they end up with the better GPA. Now, this could have been helped had the professors not been so lazy as to recycle material and/or if the professors had given out all their old material at the beginning of class, which some did.

    There were whole areas of EE in which I didn't even take classes because the professor who taught them gave the exact same test every semester and only graded the answer in the box. This is for both undergrad and graduate courses.

    1. Re:Cheating In Upper Level Engineering Courses by gander666 · · Score: 1

      Wow. Flash back. Graduate program in Physics. Jackson was THE text for Classical Electrodynamics. My prof knew that everyone bought the solution guide, so we used Panofsky & Phillips. Problem solved. Of course I graduated before the Web was really in existence.

      I really learned E&M...

      --
      Suppose you were an idiot and suppose you were a member of Congress ... but I repeat myself. - Mark T
  60. anonymous by Anonymous Coward · · Score: 0

    And what's CS is?

  61. Ever worked on a project with heavy code reuse? by Anonymous Coward · · Score: 0

    Have you ever worked on a significant project that reused a lot of code? I don't mean a subsequent version, either. I mean a totally new project, with a totally new set of requirements, but trying to use as much code as possible from existing projects.

    It's not a pleasant experience. Chances are that you'll spend far, far more time working out integration issues and finding obscure bugs than you would have spent writing the code from scratch, and testing it.

    Talk all you want about the reused code having undergone "rigorous QA", but the moment you change even a single character in that code, or even just integrate it as-is with other code, you need to retest your entire system.

    These days, the only people I hear spouting your "reuse Reuse REUSE!" chant are the Indian outsourcing companies who just churn out huge amounts of code, rather than usable software. So of course they want to throw the same crap at you that they just threw at some other poor sucker. It makes them good money.

    But for the rest of us, those of us in America or Europe or Japan, we need to write software that actually works. The method you propose has shown time and time again to lead directly to failure.

  62. i would love for the final to count more.... by happyjack27 · · Score: 1

    Make it count for ALL of the final grade then I don't have to do any homework! Thanks cheaters!

    1. Re:i would love for the final to count more.... by petermgreen · · Score: 1

      The trouble with exams in my experiance is that people who are good at rote memorisation and acceptable at mathematical methods can often pass them with very good marks without ever really understanding the material. Especially as in my experiance each years exam is like the previous but with the numbers tweaked.

      note: my experiances are from EE not CS.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
  63. Definition of cheating by wisnoskij · · Score: 1

    While some cases are cut and dry some are not.
    I know in my CS program, we are not supposed to ever see any of our classmates code.
    Now I know I have been in situations were I did not understand this new language they were trying to teach us (mostly because they left the learning up to us) and have asked for and received someone else code to learn from and write my own code, not to copy.
    and i have shared my code on a few occasions with people i knew were not going to copy it.

    --
    Troll is not a replacement for I disagree.
  64. I have actually quit a job because of cheating by Anonymous Coward · · Score: 0

    I was being forced to hand over my research work to some friend of my bosses that was completely clueless so that he can finish his Master's Thesis on time. I quit instantly; the bosses cannot forgive it to me until today and don't understand why did I even object... And listening about arguments that the code I wrote is a property of the company had forced me to get deeply familiar with intellectual property law to defend myself. Just unbelievable...

  65. Cheaters are foolish by Trivial+Solutions · · Score: 1

    You can only cheat yourself. Do you really want a job you're not qualified for? Do you really want to go to a school you're not qualified for. There's no reason to cheat unless you want to end-up in over your head, which is foolish if you ask me.

    --
    When God goes to war, He drops big bangs.
  66. One of my teachers hat a cool p.o.v. by Hurricane78 · · Score: 1

    He said that
    1. it’s not cheating that’s the problem. Getting caught is.
    and that
    2. cheating takes a considerable effort. Who says that that isn’t a worthwile strategy? ^^ (After all cheating is a popular strategy amongst lifeforms on earth.)

    The best moment was, when a friend of mine dropped one of his five (!) small notes he wanted to use to cheat. (Bear in mind that he was the best student in our whole class level!)
    The teacher noticed it, picked it up, and told him: “Well, this contains nothing that is useful to cheat on this test. So I can’t punish you.” Then he handed him the note back. :)

    --
    Any sufficiently advanced intelligence is indistinguishable from stupidity.
  67. Cheating in CS by krnpimpsta · · Score: 1

    I'm sick of wall-hackers, aim-botters, and speed-hackers. I'm glad Stanford is finally looking into this, because cheating in CS has made the game thoroughly unenjoyable.

    --

    New webcomic updated on Sundays: HERE

  68. Smart, motivated, and clever at CHEATING by tepples · · Score: 1

    It's so much easier to believe successful people must cheat then to accept the truth that there are people out there that are actually smarter, more motivated, and more clever

    ...at cheating. Bill Gates built Microsoft on cheating and got caught. See United States v. Microsoft.

    1. Re:Smart, motivated, and clever at CHEATING by mcvos · · Score: 1

      ...at cheating. Bill Gates built Microsoft on cheating and got caught. See United States v. Microsoft.

      And despite getting caught at cheating, he's still the richest person in the world. Now what does that teach you?

  69. Re:are you marked as a cheater for reusing your co by QuoteMstr · · Score: 1

    Fuck you. You are what's wrong with this profession.

  70. don't understand? punish 'em: the American Way by Anonymous Coward · · Score: 0

    bound to increase the smartness of the nation, isn't it?

    carrot and stick, which makes greater results?

  71. Kinda Cheating? by Anonymous Coward · · Score: 0

    Our professors were pretty cool. You could hand your program in at any time as long as it was timestamped by a certain date and time from the computer lab. Each program printed would print with a banner page (line printers and VAX'en).

    One time, the programs were due on a Friday and I didn't have it done. When I finished the program Saturday morning, I realized I could just create a fake banner at the top of my code. I'd print out the program, tear off the original banner, and my fake banner would look like the banner from the computer lab. It worked. The teacher never questioned it. I didn't get docked points for being late.

  72. Throw their ass out of school by Anonymous Coward · · Score: 0

    It is easy. You cheat, it is proven, you through their ass out of school.

    Why is this issue so complicated?

  73. I was a TA by Anonymous Coward · · Score: 0

    I was a TA for a year and caught numerous cheaters. Two guys would would always cheat, the problem was they always handed in their assignments one on top of each other. I would see some strange construct and then see it again on the very next paper. Sometimes I would have to go up and look something up in the manual as it was something I had never seen before, so they cheated with someone knowledgeable and then see it on the next paper. Happened week after week. On the final assignment, I caught half the class cheating and suspect another 10% or so. Teacher put the programs in two piles on the desk in front of the class at the final exam. One for cheaters, one for honest folks. Not one single cheater picked up their program and several "honest" people didn't either. Teachers was approach was to say, "I caught three people cheating, take the lowest grade and divide by three." Seemed to work. I guess I have "cheated" myself. I couldn't get an assembler program to run and it was getting an exception. In our university, this gets a big, fat zero regardless of how well you did the rest of the program and output was on a third of the grade. With ten minutes before the program was due, instead of branching over the memory area where the registered were stored, I changed the standard linkage and branched to the register which exited the program. So a "BR R14" --> "BR R15" So basically the program started, stored the registers, and immediately exited. The TA never noticed and I got a 65%, better than 0%.

  74. beyond immoral by Anonymous Coward · · Score: 0

    "The number of honor code violations have prompted Professor Roberts to implement a new system. Describing this method as a “collective incentive” for students to maintain academic standards, the professor said he will add 5 percent for every honor-code violation in his class to the weight of the final exam, which is currently 15 percent of the class grade.

    In other words, if one person cheats, the whole class will face more pressure on the final exam, because it will make up a greater portion of a person’s grade. Whether the scorn of fellow students is a bigger deterrent to cheating than being personally disciplined by the university remains to be seen."

    Punishing the innocent because some cheat is the very definition of an evil regime.

  75. Cheating by benjfowler · · Score: 1

    I did CS at a major Australian university known for taking in lots of foreign fee paying students, and they had a TERRIBLE problem with cheating.

    The trouble with the fee-paying students, is that quite a few of them don't speak English natively and thus struggle, lots are just as dumb as dogshit, and many are really desperate. Result: cheating.

    I couldn't put down a printout or it would get swiped. I had tutorial workbooks stolen (I was a good student, so my stuff "grew legs" quite often). Copying of assignments was rife. The tutors I got to know quite well detected it more often than not -- they would just mark the assignment as normal -- and then divide the mark by the number of cheats. But in the end, the cheating, and general lack of ethics by the fee-payers got so bad, that the school simply abolished assignment work completely, and did all assessment in final exams and vivas.

    The university system in Australia is underfunded (partly for ideological reasons; the rightwingers despised the universities as a hotbed for leftism and dissent), so they rely heavily on fee-payers. As a result, standards have plummetted, and several soft-marking and corruption scandals have been uncovered.

  76. Cheating? by Anonymous Coward · · Score: 0

    when I went to school, cheating meant expulsion/banishment if you were caught.You mean this has changed? It certainly explains a lot...

  77. Cutting and pasting code is cheating? by jackhererUK · · Score: 1

    If so my colleagues and I cheat every day on a professional basis. We have even taken this cheating to an even more efficient level by using things we call "libraries" where we simple re use code written by other people.

  78. My CS copying story by dargaud · · Score: 1
    Everybody has copying stories from their student days, although here they seem to be referring more to plagiarizing than copying. Anyway, here's my story... Back when I was a student in CS about 20 years ago, we had a 2 hour exam of assembly language... to be done on a sheet of paper with no computer in sight (those were the days). Since I had been coding in assembly for more than a decade already, it was a piece of cake for me and maybe one or 2 other students. The 200 or so others had no idea what this was about. So in the days previous to the exam my popularity surged as I was bombarded with requests from friends to help them out.

    I came up with a simple scheme: I would do the assignment, make a copy, go to the bathroom and leave a copy there. But the word spread that I would do that, so after I dropped my copy and came back to my seat, one, two, five, fifteen people started to get up to head for the bathroom. After a while the teacher grew suspicious and went to check and caught something like 15 student fighting over my few lines of assembly...

    Now get off my lawn!

    --
    Non-Linux Penguins ?
  79. What's with the leniency? by Anonymous Coward · · Score: 0

    At the University of Maryland, penalty for cheating was supposedly being expelled from the college (the College of Math and Physical Sciences). You would also fail that class.

    Personally, I never even worked on any homework with anyone until my senior year, and by that time they actually didn't care. But I know of many people who would go to the labs and work on their projects together, which always made me mad because I always did everything on my own (and I liked it that way).

  80. Journalism by Anonymous Coward · · Score: 5, Funny

    Usually makes sense to establish what CS is in any article headline to establish defined context.
     
    So it used to be a lot easier to cheat in CS. I used to use an old wallhack that I hex edited and was able to use for years without detection. When they switched from WON to Steam, it all became harder.
     
    You meant computer science?

    1. Re:Journalism by LBt1st · · Score: 3, Funny

      I thought the same thing and I never even played CS.

    2. Re:Journalism by ObsessiveMathsFreak · · Score: 1

      You meant computer science?

      He did. But what I can't figure out is what the hell you were talking about.

      --
      May the Maths Be with you!
    3. Re:Journalism by Hotawa+Hawk-eye · · Score: 1

      He did. But what I can't figure out is what the hell you were talking about.

      Take your pick.

    4. Re:Journalism by bravo_2_0 · · Score: 1

      I believe he was talking about Counter Strike. It started out as a mod to Half-Life but ended up being released as a complete game in it's own right.

      --
      I AM A SEXY SHOELESS GOD OF WAR!!!
  81. I never worried much about it by bfwebster · · Score: 1

    It's been nearly 25 years since I taught CS (BYU, 1985-87), and I taught at the peak of CS enrollment, so I had large (200+ students) "Intro to Programming" courses; also, these same classes counted as general education. I'm sure a lot of 'sharing' went on as far as the programming assignments went, but I was never concerned, because (a) that's true in real-life programming as well, and (b) it wasn't going to help them (and actually hurt them) when it came to tests. As a side note, enrollment demand was so high at that time that if you wanted to be a CS major, you had to complete this class, apply to the CS department, and be accepted as a CS major. Ah, those were the days.

    The other classes I taught (assembly language, data structures, computer and society) were for CS majors only. The first two required programming, and again I wasn't concerned due to the same programming vs. test performance check. I also wasn't concerned because I knew (from personal experience) how tough the upper-division classes were (compiler design, OS implementation, comparative languages, not to mention the lower-division 'algorithms' class taught using Knuth's "Art of Computer Programming: Fundamental Algorithms"), and I knew that if someone cheated their way through the earlier classes, they would crash and burn eventually. ..bruce..

    --
    Bruce F. Webster (brucefwebster.com)
  82. Counter Strike? by lymond01 · · Score: 1

    I didn't even know professors were paying attention!

  83. Punish the entire class? by Dammital · · Score: 1

    For every honor code violation by an individual, the entire class gets to enjoy an additional 5% increase in the value of the final exam.

    That's simply wrong. Do they do prof evals at Stanford, tied to salaries and tenure? I suggest that when innocent students get screwed that those evals take the injustice into account. Sauce for the goose, Mr. Saavik.

  84. It is called CSS now... by g4b · · Score: 1

    CS is soooo 1999. Since Source, it is called CSS now.

        * use your own source. buy Source on steam.
        * don't do everything in HTML.
        * cheat for IE.
        * ???
        * Stanford Degree.

  85. Duh. by Anonymous Coward · · Score: 0

    Cheating is easy in almost all videogames (PC or Console) these days, let alone ones from 10years ago...

  86. Mid Term and Final 50% by StillNeedMoreCoffee · · Score: 1

    I taught CS at a major University for 27 years in the evening. I ended up weighting the midterm and final equally and 50% of the grade. I gave 2 quizes between and a number of assignments. That set was equally weighted and represented the other half. The first quiz was the wake up call for the format and difficulty of the Midterm and final.

    The 50% was because that was much harder to fake, you at least in class have to show what you know, and given descriptions of problems to solve you get to see organization, approach, problem solving, knowledge and understanding at the same time.

    The issue is that CS is a technology and I would tell classes this formula.

                    Plagerism + Royalties + Proper Attirbution = Productivity

    and that if you missed either the necessary Rolyalties or Attribution you would get kicked out of school.

    As a technology you build off the knowledge and work of the past to extend the idea's into the future. And for most programs you are implementing a known common algorithms, which should mean that your code should be very similar to others if you are being efficient and following common coding practice.

    If you give a varied set of difficult, conceptually programs it is harder to get code to copy. I did however give an assignment that did have a variation in some text books. I would warn that the text book version did not implement the same idea, but invariably I would get a few that pulled not only the algorithm but the code from the book, and no attibution.

    One time I got two programs for an assignment, neither worked, both had identical code portions with the very same bug. That one was easy to spot, for god's sake copy working code!

  87. Cheating by Idiots by cervo · · Score: 1

    I had a professor mention how he catches people cheating:

    1. Their english stinks and they cheat from someone with perfect english. Or they cheat from someone with bad english. If two people have the same writing style/spelling errors in an essay question it is usually a clue that someone cheated.
    2. Two people have exactly the same wrong answer. This depends on the exam, but for an essay exam to have the same wrong answer is usually a dead giveaway.



    So to cheat:

    1. Pay attention to writing style/spelling, if something is a radically different style from your normal one, it is a giveaway.
    2. Make sure your answer is right, otherwise that is a giveaway as well. Of course if you know the answer is right, then you could just answer it on your own......

    It's easier just to study if you ask me....

  88. It still gets to me by xZgf6xHx2uhoAj9D · · Score: 1

    I have some really stupid cheater stories, of course. Like the guy who handed in verbatim his buddy's assignment, including his buddy's name and student number at the top of the comments, and still kept denying it. Those are the easy cases to deal with and, while kind of funny, not very meaningful. If they fess up and apologize and co-operate you give them negative 100%; if they don't you give them an academic offence (which means automatically failing the course and automatically getting expelled from the university if they get a second offence).

    There's definitely a lot more cheating going on than I can find evidence for, which I've come to accept is mostly out of my control. My only two real strategies for combatting it are to make the assignments as exciting/interesting as I can so that students don't mind doing them so much, and mandate that you need at least 50% on the exams to pass the course so that you can't get through just on the assignments.

    The one that still affects me is a girl I had in a first-year course in my first year of TAing. She was one of the "cool kids" (a little slow transitioning out of her popular high school kid days, you know). Her friends sort of lived for partying and never took any of their courses seriously: most of them ended up failing the CS course. It was a lab scenario where it was scheduled for 2 hours, but if you finished your work in an hour (which many did), you left early. After all her friends had finished the bare minimum and had left, she would stick around, though, for an extra half hour or hour, asking questions and redoing the work she'd already done to make sure she understood it at all properly. She wasn't doing insanely well--I think she was carrying a mark in the course somewhere around the high 70s--but definitely better than her friends and she was putting a lot of work into what obviously didn't come naturally for her.

    Then came her final assignment of the course. It was gorgeous! It was their only assignment where they had to incorporate object-oriented design (the course was taught in C++) and she did everything perfectly. It was definitely the best assignment out of the entire class, and we had a lot of really smart cookies in the class. I wrote glowing praises all over it. I ran into her at a bus stop a month or so later and gushed about how impressive her assignment was and how much work she must have put it into it and she just quietly smiled and didn't say much beyond "thank you".

    Then about a year later I ran into one of her friends and the topic of her came up again. I said again how impressive it was and said "either she found someone else to write it or she put a lot of work into that". He got awkward and said "I don't want to get her in trouble, but let's just say she didn't put a lot of work into it".

    It really did a number on me. I was at the end of my Master's degree at the time and it through me for a loop, wondering if I even wanted to come back for my Ph.D. Research is okay and all, but really the only reason I was in grad school was for the teaching. I eventually did go back and things have gone well, but it surprised me what effect one (previously) good student cheating can have on you :\

  89. Re:Group punishment by GrantRobertson · · Score: 1

    Finally, someone is talking about the real problem with that article: Group punishment. I thought that was outlawed somehow. If I were in that class I would summarily drop and file a complaint with the dean. Group punishment is a lazy professor's choice. It forces the responsibility for preventing cheating down to the students, many of whom have now power to change the behavior of others. But the lazy professor can sit up there and smugly say, "You should have policed your peers better." WTF!?

  90. I guess they just give a slap on the wrist by Anonymous Coward · · Score: 0

    But when I did my Comp. Sci. studies, back in the early 80's, I was almost expelled twice by having someone cheat off of my work. It was only because the professor pretty much knew that it was me who did the work that I didn't have to go before the academic board. Still I had to settle for a D while the cheater was given an F. He was on the NCAA winning basketball team, which is probably why he didn't get expelled. The next semester it happened again with a different student, but this time the professor just admonished me and sent the other student before the board.

  91. Cheating was Rampant at CMU by TheTyrannyOfForcedRe · · Score: 1

    I was disgusted by the cheating I saw during my time at CMU. This was in the days before it was possible to get help on the Internet. The web was still a curiosity. What was available, however, was unlimited of free "help" for any female who wanted it. Lonely and desperate CMU guys were all too happy to spend hours doing whatever it took to curry favor with women. It was all available, everything from homework copying all they way to entire engineering/coding projects done for them and then explained afterward.

    It wasn't even like this was hidden. You could see it everywhere. There were guys who would toll the computers labs (few people had personal computers then) for damsels in distress. My girlfriend at the time couldn't work in a lab without a constant streams of Zephers asking if she needed help.

    The whole thing made me sick. There were people who would have killed to be able to attend a CMU engineering program and these were people shitting all over it. They could care less about learning.

    That was the beginning of my introduction to The Real World.

    --
    "Liechtenstein is the world's largest producer of sausage casings, potassium storage units, and false teeth."
    1. Re:Cheating was Rampant at CMU by KeithIrwin · · Score: 2, Interesting

      During my time at CMU, I saw very little of this going on. The female students in my admission class were just as good as the guys and didn't need a lick of help (with the exception of one who got a -lot- of tutoring to make it through anything, but she got that through official department channels, not through flirting). The only time I saw it happen at all was non-majors taking CS-127, the Introduction to Programming Course in Java. Unfortunately, introductory programming is a hard course to teach well because you have to teach people who to think in a completely different way (unless, of course, they already think that way). Most universities are not good at doing that and instead wind up just weeding out the people who don't have an easy time programming. CMU was no exception. I did my best to help talk some people on my dorm floor through CS-127, but it was really tough for them because they just couldn't think about things the correct way. At this point, the CS department has revamped that whole structure, eliminating the course and replacing it with a number of different alternatives based on level of experience so that people who've nver programmed before can start with Alice rather than Java.

      But I suspect that part of what's happening at Stanford is people who've never gotten a B in a course in their lives are suddenly facing a C or D in intro programming and panicking. You can't just study your way to an A in intro programming because it's not about memorizing, it's about thinking differently. You have to get it.

      And really, I think it can be taught better, but it will require making some substantial changes in approach. When we see rampant cheating, we need to ask what we can change which will decrease this. Some of what we can change may be improving the nature of the instruction to students.

  92. Cheating is Good Money by Anonymous Coward · · Score: 0

    Thankfully there are a massive collection of terrible students with money. It's easy to sell trivial assignments for 100 dollars or more, which is nice in this economy. Even better, you can "tutor" which is really just doing the assignment in front of them so they know you didn't sell it to anyone else and at double the cost.

  93. lazy is another word for efficient by petes_PoV · · Score: 1
    doing the least amount of work to achieve the required result. In engineering circles this is an attribute (of mechanical and electrical systems) that is praiseworthy and valued. After all, who wats to waste energy?

    In business it can be considered "lazy" or efficient, depending on how it's presented. If a person uses the time saved to do more work, it's called "being efficient". if they spend that time goofing around, they're called lazy. Now it might be that the really lazy people who never do y work have simply discovered that the things they are asked to do aren't that necessary - and that nothing bad happens it they therefore don't do it.

    Expending the least effort to meet your goals should be recognised as an asset - setting dumb goals that are unnecessary or wasteful should be punished.

    --
    politicians are like babies' nappies: they should both be changed regularly and for the same reasons
  94. Be honest by frenchbedroom · · Score: 2, Interesting

    I RTFA and I agree that a big incentive to cheat is when your project doesn't work. When you still can't find that nagging bug at 3 AM, cheating seems like a good option. But I think honesty is the better way. Once, I turned in a project that didn't work ; I had an oral exam a few days later to defend my code, and one the professor actually congratulated me on the code. Turns out he had just read the code and liked it, because I followed his specs to the letter and used all the OOP patterns that he taught in his course. The one bug that made it crash was a missing call to an ancestor's constructor, undetected by the compiler (this was in Turbo Pascal)

    1. Re:Be honest by multipartmixed · · Score: 1

      Reminds me of a similar experience; I was writing .. something .. in assembly language that had a very subtle hiesenbug that only came up after rigourous testing.

      I figured -- if *I* can't find it, the TA sure as hell isn't going to.

      I was right.

      --

      Do daemons dream of electric sleep()?
    2. Re:Be honest by rfc1394 · · Score: 1

      Reminds me of a similar experience; I was writing .. something .. in assembly language that had a very subtle hiesenbug that only came up after rigourous testing.

      I figured -- if *I* can't find it, the TA sure as hell isn't going to.

      I was right.

      I know exactly how you feel. We had some kind of a problem with one of the line printers at a college I went to, where you'd randomly get an extra " appearing at the end of a listing. This was one of those 'really fast' chain-drive printers hooked to a Hitachi or an Amdahl (an IBM System/370 Mainframe work-alike), the printer was something like a 1402 I think. Cost then, probably several thousand dollars, speed, about 6 pages a minute (300 LPM), not even as fast as my $110 8 ppm laser printer today.

      As it turned out, one time I was doing an assignment, and by mistake I ran the same job twice, one after the other, one of the listings had the spurious character and the other didn't, so I conclusively proved it was the printer causing the problem, not the computer somehow sending a spurious character.

      --
      The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
  95. CS Students Please Cheat by codepunk · · Score: 1

    Cheat if you must but remember that cheating is not going to work when you are competing against me for that job.

    --


    Got Code?
  96. The way I see it... by pak9rabid · · Score: 1

    I let people cheat off me in school. The way I saw it, it reduced the amount of real competition I'd have when companies came to campus looking to recruit soon-to-be graduates for jobs. Call me shitty, but if you're still cheating at the COLLEGE level (when you're supposed to actually be interested in the classes you choose to take), then you deserve what you get in the long run.

    1. Re:The way I see it... by pclminion · · Score: 1

      I let people cheat off me in school. The way I saw it, it reduced the amount of real competition I'd have when companies came to campus looking to recruit soon-to-be graduates for jobs.

      What you're actually doing is helping damage the street cred of holding a CS degree. If an employer interviews ten of your peers, and they all have CS degrees, and they all suck, he or she will come to the conclusion that a CS degree is not a good indicator of actual skill level. Now you come in for the interview -- and what do you have to show for yourself? You have no real world experience yet. All you have is a degree, a degree which your potential employer has a very dim view of. You are just sabotaging yourself by trying to hurt other students. If they are going to cheat, they will cheat, but don't exacerbate the problem by making it easier for them to do it.

      Sheesh.

    2. Re:The way I see it... by masmullin · · Score: 1

      Interesting, I should have thought of that...

  97. Define a Slashdot cheater by kangsterizer · · Score: 1

    but.. how do you define a Slashdot cheater?

    A - someone who reads slashdot and RTFA
    Thus, having an unfair advantage over the other posters

    or

    B - someone who reads slashdot and do NOT read RTFA
    Thus, doing like he knows what he's talking about

    Seriously?!

  98. Simple Rule by Anonymous Coward · · Score: 0

    My CS department had a very simple rule:

    If you can find code to do the assignment online (or anywhere else for that matter), feel free to use it, but you must cite your sources. As CS revolves around the re-use of code (and a huge part of CS teaching is dedicated to learning how to write re-usable code), they put the onus on the Professors to create assignments that required more then just copy and paste.

    In my 4 years I only had 2 of well more then 100 assignments where the entire solution already existed online.

  99. Caught "Cheating" Freshman Year by geoffrobinson · · Score: 2, Interesting

    One of my best friends form high school and I went to the same college. We had the same Comp Sci teacher all throughout high school and we had the same class our first semester.

    Well, we had a simple little assignment in class and our code looked exactly the same. We had to explain to the teacher our background and how our identical training produced the same exact code given his requirements.

    --
    Except for ending slavery, the Nazis, communism, & securing American independence, war has never solved anything.
  100. WTF !! CS == Computer Science ?? by AftanGustur · · Score: 1

    Am I the only one who jumped to the article expecting to read about massive CounterStrike tournaments at Stanford ?

    --
    echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
  101. students suspended for this at local tech school by peter303 · · Score: 1

    One of my classmates is a prof there and uses the pattern matching software. The policy is pretty clear. So are the results. The prof sadly confesses the dean must suspend a couple students every year from his classes.

  102. Harsh and fair. by Anonymous Coward · · Score: 0

    When I went through my CS course the rules were pretty simple: You get caught cheating, you get kicked out.
    Granted, the profs were happy to help people who got stuck and most of the students helped each other. If someone came up with same small clever trick, others would borrow it, but give credit for the borrowed code. Some people couldn't get through... many actually, but those who made it to the end of the year learned to balance writing their own code with sharing ideas and functions with others.

  103. Preventing cheating is easy by MacAnkka · · Score: 2, Interesting

    In the university of applied sciences that I study at, it would be very hard to cheat during most programming courses.

    I especially liked the first two Java courses that I took. They consisted of weekly coding assignments and two exams.

    You had to show the finished assignments personally and the teacher would usually ask questions about the code. Why did you do it like this? What does this do? etc. It would become obvious if you didn't understand your own code

    Then there were the two exams, one in the middle of the course, one in the end. They were done on paper. They included around five partially done programs that you had to finish. For example, in a course teaching object-oriented programming, there might be a small card game that you had to finish. The game logic would be there, but you'd have to write all the object-oriented code and a main function where you make it all work. The exam would also include printouts of the relevant API documentation.

    Cheating would have been hard. Not everyone passed the course, but those that passed, with good grades, really did know how to program.

    This all requires a very good teacher who actually cares how his students are doing, though.

  104. Good practice by Anonymous Coward · · Score: 0

    Where I work that is what we tend to do as well; while loops are harder to prove to actually finish.

    When you are dealing with large numbers of programs running in a testing machine, ensuring that all of them WILL eventually finish is important.

    Then again, here it is a conscious decision, not because we don't know anything else.

  105. Cheaters Lab by madskyllz · · Score: 1

    I used to work in the Computer Science Lab at a university in Illinois - Students would print extra copies of their programs to give to their friends, and I would literally watch them cheat right in front of me.

    As a computer science student myself, I took offense to this. I'm was going to be competing for a job with this person, and we have the same degree. Hell, he/she might have a better GPA than me, and can't write a C program to save their life, yet THEY would get a job, and not me.
    When I was the one pulling printouts, I would just shred them and tell them to GTFO.

    Oh, and just in case your listening, unamed university in Illinois (I won't name names...EVERY university should learn from this)...you can't count on your students to chmod their files properly. Do you know how many of your "Brightest" students were chronic greppers?

    I can't tell you how many times I watched someone type: find / | grep cpp > OtherStudentsHomeWorkICanCheatFrom.txt

  106. Re:are you marked as a cheater for reusing your co by WoodsHole · · Score: 1

    Interesting observation. It is generally accepted that work is not original when it has been previously submitted by anybody, to include the author, for academic credit. While I understand that some code has the potential to be identical, it won't be generally. This becomes much more critical the higher one goes up the academic ladder. A student working toward a Ph.D. who plagiarized would almost certainly be dropped from the program. That’s a lot of years down the drain, especially if they are dropped as the result of plagiarizing their dissertation.

  107. CS centric by WaXHeLL · · Score: 1

    This is funny -- as its called "cheating" in the CS world, but in the EE world it's "working in a study group."

    Of course, having impossibly hard EE homework at my university probably didn't help. It was not uncommon (and actually, quite frequent) that I encounter midterms/finals with average grades of 40% or less.

    But that being said, most of the people who didn't learn the material didn't stay in the EE field after graduation.

    --
    The troll with karma.
    1. Re:CS centric by masmullin · · Score: 1

      No that happens in CS as well... those whom we call "non-contributors"

      basically you avoid them like the plague. if they ask to be in your group... the correct response is "no"

  108. Personal Anecdote by Anonymous Coward · · Score: 0

    I just recently finished my time at UIUC where I was about a B+/A- student (most of the time). However, I had a friend who was just about a genius who at least at this time had a 4.0 GPA. I don't know exactly how, but somehow another student in his class had gotten a copy of his code that was using on an assignment that they were both doing separately (I know for sure that my friend didn't give it to him). This particular class required that you show off your program in front of a small group of students and a TA and explain how it works.

    This person was showing off his stolen code, and another student in the class noticed that the guy didn't really seem to know how it worked. Then later on in the presentation, he noticed that at the bottom of every page was a comment that said "Copyright 2008 by My Friend's Name." The guy had stolen the code straight up and either didn't notice the comments or just didn't bother to change them.

    The student who noticed the comments told me friend who looked at it and then realizing that it really was his code, notified the staff of the course. The person who stole the code was forced to retake the class the following semester. However, this wasn't the first time that he had been caught cheating, and he didn't even receive a failing grade on his transcripts but was simply told that he would have to retake it. I thought that such a lenient punishment was ridiculous, especially for a repeat offender. Anyway, that's what happened and my friend and I had a nice, although slightly aggravated, laugh at it.

  109. And that, children is how... by Bright+Apollo · · Score: 1

    ... Castle Wolfenstein was created.

  110. Dumb Cheaters by Anonymous Coward · · Score: 0

    I was a TA / Lab Technician while a student at university. Assignments were submitted electronically over the network where my master grader would attempt to compile the code and run it through several test cases before notifying me to grade the source code.

    One of the first assignments was a program to print the first x Fibonacci numbers. One student included the comment "Who's Fibonacci?" Another student had the comment "I don't know". Another student hard coded the first 10 Fibonacci numbers and just timed out after that.

  111. I "cheat" all the time. by gestalt_n_pepper · · Score: 1

    I rarely start from scratch. I plan the project, figure out what I'm likely to need and start raiding old code libraries on the net, or on book CDs (Hint. Best "starter" code is usually available from book publishers). By the time, I've gotten all that together, what's left is usually some interface design and what I call "lego" work where I fit it all together.

    For a lot of us, It's not about being the best programmer. It's about being the guy who gets a task accomplished in a reasonable timeframe and cost.

    As for long term maintenance. I comment everything. I clean it up. I start with good ingredients. The company is still using code I created 7 years ago. You?

    --
    Please do not read this sig. Thank you.
  112. Stories by dcollins · · Score: 1

    Random personal story time:

    (1) I (teaching college) have never been so angry in class as last semester when half of my computer literacy class cheated on freaking fill-Excel homeworks. Apparently I scared the crap out of them the next day, because some of the girls started crying (not that I'm proud of that). I'm hoping I never teach CS anything again... the mindset of students in introductory classes is just too often droolingly stupid.

    (2) Prior college, probably the craziest interaction I ever had. I think I gave an assignment to command-line FTP into the RFC archive for a particular article and summarize one's findings. Of course, one student just copied the text, so I gave her an F. I had a 20 minute argument with her: "S: I didn't copy it, I re-typed it. All my English teachers allow that. T: That's the same thing. S: No it's not. T: Yes it is... etc. etc."

    (3) I worked at a small game company where the two principal engineers gladly admitted that as a pair they'd cheated all their way through their college CS programs. The company was fairly successful, too (sold for some millions while I was there). That said, the one guy's code was semi-unmaintainable by anyone else (completely Lovecraftian mangled naming that even he couldn't remember, etc.)

    --
    We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
  113. Paying for it by TheEvilOverlord · · Score: 1

    Most of the comments here seem to be talking about code copying/sharing/theft.

    However this isn't the only way to get code. When I was doing my CS degree I was know as being someone to ask for help when stuck, and people frequently did. This lead to me being asked several times if I'd accept payment to write the assignment for them; of course I declined. These people clearly didn't have the first idea how to construct a program, yet several seemed to pass the course, which always amazed me. That was a few years ago now, and I expect it's only got easier with sites like RentACoder, for people with money to buy their way through courses. A very talented and poor friend of mine on an english course got offered alot of money to write someone's dissertation.

    The only way people get caught is if someone grasses them up.

  114. professors cheat unqualified/non-talented students by elnyka · · Score: 2, Interesting

    Years ago I worked as a developer for a subsidiary of Fujitsu. One day a colleague asked for my help.

    The crux of the problem was that he was unfamiliar with the concept of a 'while' loop. Not the specific implementation in the language he was using, but the actual concept itself. He had some kind of computer science degree and he'd been working in the same team as me, as a developer, for at least two years.

    It took me a while to realise what the problem was, as it never occurred to me that he might be unfamiliar with basic control flow. He sheepishly explained that the bulk of his degree was coursework (presumably he got some 'help') and that he'd been hammering square blocks into round holes for the last couple of years. From what I recall, whenever a while loop was appropriate he'd instead use a for loop with an extremely high upper limit and a break condition.

    I'm sad to say that I've encountered the same situation several times where someone that is supposed to be a CS grad (or what should be a junior/senior CS student) is lacking in something fundamental. Sometimes it is in things that are not so obvious (but should be) such as not knowing what an interface or abstract class is for or thinking that procedural programming means "programming with GOTO statements", or simply not knowing what structured programming really is.

    In other cases, the deficiency is graver, like, as you pointed out, not knowing basic control flow structures, not knowing what the structured program theorem really means (or even heard of), or not knowing how to decompose problems. I recently had an e-mail exchange (trying to help) with someone who supposedly passed a data structures course (a mid/upper level 300x level course) but didn't know he could call the "pop" method of a stack in a loop n times after having called "push" on it an equal n amount of times.

    And now, and just to picture this, it's not just that this poor guy didn't know that he could call "pop" n times after having called "push" n times as well. He didn't know he could call pop inside a loop even though he knew he could call push (or any method for that matter) on a loop. How the hell can confusion possibly occur!!!??!! This was a guy who supposedly passed data structures and algorithms with a B.

    All I can think off is that a professor (or several professors) at his university should be kicked out and forced to flip burgers for a living. Because it is not only one person like that, but many, across the board. People like that have to be made to fail or offer a wider curriculum containing a larger number of mandatory 100x/200x programming courses (hopefully using procedural or multi-paradigm languages.)

    Too little time is invested in too few 100x/200x programming courses where instructors try to shuffle as many OO-fashionable concepts they can think of - superficial coverage interfaces, GUI programming, polymorphism, generics and what not - when they don't even make sure their students understand the basics - structured programming theory, control structures, modularity on the small, problem solving, divide-and-conquer strategies and so on and so on.

    Students that are not qualified or who are not obviously talented on the mental skills required for programming either need to be flunked out or forced to take more programming courses at a lower, more fundamental level. Then they either get the sufficient practice and knowledge to continue or they flunk and try something else. We all have skills at one thing but not other. Schools make a serious disservice to students by watering down requirements just so that they can pass.

    Not excusing mediocre students (who don't necessarily cheat), schools and instructors that let them graduate are the bigger cheaters of all.

  115. Malicious Cheating by Temujin_12 · · Score: 2, Interesting

    My junior year there was a CS lab that was particularly tough at the end of the semester. I turned it in (a few days late) but managed to complete it (first true all-nighter I pulled in school). I was taking the final in the CS labs (they put 6 bugs into your program and you had to find and fix them) and a student next to me was escorted out into the hallway where the dean, a sysadmin, and another student were waiting for him.

    Apparently, he couldn't pass the course unless he turned in that lab on time. So, when a student next to him got up to get a course TA to verify his program (without locking his screen), this student scp'ed a copy of the student's program over to his account. But he didn't stop there, he then deleted this students program and replaced it with a copy of his incomplete program.

    The student whose program was stolen met up with the sysadmins and they were able to determine what happened by looking at logs.

    Needless to say, the student cheating was expelled.

    --
    Faith is a willingness to accept something w/o complete proof and to act on it. Reason allows you to correct that faith.
  116. Funny story about a caught cheater by McDozer · · Score: 2, Interesting

    At my University, one of the last classes we take before graduation is a Senior Seminar class, at the time the class was about ethics. Well, the class was assigned a paper to write about ethics. The professor actually read the papers, upon reading one girls paper he said.....'Hey, this girls English isn't this good. There is no way she wrote this. He googles the first time of the paper, bam, this 25 page paper pops up. Turns out she had copied and pasted 14 pages of the 25 page paper and turned it in. Well, she was kicked out of University one class from graduation. I thought it was rather funny. She ended up moving back to India, who knows what happened after that.

  117. I'm actually a good by BarC0d3z · · Score: 1

    Before college, I always got A's in Calc 1 & 2, Geometry, Algebra, etc... I was a regular Charlie Epps.

    As a freshman with programming experience, I took my required calculus courses taught in Wolfram Mathematica. I aced them both - not because I understood the math, but because I could make Mathematica do what I wanted it to. I could find the appropriate formula, copy and paste, and replace the variables with specifics from the word problem. It was so easy, I didn't even have to write the formula out so I never understood why they worked.

    Senior year, I'm taking a Stat course and sure enough, I had no clue how to apply the calculus I was supposed to have learned in the previous courses. I nearly failed the class which would've prevented me from graduating. It did drop my GPA down below a 3.0. The employer that hired me wouldn't have looked at resumes below a 3.0 so luckily I landed the job prior to taking that class.

  118. reuse =/= cheating (f* duh!) by elnyka · · Score: 1

    When you get into a corporate environment, "cheating" is actually preferred. No reason to re-invent the wheel when there is existing code that gets the job done.

    Need a report that's "like this one except for..."? Take the code for that report and add some mods and there ya go. Your manager would consider you an idiot if you started each project from scratch, re-writing all the functions and methods that already exist in other applications and have perhaps already gone through rigorous QA.

    Uh dude, that is so wrong in so many levels.

    First, cheating =/= reuse.

    Second, being measured for competence =/= being paid to implement cost-effective, efficient solutions by reuse rather than by reinventing the wheel.

    Anyone who pays attention to this in school and in real life knows that difference.

    Besides, how many ways can you write a QuickSort?

    First, there are several ways, believe it or not. Second, non-sequitur. Most of the work done out there is not about implementing new and radical, novel algorithms but on intelligently engineer solutions that maximize re-use as much as possible. This can only be done by have a degree of competence, the one which we get tested for... and in which losers and incompetent people cheat.

  119. Well, Mr. TA by Anonymous Coward · · Score: 0

    Sure, go to Yahoo Answers. I answer questions there. Can I get credit for it?

  120. Re:which snappy comback to choose? by KeithIrwin · · Score: 1

    The whole "no women study computer science" thing isn't funny, it's just insulting. Women in CS are given a hard enough time without you belittling them too.

  121. A program that uses NCD to detect plagiarism by tucuxi · · Score: 1

    You don't need a specialized parser lol. Just strip out variable names, comments, and whitespace, then just use zip. zip A, zip B, zip AB. Compare sizes.

    The technical term is Normalized Compression Distance, and, on source code, it works even better when you tokenize the programs first (so that whitespace, identifier names and comments cease to be a factor).

    Here is a program that does just that, and has pretty graphs showing who is way more similar to whom than chance would have it: http://tangow.ii.uam.es/ac . It is in active use in several courses at Spanish universities.

  122. No two programs are alike? by lwriemen · · Score: 2, Interesting

    From the article: "Programs are idiosyncratic as sentences and no two are alike," he said. "They are not even comparable if they are independently generated. It's particularly easy to detect if they've been copied."

    While it is extremely hard to independently produce duplicate programs at the 3GL level, it isn't impossible. The problem space will have only one optimal solution. The semantics of the problem space could easily lead to a common choice of classifications. The higher you go in abstraction, the more likely it is to produce identical programs.

  123. I coded a different method to avoid appearance by sprior · · Score: 1

    Back in my first college programming class (in the mid 80's) we were given an assignment which involved some simple graphical pattern matching (a don't break the ice game). A friend of mine in the class and I had both studied graphics programming on our own so the first thing that came to mind for both of us was picking the basic patterns and rotating them to find matches. But I knew that for a first programming class most people wouldn't be thinking that way, so if both of us turned in code that did that we'd be accused of cheating. Of course we weren't cheating, it was the fact that we both thought that way that we were friends to begin with. So I chose to instead code the program the less sophisticated way to avoid any accusations. I'll admit it did bug me a little to hear the professor comment on his unique approach to the problem.

  124. I did a couple of times by rfc1394 · · Score: 2, Interesting

    I won't say where, but a couple of times I did someone else's college computer programming assignment for them, making sure I 'dumbed down' the quality of the work so that it wouldn't be too obvious that someone who has a considerable amount of experience (over 5 years, then) did it, as opposed to a new student. What can I say other than I was broke and needed eating money, and as with today, it was just as hard then to get a job programming without a degree as it is now. At least it's over 20 years ago so the statute of limitations applies, presuming I did anything illegal. I can admit, however, I think I actually learned a few things from having to do the assignment.

    "About the things I've done in the past, I hope either they've been forgotten, or if not forgotten, covered by the Statute of Limitations."
    — Robert A. Heinlein

    --
    The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
  125. Predictably Irrational by Anonymous Coward · · Score: 0

    In Predictably Irrational [0] Dan Ariely shows how reminding people ('priming') about honour, about ethical rules before doing a test reduces greatly the cheating. In fact he shows an experiment in which he makes people take a test, first reminding them of the 'MIT honour code' (in the book he says there isn't one) and compared to the control group the average of correct questions answered is the same. I think there is a TED video [1] about this. Maybe they could try it in Stanford.

    [0] http://www.predictablyirrational.com/?page_id=6
    [1] http://www.ted.com/talks/dan_ariely_on_our_buggy_moral_code.html

    Cheers

  126. Sometimes you don't have to cheat to get caught by AusIV · · Score: 2, Informative

    The professor who teaches operating systems at my university runs people's code through an automated cheating detector. The first operating systems project ends up being around 8 lines of code to complete a stub he provided. In a class of 30 people, there will inevitably be a couple of people who produced similar enough code that they get a zero on the assignment even if they may not even have talked to the person who had similar code. After the first project everyone gets scared and writes the most obscure code they can to avoid being accused of cheating.

    On another note, I was a teaching assistant for a lab last semester, and caught a few students cheating. Most often I could hold the two assignments up to the light and see that each line lined up exactly. I had a couple of students who would hand in the same assignment in different fonts, but I nailed them for having the exact same typos.

    There were some other people I suspect might have been cheating, but they changed variable names and switched around lines if the order didn't matter to the point where I wasn't confident that the similarities weren't just because they were solving the same problems.

  127. Plagiarism, opportunity, and raising the bar by tucuxi · · Score: 1

    Think of it as a lock on a door. The door can still be opened by somebody who is motivated enough, but the fact that there is a lock raises the bar, and makes the trade-off less favorable to the would-be cheater. Leaving the door unlocked, on the other hand, punishes those that are honest, and can make them re-evaluate their honesty (hey, look, everyone is doing it!).

    Asking questions on how things work in your code is another measure that raises the bar. As a TA, I applied both: an automated plagiarism detection program (http://tangow.ii.uam.es/ac - GPL'd and entirely client-side, unlike MOSS) and individual, written exams with very concrete questions regarding the code (eg.: "describe the data-structure you used to implement feature X" or "which of your methods would you need to alter to implement feature Y"). The exams were very short, and intended to be filled just after the code had been turned in, so that there was not a lot to memorize.

    It was still possible for someone to cheat -- but, hopefully, it would have required so much effort as to be not worth the trouble.

  128. Re:which snappy comback to choose? by Anonymous Coward · · Score: 0

    I used to live with a female compsci major. And she was a normal person. Probably the most normal person in her class by a long shot, male or female, and perhaps the most normal person I've ever shared a house with. So what you ask? Yes, so what?

  129. My own Turbo Pascal story by rfc1394 · · Score: 2, Interesting

    I would offer help to other students at this one college I would visit, and this one guy had a problem with his Turbo Pascal program (version 3) that it wouldn't compile and he couldn't figure out why. This was a fairly long program, say on the order of 20 screens (about 1,000 lines) so it wasn't clearly obvious. So I ask him if I can make a few changes. I go in and I find a point where the code should be complete, e.g. no pending procedures, and I insert a 'BEGIN END.' I exit and compile and the compile works. So I remove this and I go further down, insert BEGIN END., exit and try a compile, and this time it faults with an error, the same one he's getting. So I go upward and try again, and eventually - meaning in about 3 minutes - I find the problem and it was a very subtle bug even I didn't spot, he had left an open brace { in his code, so, it ignored everything to the next close brace, or the end of the program, (I forget which), because it treated everything from that point on until the brace was closed (or the end of the program), as a comment.

    The guy was absolutely amazed that I found the bug as fast as I had. He had been spending something over 2 hours trying to find it, and not succeeding. I found it in less than five minutes. It could be that I was a fresh pair of eyes, or it might be I'd had over 3 years (then) experience doing programming didn't hurt either...

    --
    The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
  130. less vicious version of that: by Anonymous Coward · · Score: 0

    when I took BASIC on Apple II in HS (for easy A since I'd already been doing machine language on Commodore for 4 yrs) we saved our work on 5 1/4(s) kept in a holder on teachers desk. I knew several people were taking my disk (since I completed every assignment in the book for the quarter in 1st week), loading my program then saving to their disk. by accident I discovered that you could include a "beep" (ctl-g IIRC) in a file name so a saved a file called "a-{7xBEEP}", copied it as [b-z]-{7xBEEP}, put it back in the teachers holder and waited for the next person to take it. it only took about 5 min before I saw someone take it, got back to their desk and do a directory listing which caused the machine to beep for ~2 minutes straight. :D amazingly, just like in your case rather than trying to make an alibi for their obvious guilt this in-DUH-vidual stood up, pointed at me and yelled: " DID IT!!!"

  131. I never cheated in CS, but I tried to in... by coryodaniel · · Score: 1

    I never cheated in CS, but I tried to in Accounting. All the laws/rules were a pain in the ass to remember, we were allowed to use calculators on our tests, so I would program tons of notes into my calculator... end result was me actually learning the crap while I was typing it in on that stupid little pinpad keyboard.

    --
    OH noes.
  132. You think that's bad? by NotSoHeavyD3 · · Score: 3, Interesting

    I worked with a guy who had been a software engineer for so long that he used to be a cobol programmer. He had been with my last company for almost 10 years doing C++ work. He didn't understand that if he updated a C++ class to add a new function anything that used that class had to be recompiled so it would "know" about the new version of the class. I mean literally, he was stuck for days and couldn't figure out why he was getting access violations. What's worse is he had no idea how to tackle the issue. He started thinking that his system was screwed up completely and wanted to use memory management tools to figure out the problem. He didn't even bother to see the time stamp on his various files to see if they were old and could use a recompile. (Let alone use a program to check dependencies.) I helped him and figured it out fairly quickly and then started talking to him about recompiling the other stuff. (Since I've done that before. Updated a class and then missed recompiling another class or 2.) He had no idea what I was talking about or why this made a difference. Of course the absolute worst part is he thought he was a very good coder and wouldn't listen to what anybody else said about his code. (After that I avoided working on things with him. Clueless and essentially unteachable.)

    --
    Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
    1. Re:You think that's bad? by s73v3r · · Score: 2, Interesting

      I'm quite embarrassed to say I've done this too. I've also lost a day's sleep due to it. Of course, when I realized it, and fixed it, I then had to come up with something outrageous to say happened, because there's no way I was gonna say it was something that silly. Its also why I tend to avoid just recompiling individual files in a project, preferring instead to let the IDE or makefile recompile the whole thing. Plus, then I get a legitimate reason to goof off for a few minutes ;)

    2. Re:You think that's bad? by DamnStupidElf · · Score: 2, Informative

      Welcome to the "joy" of statically compiled, un-managed languages. Sure, Makefiles can help but ultimately there is no way to be sure that your binaries are correct short of recompiling everything from scratch in the right order.

    3. Re:You think that's bad? by NotSoHeavyD3 · · Score: 2, Insightful

      Oh I think everybody has done this and had their "Duh" moment when they figure out the problem.(Well ok, those of us that do C++ coding. I know I've done it and palm to my forehead when I figured out the problem.) Also I'd tended to only update function locally and if I had to update function definitions or class definitions use the build system so it could worry about that stuff. But like I wrote earlier the guy never figured it out even while I was talking to him about it. (It took me half way through the conversation to realize he didn't get it at all and was literally that clueless. It was mind blowing anybody could work as a SE that long and not known about it.) Anyway I hope I never get like that especially the whole thing about not listening to anybody.

      --
      Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
    4. Re:You think that's bad? by Anonymous Coward · · Score: 0
  133. Michael Jackson by rfc1394 · · Score: 1

    I thought VAC was pretty decent in preventing cheating in CS and Valve has been banning cheaters left and right?

    I'm not going to rise to the bait and think you were serious in believing they were referring to "CS" as Counter Strike as opposed to Computer Science. But I have my own story of people intentionally confusing others.

    Over 20 years ago when I lived in Southern California, KABC radio in Los Angeles has a (white) gentleman with an English accent as one of their talk radio show hosts, whose name is Michael Jackson. So me and another guy on a BBS were going on with this back-and-forth conversation about how he sure sounds different on his show on the radio, and so on with other comments, clearly "wrong". Eventually one guy took the bait, and pointed out to us that it's two different people. That's when we pointed out we already knew this, we just wanted to see how long it would take before someone noticed.

    When the much more famous singer died, people went to the Hollywood Walk of Fame to look up the star for "Michael Jackson." Unfortunately, it wasn't his; it was the one that was given to the radio personality.

    --
    The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
  134. Drown them all by BlortHorc · · Score: 1

    Seriously, the time wasted interviewing these know nothings pretending to know something costs the industry, let alone when some dumb fucking boss actually believes their credentials and gives them "work experience".

    If you cannot pass the bullshit tests at Uni, I guarantee you the world will rip you several new ones you will need to explain if you blag your way into a job.

    Do us all a favour, go get a job in sales, at least then no one will complain when we beat you up and flush your head down the toilet. Oh, no one told you the dumb guys are the dorks in the real world? Consider a job in door to door. That way you'll rarely meet us.

    >:)

  135. The idiots will get caught by PPH · · Score: 1

    TFA cites a few techniques like "adding a few keystrokes".

    Come on, folks. With global search and replace on names, one click source reformatting and refactoring, only the idiots will get caught.

    --
    Have gnu, will travel.
  136. I Think the Prof's Scheme has a Hole by Anonymous Coward · · Score: 0

    If each person caught cheating increases the weight of the final by 5% then he might have a problem. The article says the classes are large, so assume 40 people get caught cheating. The final is now worth 215% of the final grade.So if you get a 42 out of a 100 on the final you final grade is a 90 for an A. The hard part is arranging to have 40 of your classmates caught cheating.

  137. Long term cheaters by Anonymous Coward · · Score: 0

    I'm a postdoc at the uni where I took my undergrad physics degree getting on for 10 years ago. Last year I found in one of the teaching labs a badly degraded, presumably many generations old copy, photocopy of a listing from one of my 1st year programming exercises. It was definitely mine as it still had my name in the comments block at the top. It made me wonder quite how many people have handed in my solution.

  138. Florida by proslack · · Score: 1

    At public universities in Florida you simply get an FF (not just an F) for the course. Doesn't look to good on the resume - kind of like a dishonorable discharge - yes, you served, but you don't want to broadcast it. I've only had to give a couple, always in the large first or second year lectures, never in upperclass coursework.

    --


    Floating in the black seas of infinity without a paddle.
  139. Different goals by syousef · · Score: 1

    Your goal in University undergrad courses is rarely to produce anything usable. It is instead to understand the subject you are studying and get some practical experience applying that knowledge. Copying here with the aim of avoiding having to understand and avoiding getting practical experience means you never grasp the concepts.

    In contrast your job is about producing an end result that will be used. Copying here isn't cheating at all. It's reuse.

    In other words in university your goal is to understand quicksort. At work your goal is to use it. Implementing quicksort is perhaps vital to the first and not required for the second.

    --
    These posts express my own personal views, not those of my employer
  140. I love helping people with homework. by seebs · · Score: 1

    When people post homework questions on comp.lang.c, I often provide them with answers.  For instance, someone posted asking for help writing a program that, given a number, would print out something like "the first digit is one, the second digit is two", etcetera.

    My solution started out:

    struct {
        double lo, close;
        int d;
    } digits[] = {
        { 6.80183905339058814121, 6.80239476332431092231, '\x39' },
        { 6.68398653227400885157, 6.68461172766792710576, '\x38' },
        { 6.55036579410553621017, 6.55108033504340436792, '\x37' },
    [...]

    Here's the main loop:

        for (i = (d >= 0 ? 0 : (hit = 1, 20)); digits[i].lo == digits[i].lo; ++i) {
            if (d > digits[i].lo) {
                printf("The %s digit of the number is %c.\n",
                    names[di++], digits[i].d);
                d = log(exp(d) - exp(digits[i].close));
                hit = 2;
            }
            if (digits[i].lo == 9) {
                if (hit == 1)
                    printf("The %s digit of the number is %c.\n",
                        names[di++], digits[i].d);
                if (hit)
                    hit = 1;
            }
        }

    I sincerely hope he handed this one in.

    --
    My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
  141. Complete recall of Academics by hackus · · Score: 1

    Which is what we need. It is going to happen anyway, because the USA will not be able to fund Universities at the level we are right now for very much longer.
    (We are within 10 years going to lose our reserve currency status. I figure half of the cities will look like Detroit in about 15-20 years from now, unless we have a complete revolution of some sort.)

    This idea, that you can take an exam to memorize facts and then apply them to contrived problems, and then if you do not do well, for the rest of your career or any career for that matter automatically prevents you from learning further, is really at fault here. I would like to point out, all of the major players in science and technology from Newton (who at Cambridge was the most unremarkable student of all time.....C maybe even a D student....as well as Einstein which both where shut outs of the establishment.)

    The whole test/exam to determine ones ability is just incidental argument, if you "cheated" or not. The whole thing has to be thrown out.

    Besides, the way science works, is you "cheat" by looking at nature or others work and you build off of others work with your own ideas. Which, I would like to point out come from YOU, not anyone else.

    Nothing ever in life will be a set of facts, from a contrived problem sitting there waiting for you to solve.

    What we need is to get rid of test and exams, and replace them with peer review works or work based on merit on the college level so that your peers, your combined works on a topic of field, are recognized as a body of knowledge produced and of high enough quality for you to be granted a degree, by your peers.

    In this context, you will be given projects to do, or work on with your peers, and then you will defend them with questions from your peers about your work. Typically these would be projects that look at unsolved problems in computer science (if you think your really above average.)

    It is INCREDIBLY HARD to cheat in a environment like this, much harder than the test memorize exam crap we have now.

    Besides, that is how the world works and that is how good science and learning actually works.

    -Hackus

    --
    Got Geometrodynamics? Awe, too hard to figure out? Too bad.
  142. About conventions and other stuff by Anonymous Coward · · Score: 0

    So.... this is not about Counter Strike after all.

  143. Oh, thanks for the reminder by NotSoHeavyD3 · · Score: 2, Funny

    We had a build system. So you check your code into your branch in source control and request a build. The system would then rebuild everything from scratch in the right order and put it on a server where you could just copy back to your local system. (All of this was automated.) The guy didn't even try that. (I mean all he had to do was check in his code at the end of the day, request the build when he left and the next morning it'd be done.)

    --
    Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
  144. Why nobody plagiarize someone elses... by ub3r+n3u7r4l1st · · Score: 1

    tax returns?

  145. On cheating and plagiarizing by martinve · · Score: 1

    At Tallinn Technical University where I do my postgraduate in CS, the policy on cheating and plagiarizing is quite strict. The minimal punishment is zero for grade and the student has to take the course again next year. The maximum punishment is expulsion from university.

    A good rule on plagiarizing was written down by one of my professors. Quote: "Using diagrams, source code or text in unchanged or changed but recognizably similar format without citing to the original source is plagiarism. Presenting plagiarized work means automatically grade zero". When citing the sources, it must me clearly stated, what part originates from original source and what is the contribution of the presenter. External but quoted are considered not done" or partially done", depending on author's own contribution." Sorry for bad translation, it sounds almost as bad in its original language (Estonian).

    In my opinion, when you cheat at university, the place is definitely not for you.

  146. What's the problem? Just let them cheat! by Chemisor · · Score: 1

    The real problem here is the idea that a college degree is treated as a certification. The right thing to do is to get rid of that idea and treat college as a private matter, with the degree being awarded for completion, not competence. Any employer will grill you on an interview anyway, and will know if you know how to write code. Anyone who doesn't deserves the quality employees he will get.

  147. Academically, professionally. . . by jafac · · Score: 1

    I suppose we all know the "drill" - to steal from many sources is "research".

    1. I look at the assignment, I read the materials, I don't understand it.
    2. I look at the examples - I see going from step 7 to 8, seems like magic. WTF?
    3. I reckon I never copied from another student outright. But there are sources, anyone can use Google.
    3a. You say you can detect cheating if the indenting is the same, variable names are the same, braces are the same? I guess it's a good thing I'm a bit anal about my coding style. . .
    3b. I take my source, and I kind of run it through my mental clipboard, I copy it line for line, but if anything can change, or be done "my way" - I re-write it. I indent it to MY style. I use MY bracketing style. I use MY way scheme of variable and object naming. I comment - copiously. If I have to come back to this code in 3 months, and read it, and try to figure out what the hell I was thinking, I'll explain it to myself in detail. I'll write a novel in comments. Especially, if I had to do any trial-and-error to get it to work, and if I had to do anything freaky. Sometimes, I'm hoping a better coder will come along, see what I did, and why I was confused, and then send me an email, and explain what I was doing wrong. (never - in 15 years - has that happened).
    3c. At the end of this process - maybe I didn't come up with the solution to the problem creatively. But I learned how it was done, and how to do it on my own the next time.
    4. At the end: what I turn in, or compile - you probably can't run through any automated means of detecting plagiarism. But the algorithm is probably the same. The logic is the same. I'd bet the bytecode is probably pretty similar.

    What is the purpose of the class?

    To learn how to learn how to do task X. To understand that step 7->8 "magic".

    What is the purpose of the professional project?

    To get task X done - while still doing due-diligence in respecting intellectual property, and perhaps, making a small-time investment on behalf of your employer, in improving your own future productivity.

    If I were ever doing anything earthshatteringly innovative, (not likely) of course, I'm citing ANY significant use of someone else's code. That's how my parents raised me, that's how my ethics professor trained me, it's what my peers, my employer, and our customers expect.

    But with the crappy little "ten million feet have trod before you" tasks I'm usually doing, it's just not a concern. And if there are a hundred other script monkeys out there copying and refactoring my code the same way, I don't really give a crap.

    --

    These are my friends, See how they glisten. See this one shine, how he smiles in the light.
  148. Re:are you marked as a cheater for reusing your co by pclminion · · Score: 1

    any ways pro codes reuse code and copy and paste others work all the time and most of the time there are no 1 man coding out there for a lot of software.

    Pros do reuse code, but they do so by modularizing it into libraries and abstracting its functions into well-defined APIs. Pros do not copy and paste. If your idea of code reuse includes Ctrl-C and Ctrl-V, you're not a professional.

  149. Cheating isn't always subtle by Anonymous Coward · · Score: 0

    The least subtle example ever given to me was the student who produced a program late, but fully functional. The executable ran well. I was suspicious since this student had never done a tap of work. Maybe an older friend had written it?

    Of course having source code in Java when the course was on C was a bit of a give-a-way

  150. Don't do it. by Anonymous Coward · · Score: 0

    I've only cheated twice in my life. Both were accidental viewing of the answer. The second time, I intentionally didn't answer the question, so as to get no credit for the cheat. Cheating hurts the person cheating, and indirectly hurts everyone else. A number on a piece of paper is not worth hurting people.

    1. Re:Don't do it. by Myopic · · Score: 2, Interesting

      Yeah. In a mid-level CS class once I just had no idea how to do the problem set. It was a bit above my ability, and I hadn't left nearly enough time to complete it. A friend gave me his solution from the previous year, for reference. I felt it was okay if I could read his, understand it, and apply the understanding to my own code; but after trying, I didn't understand it, and didn't have time to apply anything to anything.

      I turned in my own work, which was incomplete and didn't fully 'work'. I received a fair grade (above zero, below failing) and learned to try a bit harder next time. My school, like Stanford, had an Honor Principle, and I respected that very much. I appreciated that our exams were usually not proctored, and professors weren't usually going out of their way to look for cheating (but of course would deal with it when it came up, which it did sometimes), so I kept my nose clean.

      I remember the last time I distinctly cheated on a test: it was a grade school spelling quiz. I got semi-caught. I don't think that was the lesson which changed me forever, but somewhere along the line I decided that, for me, I was comfortable enough with my ability level that I didn't want to make a habit of cheating.

  151. Absolutely right, especially in Comp. Sci. by Anonymous Coward · · Score: 0

    "He/she who cheats discovers later why this is a bad idea." - by menegator (539434) on Friday February 12, @08:15AM (#31111862)

    You're absolutely correct, & especially in something like writing code (or maths, or any subject you're going to be into for a living that's complex, changing, & never really ever "absolutely the same thing twice" exactly either). In fields like those, & I am sure you all know depending on what it is you do for schooling but mostly those of you who later used it to make a living, that you're always better off doing the work yourself.

    You may not always get to "polish it down" to be what I like to call "110% bulletproof & bugfree", especially while you're in academia because you're just learning really, but, you learn by DOING imo, in this "Art & Science" by far more than any other possible or potential way.

    It's the best way, so cheating is only cheating yourself of learning new & valuable tricks that will help you get paid one day, if not already.

    (I think that's what you were leading to here, & mainly so you understand what's being done (in academia, just like on the job, it's building your toolset/foundation of "hands-on know how" as well as the toolkit of code you'll probably use for the rest of your life, in part (because you DO learn "on-the-job" too, & all the time imo @ least))...

    APK

    P.S.=> Ever heard the saying "Don't EVER throw away your old code"? It's true - you constantly BUILD on that, your whole time you're into this field imo, & by having done it yourself, you really learn "where the rubber meets the road" is why, but... I wager MOST of you KNOW this to be true anyhow! apk

  152. Re:On The Other Hand/You can only go so far by mykepredko · · Score: 1

    We're just finishing a project in which image data (RGB and YUV) has to be blended together. The SoC we were working with had blending libraries that took advantage of blending hardware built into the processor.

    Unfortunately, the blending was of poor quality and very slow.

    The solution was to have an engineer write routines that would perform a custom blending algorithm that could be tweaked to provide the best image. In this case, he did a superior job and not only provided better image quality than the manufacturer's library but also ran faster.

    I agree that management will want you to use existing code wherever possible, but when it comes down to it, if the existing pieces don't meet requirements, the coders have to know how to replicate the functions.

    myke

  153. This is how I hunted copycats... by AlgorithMan · · Score: 1

    This is how I hunted copycats in my tutorial groups:

    I wrote a little program that removes comments. If you are serious, you might also rename variables and functions so they are uniformly (that's not SO bad, if you use lex & yacc)... then run a diff on all pairs of codes (no, use a BASH script!), that ignores whitespace differences (-b -B) and pipe the result through wc -l to count how many lines diff wrote.

    pairs that have a small number are suspicious and should be compared manually.
    pairs that have a 0 are pretty much guaranteed to be copies...

    --
    The MAFIAA is a bunch of mindless jerks who will be the first up against the wall when the revolution comes
  154. You don't punish criminals for breaking the law: by Hasai · · Score: 1

    You punish them for getting caught. Unless you're into Theology, that's just the way the world works.

    Just what is your point, if any?

    --

    Regards;

    Hasai

  155. Very Easy by Anonymous Coward · · Score: 0

    There's a couple of guys out there who owes me a favor or two. In their defense, these were guys who had no intention of working in CS and were only studying it cause their parents made them.

  156. See? by paxcoder · · Score: 1

    'I wasn't even thinking of how it [sic] easy it would for me to be caught,'

    That's why you need sleep.

  157. Re:Group punishment by winwar · · Score: 1

    "It forces the responsibility for preventing cheating down to the students, many of whom have now power to change the behavior of others."

    Really? If the most common way of cheating is copying another students work, I'd say other students are mostly responsible for the problem. This also provides an excellent way for a student to say no to peer pressure. It also provides punishment when cheating occurs but cannot be traced to a single person (identical papers, no one admits to copying).

    "If I were in that class I would summarily drop and file a complaint with the dean."

    Good luck with that. Don't like the syllabus, don't take the class. As long as it doesn't violate policy and is written in the syllabus, a professor can pretty much do as they like. And complaining about a policy designed to enforce the honor code isn't going to win you much sympathy. And might get you some unwanted attention.

  158. Re:Group punishment by GrantRobertson · · Score: 1

    Even if the most common way of cheating is for some students to let other students copy, this does not mean that ALL the students have any means whatsoever for preventing that. Only those involved should be punished. Not those who had not way to stop it or even know about it.

    I feel another reason the teachers may be more willing to spread that punishment around is that it causes grumbling but no lawsuits. One of the reasons many teachers are hesitant to fail or expel a student is that it often results in a lawsuit. Even if the teacher or school wins it is costly and time consuming.

    How many time have you known what was going to be on the syllabus before enrolling in a class?

    My point is that collective punishment should be against the policy. I certainly wouldn't want to attend a university that endorsed it.

  159. Attention to detail is key... by Excaliburszone · · Score: 1

    I was a TA for my university's CS department for a few years. There was this one semester where two students decided they were going to cheat off each other in Intro to Programming.

    They might have pulled it off since they were in two different classes and had two different TAs doing the grading.

    Except one of the berks decided he wasn't going to change anything in the copied project, not even in the file headers where the other student's name sat staring at me...

    yeesh

    --
    Enjoy! -Excalibur
  160. Pretty Easy by Anonymous Coward · · Score: 0

    I graduated from a 4 year university recently, while they specialize more in engineering, they kick out a good number of CS degrees. I could knock out code all day long (or all week long in the case of that damned b*-tree), but when it came to the upper level theory classes...turns out I'm more of code monkey than a mathematician.

    I went through tons of trouble to obtain answer manuals and used Google extensively to find my answers. Many book publisher websites offer a student and teacher side of their site, the teacher side offering the answer manuals for download. You'd be surprised, or maybe not, how many of these sites are open to SQL injection attacks. I think I cheated my way through my whole senior year, I didn't do it for the GPA, I did it for the degree.

    A lot of the C++/Java coding is done on netbooted Fedora machines, at least while I was there. Some people knew enough about the Linux command line to be stupid, as they left their home directory open to all for reading. You could find entire completed projects from people who already completed the class. I always wondered if I were caught, if the owners of the unsecured home directory could be held liable or not, probably so with the 'use a bomb to put out a fire' mentality.

  161. Re:Cheating - remove the incentive to cheat instea by masmullin · · Score: 1

    interesting read... but please use paragraphs and whitespace next time! my poor eyes.

  162. Lazy has gotten a bad name by Overzeetop · · Score: 1

    I tell my employees I'm lazy - they only half get it. They see me in the office 50-60 hours a week, and wonder how I can be lazy. I just don't waste effort. I reuse what I can, I sketch solutions quickly, I don't make anything more complicated than is needs to be. Perhaps efficient would be a better name, but efficient just doesn't wuite fit me - I'm lazy. And I get a lot of work out the door. And it's done correctly the first time, because it's too much damned work for me to have to do it twice. I'm not in CS, but the concept still applies.

    --
    Is it just my observation, or are there way too many stupid people in the world?
  163. With A Purposeful Grimace by jman.org · · Score: 1

    In the late 70's, one of my high school classes was a vocational IT study, located on a local Community College campus. I was lucky, being in the 2nd year of the program; the 1st year the building trades class was still assembling the structure, and there was no link to the UI mainframe so the IT students just had bookwork.

    One part of the class was learning punch cards, so we had to re-type existing code. That was really boring, so I'd figure out ways to fit song lyrics into the 80 available columns.

    Though I didn't like all their tunes, "Godzilla" by Blue Oyster Cult was a favorite, so that's one of the ones that got entered.

    Of course I could never turn that work in. But when grading time came, the teacher got all flustered, said he remembered seeing me tap away with all the other students, couldn't imagine what happened to the work, he must have lost it, really sorry, here's an "A" anyway. OK?

    OK.

    So, did I cheat? I really did learn to operate Mr. Hollerith's machine (and even got to use that skill later, after enlisting in USAF). I just didn't actually push the same buttons as did the rest of the class.

  164. How we detected cheating... by Taed · · Score: 1

    I was a TA for a few CS classes. One method we used was to compile everyone's code and look at the size of the object file. If two programs produced the same size object file, then it was most likely a case where someone copied code, but then changed variable names and comments. Another easy method (which only works with smaller classes) was to have everyone come in to "demo" and explain their program. The folks that cheated were not able to explain their work.

  165. Seriously? by danwesnor · · Score: 1

    In my day cheating in any form == expulsion. I can understand giving a second chance, but any student who is a repeat offender should be lucky to get a community college degree.

  166. Re:are you marked as a cheater for reusing your co by Sardaukar86 · · Score: 1

    Fuck you. You are what's wrong with this profession.

    I couldn't agree more. With a name like 'Joe The Dragon' the guy's obviously an Asian, probably Chinese.

    Says it all, really.

    Go on, do-gooders, call me a racist - and miss the point entirely. This is about culture and social norms and nothing at all to do with race.

    --
    ..Mullah or Pope, Preacher or Poet, who was it wrote: "Give any one species too much rope and they'll fuck it up"?