It's Time to Upgrade to Drupal 8

Drupal 8 Octopus

As a Drupal site user you already enjoy the best open source platform for your website or web application, with millions of man hours of development time over 15 years and tens of thousands of available modules to add functionality. But if you are still on Drupal 7, you are missing out on some important features, and you won't be ready when Drupal 7 goes end-of-life and loses community support for bug fixes and security updates.

Drupal 8 was released on Nov 19, 2015- the end result of over 3,000 core contributors, and the biggest update to Drupal ever.  This update included hundreds of improvements, some which include:

  • Mobile-first, responsive, HTML5 output and mobile content-editing and site management support with a new mobile-friendly admin toolbar
  • Significantly improved overall website performance and load times (an important SEO factor!), including BigPipe - first developed at Facebook
  • Much better support for content editors, with built in WYSIWYG editing, in-context editing, and previews
  • Much improved support for media management, including drag&drop image uploads, and native audio and video support with the new Media module in Drupal 8.5
  • Full translatability and localization out of the box- with 100 languages available - and you can even moderate different language versions of the same page independently
  • Enhanced accessibility and WAI-ARIA compliance
  • Drupal 8 can be a central repository to manage and serve all your decoupled data- to advanced Javascript (React, Angular, ..) user interfaces, mobile applications, Alexa or Google home devices, video walls, whatever!

And for the developer-centric:

  • REST-first native web services
  • Modern PHP standards and practices, with integration of popular libraries such as Composer, Symfony2, Guzzle, and Twig
  • Comprehensive content modeling out of the box with entities, fields, and views
  • Enhanced caching and best-of-class integration with CDNs and reverse proxies
  • Full compatibility with PHP7, and the PostgreSQL and SQLite databases
  • Reliable configuration management for safe and straightforward deployment of changes between environments

Three+ years later, Drupal 8 is very stable and full featured. And it is time to upgrade.

But I bet you are thinking, "well if Drupal 8 is now three years old, then maybe I should just wait for Drupal 9?".  Drupal 9 is scheduled for release on June 3, 2020. But Drupal 9 will be a different beast altogether.

One of Drupal's strengths (and weaknesses, honestly) has always been that with each new major version, Drupal breaks with old constraining technology (and what we call technical debt) and rebuilds with new better components, internal code, and modern third party systems.  While this does make each new version of Drupal the best open source CMS available - 15 years later Drupal is still the top choice for ambitious web experiences - it does require a more complex upgrade process between major versions.

But that ends with Drupal 9.  From Drupal's founder, Dries Buytaert, in his post Making Drupal Upgrades Easy Forever:

We see a way to keep innovating while providing a smooth upgrade path and learning curve from Drupal 8 to Drupal 9 ... we will continue to introduce new features and backwards-compatible changes in Drupal 8 releases. In the process, we sometimes have to deprecate old systems. Instead of removing old systems, we will keep them in place and encourage module maintainers to update to the new systems. This means that modules and custom code will continue to work ... Over time, maintaining backwards compatibility will become increasingly complex. Eventually, we will reach a point where we simply have too much deprecated code in Drupal 8. At that point, we will choose to remove the deprecated systems and release that as Drupal 9.

This means that Drupal 9.0 should be almost identical to the last Drupal 8 release, minus the deprecated code. It means that when modules take advantage of the latest Drupal 8 APIs and avoid using deprecated code, they should work on Drupal 9. Updating from Drupal 8's latest version to Drupal 9.0.0 should be as easy as updating between minor versions of Drupal 8. It also means that Drupal 9 gives us a clean slate to start innovating more rapidly again.

Dries goes on to suggest this:

If you are planning to migrate directly from Drupal 7 to Drupal 9, you should reconsider that approach. In this new model, it might be more beneficial to upgrade to Drupal 8. Once you’ve migrated your site to Drupal 8, subsequent upgrades will be much simpler.

Drupal 7 support officially ends in 2021. Which means no more updates. But don't wait until then! Upgrade now to Drupal 8 while there is plenty of time, and so you can enjoy the benefits.

And we can help - we have already upgraded dozens of Drupal 7 sites to Drupal 8, and they all work better and run faster. And are ready for Drupal 9