Live data from Hacker News

As Computer Coding Classes Swell, So Does Cheating

nytimes.com

251–260 of 303 posts

Re: As Computer Coding Classes Swell, So Does Cheating

#251

Earlier quoted context omitted.

> you can thank the cheaters and fakers, and the fact that our industry doesn't have the will to root them out. Isn't this in every industry? You don't apply for the job you are most qualified for, you shoot for the next level job, the job that pays better, looks better, but stretches your expertise.

Isn't this in every industry? Many professions have professional institutions which act as gatekeepers and audit the quality of university courses. For example, in the UK to become an architect you must become a member of the Royal Institute of British Architects, which requires a degree, a certain amount of postgraduate training, and a certain amount of experience working under an already-qualified architect. Needle…

And all those gatekeepers introduce significant economic inefficiencies while often failing to control adequately for quality.

Part of the problem is that programming is far too diverse a field. The only common denominator that could be reasonably certified by a gatekeeper/professional guild would consist of theoretical grounding in software engineering and computing concepts that typically comes with a CS degree. Yet, as all programmers are aware, people who have managed to jump through that hoop do not necessarily programming skills possess and do not necessarily good programmers make, while there are plenty of self-educated types who have managed in lieu of the formalities.

That's not to say that the field might not benefit from some professionalisation, just that there is an argument to be made that it is qualitatively different from civil engineering, medicine, aviation, architecture, accountancy and the like, if for no other reason than that the technology and skill requirements shift at a bewildering clip in rolling releases across 3-5 year time frames. That sort of thing is anathema to the slow, bureaucratic pace of guilding or regulation.

Re: As Computer Coding Classes Swell, So Does Cheating

#252
post #200

Earlier quoted context omitted.

What? Almost the entire meat of my CS program was programming projects in a variety of foundational domains (operating systems, networking, concurrency, databases, graphics, compilers, cryptography, machine learning, visualization, etc). Theory (discrete math, algorithms, formal languages) was 3 courses out of an 18-course program. HN keeps talking like it's the only thing you do in a CS major, which is bizarre.

I think you misunderstand. After an introductory course, it's expected that you don't need to be "taught to program" anymore. As part of your compiler class, you'll be taught about automata, regular expressions, grammars. For your projects, you might get some help with using a lexer and a grammar generator, but you should be able to figure out the "programming" parts yourself, and the teaching emphasis is on the theo…

Sure, but the vast majority of lecture time prepared you to do the programming projects, the vast majority of out-of-class time was spent on the projects, and the exams required minimal study besides having done the projects (one way of spotting cheaters was to look at the delta between understanding demonstrated out of class vs. in class).

Re: As Computer Coding Classes Swell, So Does Cheating

#253
It's interesting how at-odds the concept of plagiarism in a university classroom is with the industry-lauded values of open source software and reuse of well established implementations. As someone familiar with the university system but who learned software engineering entirely outside of that context, I can't help but think it seems a bit antithetical to a large component of the skillset I's like to see in a new grad I was working beside.

Re: As Computer Coding Classes Swell, So Does Cheating

#254
post #61

Earlier quoted context omitted.

Is the work sample done in person or take home? If it's take home, then they can just cheat on that by hiring someone else to do it.

At Compose (YC, S11) we had a two part hiring method. The first was a blind work-sample. You had unlimited time to complete it. Identifying information was obfuscated and graders would yes/no objective criteria. The best samples proceeded to the "work day". During the work day, you'd join is in Slack for 8 hours. You'd need to ask probing questions to mock-up our infrastructure and pitch a feature based on "how we wo…

> During the work day, you'd join is in Slack for 8 hours.

That's amazing! For everybody else that shares my amazement, I found https://www.compose.com/articles/how-compose-uses-interviewe... that touches on said hiring practice, but I'd love to hear more.

Re: As Computer Coding Classes Swell, So Does Cheating

#255

"Troves of code online, on sites like GitHub, may have answers to the very assignment the student is wrestling with, posted by someone who previously took the course." If the assignments are not changed from year to year, the institution is partially to blame. A good student, researcher or scientist is expected to do research. When you stumble upon the solution (either by accident or intentional) to your problem, it…

This is getting downvoted, but I once had an advanced-level course where the the assignment was to write a peer review for a research paper. We were given 24 hours and allowed to use the internet, so I Googled the paper, found a scathing blog my professor had written and deleted, looked it up on archive.org and found myself with a dilemma about whether to cite it or not. I decided it was better to cite it than risk getting caught, and it worked out fine for me. In hindsight I shouldn't have put myself in that position, but temptation is a cruel mistress.

