By: Gurpreet Kaur
March 2 2021

Is Drupal Really Difficult or Is It Just Another Misconception?

Today, there are a bazillion options available for us to choose from, be it restaurants, clothing brands, gadgets or software. We, as users, may have difficulty in choosing the best, but never in finding the options. The options may confuse us, but we are going to be bombarded with them nonetheless. 

This brings me to the question of choosing the right option amongst the lot; how is it selected? For me, one of the most important criteria is usability, if I am not able to understand the usage of a product, I’d rather choose the next one. I am sure usability must be an important factor in your decision as well. 

Now, coming onto the product that I would be talking about today, Drupal. It is one of the most renowned open source content management systems out there. If you are reading this blog, you would definitely be aware of Drupal and all of its brilliance. Despite its eminence and versatility, it is still marred by a slightly unjustified rumour based on its use. Yes, as the title suggests, Drupal is often considered difficult to use and as a result many shy away from using it. 

Today, we will try to understand all the aspects of Drupal that could account for this claim and see if it is really true. Can a software that is meant to be free for anyone to use be so difficult that it become inaccessible to a major lot of its audience? What would be the point of it then? You think about that while I begin with the individual of Drupal’s so-called complexities. 

A Glimpse at Drupal’s Market Share 

Drupal is one of the leading CMSs in the market. Its ability to build powerful web experiences is the paramount reason for the same. So before I get into the nitty gritty details of Drupal's ease of use, I wanted to highlight its popularity. 

A line graph is showing Drupal usage statistics.
Source: BuiltWith
A table is showing the number of sites using Drupal at different points of time.
Source: Drupal.org 

These numbers clearly show that Drupal is being used by a considerable number of sites worldwide with as many as a million Drupal sites operational at one time. This proves the answer to the question ‘Is Drupal in demand’ is going to be an affirmative.

A graph shows how many sites use Drupal in comparison with other CMSs.
Source: W3Tech

 

There is a list of the most high traffic sites using Drupal.
Source: SimilarTech

Is Drupal still relevant? I’d say it is primarily because it isn’t just the numbers that make Drupal impressive, but its performance as well. The above images depicts Drupal’s competency at handling high-traffic sites. Drupal is a software for which millions of visitors aren't daunting as proven by its clientele.

Two pie charts are showing various changes in business and projects handles by it.
Source: Drupal.org 

Moreover, in a survey to understand 2021’s business outlook, Drupal found out that the majority of its users felt that the new year would mark a growth in their prospects. With Drupal’s presence in a wide range of industries, the profitability of the CMS is impressive too. Sectors like education, charities and nonprofits, government, IT and even media have experienced more profits with Drupal as per the findings of Drupal Business Survey 2020

Drupal has proven its worth in every aspect, be it the number or the performance. The only thing that mars its impeccable record is that it is difficult to use, which isn’t technically the case. I’ll start answering the why with the next section.

Let’s move on to the programming language 

PHP or Hypertext Preprocessor is the programming language Drupal is built on. And PHP is a language that is often considered to be part of its complexity. I would say that it is not accurate. 

PHP is one of the best programming languages and has landed itself in the top 10 best languages to learn in 2021 by many surveys; Simplilearn and Hackr.io are two of these reports. With that kind of efficacy, the language cannot be considered to be problematic.  

Further proof of PHP’s popularity is in the number of websites and applications that use it, which isn’t a lowly figure. Look at the graph below for proof. 

A graph is showing the popularity of various programming languages.
Source: W3techs

And these reports and figures aren’t antiquated, rather are as new as the year itself. So, PHP must be a worthwhile language, even if it isn’t the easiest of them all. 

However, PHP isn’t the only language Drupal works with. It has other dependencies as well. These include; 

Symfony; 
Twig; 
CKEditor; 
jQuery and jQuery UI. 

All of these only mean that Drupal is versatile, it isn’t a software with one side. Its multifaceted programming aspects only add to its appeal. It may seem like a lot at first, but it is necessary and doesn’t add up to Drupal’s difficulties, rather it eases the task of web development.

Moving on to the beginner’s conundrum 

When we start something, more often than not, we feel overwhelmed with it. Since we are not accustomed to the newness and it’s nuances, that is understandable. And Drupal ensures that it takes into consideration the novice developers. 

Until Drupal 8, beginners have reported difficulties with the installation and evaluation of Drupal. But after the release of the eighth version, things are more streamlined with the beginner’s needs and expertise. 

Drupal has also brought on new themes to make its experience more flattering for the beginners. For example:

Umami in Drupal 8.6 
Claro in Drupal 8.8 
And Olivero as an experiment in Drupal 9.1

