In 1980, good programmers spent a lot of time thinking, and then produced spare code that they thought should work. ... But programming now isn’t so much like that ... . Nowadays you muck around with incomprehensible or nonexistent man pages for software you don’t know who wrote. You have to do basic science on your libraries to see how they work, trying out different inputs and seeing how the code reacts. This is a fundamentally different job. ...
So the reason, basically, is that software today is a train wreck, and you might as well embrace helplessness and random tinkering from the start?
More insightful words have not been uttered about the state of computer science.