Computer Science Students Outsource Homework
Carl Bialik from the WSJ writes "'If U.S. companies can go online to outsource their programming, why can't U.S. computer students outsource their homework--which, after all, often involves writing sample programs?' Wall Street Journal colummnist Lee Gomes asks. 'Scruples aside, no reason at all. Search for "homework" in the data base of Rent A Coder projects, and you get 1,000 hits. (An impressive number, but still a tiny fraction of all computer students, the vast majority of whom are no doubt an honest and hardworking lot.)' Some of the Rent a Coder users appear to be outsourcing their way through school, at low costs--probably less than $100 per assignment. The posting are, of course, anonymous, but Gomes traces one to a student at the New Jersey Institute of Technology, where an instructor tells him that Rent a Coder contributed to a problem of plagiarism last semester."
Why even bother getting the degree in something if you don't want to do the work anyway? Isn't that shooting yourself in the foot? Besides the fact that you won't have a clue what you're doing since you'll never have learned anything, if you don't have any desire to do it in the first place, why are you in the field?
What really needs to be done is for instructors to wake up and realize that most people don't even need to outsource in order to complete thier projects. After all, who needs to pay a "Rent-A-Coder" when so many instructors provide obvious shortcuts via working examples of the projects right along the assignment, i.e., Java classes, etc... Why "outsource" when you can decompile Jad, change a few variable names and viola! Project Complete.
To really combat plagarism, instructors should focus more on theory, algorithms, deisgn patterns, etc.., and less on the actual solution to a particular problem in $programmingLanguage. If you really must assign projects, insert subtle flaws or traps in the assignment that would make the project all but impossible w/out direct interaction with the Professor to clarify requirments, etc... This would expose the weak students, the obvious cheats. and give a clearer picture of what's really going on in the classroom. Problem is there are too many instructors out there who just don't care, and aren't in it for the right reasons. In other words, they just don't care!
Get your Windows Malicious Software Removal Tool Here for FREE! - http://fedora.redhat.com
Go ahead and outsource your homework. When you graduate and get a job, your company will realize you don't know anything and outsource your job to the same people. I've seen it happen.
http://religiousfreaks.com/...why not be a buisness major instead? I mean, if you're not really passionate the work, why not pick an occupation that a) pays more and b) is easier to fake your way through?
Why in the old days we had to post the problems on USENET and hope not to get *plonked*! Kids today are sooo spoiled.
Well, cheating is cheating, whether you get to use the work from a classmate or from someone in another part of the world. And if someone is really determined to take the easy way out, there is not a whole lot you can do to stop them; I doubt the majority of cheaters in college ever get caught (but allow for the fact that stupidity probably is a major factor in the need to cheat to begin with so that by itself increases the capture rate).
But what happens afterwards, when they're looking for a job and blow every interview since, well, they don't actually know what they're talking about? My guess, they blame the outsorcing trend for their failures...
Trust the Computer. The Computer is your friend.
If I was to pay someone when I was at uni to do my Java assignments for me, apart from the good mark I could have got it would have been bugger all help for me in my exam.
Going to a Java exam armed with a pencil and my brain was all the help I had, and by doing my assignments during the semester i learned everything i needed to know to pass my exam.
Cheaters will get found out eventually, if they manage to pass uni, they will not get very far.
You can only bullshit your way through something for so long before you hit the wall.
I want to become a really great guitarist. Maybe I can hire someone else to practice all those tedious scales, arpeggios, and chords. When they're done, I'll be able to play like Steve Vai!
The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...
Th better part was that the student also used his real name in the listing.
No sig, sorry.
There's a pretty big divide between utilizing some code someone else created to help solve a problem and outright getting someone else to do your work for you. Let's face it, there's enough easily accessible code out there that someone can cobble together a program in relatively easy fashion. Of course, it would take effort to actually assemble a bunch of "free" code to make it work. Is it any wonder that so many script-kiddies out there copy and try to utilize virus code, only to do such a bad job of it that the virus doesn't work?
GetOuttaMySpace - The Anti-Social Network
I took the time to RTFA. In the first example, a student who'd been more interested in night life than their studies found somebody to fill out a take home final exam. Letting the students take the final of all things outside the classroom is simply begging for them to cheat. If not this way, some other, such as getting help from an older friend. That instructor should be fired, unless there's tenure involved. If so, simply don't assign him or her any more classes. Let them strut about with their title of Professor, and their tenure, if they want, but unless they're actually teaching, I doubt they're going to get paid, and they won't be giving any more good grades to cheaters.
Good, inexpensive web hosting
The times are gone when most people in CS are geeks.
Many, many, *many* are in it for the money, or because people keep telling them computers are the place to be. I'm in computer engineering myself, but I've had to take up through jr level comp sci courses, and in each and every one I see people who fail to exhibit basic programming knowledge, or only a middling skill level in using the computer in general.
If you can't see the value in jet powered ants you should turn in your nerd card. - Dunbal (464142)
I did my undergrad at Oxford (granted, it was history, not CS, so maybe slightly offtopic here) but the system in use there is a good model of how to eliminate this kind of problem. You write an essay (or program as the case may be) and then sit down and get grilled about what you wrote for an hour with your professor. If you are bullshitting, or god help you plagiarizing, it becomes obvious in about two minutes. It's not perfect, but you really have to focus on understanding, rather than regurgitating material or producing a set amount of text.
These days, sadly, a lot of people complain that this system is too "archaic" and "inefficient", which makes me wonder what exactly is gained by "efficiently" pumping out graduates who don't remember anything about their subject when finals are over.
I have a few thought on this:
:) Hows that for Entrepreneurship? One can telecommute and then outsource all of his work to India....lets just hope those fools don't violate any NDAs!
First of all, it is probably morally wrong for students to have "other" people do their work for them. However, sometimes it really helps to have some "example" code from which to start learning. I'm torn between the two teaching methods but I believe that a good balance is necessary.
As an Electrical Engineer I was forced to learn to code (despite that fact that I really don't enjoy coding that much). I found that sometimes when a student jumps feet first into something they have a really steep learning curve. If they start with sample code and then get weaned off of it then that would be effective.
Ironically, "some" of those idiots were blamed for plagiarism! Oh how sweet justice is when students learn "Quality Control" through cheating.
On the flipside, I've seen arguments here that those students wont get anywhere in the workforce. I could imagine a scenario where individuals outsource their "personal" assignments (in the workforce) to India
I know I'm ranting but its my style.... I feel that I'm at least semi-on topic and that, at a minimum, made an attempt to say something interesting...
Matt Wong www.themindofmatthew.com
It is obvious to all of us that cheating is unethical from the cheater's perspective. It only hurts yourself, it isnt' fair to the others, yada, yada, yada.
But, is the transaction unethical from the perspective of the industrious coder whom the cheater hires? Does the rent-a-coder have an obligation to look beyond the color of his client's money, and into the content of his character?
From the article, we see that Rent A Coder has "tried but failed to curb the practice before." Is Rent A Coder obliged to try to stop the practice? Are they obliged to try harder?
No. It's everybody's loss. These losers devalue the degree of Computer Science. Employers are starting to realize that a lot of these dolts don't really have any clue at all, and this alters their perceptions of CS graduates in general. I put in the long hours and hard work to really earn my degree, but many do not. Employers are not blind -- they realize that a lot of CS "grads" are total nitwits. This might lead them to believe that I am as well.
"You're only cheating yourself" might be true in high school but certainly not at the collegiate level. These sorts of people piss me off.
The schools keep cutting prof wages. What do they expect?
I look at this as a kind of moral erosion that will eventually lead to greater teaching discoveries.
I'm a programmer and I did all my own work through college. But thinking about this problem of cheating in a realistic light -- so what if they outsource? They should get some experience in outsourcing, and if they start early then they will be well ahead of other coders who work in a project management capacity.
That said, it's dishonest to pass work off as your own, if it's outsource material.
What profs should really do is:
1. Allow and encourage outsourcing.
2. Mark much harder on students who have outsourced.
3. Require all outsourcing meeting minutes (from RAC, MSN...etc).
4. Require superior design elements.
5. Require a receipt to keep track of how much was spent on the project.
6. Require project management reports.
This would give coders an idea of what it's really like, plus it will keep students from learning to become great liars (which really hurts us all).
Eventually computers will simply case out most code for us, so teaching coders to be casers is not really that enlightened, and yet most schools pound these kinds of requirements into students, dulling their wits and making them crabby.
Teaching coders to see the big picture will only come from a strong project management regiment, which is currently missing from most major programs. To them it's more about the lexicon, than the abstract understanding!
The dangers of knowledge trigger emotional distress in human beings.
I had a teacher that let you decide your own groups, but with the understanding that along with the final paper/presentation/whatever, you would 'grade' your fellow group members.
You had 100 points to split up between everyone in the group and he'd add up the seperate 'grades' for each student and then multiply the final grade by that number.
So if the group paper was worth a 74% and your group 'grade' was a 94%... you'd get a 70%
It gave you the opportunity to penalize the asshats who weren't pulling their weight. And the people who did outstanding work could get a grade higher than 100%.
[Fuck Beta]
o0t!
Many, many, *many* are in it for the money, or because people keep telling them computers are the place to be. I'm in computer engineering myself, but I've had to take up through jr level comp sci courses, and in each and every one I see people who fail to exhibit basic programming knowledge, or only a middling skill level in using the computer in general.
And a lot of them are just mildly ok at math and figure you have to major in SOMETHING. I mean a lot of them wouldn't feel passionate about anything, but you have to pick a major, so why not computer science? Why does everyone here think that computer science is a field of study so noble, so exalted, that it and only it should escape the mediocre masses that muddle along in any other field? I mean, plenty of those English majors don't read books outside of school, and plenty of those engineering majors never even looked at a schematic they weren't assigned in class, and plenty of those astronomy majors don't even own telescopes. Just have to learn to deal with the mediocre people instead of urging them to go infest another field.
It's fairly clear that particular person should've majored in Business Administration, not Computer Science.
ELOI, ELOI, LAMA SABACHTHANI!?
The nitwit is not the student but the professor who is using homework assignments as a basis for grades.
How hard you work is never a basis for anything. The only thing that matters is results. A lot of couples try to work out their differences. Many times, no matter how hard they work at things, the problems they have persist. The end result is that their problems are never resolved and they eventually split up. The problem isn't how hard they work, but that they can't reach a successful conclusion. If you work your ass off and fail, you can't argue that you're better off than someone who sailed through and succeeded. It only means that you have less aptitude than the person who does better than you.
If a student can pass exams without having cracked the textbook or glanced at the homework assignments, they should pass the class. It goes without saying that perhaps they should have probably taken a different class where they might have learned something, but that's not the point. The point is that the only thing you should be graded on is how well you learned the contents of the course. That can only be accomplished at the end of the course when all topics have been covered. Everything before that is only a means to teach the course topics (homework) or to judge the progress of the class as a whole (mid-term exams).
A degree is just a formal announcement that you have understood some area of study to a certain level of mastery. If professors will pass a student who fails a final exam because his homework was good, that's a problem with the professor, not the student. And yes, if your school has nitwit professors who do this, then your degree is worthless.
Ok you had me until you said astronomy majors.
It's not like there out for the money.
Obligatory Dilbert quote:
Kid:What's a black hole?
Planetarium worker:Well my career would be one example.
Outsourcing your homework is good experience for middle management. That way, when they get their job, they have experience in outsourcing programming and getting poor quality code back.
Fight Spammers!
Outsourcing a programming assignment would be a great assignment for the Project Manager and future CIO.
CIS 410: IT Managment and Outsourcing.
I'm not kiddding that much. I actually had a class in my CIS curriculum that had a mgt class that dealt with this issue.
Remeber, outsourcing can mean hiring IBM, EDS, or Joes Coding and Pizza to do your work.
It's a great age to learn this - probably Jr High teachers should do that demo to each new incoming class - "I can catch you out - it's this easy"
I'd be curious if it was all people outsourcing their homework to party or a combination of the following:
1. Horrible public university student-teacher ratios making assistance in the learning process not only non-existent, but also frowned upon. Said student achieving the boiling point in frustration and failing to have help, seeks aid, even if paid.
2. TAs teaching all the material, oftentimes in fields they have 0 training, with another person's lesson plan/material. I have endured too many upper division security courses now, with TAs that I rated between toilet paper and turd.
3. Onerous assignments by some professor that can barely speak english and instead should be enrolled in ESL 101, where merely deciphering the assignment requires a 10 year background in cryptanalysis and NSA supercomputers. "ha, I'll just give this to some indian coder, he'll understand my professor for sure!~"
4. Rote assignments that are equally dull, unchallenging and time-consuming
5. True students seeking more elegant/better/high-graded solutions. How many times have you cobbled together something that was ugly, functional, but practically a monstrosity. Spend a few more hours on it, with 0 forward progress, or outsource the work, then analyze the solution to see a better algorithm and incorporate it? Why get a C, when you can outsource some superior work, get a better grade, and learn more in the process?
For a personal experience paper I hired this guy who emailed me a paper titled "the life of an underpaid outsourced homework slave" That didn't work so well.
Well, that works just fine for when you don't "know something" such as a fact, figure, or definition. However, what about when you don't "understand something" such as a complex concept or how to apply a theory in practice? Do you just go ask somebody else?
Sure, you could try, but you probably won't simply find it with a quick Google search as you suggest. Consider how long it might take for somebody who does happen to understand it (well enough to teach it to you) to teach you this concept. That time is well spent for you, but not for your employer (nor necessarily your "teacher" in this case). This assumes, of course, that you know how to recognize somebody who actually does understand the concept, which is non-trivial at best; otherwise you'll still get it all wrong.
In the real world, if I want to hire you and you have a degree, I expect you to have been through that drill already for certain complex concepts, with professors (and indeed classmates) who are nominally proficient in their respective fields. If you haven't, you'll inevitably become a burden to your team.
If you aren't passionate, or competant enough to participate in any course offered at a tertiary education institution without cheating - don't go through tertiary education. Try apprenticing in a trade instead. You can get good money as a tradesman, and they don't have the same intellectual focus as a university/college degree.
If you aren't passionate or competant enough in any field offered anywhere, well, you're better served getting started on your french-frying career, because if you can't pull it together enough to get a degree or trade certificate, you're not going to be able to do it for a living.
Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
...then it's a sign that you're not teaching an obscure enough programming language. Using C++ is like asking the students to cheat. You want to require all answers in Unicon, or Lambda Prolog, or (worst of all) POPLOG-11.
At least at Carnegie Mellon, where programming courses were required for a vast majority of the students. Majored in Bio, History, Business..? Yup, you had to take programming. To me it seemed that these people were the ones that were likely to get someone else to do their programming assignments for them. The students who majored in CS? yeah, right.
Sure, let the entrepreneurial students outsource all their projects. The wake-up call will be on them when, during their first real-world interview, I put them in a room, alone, for 20 mins with a whiteboard and ask them to pseudocode an algorithm or data structure.
The students who aren't interested enough in the -science- of a computing project might bet better off majoring in Business Administration and, yes, doing the outsourcing. Leave the architecting, the design, and (maybe) the coding to the real future computer scientists.
Funny how on the Colbert Report tonight, education was the focus of their program. They flashed back to the interview they had with John Stossel where he reported on how the Europeans "cleaned the clocks" of American children on standardized tests. Can this plagarism explosion be apart of what's happening in public schools of America? Now that we have the most comprehensive and accessible encyclopedia in the world Wikipedia, I know of no University Student who hasn't used the 'Copy Paste' strategy in helping out with their papers.
Talking as a 3rd year Computer Science major right now, I can't think of much CS work that could be 'outsourced'. Although I have to admit, I currently attend a small liberal arts university in Canada, my course load this semester consists of the following: Software Engineering, Robotics, Principles of Programming Languages, Computer Ethics (great class), Advanced Algorithms.
Honestly, there's no way you're going to learn Scheme for example, and pass your final in programming languages by outsourcing your homework to someone else, you simple won't pass. And for the rest of the courses in CS, very few actually have 'outsourcable' homework, alot of it depends on your understanding of the material. IMHO, if all your homework is 'outsourcable' than your CS degree might as well be done at Devry.
No. It's everybody's loss. These losers devalue the degree of Computer Science. Employers are starting to realize that a lot of these dolts don't really have any clue at all, and this alters their perceptions of CS graduates in general. I put in the long hours and hard work to really earn my degree, but many do not. Employers are not blind -- they realize that a lot of CS "grads" are total nitwits. This might lead them to believe that I am as well.
Speaking as a person who's just sorting through a stack of resumes, you're absolutely right. Generally I don't bother with people who lack a track record of actually delivering and maintaining software. Schools produce too many idiots whose main skill is getting grades. I run tight ships, and can't afford to spend massive amount of time educating somebody on the difference between academics and industry.
Want to catch my attention even if you're fresh out of school? Include something prominent on the resume that shows you can perform. Running an open-source project or building a dynamic web site with an obvious user base are great examples.
Homework usually doesn't count for a big part of a course, it's preparation for the test. Outsourcing homework makes about as much sense as outsourcing physical exercise or outsourcing an appendectomy--it may avoid short term unpleasantness, but it fails to achieve its long term purpose.
(In contrast, when companies outsource, they may just care about the product, so outsourcing is arguably a correct strategy for them.)
My CSC316 teacher was talking about this in class this afternoon, before the article was posted. The CS department at my school is fairly large, and they already have programs to compare assignments to code produced by fellow students, previous graduates, and code posted on the web.
Teachers aren't stupid, and I suspect they'll find a way to check for this before long.
The sad part is that according to my old java 1 professor, they flunk about 100 students a semester on cheating alone.
I have done that before. I was bored one day, wandering around usenet, when I found a posting that was asking for an assignment to be done. It wasn't just the usual "I have to do X" but it was "here's my assignment, can anyone do it for me?" Well, I was young and brash, still in highschool and here was a university level programming assignment...
I initially just did the assignment for myself -- could I do it. When it was done, I decided to send it out to the guy with a note: "I'm only in highschoo, but this is how I might do it." What he didn't know was that I BCC'd his professor on the e-mail. A few weeks later I recieved a note from the professor thanking me for my honesty, chasting me for my dishonesty, and praising me for the quality of my solution.
Price, Quality, Time. Pick none. What, you thought you had a choice?
I think I can make an addition here. At the university, I often exchange my programs and papers with my colleagues; we analyze each other's works and then discuss them and share the experience.
:-) One can easily get over this, but at least it's better than nothing.
A few days ago, I was chatting with another student from the same uni (but a couple of years younger), she takes the same class and was assigned a task similar to the one I had when I was at her age.
I found out that she purchased from someone a bundle of projects for that class... And among them was one signed with my name.
And then I realized that somebody took the product of my work without my knowing it, and then fucking SOLD it to somebody, so that they could just change the name and give it as their own... Dammit..
That happened to me before too, but in none of the cases the project was paid for.
In my university there are multiple places where you can print out your stuff in exchange for a small fee. Well, it seems that it is THE place where all the leaks happen, the guys do a ctrl+C / ctrl+V before they do a ctrl+P.
Conclusions:
- never print your stuff on computers that do not belong to you
- use some sort of copy protection.. a PDF that doesn't allow you to copy/print comes into mind
Guys, now I happen to be on the other end of the barricades amid this DRM conflict, and it doesn't feel good.
The saddest poem
If a course uses a cheat check program such as MOSS, multiple students outsourcing assignments to the same place will likely get the served by the same coder, hand in the same program, and get caught. That is, the more students that outsource in a class, the greater the chance of getting caught.
Stories:
1. I know of one TA who did rent-a-coding on the side, and happened across an assignment from one of his classes posted. He bid, got the contract, and reported to the professor.
2. Sometimes it is the student who is "not the sharpest knife in the drawer" who outsources. I found a student posting an outsourcing bid who was easily traceable. I contacted the student before a bid was accepted.
3. In a C++ class, I had a cluster of programs flagged as similar by MOSS. Upon investigating I found that a student had posted a solution on a web site. Only one of the cluster compiled. The others failed because their browsers had removed everything in the #include statements between the angle brackets. The students did not recognize the problem and had not even tried to compile the programs before handing them in. In that class, a program which didn't even compile was worth nothing anyway so their cheating yielded programs which were worth nothing. Their plagiarizing yielded a zero for the course and a note to the Dean.
She was from India, and was at my university on a full scholarship. She sent every single one of her assignments back to a friend in India who would do her work for her. She worked in the dean's office, and was able to get copies of all old tests, and many times even got copies of new tests before they were given out.
.class files around for other people to test with.
.class file. Thankfully for me, she admitted this to the professor, and I didn't receive an F for the class.
I was taking a networking class with her my last semester. The very last assignment we had was 25% of our grade, and it was an application that required the students to work together. We had to create a sort algorithm that was network based, and had to adhere to a standard given to us by our professor. Most of the people in the class didn't feel like sitting around in the labs to let others test their applications, so they would just leave the
I was one of those people. So, after the exam, I get an email from my professor telling me that I would be receiving an F for the class due to plagerism (again, this was my last semester). It seems myself and another student had nearly the exact same code. This of course, was the student from India who was cheating her way through all of her classes. It seems she decompiled by
She was caught cheating in her robotics class the next semester, and she was caught cheating in another class the semester before.
I'm sad, but not suprised, to see that the university cited in this article is NJIT, my almer mater. I think there are a number of reasons why kids, in tech schools especially, turn to this kind of thing at university.
Firstly, there is an increasing disconnect between what you do in school, and what will be doing in the workplace. Getting a degree is seen as a necessary evil that you have to undergo in order to get a job in the "real world. NJIT is a research university, and as such it generally hires professors who do good reseach over professors who are on the cutting edge of technology and practice. As such, it houses a number professors who have been out of the work force for years, if not decades.
Secondly, the research focus of the school means that professors are often focused on publishing papers and getting grants rather than putting effort into being a good teacher. Related to this is the fact that applications for tenure (a secure, full time position) at a university are evaluated based on the number of papers published and grants received.
The other important measure when a faculty member applies for tenure is student evaluations. Soooo, teachers have two choices: work very very hard to make their subject and their course material exciting and appealing to students so that they get good evaluations, OR make the course really easy and give out lots of high grades so that students will be happy and give them good evaluations.
Unfortunately many professors choose the latter, meaning that students do not learn what they should, and often *have to cheat in order to get to upper level courses, or courses with teachers who are more demanding (teachers who will likely get bad student evaluations because the course was too hard, making it more unlikely they will get a full time position at the school...sigh).
Anyway, there are a lot of other factors involved in plagiarism and cheating, but it seems that it is related to a fundamental problem in some universities, where student learning is not a priority for either the students or the professors.
The sad fact is that when you cheat, you are really only cheating yourself. If you do not gain the knowledge that is taught in a course, it is your loss. You paid for the course, and did not get the benefit (the knowledge) that was there for the taking.
The most important thing that you gain from a college education is learning skills. By learning a variety of subjects, you gradually develop skill at learning new things. Learning is the only professional skill that really matters during the longer term (20-40 years) of your career. If you don't develop skill at learning, your career will plateau or fail very early.
The other observation that many seem to miss is that the easiest way to get an 'A' in most courses is to actually read the text and learn the material. Reading most undergraduate computer-science textbooks only takes a few days, even if you are unfamiliar with the material. (The math books take a little longer, of course.) Then, if you actually know the material, writing a programming assignment normally only takes a few hours.
The fact that cheating seems to be common has had an effect on the courses, though. I now give exams. It is amazing how a 3-hour exam can separate the people who know the subject from those who don't. I try to design the test so that I can write it in about 10-15 minutes. The students who really learned the material usually write it in less than an hour, and thank me for the easy test on the way out. But some of the students take nearly the whole three hours, and turn in messy piles of disorganized scribbling. I almost don't have to grade the papers -- I could just note the time that each student turns in the test and leaves the room.
We run a small numerical website (www.codecogs.com), nothing the size of RentaCoder but never the less, we frequently get direct request or forum postings for C code that's very clearly homework - deleted straight off.
...."
What gets me, is some don't even have the intelligence to disguise the problem they need solving with us often receiving the exact text from their course work, i.e. "Question 10, Write a program in C to extract
Furthermore I'm struck at how bloody rude these people tend to be, esp given they are cheating. You'd think that if this is your approach to getting through Uni, then the first two words of the English language you might learn are 'Please' and 'Thank you'.
So far I hope we've not helped anyone.
Cheers
Will