5 ms·
The article is talking about new grads generally, but I think there's an issue with AI that isn't talked about enough. It's not that it's taking away jobs [1],
by dtnewman 1y ago
The article is talking about new grads generally, but I think there's an issue with AI that isn't talked about enough. It's not that it's taking away jobs [1], it's that it is taking away skills.
Even if you are the biggest critic of AI, it's hard to deny that the frontier models are quite good at the sort of stuff that you learn in school. Write a binary tree in C? Check. Implement radix sort in Python? check. An A* implementation? check.
Once upon a time, I had to struggle through these. My code wouldn't run properly because I forgot to release a variable from memory or I was off-by-one on a recursive algorithm. But the struggling is what ultimately helped me actually learn the material [2]. If I could just type out "build a hash table in C" and then shuffle a few things around to make it look like my own, I'd have never really understood the underlying work.
At the same time, LLMs are often useful, but still fail quite frequently in real world work. I'm not trusting cursor to do a database migration in production unless I myself understand and check each line of code that it writes.
Now, as a hiring manager, what am I supposed to do with new grads?
[1] which I think it might be to some extent in some companies, by making existing engineers more productive, but that's a different point
[2] to the inevitable responses that say "well I actually learn things better now because the LLM explains it to me", that's great, but what's relevant here is that a large chunk of people learn by struggling
- bumby 1y agoI'm seeing something similar. LLMs have helped me tremendously, especially in tasks like translating from one language to another. But I've also witnessed interns using them as a crutch. They can churn out code faster that I did at an equivalent stage in my career but they really struggle debugging. Often, it seems like they just throw up their hands and pivot to something else (language, task, model) instead of troubleshooting. It almost seems like they are being conditioned to think implementation should always be easy. I often wonder if this is just "old curmudgeons" attitude or if it belies something more systemic about the craft.
- deleted 1y ago[deleted]
- hcarvalhoalves 1y ago> Even if you are the biggest critic of AI, it's hard to deny that the frontier models are quite good at the sort of stuff that you learn in school. Write a binary tree in C? Check. Implement radix sort in Python? check. An A* implementation? check. I don't feel this is a strong argument, since these are the sort of things that one could easily lookup on stackoverflow, github, and so on for a while now. What "AI" did was being a more convenient code search tool + text manipulation abilities. But you still need to know the fundamentals, otherwise won't even know what to ask. I recently used GPT to get a quick code sample for a linear programming solution, and it saved me time looking up the API for scipy... but I knew what to ask for in the first place. I doubt GPT would suggest that as a solution if I described the problem in too high level.
- bb88 1y agoDon't forget there were lots of things that are in standard libraries now that didn't use to exist back when I was coding in C in the 1990's. Nobody really writes their own sorting algorithm anymore -- and nobody should write their own A* algorithm either. Honestly though, I recently asked Claude 3.7 Sonnet to write a python script to upload ssh keys to a mikrotik router, to prompt for the username and password -- etc. And it did it. I wouldn't say I loved the code -- but it worked. Code was written in more of a golang format, but okay. It's fine and readable enough. Hiring a contractor from our usual sources would have taken a week at least, probably by the time you add up the back and forth with code reviews and bugs. I think for a lot of entry level positions (particularly in devops automation say), AI can effectively replace them. You'd still have someone supervise their code and do code reviews, but now the human just supervises an AI. And that human + AI combo replaces 3 other humans.
- xracy 1y agoStackoverflow could help answer specifically targeted questions about how thigns worked, or suggest areas of debugging. They couldn't/wouldn't take a direct question from an assignment and provide a fully working answer to it.
- sn9 1y agoThose are the sorts of things you're supposed to struggle with in school though. If students are using AI now, that is indeed the same thing as looking up solutions on Stack Overflow or elsewhere. It's cheating for a grade at the expense of never developing your skills.
- masterj 1y agoCalculators have been available forever, but have not eliminated math education. Even algebra systems that can solve equations, do integrals and derivations have been available forever, but people understand that if they don't learn how it actually works they are robbing themselves. By the same token, if you need to do this stuff professionally, you are relying on computers to do it for you. > Write a binary tree in C? Check. Implement radix sort in Python? check. An A* implementation? check. You can look up any of these and find dozens of implementations to crib from if that's what you want. Computers can now do more, but I'm not (yet) sure it's all that different.
- bumby 1y agoI agree with you, but just to steelman the other side: how do you know when you are robbing yourself and when you are just being pragmatic? When I change the spark plugs in my car, am I robbing myself if I'm not learning the intricacies of electrode design, materials science, combustion efficiency, etc.? Or am I just trying to be practical enough to get a needed job done? To the OPs point, I think you are robbing yourself if the "black box" approach doesn't allow you to get the job done. In other words, in the edge cases alluded to, you may need to understand what's going on under the hood to implement it appropriately.
- masterj 1y ago> how do you know when you are robbing yourself and when you are just being pragmatic? I don't know why we're pretending that individuals have suddenly lost all agency and self-perception? It's pretty clear when you understand something or don't, and it's always been a choice of whether you dive deeper or copy some existing thing that you don't understand. We know that if we cheat on our math homework, or copy from our friend, or copy something online, that's going to bite us. LLMs make getting an answer easier, but we've always had this option.
- bumby 1y agoI don’t know why you are ignoring the concept of opportunity cost to make an argument. Did you drive to work today? Did you learn everything about the tensile strength of nylon seatbelts before you buckled up? How about tarmacadem design before you exited your driveway? Or PID controls theory before you turned on the HVAC? The point I’m making is that some people disagree about how much you need to know. Some people are ok with knowing just enough to get a job done because it makes them more productive overall. So the question still stands: How do you gauge when learning is enough? To my point above, I think it comes down to whether you can get the job done. Leaning beyond that may be admirable in your mind, but not exactly what you’re being paid for, and I think some experts would consider it a poor use of time/resources. Do you care if your subordinate wrote a good report using a dictionary to “cheat” instead of memorizing a good vocabulary? Or that they referenced an industry standard for an equation instead of knowing it by heart? I know I don’t.
- TYPE_FASTER 1y agoYou still have to understand what's happening and why I think. I remember going to a cloud meetup in the early days of AWS. Somebody said "you won't need DBAs because the database is hosted in the cloud." Well, no. You need somebody with a thorough understanding of SQL in general and your specific database stack to successfully scale. They might not have the title "DBA," but you need that knowledge and experience to do things like design a schema, write performant queries, and review a query plan to figure out why something is slow. I'm starting to understand that you can use a LLM to both do things and teach you. I say that as somebody who definitely has learned by struggling, but realizes that struggling is not the most efficient way to learn. If I want to keep up, I have to adapt, not just by learning how to use tools that are powered by LLMs, but by changing how I learn, how I work, and how I view my role.
- emorning3 1y ago>> [2] to the inevitable responses that say "well I actually learn things better now because the LLM explains it to me", that's great, but what's relevant here is that a large chunk of people learn by struggling << I'm using AI to explain things to me. And I'm still struggling, I'm just struggling less. That's progress I think.