Drupal is a powerful content management framework and among the most succesful PHP projects out there. Working with Drupal’s modules and theme layer means that for any problem there’s more than one way to that that. Picking a good solution, or dealing with the choices of previous developers will make you pull your hair out. I’ll look at what you can do to make working with Drupal – shall we say – enjoyable? We’ll look at how to evaluate contributed modules, what modules should be in all your installations, examine coding conventions in Drupal, and talk about development best practices for Drupal sites.