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
Tweet

More Decks by Oliver Davies

Other Decks in Programming

Transcript

  1. umBristol
    CMS Dance-Off - August 2015

    View Slide

  2. opdavies
    ● Oliver Davies
    ● Senior Developer at Microserve
    ● Drupal core contributor and mentor
    ● Bristol DUG organiser
    ● DrupalCamp Bristol committee
    member

    View Slide

  3. 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

    View Slide

  4. 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

    View Slide

  5. 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

    View Slide

  6. 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

    View Slide

  7. 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

    View Slide

  8. Configuration Management
    Demo

    View Slide

  9. 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.

    View Slide

  10. 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.

    View Slide

  11. 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.

    View Slide

  12. 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)

    View Slide

  13. 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).

    View Slide

  14. 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

    View Slide

  15. 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

    View Slide

  16. Want More?
    Come along to our meetup.
    3rd Wednesday monthly.
    http://drupalbristol.org.uk
    Contact me.
    http://www.oliverdavies.uk
    https://microserve.io

    View Slide

  17. Questions?

    View Slide