Sorry for the late reply. I got involved with work and life and haven't been to Slashdot in a couple of weeks.
First off, you're welcome. But I think it's a little more organic than you make it out to be. It's not always about people choosing the simplest or cheapest solution, and for untrained ad hoc coders, coding style is an alien concept. That's not to put them down, though. Let me share a little more of what I referred to, since I was one of those inexperienced coders, once upon a time.
I was a Psych major in school and came to computers from the side. Back in the 80's, I had taken a Pascal course in college, and later on taught myself AppleBASIC on an Apple IIe. When that was too slow for what I wanted, I learned Assembly. A few years later I was working in a company that made PC software and someone gave me a copy of QuickBASIC, which compiled to EXE for DOS. I learned a variety of BASIC variants, including the many types of macro languages in Lotus and Microsoft products, as well as writing applications in dBase III. I also learned C, but since I wasn't a developer and was mostly writing tools for my own productivity, I often fell back on QB because the coding and debugging cycles were much shorter.
Eventually I found myself working in the Desktop IT department (the company was growing from a "startup" to a rather large company, and transfers were frequent) and was tapped to install Lotus Notes for the Prod Dev dept. Having also written product manuals and help files, I was fascinated by the notion of hypertext. My first "hypertext document" was a Windows help file, combining various departmental info, the company phone list, and a map of the facilities. The director of the Application IT department (that managed the Oracle apps) saw this and got me transferred to help create our first intranet. This was when the web was just going mainstream and some people were really trying to exploit it, while others thought it was just a toy.
I built a lot of discussion boards, phone directory searches, and departmental templates with my rudimentary HTML and Perl knowledge. Professional coders would have built a better product, but management didn't want the pros to take time away from their fancy retail products or their expensive Oracle applications, and no one yet saw the value of contracting a professional coder, so it was me and a couple of friends or nothing at all. Eventually I became quite a solid coder, and I continued to push for management to own some of the systems I had written that they were now relying on.
Well, you know it: it wasn't until after I left that they started to rewrite the intranet. Some would (and did) say that those early efforts were crap and they clearly had to be replaced. I would say that the company got a lot of value out of those early crap efforts, and it made it easier for them to design the cohesive back-end that they eventually went on to build. But here is ultimately the crux of the discussion. Management never owns anything until they need to. Then they come in with a "Calm down, the experts are here now with ALL the answers" attitude that belies the fact that they were forced to respond to something like the original coder leaving.
I've heard plenty of crap hurled at Perl, but when all is said and done, I've seen and worked on plenty of web apps written in ASP, Cold Fusion, PHP, Oracle Apps, or Perl/CGI. Each was replaced by another at some point, and each time the villain was always made out to be the tool and not the tool user. The real cost/benefit analysis would examine utilizing all that working code as part of a rewrite, versus starting from scratch. Sometimes they will consider it. Usually not.
C'est normal. C'est la vie.
Cheers!