Live data from Hacker News

Ask HN: Do you feel the quality of SWE has gone down?

news.ycombinator.com

41–50 of 97 posts

Re: Ask HN: Do you feel the quality of SWE has gone down?

#41
Because, and your acronyms hint at this: software engineering is not the same as computer science anymore, and really hasn't been for decades now.

Software engineering _relies on_ computer science, but the fundamentals that computer science is concerned with are about as far removed from software engineering as pure maths is removed from physics: no modern software engineer needs to have a deep understanding of the hardware-level behavioural fundamentals underpinning the solutions that CS already gave us to problems associated with that hardware. The work of a modern software engineer instead relies on the solutions to those problems working.

And sure, you can become a specialist, and dive into those subjects if you want to, but progress in any field is made by solving problems to the degree that the next wave can simply rely on the solutions being "a given": yesteryear's software engineers built the tools that today's software engineers rely on, without having to question that those tools get the job done.

And while in exceptional cases, they won't, and you might need a computer scientist to look at the tool and go "ah, that's because: ..." (and that can be the same person, applying a different discipline to the problem), it is that evolution of tooling that necessarily takes us further and further away from what at any point in time is "fundamental". The things you list are still fundamentals, but of a different field entirely by now.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#42
I've been coding for at least two decades, and possibly a lot longer if I want to stay vague about my age. It's definitely not getting worse imo. First, a CS education is nice to have but being a great engineer and having a degree aren't highly correlated. What makes a great engineer is someone who loves programming, and someone who builds lots of things. You learn by doing. You cannot stop people like that from learning and improving.

There are certainly far more programmers every passing year. Does someone need to be a highly trained engineer to build a small marketing website? Likely no. Is it a bad thing for our industry to have such a high demand for programmers with varying degrees of ability and training? I don't think so. What I envision instead is a future where basic programming is like driving a car. Lots of people will know how to do it.

I follow many great engineers and can even look at their code and learn from them. They are building things the best of us thought would be impossible a couple of decades ago. It's a super easy choice: if I could choose to go back to any point in time in the history of software engineering in order to experience the highest levels of quality, I would choose to be here, now.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#43
Depends on the axis.

In terms of working software that is somewhat dependable, we're probably better than ever before.

In terms of using the system resources efficiently? Unmitigated disaster. So. Much. Bloat. Chat clients should never use gigabytes of RAM

In terms of average talent level? It seems like its getting worse every decade. I was talking to some recent CS grads about Turing completeness and they had no idea what I was talking about. How can you have a CS degree and not know Turing completeness? Also so many developers refuse to understand how their tools work. There are so many developers terrified of C. C is warty, but to be frank, if you can't write some system level code you're going to be a weak developer. If you don't understand how your machine works, and you're unwilling to leave the world of HTML and Javascript, you're always going to be a novice

I have a theory about the "10x developer" thing. I think so many software developers are essentially "expert beginners" (https://daedtech.com/how-developers-stop-learning-rise-of-th... ) that when someone comes along with experience and competency they look "10x". But in truth, I think its more that the industry has a lot of 1/10th developers so the 1x guys look like rock stars.

I also think in terms of project management we've gone in a really wrong direction, and the rise of the expert beginner is not unrelated. Early agile had the right mindset, but its morphed into a gross ineffective caricature of itself that operates on a factory metaphor. The expert beginners need all the micromanaging that comes from scrum, and the project managers are more than happy to do it, and the people that know what they're doing get dragged down into it because management thinks every programmer is as bad as the average.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#44

I'm not sure quality has gone down as much as the need for programmers has drastically expanded. Now pretty much all businesses have the need for custom software to some degree, and many of those businesses do not have a big budget. What do you get when you have millions of businesses who need ten million dollars worth of software but can only spend 100k? You get lots of shitty developers coming out of the wood work…

I'd beg to argue this point. Those who are stimulating this employment exercise are more often than not degree holding. And that is where we have fallen. School != expertise in any regard.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#45
No. It's never been easier to make high quality software. I can run my own cloud environment, make quality user interfaces, integrate with third party providers to trivially do previously highly messy things like accept payments or send text messages, all as a solo developer.

Not because I'm particularly good but because a lot of the foundational work is now available with `git clone`.

There's a lot of crap around of course, but that's always been the case.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#46
Only irked about toy projects like terminals on Electron or reinventing the wheel instead of chaining shell commands.

On paging and CPU architectures, these aren't universal or usually supplied with standard libraries. Only serve to obfuscate and concretisize your codebase.

Just optimise your hot paths, let Intel/AMD/whoever make better optimising compilers for what they engineered.

Re: Ask HN: Do you feel the quality of SWE has gone down?

#47

Because, and your acronyms hint at this: software engineering is not the same as computer science anymore, and really hasn't been for decades now. Software engineering _relies on_ computer science, but the fundamentals that computer science is concerned with are about as far removed from software engineering as pure maths is removed from physics: no modern software engineer needs to have a deep understanding of the h…

I strongly disagree on not needing to know the fundamentals. Can you get a job without them? Sure. Can you even create a successful product without them? No doubt. Will your product take up 50GB of RAM, have un-debuggable hitches, erratic performance, and weird bugs when the 5000 dependencies you have change subtly on an update? YUP. Will you have a bunch of new developers that replace your old developers because of high turnover that want to rewrite it two years down the line, but don't realize they don't have the skills to do it better than the original people did? Probably!

Re: Ask HN: Do you feel the quality of SWE has gone down?

#48

I honestly can't remember a time in my career when I've looked at a codebase and thought to myself "what this dev really needs is a more thorough understanding of CPU pipelines and virtual memory". Ed Yourdon once wrote something like "No project was ever cancelled because the developer couldn't address the serial bus". I'm much more concerned with bootcamp graduates not understanding good class design or appropriate…

I'm in computer graphics, and find myself thinking "this dev really needs to better understand memory layout and computer architecture" all the time when I look at even basic code. A perfect example of this is looping over some range of pixels, and many will just go ahead and do for (x) for (y) setPixel(x, y, f(x, y)). There's no logic error here but it's still terrible when dealing with images in the usual memory or…

>demoscene

Honestly, who has time these days?

Re: Ask HN: Do you feel the quality of SWE has gone down?

#49
Yes. The quality of software has definitely gone down. Then again, so has the quality of everything else, from engineering to urban planning to infrastructure maintenance. A possible explanation for this phenomena is that the global mean IQ has also fallen quite a bit over the last 50 years and continues to fall[0].

[0]: https://www.fourmilab.ch/documents/IQ/1950-2050/

Re: Ask HN: Do you feel the quality of SWE has gone down?

#50

Earlier quoted context omitted.

I'm in computer graphics, and find myself thinking "this dev really needs to better understand memory layout and computer architecture" all the time when I look at even basic code. A perfect example of this is looping over some range of pixels, and many will just go ahead and do for (x) for (y) setPixel(x, y, f(x, y)). There's no logic error here but it's still terrible when dealing with images in the usual memory or…

>demoscene Honestly, who has time these days?

People that care about their craft?
Post reply on HN