There is also the argument that in the old days, developers had to think carefully about their code and design. Spend time considering the data, structure and algorithms to be used. Resources were limited, maybe time at the computer was also limited. Inputing programs could have been labourious due to flicking switches or punch cards.
Basically, you had to stop and think a bit first.
Not such a bad thing - pausing to reflect before writing the first thing in the head, and releasing it as soon-to-be-abandoned-Ruby-Gem.
Also, developers of yesteryear may have had a more than passing understanding of the hardware, of how the OS worked, of how to work within the constraints.
Developers these days treat resources as infinite, as something to be allocated by someone else "mooooarr servers - page the devops!" - "but, if we just looked at how the code is performing?..." - "no, moooaarrr servers!".
I can't speak for the PE side, but on the IB side be prepared to work with some truly awful tech and systems. Seriously crappy. Given the tech budgets and spend, it is amazing how much duct tape and band-aids hold together the IT systems across the bank.
No one mentions the real reason, also because it is the large elephant in the corner of the room we ignore.
The truth is - most developers write crappy code. Even right now, here, on this site, plenty of people like their code is fine, it is the code of others that hurts the eyes.
We can say that programming is hard, the languages and tools maybe not perfect, but, that's not quite it. A lot of developers just want to ship it, get it compiled and out of the door. It passes some tests, so it must be done.
If we built bridges like we built software, well, we know how that ends....
Basically, you had to stop and think a bit first.
Not such a bad thing - pausing to reflect before writing the first thing in the head, and releasing it as soon-to-be-abandoned-Ruby-Gem.
Also, developers of yesteryear may have had a more than passing understanding of the hardware, of how the OS worked, of how to work within the constraints.
Developers these days treat resources as infinite, as something to be allocated by someone else "mooooarr servers - page the devops!" - "but, if we just looked at how the code is performing?..." - "no, moooaarrr servers!".