Selecting the right Drupal version from 7, 8 and 9 with matrix for decision-makers

Selecting the right Drupal version from 7, 8 and 9 with matrix for decision-makers

Now that Drupal 9 is available there are 3 supported major versions of the Drupal CMS. This is not an easy situation for many decision-makers. We’ve been working with Drupal since core version 4. Let’s break down the differences between these three different versions of the Drupal CMS to help you better understand what fits your needs and gives you the best opportunity to have an effective website that delivers you value. TL;DR scroll down to the comparison table.
 

Technical differences between Drupal 7, 8, and 9.

Drupal 7 is fundamentally different from Drupal 8 and 9. There were so many architectural changes that a transition from a Drupal 7 site to Drupal 8 is closer to a migration project from a different CMS than to a software upgrade. For example, the whole theme (presentation) layer uses a different technology; therefore, an upgrade from Drupal 7 to 8 means the frontend must be fully rebuilt. Starting with Drupal 8 many standards and modern technologies have been adapted. Taking these into account the development and deployment of Drupal have become more and more effective and future-proof. Luckily, there is no big architectural gap between Drupal 8 and 9. Drupal 9 is actually closer to a next minor core upgrade like 8.8 to 8.9, with 2 differences: code marked obsolete during 8.0-8.9 development is removed and dependencies were upgraded significantly. This approach makes it possible to build Drupal 8 sites that are fundamentally Drupal 9 ready as there are already tools to easily check whether there is any obsolete code dependency in a Drupal module. 

Drupal 8 and 9 feature enhancements over Drupal 7

Content modeling, Drupal’s traditional advantage over other CMSes, is flexible content modeling capability. Setting up the proper content types, adding various fields in a standard, yet extensible manner is relatively fluid with Drupal. All of this leads to further structured content, making it easier to create a consistent, yet still adjustable presentation, more powerful search, and data integrations. This was already true for Drupal 7, but Drupal 8 and 9 has gotten it right even more with Media handling in core and supporting custom content entities much more. All of this makes the D8 platform a convincing option for any content-heavy web application, not only as a traditional CMS.

Multilingual capabilities -  With over 100 languages out of the box and unrivaled translation workflows, no CMS offers better language support for multilingual capabilities. This was already true for Drupal 7, but Drupal 8 and 9 refined this even more.

Smoother, much more effective deployments and developer collaboration - For complex projects, with a team of developers and multiple environments (e.g. dev, test, staging, prod), it’s far easier to manage deployments (especially configuration changes), which makes the work more effective with Drupal 8 or 9.

Drupal 8 and 9 are leading the way in API-First, with JSON API And GraphQL out of the box in. The use cases are in the realms of decoupled and fully headless approaches. Adopting these approaches is considerably easier in Drupal than any other platform. The concept of "headless" Drupal aims to innovate by separating the front end, i.e. how the site is viewed, from Drupal itself. What this means is that all services and content management are handled by Drupal, while the main user experience or the way the site is displayed in the browser is controlled by a JavaScript framework ( ex. React.js). This allows the design team to be freed up for more creativity and helps with site speed and multi-platform operation. A headless Drupal can also power your mobile apps or any other platforms with content.

Performance: Drupal 7 may run, Drupal 8 supports, Drupal 9 requires an up-to-date hosting environment. An up-to-date hosting environment with the latest PHP, database engine, or key-value store. D9 is faster overall.
 

Selecting the right Drupal core version: a comparison matrix for decision-makers

 
Drupal 7
Drupal 8
Drupal 9
New project
Do not invest
Go, remain Drupal 9 ready (it's easy).
Go, just check if the required modules are available.
Redesign
Do not invest
Go.
Go.
New feature development
Do not invest
Go, just keep Drupal 9 readiness (it’s easy).
Go.
How long can we stay?
November 2022. No further development, but it will receive security updates.
November 2021,but no new features will be added, only security maintenance.
Future-proof fresh release, new features added regularly, EOL not even decided yet.
Upgrade
Closer to a remake than to an upgrade. It comes with at least a full rebuild of the frontend so it’s worth it to redesign and rethink. For pure content migration there is an upgrade path available.
In most cases, a low-cost, easy upgrade to Drupal 9 will be possible.
No need to upgrade, this is the latest version.

Conclusion on selecting the right Drupal core version

We presently believe that the safest bet is to select or stick with Drupal 8 with the aim of being Drupal 9 ready during the development and plan to close the upgrade to Drupal 9 as soon as the needed modules are ported, before November 2021 the latest. 
For brand new projects, Drupal 9 should be primarily considered, but if important contributed modules are not yet available, then starting with Drupal 8 is also a viable option without major drawbacks.
 

Péter Pónya
CTO, co-owner

As a CTO and key account manager with a developer background, I'm selecting and offering the right technologies and solutions for our clients.

Published at: June 17th, 2020
Share