Upgrade to Pro — share decks privately, control downloads, hide ads and more …

umBristol - Dancing for Drupal

umBristol - Dancing for Drupal

Oliver Davies

August 25, 2015

More Decks by Oliver Davies

Other Decks in Programming


  1. opdavies • Oliver Davies • Senior Developer at Microserve •

    Drupal core contributor and mentor • Bristol DUG organiser • DrupalCamp Bristol committee member
  2. What is Drupal? • FOSS • Content management framework •

    https://www.drupal.org • Started in 1999 as a message board • PHP • “Not invented here”, but changing • GPL2 license • 6 and 7 are our current stable releases • 8 is in development
  3. Who uses Drupal? • ~3% of the web is powered

    by Drupal • Over 1,000,000 active sites (that we know about) • Particularly popular in higher education and government • whitehouse.gov • beta.london.gov.uk
  4. Source Control / Versioning / Deployment (core) • Git (repos

    hosted on drupal.org) • 2 supported major versions • No backwards compatibility between major versions • Supported update / migration path • SemVer coming in Drupal 8
  5. Source Control / Versioning / Deployment (project) • Use what

    VCS, versioning system and deployment tools that you want. • One big repo with core, contrib projects, custom code • Drush Make or Composer for declaring versions and dependencies
  6. Configuration • Currently, mostly database with exportable features • Override

    or define variables in settings.php using $conf[varName]. • Drupal 8 introduces full or partial configuration synchronisation in core - import/export via the UI, or version control
  7. Multiple Editors/Developers • Online via forms. • Multiple user accounts

    with different roles and permissions. • Content Lock module provides anti- concurrent editing • Revisions, published and unpublished by default. • Workbench Moderation provides moderation states and review workflow.
  8. Multiple Editors/Developers I suggest: • Export everything into code, and

    disable UI modules. • Disable installing and updating modules through the admin UI. • Use an appropriate version control workflow.
  9. Upgrades • Update path between minor releases, and major releases

    prior to Drupal 8. • Migration into Drupal 8 from earlier versions or different (non-Drupal) data sources.
  10. 3 Best Things 1. Free and open source 2. Community

    3. It gives users the chance to build something without writing a line of code (more-so in Drupal 8)
  11. 3 Worst Things 1. Slow release cycle (fixed in Drupal

    8). 2. Legacy code architecture and “Drupalisms” (fixed in Drupal 8). 3. Out-dated Git workflow (fixed soon).
  12. Other Cool Stuff 1. Integrated eCommerce 2. Integrates with third-party

    applications and services such as CRMs 3. Migrate framework - migrating data into Drupal 4. REST in D8 core - exposing data from within Drupal 5. “Headless/Decoupled” Drupal - JS front-end/Drupal back-end
  13. The Future of Drupal Drupal 8! • More useful things

    in core • Modern PHP/front-end architecture and techniques • Transferrable skills across frameworks for Developers, and lower barrier to entry for new contributors
  14. Want More? Come along to our meetup. 3rd Wednesday monthly.

    http://drupalbristol.org.uk Contact me. http://www.oliverdavies.uk https://microserve.io