Re: As Computer Coding Classes Swell, So Does Cheating

#256

Earlier quoted context omitted.

What? Almost the entire meat of my CS program was programming projects in a variety of foundational domains (operating systems, networking, concurrency, databases, graphics, compilers, cryptography, machine learning, visualization, etc). Theory (discrete math, algorithms, formal languages) was 3 courses out of an 18-course program. HN keeps talking like it's the only thing you do in a CS major, which is bizarre.

I suspect there's a fair bit of variance between CS courses, and even how we remember it. In my case, the topics were similar to the list you give (although there were a significant number of optional classes which I filled with math, skewing it a lot), but the subjects were definitely more theory-focused than practical. Sure, there were practical classes for each subject, weekly projects, semester projects and so on…

Interesting, I guess mine skewed the opposite way: the theory served the projects, and the vast majority of what you needed to know for theory-based exams, you'd pick up by doing the projects. Some lecture slide and textbook review necessary, but not a lot.

Always surprised to hear about this variance, given the general consensus that there aren't differences in quality between schools.

Re: As Computer Coding Classes Swell, So Does Cheating

#257
post #80

Earlier quoted context omitted.

This is a fantastic was to end up with a code base 15 layers deep with each layer converting the properties of one object to properties on another object. It sure looks pretty in architecture diagrams though.

As in code, so in organisations: somewhere in the stack some entity must actually do some work, or the whole will not function.

Divide and conquer, or in this case, divide and delegate. Recourse until the call reaches the base case with no authority to delegate, then the work will be performed and returned.

Re: As Computer Coding Classes Swell, So Does Cheating

#258

I've been a TA for a couple CS classes at Iowa State University. Cheating here at least is pretty rampant. I would guess 1/3 or more of the students cheat in some capacity. Some of it is really easy to detect too. For a first semester freshman class, I tried using MinHash to cluster student submissions together. Maybe 10% of the assignment have near duplicate pieces of code. More comprehensive methods like MOSS (Meas…

I used to be a tutor for my university's CS department. Cheating increased as our influx of CS students increased. Lots of kids who didn't actually enjoy CS, but had heard it was a lucrative career. It was incredibly frustrating to deal with them in class, and when they asked for "help" in the walk-in labs.

The biggest problem was the department heads unwilling to take on the issue. Most who get caught cheating just fail, but aren't reported for it, and the one lecturer who did take it seriously never got anywhere because when he would report it, nothing ever happened. The more students in CS, the more funding the school gave the department...

Re: As Computer Coding Classes Swell, So Does Cheating

#259
post #74

EDIT: My comment completely missed that there were 100 lines of identical code noticed as well. Leaving below for context. ------- Does anyone else find the example cited in the article rather flimsy? Out of 450, two students incorrectly used the inverse of a Boolean for a conditional – an error I have seen tens, if not hundreds of times. Perhaps they used better ways of detecting cheating (some are covered later in…

The two students also shared "nearly 100 identical lines of code". The `!done` was the icing on the cake.

Oddly, it's not the `!done` that is the problem, it's the `boolean done = true`. Which should be `false`

Re: As Computer Coding Classes Swell, So Does Cheating

#260
post #229
post #224

Earlier quoted context omitted.

As others have noted, this is unlikely to explain it. I'm a professor at Carnegie Mellon. In the most recent semester, I taught a large undergraduate intro to programming course (CMU 15-112 is similar in audience to CS50 at Harvard. Our cheating ratio - about 10% - was similar this year, and was also higher than normal). The course is taken by almost all first-year students at Carnegie Mellon - it has about a 50/50 g…

I'm not pretending to explain why all cheating occurs, or who cheats more. Only what makes the problem worse. In any case I don't know enough woman programmers to make a statistically significant argument. I just described what I encountered while earning my own degree. It could be that those girls just had a cheaty nature and would cheat one way or another. On the other hand, there's a saying "Opportunity makes a th…

If you're not pretending to explain why all cheating occurs, and we're talking about all cheating based on the article, it really just makes you sound like you have a bone to pick with women. When confronted with the statistics that someone else is seeing more MEN cheat, even with this supposed "situation" you describe, you don't react by thinking "Hmm maybe my anecdotal idea is wrong" but by explaining how it's still relevant. You seem strongly biased here.
Post reply on HN