Because people like to fuckaround.
Users like to be retarded and find "bugs" that weren't supposed to be found.
The board wants "moar revenue" - means "moar new features"
The hackers like to poke holes and steal shit.
The developers tend to skip tests "it's fine, lulz"
Because vendors and 126,339 node_modules packages have to be upgraded, because see one above
because they operating system had holes and now needs to be patched and patch broke obscure library #363 in those dependencies in them node_modules because see 2 above
because CFO said, AWS is too expensive for spaghetti code devs wrote and their moving to Big Butt's Cloud & Lube datacenters in southern Kentucky
now users say, "shits slow - we bounce" = sad board!
Then government passes data compliance law requiring encryption of password and entire codebase needs to be refactored.
And there is that one senior engineer nobody questions wakes up from his ayahuasca trip and declares, "I'm going to rewrite this entire legacy code in Rust"
People love to fuckaround