content: We never solved the software crisis. One of the many problems is that most developers are self-taught and have no sense of history for computers or software.  They will frequently re-engineer a well-understood technology in a bad way. The only thing that's really changed is that users now expect software to be limited or unreliable (just gotta reboot to get Windows back to normal).  Yes, we have "agile" or whatever, but really the whole push with the new methodologies has been to sell certifications and training. The problem is that, in many way, we're fucked.  There's so much "quirky" software and tools out there that you can't really make any progress.  Look at how Windows 10 had to skip the label "Windows 9" because shitt software tried to determine which OS it was running on by searching for "Windows 9[x]" (where [x] is anything so that win 95 and 98 are both matched).  Seriously, kill anything in your own OS that looks at that shit and just don't worry about what the archaic shit did.  Let the person who wrote that archaic shit fix their mess. Once you dig into libraries and system architecture, it gets even worse.