I work for a big consulting firm, and I have used ASP extensively and routinely in financial services automation projects. In my opinion, the real value of ASP relies in its ability to script COM objects, so that you can write megabytes and megabytes of compiled code that is instantiated and invoked by a simple ASP page, showing the results. This makes it possible not to be limited by the inherent limits of a full scripting solution, and to interface with full security with the client's information system (based mostly on DB2's on OS/390).

This solution is often required because a lot of financial institutions have zillions and zillions of COBOL and Visual Basic code around, and it does make sense to re-use it as much as possible in order to minimize project developement costs and avoid reinventing already tested and often certified procedures. Also, it makes possible to re-use COBOL and Visual Basic programmers they already have on the job, and that cannot be easily trained to the worlds of Java and J2EE.

What is wrong with ASP, in my opinion, is that:

  • When using VBscript as the scripting language of choice, it's quite more painful to do the same things you'd do in, say, PHP or Perl;
  • When developing and often running projects, you sometimes find annoying memory leaks and sometimes known bugs that mean you have to reboot the production service, and this is quite annoying even in a web-farm environment, as ASP does not support dynamic migration of sessions around different servers (for instance, WebSphere does);
In the end, I believe ASP can be a viable and often used way to build complex projects in the real world. Ofcourse, Perl is by far more sexy!