Live data from Hacker News

Coping with Copilot

sigarch.org

261–270 of 463 posts

Re: Coping with Copilot

#261
post #126

I understand the problem here and I sympathize with professors in these circumstances. Learning the fundamentals will remain important. But as others have pointed out: if students are unwilling to learn, or are taking shortcuts, it will ultimately hurt them in the long run. One thing tho is that things like Copilot put the lie to the hypothesis (propagated mostly by the Google-style job interview) that intensely codi…

> if students are unwilling to learn, or are taking shortcuts, it will ultimately hurt them in the long run That's a very limited, and dismissive view. If you allow students to use copilot, you're handing out certificates or diplomas to people who can't code. That will very quickly erode the value of your institute's certification, and with it, that of the other students. Otherwise, why not give everyone an MSc in CS…

While it would likely be prohibitively expensive, I really wish there was an independent board that would certify software engineering as a certification and required an oral defense in the same style as a PhD.

I recognize that it's kind of gatekeeping but it feels like more and more diploma mills are just hanging out degrees, not to mention all the coding camps out there.

Re: Coping with Copilot

#262

Earlier quoted context omitted.

Yes. For my part, it's a very obvious boost in exactly that sort of keystroke-saving way. Here's an example I just now tried in the codebase I had open. I literally typed in the following Go in a function: mean := geom.Vec3D{} for Copilot then autocompleted this, me pressing tab to accept each line, to: mean := geom.Vec3D{} for _, detection := range filtered { mean.X += detection.X mean.Y += detection.Y mean.Z += det…

This is a good example of why I dread Copilot: even if Go specifically couldn't express this any more concisely, there is a language that can and Copilot's very existence makes it less likely for that other language to be used as much as it deserves. Besides, the generated example seems to be missing code to gracefully handle the case where len(filtered) is zero. Maybe there's a precondition that prevents that from h…

Zero is gracefully handled; the mean of a zero-sized set is best represented by NaN, and this would be idiomatic in most languages' IEEE754-style handling.

Saturation is not. This is what really bugs me: If I'm going to drag in a billion GPUs of external computation (or a dependency, which is basically the same thing but with human brains), I want it to provide the hard algorithm I can't write, not the easy one I can. I am not limited by typing speed.

I also wonder what a "detection" is.

Re: Coping with Copilot

#263

Earlier quoted context omitted.

I'll be honest: has anyone here ever looked at a resume with an MSc in CS and said "Yep, I bet this person knows how to write code well"? Surely there are some research level jobs where a PhD in CS is necessary, but for most coding jobs, an MSc is just 2 years of missed experience where you're learning bad habits and antipatterns by never having your code used by other people in any strenuous way. Certainly there are…

I'll generally rate an MSc lower than BA/BSc. (The exceptions would be if you needed the MSc to meet some visa requirement, or if you had an BSc in some weakly-related field beforehand.) From downvoters: I would genuinely love to hear a defense of an MSc per se. What university has their shit together enough to actually accelerate/compress 2-4y of work experience into 1-2y years of academic project, which is what's a…

A masters program is generally going to cover deeper theoretical subjects and will also give you stronger mathematical underpinnings in those areas.

If you're just looking for a code monkey to do your e-commerce react website then obviously work experience will always trump academia.

Re: Coping with Copilot

#264

Earlier quoted context omitted.

Adjunct instructor here. Before I came into the program, cheating was on the rise. When given programming assignments, students would go to Geeks for geeks and download solutions, some of them mostly correct, and submit those for credit. One remedy was to try to make programming assignments harder and harder. Eventually, they got so hard that we were asking people new to computer science to implement a full arbitrary…

Hi, sometime adjunct here. Cheating on programming assignments has been rampant forever at every undergrad institution I have experience with and somewhat present among graduate students. My experience spans about 25 years in that space now. When I taught an introductory class, I gave open-book exams with no laptops or phones allowed. About 1/3 of the class was unable to write a syntactically correct for loop in Pyth…

[deleted]

Re: Coping with Copilot

#265
post #11

Cheating is getting easier by the day, but the bottom line is that if the student is cheating, they're probably not absorbing the coursework (or if they are cheating and absorbing the coursework, there might be something wrong with the coursework). The most effective policy might not be to try and mechanically prevent cheating, but to explain that, this is information that you're going to need if you actually want to…

Adjunct instructor here. Before I came into the program, cheating was on the rise. When given programming assignments, students would go to Geeks for geeks and download solutions, some of them mostly correct, and submit those for credit. One remedy was to try to make programming assignments harder and harder. Eventually, they got so hard that we were asking people new to computer science to implement a full arbitrary…

Not a professor, but my undergrad classes were generally graded as 10-15% homework and 85-90% exams.

With grading like that cheating on the homework is basically pointless, so few did it.

Re: Coping with Copilot

#266
While copilot does great on short simple fundamental problems, it sucks (and requires good attention and experience to find all the bugs in generated solutions) when solving anything more difficult. Although I can totally see how this would make teaching the basics difficult.

That being said, I think Microsoft should be fined $100B every time they give one of their products away for free to students. Hopefully that will be sufficient incentive for them to stop so being so overtly anti-competitive.

Re: Coping with Copilot

#267

Earlier quoted context omitted.

I don’t think they mean that it can’t, just that the better way to think about the advantages it gives an experienced engineer is more along the lines of “autocomplete v2”, i.e. a keystroke-saver.

Is it a keystroke saver if you need to review every line it proposes to you?

Yes because often times while I'm unable to recall the exact idiosyncratic keywords incantation that I need, copilot will retrieve them automatically. This saves me a context switch to MSDN docs or stack overflow.

It automates a great deal of boilerplate crap that you have to do especially in web frameworks such as angular.

Re: Coping with Copilot

#268
Euclid said that there is no royal road to geometry. People who pick the royal road end up elsewhere. In a society that grades them and acts on these grades, it may very well end up on a king's throne. But not geometry.

Re: Coping with Copilot

#269

Earlier quoted context omitted.

I'll generally rate an MSc lower than BA/BSc. (The exceptions would be if you needed the MSc to meet some visa requirement, or if you had an BSc in some weakly-related field beforehand.) From downvoters: I would genuinely love to hear a defense of an MSc per se. What university has their shit together enough to actually accelerate/compress 2-4y of work experience into 1-2y years of academic project, which is what's a…

A masters program is generally going to cover deeper theoretical subjects and will also give you stronger mathematical underpinnings in those areas. If you're just looking for a code monkey to do your e-commerce react website then obviously work experience will always trump academia.

Those aspects of a MSc are easily accessible to any motivated undergraduate as well.

Re: Coping with Copilot

#270
Who should fix the bugs in the future? Nerds? Where are they coming from 60 years from now?

E(very) S(ingle) W(ord) S(hould) be (no [ACCEPTED] completion here) W(ritten) W(ith) C(onscience). You should be responsible for your code submitted. Are your feeling confident?

Won't touch Co-Pilot. Probably you are spending equal time proof reading than _understanding what needs to be written_ in advance. At least that is what I am hoping about. Of course you don't have to proof read, and most things can probably be grasp in a glance. But you rely on a black-box. From a corporation. To me that sounds like agreeing with a dictator.

Wouldn't promise my craftmanship for things I didn't grasp in advance. But maybe that's a culture hindrance. I like it though. I want to know the code I am corrected about. I want to archive mastery.

Post reply on HN