Live data from Hacker News

AI is removing the middle class of software engineering?

blog.florianherrengt.com

961–970 of 981 posts

Re: AI is removing the middle class of software engineering?

#961

This blog post illustrates the importance of NEVER outsourcing your critical thinking or outsourcing decision-making to an LLM. And to never take shortcuts with learning. Learning is hard, but learning things properly allows you to understand what is happening and allows you to ask the right questions about whether the changes an agent wants to make are the changes that will best serve the goals of the project (witho…

"This blog post illustrates the importance of NEVER outsourcing your critical thinking or outsourcing decision-making to an LLM." This is a sentence that if written just 5 years ago would result in you being seen as crazy. "LLM capable of any sort of critical thinking? Haha. Not in 50 years." It never ceases to amaze me how people are stuck in the here in the now and just accept the new reality as if it had always be…

The fact that LLMs (or their client-side harnesses, at any rate) have improved substantially in the last year does not, ipso facto, mean they will continue doing so forever. Nor does it imply, even if they do keep improving, that they will displace human judgment and decision-making and that they will reach a point where they have literally zero limitations.

I don't agree with _never_ outsourcing decisions to an LLM, but the parent is right to point out the importance of thinking critically instead of blindly trusting LLMs. If only to understand their biases and common failure modes. The 1920s calculator metaphor is apt because practitioners using plugboards and Hollerith machines would have been avid early adopters but still keenly aware of the limitations of the device. They used that knowledge to decompose problems into units the device could solve, and to sanity-check the outputs of problems based on their understanding of mathematics and the capabilities of the machines.

I am often amazed at the dismissiveness of AI skeptics given the remarkable results we have seen in the last few years. And the stunning inefficiency of major LLM models and inaccessibility of underlying data mean there are a lot more gains to be had. But despite that, I'm even more flabbergasted by those who claim that AI superintelligence is a thing, that LLMs of all things will outcompete humans on creative and critical thinking tasks. It's a naive extrapolation at best and is completely unsupported by any coherent model of technological evolution, economics, game theory, or human history.

But all that said, I'm of course biased. I am of the belief that humans can do things that machines will never be able to no matter how advanced they become. A quasi-religious belief? Perhaps. But AI boosterism just as indefensible.

Re: AI is removing the middle class of software engineering?

#962

Earlier quoted context omitted.

I don't accept that argument. As I see it, laws should be structured as data rather than code, using a clean non-Turing-Complete DSL for any embedded logic and calculations. Maybe there would still be occasional situations when new software features are needed, but it should be a rare occurrence rather than on every new change.

I bet tax law is Turing-complete.

I wouldn't be surprised if it is in some places, but nevertheless I wonder - is there a good reason for that? I don't think any lawmaker actually wants tax calculations to have the potential of not halting, right? ... right?

Re: AI is removing the middle class of software engineering?

#963

Earlier quoted context omitted.

> It's not that hard to study the leetcode books. Doesn't the prize of a top shelf salary make it worthwhile? It's a good investment in your career You are arguing two different points here. I am, generally speaking, reasonably good at the leetcode stuff, because I agree that it’s not that hard to get good at it. As a practical thing for society as it currently is , sure, studying up on the idiotic leetcode stuff is…

> But that pays little bearing on whether leetcode is a good test, and whether it should be something that we are using as a metric. I am arguing that it’s a dumb test and we should stop doing it at a systemic level. Would you feel differently if you owned the company, and you'd be paying the salary for months for someone who talked a good game but was incompetent?

Not really. I'm typically less concerned with how much someone costs than I am with how much time they'll wind up wasting, but I'll admit that this perspective is colored by my experience having run a kitchen in a restaurant.

The secondary challenge in the kitchen (beyond the challenge of hiring someone who'll simply show up when scheduled, ha) is hiring someone who has a genuine interest in cooking as a craft. It's true that being a line cook isn't especially glamorous work, but I absolutely need someone who has enough love for it that they're proud to show off what they can cook when it isn't my menu.

I interviewed someone who made nothing but scrambled eggs, hash browns, and grits, but they were cooked and seasoned to absolute perfection. This individual was one of my slower line cooks starting out, but the fact they had the drive to learn this level of cooking was good enough for me to invest time in them to improve that speed.

I look for the same love for the craft in software. Literally everyone who's worth their salt has something they've worked on that they will happily show off, or some technique (like, e.g., abusing generics to implement monads in Ada and why this is more interesting than the typical approach using interfaces), or some pet data structure (e.g., critical bit trees and what their pathologies look like vis-à-vis hash tables) that they try to shoehorn into everything, or some bit of code they've read (e.g., SQLite and the Tcl interpreter) that left a lasting impression on their practice.

There's a snag though: being worth one's salt only starts at being able to cut code. I need to witness a candidate write about and walk me through that very technical aspect of the craft that they want to show off.

Assessing craft requires interviewers who understand craft, and the literal only reasons I can see for using LeetCode are when the interviewer is themselves not an expert in the domain (perhaps for reasons of scale, among others), the interviewer cannot (or will not) engage in heavily technical conversation with a candidate, or the job is plainly not about writing software that works.

Re: AI is removing the middle class of software engineering?

#964
post #963

Earlier quoted context omitted.

> But that pays little bearing on whether leetcode is a good test, and whether it should be something that we are using as a metric. I am arguing that it’s a dumb test and we should stop doing it at a systemic level. Would you feel differently if you owned the company, and you'd be paying the salary for months for someone who talked a good game but was incompetent?

Not really. I'm typically less concerned with how much someone costs than I am with how much time they'll wind up wasting, but I'll admit that this perspective is colored by my experience having run a kitchen in a restaurant. The secondary challenge in the kitchen (beyond the challenge of hiring someone who'll simply show up when scheduled, ha) is hiring someone who has a genuine interest in cooking as a craft. It's…

The trouble with untrained craftsmen is they are not aware of what they do not know about the craft. For example, I recall working on a codebase where the craftsman used bubblesorts in multiple places, evidently unaware of qsort(). I fixed that, and the program got a lot faster.

The role of an engineering degree is to teach you the things you should know about engineering. And an engineer should understand data structures and algorithms.

Re: AI is removing the middle class of software engineering?

#965
post #825

Earlier quoted context omitted.

The leetcode test is just a screening device. Passing it means you then go through the real interviews. Also, if someone is unwilling to do the work to pass the leetcode test, they likely don't have the ambition to get the high pressure jobs.

As if these were high pressure jobs ... or had any rational reason to be high pressure jobs.

High pressure jobs correspond with higher pay.

Re: AI is removing the middle class of software engineering?

#966

Earlier quoted context omitted.

> Such test filter out the obvious frauds. if you need garbage like leetcode to filter out "obvious frauds" you got a whole lot of problems in your company/team/...

Honestly this is purely because time is money. Its a blunt instrument that is surprisingly effective. Unfortunately, it also removes a fair amount of competent people too, that simply don't think/operate in a leetcode mindset.

I'm a little hesitant to accept the notion that people are really great engineers but cannot handle basic algorithms and data structures.

Re: AI is removing the middle class of software engineering?

#967
post #963

Earlier quoted context omitted.

Not really. I'm typically less concerned with how much someone costs than I am with how much time they'll wind up wasting, but I'll admit that this perspective is colored by my experience having run a kitchen in a restaurant. The secondary challenge in the kitchen (beyond the challenge of hiring someone who'll simply show up when scheduled, ha) is hiring someone who has a genuine interest in cooking as a craft. It's…

