What’s The Problem Then?
Debugging the code is often difficult, because it takes time to hunt through every single plugin, module, theme, child theme, etc to figure out what might be the root cause of something not working any longer.
JQuery is Also Very Manual.
If you want to do things like build ordered lists or tables, add in content and then later update it on event changes with new data, it’s a bit of work, but it can be done. Magnify this workload across dozens of lists and tables, and even the biggest JQuery fan starts to walk away slowly.
Code that might have worked a few years back probably gets error messages in the
console that tell you to update your plugin code to the newest version of some API. Facebook and Google routinely change their APIs and deprecate functions they no longer support. So you’ll have to go through all the old code and get it updated.
But you have to be careful! Because if you update something, other things could break elsewhere that were depending on the previous code.
You may even end up breaking something someone else on the team wrote in code, and now they are upset you are interfering with their work (maybe it cost the company a lot of time and money). Coworkers may also complain that the changes you made broke the website on their browser (and no laughing at them for using IE8 is not a good response).
Hence, this process of rewriting can take weeks or even months, and can become even very political.
Still Not Fixing Problem At Hand…
Eventually those band-aid fixes along with the entire legacy code are going to be passed on to the next unlucky person who takes your spot when you decide to tap out. (If this is your first day on the job, my heart goes out for you. Welcome to legacy code hell.)