Because it's there. The only reason people use all these web tools is because they are there, documented and ready. The classic example is the Apache web server - it was there and worked. It was written when the web was small and the number of users to a site was low. Competing web servers are here now with performance way higher, so people are switching. Nobody wanted to write a better web server so nobody did for a long time - and better in that case was easily measured. Programming paradigms? How do you evaluate them? I agree there are fads (FP anyone?) but what objective criteria do we have to evaluate them, or design something from scratch to meet those criteria?