All three themes have made Drupal more accessible, responsive and simple for its users, if we are to rely on user feedback. If I talk about Olivero specifically, it is the new beta experimental frontend theme, which is both modern and concise, and will take over Bartik as Drupal default theme. Its simplicity and professional look make it a perfect pair for beginners.  

With Drupal 9, there isn’t much that has changed. If you are comfortable with Drupal 8, you would be able to ease into the 9th version with a breeze. Although there are indeed differences between Drupal 8 and 9, these are not as stark and have made development not seem like a daunting task. 

And there is more. 

The Drupal Community, always helping out!

Drupal has a community of over 1 million people and 100,000+ stories to tell. From putting your skills at work to acquiring new skills to work, the Drupal community is known for upliftment of the software and the people using it. 

Any questions a beginner may have will be rightfully answered. You can easily find mentors, who are Drupal veterans and will gleefully help you become an expert like them. You can practise, practise and practise some more to get to the level you want to be at. Being part of the Drupal community, you will be able to hone your skills unlike anywhere else. 

You would not feel like an outsider, meet people with similar interests and similar geography as you at Drupal Groups. Since the best way to learn Drupal or anything really is to be immersed in it, the Drupal community is just the place for learning and mastering.

And, there is a constant endeavour to help underrepresented groups from the Drupal Community. Diversity, inclusion and equity is at the heart of the community.

So, there isn’t much room for the beginner’s conundrum at Drupal.

Then there are the notorious Drupal upgrades

Upgrades are necessary, but they don’t necessarily have to be an insurmountable task, which frankly speaking was the case for Drupal. Upgrading till Drupal 8 could not be described as being easy and quick. They required a lot of work and it was difficult, as there were major fundamental changes in the software. However, there was no other way to go about it. If you wanted the added functionality and support that new version would have, upgrading was the only choice.

However, that isn’t the case now and thank goodness for that. 

With the launch of Drupal 9, upgrades have become less notorious and more accommodating. The Drupal 9 switch has been deemed as the easiest upgrade of the decade and that is saying something. This is because unlike previous upgrades, Drupal 9 does not change the entire CMS on a fundamental level, there is no reinvention, but it is still unique. It is a new and improved version of Drupal 8, with deprecated APIs and updated dependencies.

Here is an illustration that will help you understand what I have been saying about fundamental changes.

Different train tracks are used to describe the difference between various Drupal versions.
Source: Drupal.org 

With a four step process, you can make your Drupal 8 sites ready and waiting to be upgraded into Drupal 9, if that is difficult, I wonder which adjective would be appropriate for the previous ones. You can also directly upgrade from Drupal 7, if you wish to. Access this complete guide to Drupal 9 to know everything about Drupal 9 upgrade and migration.

Yes, Drupal upgrades were difficult, but they aren’t now. So, does this fact make this pointer for Drupal moot? I think it does.

Coming on to the workflow 

For content management systems, content is the integral. The way it is created and managed essentially decides whether the life of developers and content creators is going to be easy or not. If you are using Drupal correctly, I can assure you life is going to be a breeze.

I say this because in terms of editorial workflow, Drupal has a lot to offer and not much is complicated, with structured tools equipped to define the same.

Here is an overview of some of them.

Workspaces is one tool that helps in defining the staging environments, previewing content changes, all the while deploying these to a live environment.

Transitions is another tool that makes it easy to control content States, which have their own attributes. It allows state changes to become restricted by roles and permissions along with allowing users what content to be put through them.

Then, there is the eminent Views module. This is one unique to Drupal and its highlighting feature in terms of content. It gives the power of creating, managing and displaying lists of content to administrators and site designers. It is these lists that are called views, while what the portray in the form of blocks or pages is the display, it can be one or many.

A screenshot of Drupal's Views module can be seen.
Source: Drupal.org 

One of Drupal’s most fulfilling editorial tools is the Layout Builder. It allows editors to create a publishing piece that is more than flexible to their needs. Any kind of layout is possible with this module.  
 
All of these support the editorial needs of the many content authors who will be populating a platform and the better part is they would not need the guidance of the developers every of the way or any at all.

The new-age of Headless CMSs 

As times change, the things that satiated our needs no longer do so. The same is true for CMSs. Looking back, it is evident that site builders and developers were quite satisfied with nestling an entire project inside one CMS, which would have acted as the provider of the frontend and the backend needs. However, with the advent of multitudinous frontend technologies, that satiation is no longer achievable. 

Hence, the new-age of CMSs emerged, which is essentially without a head, that is the presentation. Unlike the monolithic architecture, the headless approach separates the frontend development from the backend, making the developers happy by leveraging other technologies.