The trouble with untrained craftsmen is they are not aware of what they do not know about the craft. For example, I recall working on a codebase where the craftsman used bubblesorts in multiple places, evidently unaware of qsort(). I fixed that, and the program got a lot faster. The role of an engineering degree is to teach you the things you should know about engineering. And an engineer should understand data struc…

Forgive me. Did I advocate for not understanding data structures and algorithms?

Re: AI is removing the middle class of software engineering?

#968

Earlier quoted context omitted.

Want to get standards-compliant garbage? That's how you get standards-compliant garbage.

I don't really, but at least there would be standards. Like, the massive amount of hacks and breaches we've seen in the past ten years indicate that something needs to happen.

[dead]

Re: AI is removing the middle class of software engineering?

#969
post #432

Earlier quoted context omitted.

> Call me a gatekeeper if you want but, we ended up with a lot of people that just can't do the job. Increasingly I am of the opinion that software engineering aught to be a licensed profession, similar to civil engineers, medical professionals, or lawyers. A board of peers to hold you accountable and a licence that can be revoked at any time. Additionally, legislation could be written to require such licensed indivi…

> software engineering aught to be a licensed profession, similar to civil engineers, medical professionals, or lawyers. My experience with civil engineers and lawyers is many of them aren't worth spit. Licensing is not a magical cert that proves competence. BTW, if you hire a lawyer in WA state, be sure to ask if they passed the bar. The state has been licensing lawyers who don't pass it.

...or you wind up with people that know the same answers to the same questions; great for a job repeatedly answering the same questions, pointless for jobs requiring original approaches, beyond a certain point. In law, you'd better know the law... but there are so many ways to work in tech, many with no appropriate titles, many pockets of it which would not survive a certification path.

Re: AI is removing the middle class of software engineering?

#970

Earlier quoted context omitted.

I mean, the obvious thing is that the "learn to code quick, code bootcamps!" drive was driven by connected people who were, as they are now, attempting to drive down the cost of software development. Management types really really really loathe software developers for making good money, and have spent decades now jumping at any advertisement that suggests it can undercut the salary of your current crop of engineers.…

> Management types really really really loathe software developers for making good money Of course. I bet you loathe having to spend $70,000 to buy a nice car, too! > Capitalism simply wants to eliminate any and every cost by definition You could look up what life was like under Soviet communism. Me, I prefer capitalism.

I do not believe what the world is calling either of those things (communism or capitalism) now is anything like it was when the USSR was existent in the 1970s.
Post reply on HN