You just bought your shipment of 1000 servers. Do you really think you ssh to each one, edit config files, and copy your code over? Nope. You write a computer program to do all that. (See: puppet, etc.)
At that point, it's equally easy to install a stack like haproxy + varnish + nginx + a bunch of CPAN modules as it is to rsync over a bunch of .php files, and therefore "it's easier to deploy" is meaningless. You click a button.
Not to pick on you specifically, but one argument that comes up quite frequently, especially in PHP vs. X discussions, is "I don't see how xxx feature of other language is beneficial." Well, the reason you "don't see" that is because you simply don't have enough experience yet. Deployment is the same way; a lot of people get by for years without ever "doing it right". But that doesn't mean the wrong way is right, it just means you haven't been required to get deployment right yet.
>At that point, it's equally easy to install a stack like haproxy + varnish + nginx + a bunch of CPAN modules as it is to rsync over a bunch of .php files
Ahem. I get what you are trying to say, but I think you're gonna have a hard time saying that Ruby is as easy to deploy "right" as PHP. Rsyncing a bunch of PHP files is a single shell command. Writing puppet or bcfg2 specs to deploy your six-tier web stack for your RoR app is a bit harder, it is most certainly not a button click out of the box, and neither process is necessarily more "right". It certainly helped the PHP ecosystem that deploying a LAMP stack is as easy as running three package installs and copying over some PHP files. The fact that a simple-to-understand, well-established process will scale you up to decent load before you need to get fancy will continue to make it an attractive platform.
At that point, it's equally easy to install a stack like haproxy + varnish + nginx + a bunch of CPAN modules as it is to rsync over a bunch of .php files, and therefore "it's easier to deploy" is meaningless. You click a button.
Not to pick on you specifically, but one argument that comes up quite frequently, especially in PHP vs. X discussions, is "I don't see how xxx feature of other language is beneficial." Well, the reason you "don't see" that is because you simply don't have enough experience yet. Deployment is the same way; a lot of people get by for years without ever "doing it right". But that doesn't mean the wrong way is right, it just means you haven't been required to get deployment right yet.