Drupal is a pro at the headless approach. Its monolithic architecture is also used by sites with simpler needs, however, it does give them the option to decouple or go headless, if they wanted to. 

  • You could choose to decouple partially, this would be the progressively decoupled approach
  • You could choose to go all the way, with the fully decoupled approach with JavaScript framework of your preference taking care of the frontend or you could choose static site generators as your frontend.

Be it React, Angular, VueGatsby or Metalsmith, Drupal can work with all of the major frontend technologies and make the project a success with it acting as the content repository.

Drupal’s work isn’t finished yet, it also provides robust APIs to streamline the connection between the presentation and the content layer. Built on the API-first approach, Drupal offers all of its application functions as APIs. This is done through its web services including RESTful web services and JSON:API along with API extensions with GraphQL

Drupal can create its own flexible and structured presentation layer, there isn’t a doubt in it. Regardless of this, when it is decoupled, it performs with equal efficiency to create API endpoints, which basically make room for content consumption and display in the headless application.

And this new-age of CMSs is gaining ground each day, and Drupal, with its own web services at play, is making the transition quite easy.

Fusion with Emerging technologies

I mentioned in the previous section that with time things change and so does their to us. Today, technology is a major part of that change. I remember a time not long ago, when a single camera setup on our smartphones was enough for us. Now, my phone has three, still I envy my husband, whose smartphone has a quad camera setup. Who could have imagined that? 

The same is true for CMSs, when we look at them, we don’t just want a simple site building tool. We want innovations, enhancements and upgrades that will stun us in the most positive way. And CMSs have started providing that. 

Taking Drupal into focus, it has had a revolutionary impact on the market by integrating itself with futuristic technologies.

Drupal has proven to be both reliable and reaching in its fusion with emerging technologies and that has led to an improved digital experience, both for the developers and the users. Read our blog Unleashing macro trends in technology with Drupal to find more about this topic.

It all comes down to continuous improvement in focus

A horizontal bar graph shows the various reasons people opted for Drupal.
Reasons for people choosing Drupal. Source: Drupal Business Survey 2020 

The most common reason for people using Drupal is because they have already used it and because of that familiarity, it becomes easy to use. However, ease of use is not amongst the top reasons for taking up Drupal. 

Probably that is why, when Drupal 10’s 2022 release was announced during DrupalCon Global in 2020 by Dries Buytaert, its ease-of-use was addressed as one of the most impactful aspects. And Drupal 10’s development is proof of that.

In Dries speech, he emphasised the ease of use quite a lot. He talked about five crucial steps that were taken to simplify Drupal even more. 

  • Improving third party components even after their EOL to enhance Drupal 10 readiness; 
  • Improving Drupal’s ease-of-use further, Drupal 9 was a great step in this direction;
  • Improving frontend themes; 
  • Improving updates by making them automates, this would work best for security upgrades; 
  • Improving on Drupal technology by implementing JavaScript components in the UI. 

For all of these, the efforts are being made by the entire community. 

Yes, it would be faster, better and more innovative, but it would not be difficult. Like I mentioned before in this blog, we should not expect many overhauls to the software that would make our eyes pop and heads hurt. 

There are going to be improvements, there would at least by four versions of Drupal 9 before the arrival of 10. However, this continuity in advancements does not have to affect the way Drupal is seen by its users. It needn’t be the forbidden fruit that everybody wants to taste, but scared to do so. Drupal is an open source software, it is meant for everyone and that means it isn't too difficult. I wouldn’t deny that wasn’t complex at one point, but that point of time is long gone. What lies in the future is a version of Drupal that is as easy to use for a beginner as it is for an expert developer.

The Bottom Line 

I’d like to answer the question ‘How hard is it to use Drupal?’ with a direct from one of our developers.

“Being from a technical background and having PHP development experience before diving into Drupal gives me an upper edge during the journey. Being into Drupal development for around 3 years, I can say it’s all about learning the architecture of Drupal (such as entities, configs and forms) and how the code executes (sequence of functions calls). The earlier you understand these, the easier the Drupal journey would be for you and it would help you to debug faster and select the best approach for the requirements. Plus having a great community and open contribution platform helps you learn better and faster. Drupal is like a Lego, you can build it to your liking but, at a certain point of customisation, it is like a box with thousands of pieces and not all of them fit together.” - Anmol Goel, Senior Software developer at OpenSense Labs

For Anmol, Drupal experience made the journey easier. It requires you to get a hang of things, once you do that, there isn’t much that you’d find difficult, and your Drupal development experience would be a walk in the park; at least most of the time. And like he put it so eloquently, who could find a game of Lego difficult? All it is about is building something new every time, be it today or tomorrow and that’s Drupal for you.