When doing any sort of creative work picking the right tool for the job is important. The right brush for a painting, the right brick for a house, or the right programming language or framework for web development.
Clients often try to pick the language or framework they wish their site to be developed in without a clear understanding of the benefits and constraints. It should not be the clients role to choose the platform, this should be down to a developer or a technical project lead. Although putting this at the developers feet will often see your site developed by whatever the developer is most familiar with or a fan of.
When I first started using Drupal I must admit entering fanboy status and thinking that all sites could and should be built using Drupal. It turns out that although all sites could be built using Drupal it is not always the best option. Also similarly a framework such as a Ruby on Rails may not be the option if all that is needed is a Blog or content managed site.
As a personal preference the following frameworks would be used in these situations:
- Basic fairly static site - Plain HTML or static site builder Jekyll
- Basic Blog - Jekyll or Wordpress
- Content rich dynamic site - Drupal
- E-commerce - Drupal commerce or SaaS app such as Shopify
- Custom workflow or SaaS app - Ruby on Rails
- API - Sinatra
Many of these choices come down to personal experience and each developer may say different. So when looking for someone to build your new site or web app don't just pick a framework. Ask around, see what developers would use and why.
What do you use and why?