5 ms·
I teach computer science / programming, and I don't know what a good AI policy is. On the one hand, I use AI extensively for my own learning, and it's helping
by sshine 1y ago
I teach computer science / programming, and I don't know what a good AI policy is.
On the one hand, I use AI extensively for my own learning, and it's helping me a lot.
On the other hand, it gets work done quickly and poorly.
Students mistake mandatory assignments for something they have to overcome as effortlessly as possible. Once they're past this hurdle, they can mind their own business again. To them, AI is not a tutor, but a homework solver.
I can't ask them to not use computers.
I can't ask them to write in a language I made the compiler for that doesn't exist anywhere, since I teach at a (pre-university) level where that kind of skill transfer doesn't reliably occur.
So far we do project work and oral exams: Project work because it relies on cooperation and the assignment and evaluation is open-ended: There's no singular task description that can be plotted into an LLM. Oral exams because it becomes obvious how skilled they are, how deep their knowledge is.
But every year a small handful of dum-dums made it all the way to exam without having connected two dots, and I have to fail them and tell them that the three semesters they have wasted so far without any teachers calling their bullshit is a waste of life and won't lead them to a meaningful existence as a professional programmer.
Teaching Linux basics doesn't suffer the same because the exam-preparing exercise is typing things into a terminal, and LLMs still don't generally have API access to terminals.
Maybe providing the IDE online and observing copy-paste is a way forward. I just don't like the tendency that students can't run software on their own computers.
- JoshTriplett 1y ago> Oral exams because it becomes obvious how skilled they are, how deep their knowledge is. Assuming you have access to a computer lab, have you considered requiring in-class programming exercises, regularly? Those could be a good way of checking actual skills. > Maybe providing the IDE online and observing copy-paste is a way forward. I just don't like the tendency that students can't run software on their own computers. And you'll frustrate the handful of students who know what they're doing and want to use a programmer's editor. I know that I wouldn't have wanted to type a large pile of code into a web anything.
- Aeolun 1y ago> I know that I wouldn't have wanted to type a large pile of code into a web anything. I might not have liked that, but I sure would have liked to see my useless classmates being forced to learn without cheating.
- mac-mc 1y agoYou can provide vscode, vim and emacs all in some web interface, and those are plenty good enough for those use cases. Choosing the plugin list for each would also be a good bikeshedding exercise for the department. Even IntelliJ has gateway
- noisy_boy 1y ago> Even IntelliJ has gateway By IntelliJ's own (on-machine) standards, Gateway is crap. I use the vi emulation mode (using ideavim) and the damn thing gets out of sync unless you type at like 20wpm or something. Then it tries to rollback whatever you type until you restart it and retry. I can't believe it is made by the same Jetbrains known for their excellent software.
- Aeolun 1y agoYou can get one of those card punching machines and have them hand in stacks of cards?
- EGreg 1y agoThere you go. Actually that would be a great service, wouldn't it? Having them explain to an LLM what they are doing, out loud, while doing it, online. On a site that you trust to host it.
- timr 1y agoI'm not that old, and yet my university CS courses evaluated people with group projects, and in-person paper exams. We weren't allowed to bring computers or calculators into the exam room (or at least, not any calculators with programming or memory). It was fine. I don't see why this is so hard, other than the usual intergenerational whining / a heaping pile of student entitlement. If anything, the classes that required extensive paper-writing for evaluation are the ones that seem to be in trouble to me. I guess we're back to oral exams and blue books for those, but again...worked fine for prior generations.
- eru 1y ago> I don't see why this is so hard, other than the usual intergenerational whining / a heaping pile of student entitlement. You know that grading paper exams is a lot more hassle _for the teachers_? Your overall point might or might not still stand. I'm just responding to your 'I don't see why this is so hard'. Show some imagination for why other people hold their positions. (I'm sure there's lots of other factors that come into play that I am not thinking of here.)
- bongodongobob 1y agoWhy can't the teachers use LLMs to grade?
- eru 1y agoMight be interesting. You can at least use modern AI to turn scans of hand-scrawled-on paper into something readable.
- obscurette 1y agoIn general – why I'd put my effort into visiting (and paying for) a school and learning in such case? That's not what schools are for. I can get any amount of grades I want from LLM myself.
- bongodongobob 1y ago
- zer00eyz 1y ago> I use AI extensively for my own learning, and it's helping me a lot. On the other hand, it gets work done quickly and poorly. > small handful of dum-dums made it all the way to exam without having connected two dots, and I have to fail them ... won't lead them to a meaningful existence I don't see a problem, the system is working. The same group of people that are going to loose their job to an LLM arent getting smarter because of how they are using LLM's.
- presentation 1y agoIdeally the system would encourage those dum-dums to realize they need to change their ways before they're screwed. Unless the system working is that people get screwed and cause problems for the rest of society.
- eru 1y agoI want to agree with your point, but also: someone who's middle-class enough to make it to uni in the first place won't cause much trouble for society. Paternalism in the sense of 'we know what's better for you than you do' is perhaps justified for those people who really don't know better. But I don't think we should overextend that notion.
- presentation 1y agoWell given that the article is about young people in schools, a little paternalism isn’t a bad thing.
- eru 1y agoWell, they also have actual parents. I have to apologise, I was under this impression this thread was about university students, who should be old enough to fend for themselves (and enjoy respectively suffer from the consequences of their own actions). But I don't think anyone actually mentioned that age in the thread. I mixed it up with another one.
- frelupin_ 1y ago> it gets work done quickly and poorly This is only temporary. It will be able to code like anyone in time. The only way around this will be coding in-person, but only in elementary courses. Everyone in business will be using AI to code, so that will be the way in most university courses as well.
- ramraj07 1y agoIt already can. Im flabbergasted how people haven't still figured out how good gemini 2.5 is.
- frelupin_ 1y agoClaude 3.7 and 4 are better for me than Gemini 2.5 for vibing with legacy code. Gemini 2.5 has some great solutions if you handhold it, but tends to make too many assumptions about what would be better which can tear things up as an agent, imo. In other words, Gemini is smarter, but less practical when working with existing code, from what I’ve experienced. To each their own, though.
- eru 1y agoThe Claudes are a lot worse at even mildly challenging algorithmic problems than Gemini 2.5 Pro. However, most legacy code is fairly primitive on that level, so my observation is in no way contradicting yours.
- karn97 1y agoComments like this are just delusional shit can't even do uni homework lmao
- viccis 1y agoIMO no amount of AI should be used during an undergrad education, but I can see how people would react more strongly to its use in these intro to programming courses. I don't think there's as much of an issue with using it to churn out some C for an operating systems course or whatever. The main issue with it in programming education is when learning rudiments of programming IS the point of the course. Same with using to it crank out essays for freshman English courses. These courses are designed to introduce fundamental raw skills that everything else builds on. Someone's ability to write good code isn't as big a deal for classes in OS, algs, compilers, ML, etc., as the main concepts of those courses are.
- Aurornis 1y ago> Students mistake mandatory assignments for something they have to overcome as effortlessly as possible. It has been interesting to see this idea propagate throughout online spaces like Hacker News, too. Even before LLMs, the topic of cheating always drew a strangely large number of pro-cheating comments from people arguing that college is useless, a degree is just a piece of paper, knowledge learned in classes is worthless, and therefore cheating is a rational decision. Meanwhile, whenever I’ve done hiring or internships screens for college students it’s trivial to see which students are actually learning the material and which ones treat every stage of their academic and career as a game they need to talk their way through while avoiding the hard questions.
- rKarpinski 1y ago> But every year a small handful of dum-dums made it all the way to exam without having connected two dots, and I have to fail them and tell them that the three semesters they have wasted so far without any teachers calling their bullshit is a waste of life Wow.
- paulluuk 1y agoYeah, I've had teachers like that, who tell you that you're a "waste of life" and "what are you doing here?" and "you're dumb", so motivational. I guess this "tough love" attitude helps for some people? But I think mostly it's just that people think it works for _other_ people, but rarely people think that this works when applied to themselves. Like, imagine the school administration walking up to this teacher and saying "hey dum dum, you're failing too many students and the time you've spent teaching them is a waste of life." Many teachers seem to think that students go to school/university because they're genuinely interested in motivated. But more often then not, they're there because of societal pressure, because they know they need a degree to have any kind of decent living standard, and because their parents told them to. Yeah you can call them names, call them lazy or whatever, but that's kinda like pointing at poor people and saying they should invest more.
- noisy_boy 1y ago> Yeah, I've had teachers like that, who tell you that you're a "waste of life" and "what are you doing here?" and "you're dumb", so motivational. I'm sure GP isn't calling them dum-dum to their face. If they can't even do basic stuff, which seems to be their criteria here for the name calling, maybe a politely given reality-check isn't that bad. Some will wake up to the gravity of their situation and put in the hard work and surprise their teacher. > Yeah you can call them names, call them lazy or whatever, but that's kinda like pointing at poor people and saying they should invest more. They _should_ invest more because in this case, the "investment' is something that the curriculum simply demands - dedication and effort. I mean unless one is a genius, since when that demand is unreasonable? You want to work with people who got their degree without knowing their shit? (not saying that everyone who doesn't have a degree isn't knowledgeable - I've worked with very smart self-taught people).
- protocolture 1y agoWhen I was studying games programming we used an in house framework developed by the lecturers for OGRE. At the time it was optional, but I get the feeling that if they still use that framework, it just became mandatory, because it has no internet facing documentation. That said, I imagine they might have chucked it in for Unity before AI hit, in which case they are largely out of luck. >But every year a small handful of dum-dums made it all the way to exam without having connected two dots, and I have to fail them and tell them that the three semesters they have wasted so far without any teachers calling their bullshit is a waste of life and won't lead them to a meaningful existence as a professional programmer. This happened to me with my 3d maths class, and I was able to power through a second run. But I am not sure I learned anything super meaningful, other than I should have been cramming better.
- stevage 1y ago> Teaching Linux basics doesn't suffer the same because the exam-preparing exercise is typing things into a terminal, and LLMs still don't generally have API access to terminals. Huh, fighting my way through a Linux CLI is exactly the kind of thing I use Chatgpt for professionally. I did study it in compsci, but those commands are inherently not memorable.
- falcor84 1y agoYes, LLMs have had API access to terminals for quite a while now. I've been using Windsurf and Claude Code to type terminal commands for me for a long while (and `gh copilot suggest` before that) and couldn't be happier. I still manually review most of them before approving, but I've seen that the chances of the AI getting an advanced incantation right on the first try are much higher than mine, and I haven't yet once had it make a disastrous one, while that's happened to me quite a few times with commands I typed on my own.
- stevage 1y agoOh, I just copy paste back and forth. Often I just paste an error with some scroll back but no instructions and it works out what I need.
- seniorThrowaway 1y ago>and I haven't yet once had it make a disastrous one I've had it make some pretty bad ones. Not directly hooked in to my terminal, just copy and paste. A couple of git doozies that lost my work, but I've done those too. Others more subtle, one of note is a ZFS ZPOOL creation script it gave me used classic linux style /dev/sda style drive identifiers instead of proper /dev/by-id paths which led to the disks being marked as failed every time I rebooted. Sure, that's on me for not verifying, but I was a little out of my depth with ZFS on Linux and thought that ZFS' own internal uuid scheme was handling it.
- thresher 1y agoI teach computer science / programming, and I know what a good AI policy is: No AI. (Dramatic. AI is fine for upper-division courses, maybe. Absolutely no use for it in introductory courses.) Our school converted a computer lab to a programming lab. Computers in the lab have editors/compilers/interpreters, and whitelist documentation, plus an internal server for grading and submission. No internet access otherwise. We've used it for one course so far with good results, and and extending it to more courses in the fall. An upside: our exams are now auto-graded (professors are happy) and students get to compile/run/test code on exams (students are happy). >Students mistake mandatory assignments for something they have to overcome as effortlessly as possible. This is the real demon to vanquish. We're approaching course design differently now (a work in progress) to tie coding exams in the lab to the homework, so that solving the homework (worth a pittance of the grade) is direct preparation for the exam (the lion's share of the grade).
- nprateem 1y agoIs it in a Faraday cage too or do you just confiscate their phones. Or do you naively believe they aren't just using AI on their phones?
- throwawayffffas 1y agoI don't know what they do, but when we did it back in the 2000's there was a no phone policy and the exams were proctored. People could try to cheat, but it would be pretty stupid to think they would not catch you.
- intended 1y agoYou should look at the cheating stories that come out of India, China, South Korea and other places that have been dealing with this dynamic for decades upon decades. I know of a time where america didn’t have this problem and I could see it ramping up, because of my experience in India. People will spend incredible efforts to cheat. Like stories of parents or conspirators scaling buildings to whisper answers to students from windows.
- thunderfork 1y ago
- ccppurcell 1y agoIf there is another course where students design their own programming language, maybe you could use the best of the previous year's. That way LLMs are unlikely to be able to (easily) produce correct syntax. Just a thought from someone who teaches in a totally different neck of the mathematical/computational woods.
- jmmcd 1y agoModern LLMs can one-shot code in a totally new language, if you provide the language manual. And you have to provide the language manual, because otherwise how can the students learn the language.
- anal_reactor 1y ago> their bullshit is a waste of life and won't lead them to a meaningful existence as a professional programmer That's where you're wrong. Being a professional programmer is 10% programming, 40% office politics, and 50% project management. If your student managed to get halfway through college without any actual programming skills, they're perfect candidate, because they clearly own the 90% of skills needed to be a professional programmer.
- bearjaws 1y ago> Being a professional programmer is 10% programming, 40% office politics, and 50% project management. I'd say that really depends on your job. At smaller companies, your job will likely be 60% programming at a minimum. Only at ~100 employees do companies fall into lots of meetings and politics.
- mrweasel 1y agoHence my personal policy of never working for a company with more than ~100-150 people.
- sshine 1y agoIn my experience, it's 70% programming, 20% office politics, and 10% project management. People who realize late they're no good at programming, or don't enjoy it, will pivot towards other kinds of work, like project management. But people who think they'll have luck managing people without having any grasp of the skill set of the people they manage, they either need really good people skills, or they're obnoxiously incompetent in both humans and computers.
- CalRobert 1y agoDo you find that thinking of your students as dum-dums makes you a better teacher?
- sshine 1y agoNeither better nor worse. Some of my students are naturally talented. Others achieve great results through hard work. Some half-assedly make it. And some don't even try. Those are the dum-dums. They just play games and think everything is going to work out without effort.
- lowbloodsugar 1y agoProgramming with AI is the job now. That’s what you need to be teaching if you want your graduates to get a job programming. What’s changed is that “some working code” is no longer proof that a student understands the material. You’re going to need a new way to identify students that understand the material.
- sshine 1y agoThere really are two opposite policies at play: - Just say no to AI - Just embrace AI I ran one semester embracing AI, and... I don't know, I don't have enough to compare with, but clearly it leaves a lot of holes in people's understanding. They generate stuff that they don't understand. Maybe it's fine. But they're certainly worse programmers than I was after having spent the same time without LLMs.
- lowbloodsugar 1y agoI learned to program computers by reverse engineering. I don’t have a CS degree. I wonder if that’s what we need to teach kids now. The AI did this, but why? If the curriculum doesn’t change, then kids aren’t going to learn anything useful, because the AI can do the curriculum.
- NegativeLatency 1y agoI had numerous in person paper exams in CS (2009 - 2013) where we had to not only pseudo code an algorithm from a description, but also do the reverse of saying/describing what a chunk of pseudo code would do.