Deployability is important and favors PHP over Rails and Java

PHP web applications tend to be very easy to deploy. You simply upload the application and it works. Maybe your application needs to have an install.php that creates the database tables but that’s hardly difficult.

The next easiest applications are cgi apps. In addition to uploading, users need to know if they have a special cgi-bin folder that they upload to and ensure they upload to it. They also need to know how to make a file executable. However no server configuration needs to be done.

The leap from the above two types of web applications to the remaining types is quite different. Servlet, Python and Ruby on Rails applications tend to be far far more difficult. They require editing server configuration files and installing software that is far less common. For example, a servlet often runs separate from your web server and static images/css need to be served by the web server while the servlet is not. Rails likes a similar model that uses fastcgi for dynamic content. Python applications prefer modwsgi or modpython (but often work fine with a config similar to Rails).

It makes it difficult to choose an application development platform, especially for open source projects, other than PHP because comparatively speaking, it’s very difficult to deploy the applications.

Below is a chart from google trends comparing the search popularity of PHP compared to Ruby on Rails. Interestingly, if you search google trends for PHP alone and Ruby on Rails alone you will see the search frequency for both phrases is declining. Asp.net is also declining. Django is increasing but its hard to compare django since it’s popularity goes back further than the existence of the Python Django framework indicating it is a popular search term outside of the scope of web applications.

PHP eclipse Ruby on Rails in Google Trends

Is there any work being done to make it easier to deploy web applications? I’ve seen the Resin servlet container has a feature where once properly configured you can simply upload a war file and it self-installs. This is progress.

Reply

Please solve the math problem above and type in the result. e.g. for 1+1, type 2.
The content of this field is kept private and will not be shown publicly.
  • You can use Markdown syntax to format and style the text.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

Back to top