I'm teaching databases this semester at Berkeley. My students all seem unusually brilliant. Not many go to office hours, and not too many folks post on the course forum asking project questions.
Weirdly, the exam had the lowest recorded average in my 10 semesters teaching it.
Put another way, I'm pretty sure a lot of Computer Science students are using ChatGPT to complete their coding assignments instead of actually doing the assignments themselves.
If true, it's a huge problem. The process of learning debugging is critical to growing as an engineer.
IMO the effect of this may be that courses will have to give even *less* scaffolding, so that students can't GPT the entire assignment. The design aspect of projects may also become even more critical.
Theory is going to become an even more important filter for competency too.
Here's the problem with just GPT'ing your way as a student.
In production-level systems, you will be dealing with things where THIS DOES NOT WORK. You *cannot* just use GPT as a crutch, partly because you won't even have the context needed to give the prompt to solve it.
For example: there will be times when the code is so gnarly and the error so insanely difficult to debug that you cannot GPT your way through it. The only way to fix it is to set a breakpoint, step into the debugger, and see what the values of certain variables are.
When setting up a codebase, there will be times when GPT fails. It's great to use GPT as an assistant — I use it all the time. You cannot use it as the *primary means of development*, because you're functionally not understanding what you're doing (other than copy paste).
Now, you can ask: "what if my tasks at work are simple enough to where GPT does solve it all, easily? Can't I just use it for that?"
Congratulations. You may have discovered the path to being unemployed. If the AI does everything you can do, *why would they keep you around*?
For a CS skillset that can't just be replaced by an AI, you have to learn fundamentals. That lets you do tasks that an AI still can't, because your brain is very powerful.
If you're ChatGPT'ing your way through it, you're not building any of those connections for later use.
my sincere apologies for the long, borderline-preachy rant, but if you're reading this far into the thread, you're probably already interested in the topic so I figured I'd go all the way in explaining my reasoning behind my thoughts here.
One key point, everyone:
The reason AI usage is different from the boomers ranting "in MY day we used to use punch cards and wrote code in assembly" is that here, students are not just outsourcing the work. They're outsourcing critical parts of the *thinking*.
Parts of it may well be deemed "outdated".
But the reason college curriculum is structured as it is instead of being a grand industry tour on the Hot Topic Of The Day is that by teaching fundamentals, you teach students *how* to think, learn, and work. AI just bypasses that.
@SpeakServeGrow The biggest separator I see when it comes to younger programmers is their logic/math. At that age, they simply don't know enough programming or have enough experience to show mastery of it. The ones who do best in college generally tend to be the best at logic.
@SpeakServeGrow Now, this isn't perfect advice, and this isn't a perfect predictor. The *other* thing that separates programmers in college, beyond logic/math, is the ability to work hard, for hours on end with little break in focus. So pick something that also helps build that skill.
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.
