The article mentions that most students are only in it for the diploma anyway, but somehow most people are yet to realize that those diplomas will soon be toilet paper, precisely because they no longer require any actual effort to obtain.
The article mentions that most students are only in it for the diploma anyway, but somehow most people are yet to realize that those diplomas will soon be toilet paper, precisely because they no longer require any actual effort to obtain.
I was about to have a word with him after the lecture but when he started talking about how crypto is going to replace fiat any second now I knew he was a lost cause.
I asked around with my fellow students what they thought about them and not one minded that they were essentially enrolled in a "how to proompt" class. When I asked one student that it was all nice and well that you pass the module but isn't the ideal outcome that you actually know the language by the end? He laughed and said "Yeah sure, do you think the same about maths"?
If you think about math as only solving differential equations and inverting matrices by hand, then maybe. This might be how maths are taught in secondary school, but is not at all representative of university-level maths. I use many fields of math on a daily basis at my job and for my personal projects, all of which I've taken courses on:
* Formal logic: boolean algebra, set theory. These are the core of any algorithm.
* Graph theory: working with parse trees, ASTs, and other problems involving relationships.
* Linear algebra: any problem that requires working with vectors or matrices, e.g graphics, many areas of machine learning, ...
* Category theory: type systems, algebraic data types, many other functional programming abstractions.
I'm sure there are many more that I've taken for granted.
Given that it is billed as a Python course that is reasonable.
But, to be fair, the intent of the course is almost certainly to provide background in the tools so that you can observe CS concepts learned later. Which is kind of like astronomy majors learning how to use a telescope so that they can observe its concepts. If Google image search provided the same imagery just as well as a telescope, the frustration in being compelled to teach rudimentary telescope operation is understandable. It is not like the sciences are studied for the tools.
The problem with this logic is that most university students don't go there to do science, they go there to, at best, become working experts in their field. Many employers now expect their javascript frontend developers to have a CS degree, which is simply absurd. Secondary vocational education is generally considered insufficient and tertiary vocational schools are "where you go if you can't get into university". This means universities get a huge number of applicants who want nothing to do with science or advanced theory, but just want to learn enough (and get the right paper!) to get a job in their preferred field.
This is now self-reinforcing. If you're a good programmer and want to work on business software, it would make sense for you to go to a tertiary vocational school (where I'm from that means 2 years, one semester of which is essentially an apprenticeship). But because "everyone goes to university", you'll be seen as a worse candidate for most jobs. At the same time, employers are pressuring universities to be "more practical" because "graduates come to the first day on the job useless". So universities lower the bar, taking more away from vocational, who then lower the bar in turn to stay afloat, devaluing themselves in the process.
This is why in Germany there exists a third form of tertiary education that is neither vocational nor universities: Fachhochschulen (often translated with "schools of applied science").
They don't actually – but when faced with long lines they will have to apply a filtering mechanism to get the numbers down to something manageable, and a degree is most legally accepted way to do it. Filtering by gender, race, etc. is off limits.
But if there are still too many in the queue even after applying that filter, employers will have to move on to something else, like credit score. So more and more getting a degree to evade the filter is a bit of a fool's errand. It might be okay if you are one of the few with one, but it isn't 1950 anymore. At this point one is late to the party.
A better marketing strategy is your best bet if you truly still want to work in a field that is oversaturated. Metaphorically, you don't have to bundle Android to capture market attention if you can stand out like the iPhone. Life will be a lot easier if you move on to a career that needs more people rather than getting caught up in the intense competition, though.
> At the same time, employers are pressuring universities to be "more practical" because "graduates come to the first day on the job useless".
College has sold itself as the place to give people awareness of the world, which is what employers truly seek. Employers don't want robots to carry out rote tasks, they want people to be able to think through never-before-experienced situations and deliver the best outcome.
When someone shows up useless, college has failed them. Not because college didn't teach them how to use some specific tool, but in allowing them to graduate without being able recognize that one shouldn't show up to a job completely useless. Naturally, employers are going to be "WTF?"
The response to that shouldn't be to double down on teaching tools to hide the real failing and avoid putting in the work to actually deliver on what is promised, but as long as the students keep showing up I suppose there is no reason to care about doing better.
You should bring this up with the department chair of your study. The purpose of your CS degree is to build a strong theoretical foundation, replacing programming with prompting directly goes against this.
In Germany, at state universities, you typically only pay money for the student self-administration. The huge "payment" is rather the opportunity cost.
> The purpose of your CS degree is to build a strong theoretical foundation
In https://news.ycombinator.com/item?id=43533033 Loeffelmann wrote that this happened at a Fachhochschule, not at a university. The purpose of universities is to give the student a strong theoretical foundation to prepare them for doing research. The purpose of Fachhochschulen is to prepare the student for working in jobs outside of academia.
I agree with your base point though. “Demand better” should be the new war cry
Besides that, these are ridiculous claims from the teacher. LLMs are powerful but in the end they are still a tool with random output, which needs to be carefully evaluated. Especially Python is my personal view much more subtle than people assume on first contact. Especially the whole numpy universe is like a separate language and quite complicated for a beginner if you want to write fast and efficient code.
I've had courses where LLMs where allowed for projects but we had to provide prompts.
> I was about to have a word with him after the lecture but when he started talking about how crypto is going to replace fiat any second now I knew he was a lost cause.
Knowing the education system in Germany rather well, I ask myself in which (kind of) educational establishment this happened, since I'd consider this to be rather unusual for at least universities (Universitäten) and Fachhochschulen (some other system of tertiary education that has no analogue in most countries).
Unluckily the people responsible to hire a guest lecturer fell for a windbag. :-(
Wow! I think this is an extreme comment to make. I get it.. but WOW! It really makes you wonder about the future of universities. If the answer is to let AI do our work.. even to cheat in final exams... what is the point of universities? Not only are we talking about Software Engineers dying.. but so if his lecturer job!
Anyway..
I am developer for over 20 years.
I have kids -- both are not even teenagers... but there are times I think to myself "is it worth them learning XYZ" because of AI?
By the time my eldest get his first job.. we are talking (atleast) around year 2032. We have to accept that AI is going to do some pretty cool things. HOWEVER, I still "believe" that AI will work alongside software developers. We still need to communicate with it - to do that, you need to understand how to communicate with it.
Point is, if any of my kids express interest in computer programming in the next year or so, I will HAPPILY encourage them to invest time in it. What I have to accept is that they will use AI.. a lot.. to build something in their chosen language.
I can see this being a typical question for new coders:-
"Can you create a flappy bird game in python"
Sure.. AI might spit something out in a matter of minutes and it might even work, but are they really learning? I think I would encourage my kids to ban using AI for (around) 4 days a week.
At the end of the day it is very difficult to know our future. Sometimes I have to think about my future.. not just my kids. I mean, would my job as a software engineer be over? If so, when? What would I do?
Overall It doesn't not bother me because I do think my role will transition with AI but for the younger generation, it can be a grey area understanding where they fit in all this.
I try to be optimistic that the next 100 years will be a very exiciting time for the human race (if we do not destroy ourselves beforehand)
To counter your lecturer, I am reminded of a John Carmack quote: "Low-level programming is good for the programmer's soul"
Not even low-level -- any programming. If you really like to code, you are going to learn it whether in School, College, or University. To me, the best times I learned was outside of official education, shutting myself away in my bedroom. "Official education" is nothing more that doing what you are told for a peice of paper. What is its worth these days?
Whether AI exists or not - those that like coding will invest the time to code. This is what will seperate average to good programmers or developers. What seperates a good programmer to a great programmer will be their lack or AI generated code... to DIY!
Thats my view... but this is a large topic and I am only scratching the surface.
Well, this. And at that point we'd likely be facing the same situation in just about every other information-intensive field as well. Yet it doesn't seem like anybody has any idea how to prepare students (or anybody else) for that kind of a future.
It seems absurd to give up on learning and understanding things ourselves because of a hypothetical future for which nobody has a better plan anyway.
Rather than simple laziness, it was often because they felt intimidated by their lack of knowledge and wanted to be more productive.
However, the result of a ChatGPT based workflow is that reasoning often is the very last resort. Ask the LLM for a solution, paste it in, get an error, paste that in, get a new solution, get another error, ask for a fix again, etc. etc.
Before someone chimes in to say this is like Stack Overflow: no it isn't. Real people expect you to put some work and effort into first describing your problem, then solving it. You would rarely find someone willing to go through such an exercise with you, and they probably wouldn't hallucinate broken code to you while doing it.
15 minutes of this and it turns out to be something silly that ChatGPT would never catch - e.g. you have installed a very old version of the Python module for some internal company reason. But because the reasoning muscle isn't being built up, and the context isn't being built up, they can't figure it out.
They didn't see the bit on the docs page that says "this function was added in version 1.5" because they didn't write the function call, and didn't open the documentation, and perhaps wouldn't even consider opening the documentation because that's what ChatGPT is for. In fact, they might not have even consciously chosen that library because again.. that's what ChatGPT is for.
Real coding can, unfortunately, be as bad as that or worse. Here is one very famous HN comment from 2018, and I know what he is talking about because participating in this madness was my first job after university, dispelling a lot of my illusions:
https://news.ycombinator.com/item?id=18442941
I went into that job (of porting Oracle to another Unix platform for an Oracle platform partner) full of enthusiasm and gave up finding any meaning or enjoyment after the first few weeks, or trying to understand or improve anything. If AI could do at least some of that job it would actually a big plus.
(it's the working-on-Oracle-code comment if you didn't already guess it)
I think there's a good chance code becomes more like biology. You can understand the details, but there are sooo many of them, and there are way too many connections directly and indirectly across layers. You have to find higher level methods because it's too much for a direct comprehension.
I saw a main code contributor in a startup I worked at work kind of like that. Not all his fault, forced to move too quickly and the code was so ill defined, not even the big boss knowing what they wanted and only talking in meta terms and always coming up with new sometimes contradicting ideas. The code was very hard to comprehend and debug, especially since much of it was distributed algorithms. So his approach was running it with demo data, observing higher level outcomes, and tweaking this or that component until it kind of worked. It never worked reliably, it was demo-quality software at best. But he managed to implement all the new ideas from management at least.
I found that style interesting and could not dismiss it outright, even though I really really did not want to have to debug that thing in production. But I saw something different from what I was used to, focus on a higher level, working when you just can't have the same depth of understanding of what you are doing as one would traditionally like. Given my Oracle experience, I saw how this would be a useful style IRL for many big long-running projects, like that Oracle code, that you had no chance of comprehending or improving without "rm -rf" and a restart which you could not do.
I think education needs to also show these more "biology-level complexity" and more statistical higher level approaches. Much of our software is getting too complex for the traditional low-level methods.
I see LLMs as just part of such a toolkit for the future. On the one hand, there is supplying code for "traditional" smaller projects, where you still have hope to be in control and have at least the seniors fully understand the system. On the other hand, LLMs could help with too-complex systems, not with making them understandable, that is impossible for those messy systems, but with being able to still productively work with them, add new features and debug issues. Code such as in the Oracle case. A new tool for even higher levels of messiness and complexity in our systems, which we won't be able to engineer away due to real life constraints.
That's exactly what I've seen as well. The students don't even read the code, let alone try to reason through how it works. They just develop hand-eye coordination for copy-pasting.
> Rather than simple laziness, it was often because they felt intimidated by their lack of knowledge and wanted to be more productive.
Part of it really is laziness, but what you say is also true. Unfortunately, this is the nature of learning. Reading or listening is by itself a weak stimulus for building neural pathways. You need to actively recall and apply, and struggle with problems until they yield. It is so much easier to look up a solution somewhere. And now you don't even to look anything up anymore -- just ask.
For example, you could have ChatGPT write your code for you, then explain it to you step by step.
It can be an interactive conversation.
Or you could copy/paste it.
In one case it acts as a tutor.
In another case it just does your work for you.
Ask it to explain something? At least it's confident I guess.
I've used AI as a crutch for a time, and felt my skills get worse. Now I've set it up to never have it give me entire solutions, just examples and tips on how to get it done.
I've struggled with Shader Programming for a while, tried to learn it from different sources and failed a lot. It felt like something unreachable for me, I don't really know why really. But with the help of an AI that's fine-tuned for mentoring, I really understood some of the concepts. It outlined what I should do and asked socratic questions that made me think. I've gotten way better at it and actually have a pretty solid understanding of the concepts now (well, I think).
But sometimes at work I do give in and get it to write an entire script for me, out of laziness and maybe boredom. Their significant advances as of late with "extended thinking" and the likes made them much more likely to one-shot the writing of a slightly complex script... Which in turn made it harder to not just say "hey, that sounds like boring work, let's have the AI do the biggest part of it and I'll patch up the rest".
Infinite tailored critique and advice. I have found this immensely valuable, and I have learned lots doing it. LLMs are static analyzers on steroids.
Basically most people will be idiots, except for the mental exercise type people who like using their mental muscles.
So education will stop being a way to move up in life.
There are still ways that LLMs can be used in that case, eg having them review your code, suggest alternatives to your code, eg more idiomatic ways to do sth, when you delve into sth new etc, and treat their output critically of course, but actually writing one's code is important for some kinds of understanding.
This can be very useful when you are learning programming.
You don't always have a tutor available and you shouldn't only rely on tutors.
It might be useful when you start learning a new programming language/framework, but you should learn on how to articulate a problem and search for solutions, e.g. going through stackoverflow posts and identify if the post applies and solves your problem.
After a while (took way too long for me) you realize that the best way to solve problems is by looking up the documentation/manpage of a project/programming language/whatever and really try to understand the problem at its core.
I feel like that was always the case, at least since like 10 years ago and by my definition.
I've always felt my real education in software engineering started at work.
20 odd years later I lead a large engineering team and see the same with a lot of graduates we hire. There's a few exceptions but most are as clueless as I was at that age.
That doesn't mean my education was worthless—quite the opposite. It's just that what you learn in a software engineering degree isn't "how to write code and do software development in a professional team in their specific programming language and libraries and frameworks and using their specific tooling and their office politics."
I don't get why schools can't just get strict in response to these issues. No electronics in class, period. Accessibility problems can be fixed by having each impaired student get a volunteer scribe for the class.
You're in school to learn, and electronics hinder in-person education more than they help, especially as ChatGPT style AI is available on them.
The real damage is in the brains and attention spans, traditional school just can't compete with the massive dopamine overstimulus of System A thinking students get every day for an average of 6-8h outside school, by simply requiring focused System B reasoning on tiresome and (comparatively) dull tasks while enforcing dopamine withdrawal.
Irrespective of brain feedback mechanisms after school it is still a better teaching/learning environment for students to have a device ban during school time.
What kids or parents enable after school is beyond school policies. Nevertheless teachers should be minimally protected in their ability to teach and kids in their ability to learn.
> No significant differences in pupil outcomes were observed between permissive and restrictive schools for all other behavioural outcomes (Fig. 2, Table 3) or for attainment in English (adjusted odds ratio 1.45, 95% CI 0.85–2.47, p = 0.18, reference = permissive) and Maths (adjusted odds ratio 1.01, 95% CI 0.45–2.27, p = 0.98, reference = permissive).
Nothing I've said could be interpreted to support the exposure of kids to addictive devices, simply that the quick fix proposed does not seem to have any effect.
In it she suggests that rather than thinking of a smart phone ban like a smoking ban,
> A more constructive analogy than smoking might be driving cars. In response to increasing injuries and deaths from car crashes, rather than banning cars, society built an ecosystem of product safety regulations for companies (seatbelts, airbags) and consumers (vehicle safety tests, penalties), public infrastructure (traffic lights), and education (licences) to support safer use. Comparative efforts in product safety and education are needed to supplement debates about smartphone and social media bans and to balance the positive and indispensable role of digital technologies against their potential harms.
It's an intriguing analogy because we know well how dangerous cars are to health and the environment, we know there are people who don't want to drive but are forced to because there are no alternatives, and we know how much many drivers oppose support for bike lanes, mass transit, and other alternatives.
And we know the history of how the UK over her entire life has transformed to be more and more car dependent.
If we embrace that analogy, then we need to support alternatives to being digital, with the right to an offline life.
I don't know what System A and System B are, a DDG search for "System A {thinking,reasoning}" finds nothing useful, and the paper says nothing about it nor about comparing dopamine levels.
Addictive apps are algorithmically tuned to maximize user screen time so my (unproven) hypothesis is that tend to promote content that minimizes deep System 2 thinking, which is well known to tire the brain and deplete its energy storage. Educational content - if it's any good - is all about training deep thinking.
Has it been validated? I cannot find citations which test and verify the applicability of that idea.
I ask because there's a long history (left-brain/right-brain, 10,000 hours of deliberate practice, learning style theory, power pose, etc) where intriguing ideas which makes some intuitive sense end up being not so clear cut.
For example it's very clear that when you see a square you can instantly tell what shape it is without reasoning about the number and length of the sides, angles etc.; another System 1 example would be driving, you can do it for hours without even thinking through your physical actions, I need to press this pedal, shift into this gear, etc. the car basically becomes an extension of your body.
Conversely, when asked to mentally multiply 175 and 12 the answer does not similarly jump out in the head of most people, and you need to run an algorithm to get the answer, and the process of doing that is frustrating and tiresome if you don't have the exercise; conversely, with enough exercise, the answer might jump out, or your brain might begin to see patterns and shortcuts like 175 = 350/2 and 12 = 10+2 etc. This is what education forces, this continuous exercise that leads to higher cognitive function.
I don't think you could dispute the paradigm in this vague and self-evident form, but surely the exact details of how System 1 does its pattern matching and how System 2 rationally trains it to recognize future patterns are up for debate. Some of the examples and arguments Kahneman gives are dated and have been discredited or questioned in the great psychology replication crisis.
That doesn't mean it's all that valid, just like left-brain/right-brain dualism.
Are there actually many different systems, and not just two?
For example, you mention recognizing a square. https://en.wikipedia.org/wiki/Object_recognition_(cognitive_... says "Neuropsychological evidence affirms that there are four specific stages identified in the process of object recognition".
Is System 1 equivalent to all four stages, or does it include more or less than that?
Is there a similar set of stages for multiplication, and how does one tell if it's System 1 or System 2?
If there is an innate modularity of mind, does the System 1/System 2 lets us assign which modules are which?
In Piaget’s Theory of Cognitive Development there is "a series of four qualitatively distinct stages (the sensorimotor, pre-operational, concrete operational and formal operational stages)." (Quoting https://en.wikipedia.org/wiki/Domain-general_learning )
Which of those are System 1 or System 2, or is that a completely different view of how the mind works? If the latter, which makes stronger predictive claims and what is the result of comparative testing?
That same page describes John B. Carroll's three stratum theory, and others.
That there are so many different self-evident metaphors for human cognition is exactly the reason it needs validation.
> However, they did find that spending longer on smartphones and social media in general was linked with worse results for all of those measures.
https://www.bbc.com/news/articles/cy8plvqv60lo
About the same study. Again, when kids are not on their phones they do better at school. Period. A ban is just a way to try to get there. If it's not effective because kids skirt the rules, we try something else
This is a bit less cut-and-dried, but IMO cryptocurrency has normalized this kind of view where simply wasting resources is itself a way to generate, or at least represent, value.
LLMs are, in fact, one of the few products in the past decades that - at least for now - align with this vision. That's because they empower the end users directly. Anyone can just go to chatgpt.com or claude.ai to access a tool that will understand their problem, no matter how clumsily formulated, and solve it, or teach them how to solve it, or otherwise address it in a useful fashion. That's pure and quite general force multiplier.
But don't you worry, plenty of corporations and countless startups are hard at work to, like with all computing before, strip down the bicycle and offer you Uber and theme park rides for your mind.
Oh BULLSHIT. Computer users have been empowered since the very first programming languages were invented. They simply chose not to engage with them.
But some people are willing to learn brutally hard.
(As a father facing the challenge now, I wonder if it's harder for the kid or for the parent...)
Even if, the last time what you said was true was somewhere in the 80s, maybe early 90s. Afterwards, "programming" was solidly a domain of professionals, not regular users. I don't know about MacOS, but Windows didn't even ship with anything resembling a programming environment until 2010s.
Also, time and again with technology, the users didn't chose shit. Technology is thrust at them, it's first and foremost a supplier-driven phenomenon. It's the vendors that chose to gradually remove any ability of customization and end-user automation from software and devices. Initially it was under guise of UI/UX - simplify everything, avoid confusion (and making users engage with their brains). Nowadays, the software is as basic, dumb and functionality-free as it can possibly be, so the excuse shifted to security - everything an end-user can do an attacker can do, so let's take away every possible use that isn't authorized by application and OS vendors.
What makes LLMs refreshing is that, for now, they're fully general. The main chat apps don't limit what you can talk about (beyond the usual ass-covering corporate prudishness) - hell, you can use them to work around bullshit limitations regular software has to stop you from harming vendors' profits. But again, only a matter of time - users will get disenfranchised again as near-raw access to LLMs gets replaced by "AI apps".
And what do I mean limitations? Think of Copilot in Microsoft Office. If you used it in the past year, you definitely know its limitations. A monkey could hook up GPT-4 to VBA and get more functional Copilot than what Microsoft gave us. But it's not because they can't make powerful assistant - that's the easy part. The challenge they took is making as weak assistant as possible that does anything useful at all. That's the prevailing attitude in software industry, and it has been for good two decades now.
MacOS only really started doing that with OS X. The classic environment had an undocumented (to normal people) debugger for a console, and likewise HyperCard did exist but I never once saw documentation explaining how to actually use it (perhaps I was looking in all the wrong places?)
I eventually found REALbasic on a magazine cover CD, and paid a lot of pocket money for an educational version of Metrowerks' C compiler that only output 68k-series binaries, neither of which my machines (or OS upgrades) arrived with.
I'm not sure I agree completely...back in the day on the Mac we had Hypercard, RezEdit, and I do recall various code builder tools that someone could kinda wire up small tools - think things we called "4GLs". On Windows, Visual Basic was a full programming language and tooling, but I distinctly recall lots of non-programmers creating small office scripts and tools. In the late 90s we had things like FrontPage where non-programmers could wire up a simple web page and make it do things they wanted...
Today? Open up Xcode and stare into the abyss of confusion. Apple has made these "Playground" tools - man, that's a big jump for someone who isn't serious about programming to get from there to a full-fledged Swift app ready to deploy. Can generative AI tools bridge this gap for non-programmers? Possibly, but I think we're aligned that these tools aren't likely to replace us anytime soon, because of something you allude to - what's possible today is so much more complex than what we were building in the 80s and 90s, and AI isn't close to being able to replicate all of layers of stuff a professional programer wades through every day.
I like the implication that they might drive you into the median or the side of a semi truck. Very apt analogy - we built it because we could, without asking whether we should
So if I can outsource the mundane, annoying and repetitive parts of SW development (like typing the coding) to a machine, so that I can focus on the parts I enjoy (debugging, requirements gathering, customer interaction, architecture etc), what's wrong with that?
If the end product is good and fulfills the customers needs who cares if a large part of it was written by a machine and not by a human?
I also wish we can go back to the days we were coding in assembly in stead of say JavaScript, but that's not gonna happen professionally for 99% of jobs, you either use JS to ship quickly or get run over by the companies who use JS while you write assembly. ML assisted coding will be the next step.
That's ok when you already understand programming and can guide the codegen and step in to correct when it generates bullshit. But you don't get to that level without learning programming yourself. Education is built from the ground up towards higher and higher levels of abstraction. You don't get to skip learning arithmetic on your way to learning quantum physics, just because numpy will do all your arithmetic once you get there. In other words, it's ok for people who don't like cooking to order takeout, but you don't become a professional cook this way.
How many people who write SW professionally worldwide, know everything about the OS underneath, the sys-calls, disassembly, memory allocation, CPU architecture, network layers, internet routing, cloud and virtualization, etc?
Most SW jobs are just routine plumbing, connecting one FOSS pipe to another in whatever way works for you, till you get the desired result which often is unoptimized slop but if it serves the business use case and makes money nobody but the cool-aid drinking stickler developers care that it's slop. It's not rocket science that requires you to know assembly or CPU architectures or linear algebra and optimize ever single bit to perfection, but low cost and time to market is more important.
You can try to educate people about everything but not all jobs are gonna require you to know everything. In fact, jobs are being more and more specialized where you'll have one HW expert, one networking expert, one compiler expert, one typescript expert, one GoLang expert etc.
Sure, we can! That's in some sense what computers are. It's nice that they can quickly multiply two integers far faster than you can. Handing off that mental chore to the computer allows you to do your job better in every way.
The difference (and yes, I know that I'm perhaps falling into the trap of "but this time it's different!") is that AI models are very often used in a completely different capacity. You inspect the plates, load up the dishwasher, run it, and inspect the results. You don't just wave your hand over the kitchen and say "this dirty, do fix", and then blindly trust you'll have clean cutlery in a few hours.
Moreover, the menial tasks and assembly-line work that you describe are all repetitive. Most interesting coding isn't (since code has zero duplication cost, duplicate work is pointless – outside of the obvious things like fun and learning, but you want to keep those out of this discussion anyway).
> So if I can outsource the mundane, annoying and repetitive parts of SW development (like typing the coding) to a machine, so that I can focus on the parts I enjoy (debugging, requirements gathering, customer interaction, architecture etc), what's wrong with that?
Nothing is wrong with that. Except you'll still need to inspect the AI's output. And in order to do that, you'll need to have a good understanding of the problem and how it solved it. Maybe you do. That's excellent! This discussion is lamenting that, seemingly, more and more people don't.
The article isn’t about code, and on HN we default to that all the time.
Which is understandable. All societies are constrained by lack of experts / intelligence. Think about how relatively inaccessible healthcare is, even in rich countries.
I had a data structures professor (over a year ago now) that actively encouraged a class of sophomores - most of whom were fresh out of "intro to Java" - to have Copilot (GPT-4 at the time I believe) help churn out assignment code on the university's dime.
Being somewhat ahead and an avowed LLM hater, I mostly forgot about this and plowed through the assignments unassisted... until the first midterm (on paper, in person) hit. The mean was something like a 40.
I eventually spoke to some classmates that weren't in my immediate group, and predictably heard several variations on "I let Copilot become a crutch."
Ugh. Fortunately there was ample opportunity to turn grades around, but I'm sure some people are still feeling that bad advice in their GPAs.
A friend who's a high-school teacher says all the students want to be software engineers, so there's also a glut of them coming...