Return to site

Drupal is frustrating

· Drupal,Sustainability,Open Source,Open Collective

Proceeding every article or blog post about the future of Drupal, there are always a few comments that express a high-level of frustration when it comes to Drupal 8. From missing modules, to completely rewritten APIs, to new design patterns, and even complaints about the restructuring of sessions and tracks at DrupalCon….People are frustrated with change. The entire Drupal community understands peoples’ frustration, which is why we are continually trying to improve the software and community. Our most significant strides happen at DrupalCons, where everyone comes to together to share codes, ideas, and passion.

Introspection before DrupalCon

Before last year’s DrupalCon I wrote a blog post titled, Drupal is the worst Content Management System except for all those other solutions in which I talked about Drupal adoption, sustainability, and mentorship. DrupalCon provides the Drupal community with an opportunity for everyone to take stock of where we are at and where we are going. Every year we have discussions with actionable items to improve our community, which is continually changing.

Each year, I get something different out of DrupalCon. Last year I became more aware of diversity and inclusion issues within the Drupal and software community. I was also inspired to address webform related accessibility issues. The overarching thing I have learned at DrupalCons is contributing to Open Source is more than writing code, it’s about collaboration and community.

Come for the code; stay for the community

What I like about this quote is it acknowledges two key aspects to Drupal - the code and community - with the code being the “what” that brings us together. The code might also be what is most frustrating to people coming and staying with Drupal. But, getting frustrated as a community, is still a connectedness - we’re all invested in the code, together.

Our Lego analogy is broken

There are many articles expounding that Drupal's modularity is like Lego building bricks.

For example, Rob McBryde's post, Drupal vs. WordPress - A Lego Analogy states…

"Drupal is like Lego Technic where you can build whatever you can imagine with little to nothing ​preformed."

We are promoting that Drupal is as flexible and as easy as Lego building bricks which can be endlessly combined to build anything. Omitted from this analogy is that some of Drupal's bricks don't fit together, sometimes they don't work as expected, they might be missing, and sometimes stop working; this is incredibly frustrating.

Imagine getting a box filled with bright colored plastic bricks with no particular directions, and occasionally there are some broken or missing blocks. Once you determine something is missing, you’re supposed to go out and find that missing piece or build it yourself.

Drupal is no longer as simple as a pile of Lego bricks; meanwhile, our projects do require master builders.

Ambitious digital experience with enterprise support

It took me a few years to fully respect that Drupal is for "Ambitious digital experience" when we are competing directly with enterprise content management solutions. Shouldn't we be honest and include the word "enterprise" in our software description? Enterprise companies are relying on Drupal as a key part of their digital strategy and infrastructure. When we look at the gestalt of everything that organizations are doing with Drupal and as a community what were are trying to build - it can’t be denied: it is ambitious.

We need to recognize that for organizations to build their ambition digital experience they need enterprise-level support.

Drupal has succeeded in inspiring Fortune 500 companies to embrace Open Source without a clear roadmap on how to do it properly. These are huge companies with clear missions, and Drupal is a flexible and powerful tool used to help these companies succeed. Companies have no issue paying for support, yet it is unclear in the Drupal community how to get support.

Do you contract an agency? Hire your own team? Contribute code directly back to Drupal? Sponsor a camp? Join the Drupal Association? Help fund the Drupal project?

The answer is all of the above. Providing and receiving enterprise support for Drupal is a multifaceted approach, which is not universally and clearly communicated to organizations. The most immediate example of this problem is Drupal.org's support page is developer centric. We need to promote better support within the Drupal community. It needs to be perceived as a priority by those using it - this perception, will in turn, quite naturally create a greater sense of responsibility and investment to those of us writing code, fixing bugs, and sharing ideas. Our drive to collaborate and make something great, even better is already there - consistent recognition and support will certainly motivate, encourage, and ultimately yield even better results.

Promoting and supporting Drupal

Last year, the Promote Drupal initiative was introduced at DrupalCon Nashville. At DrupalCon Seattle this initiative is going to start proposing, planning, and promoting Drupal. Having sales and marketing materials that everyone can use will help all our pitches and also establish a unified message. I am optimistic that we will be able to clearly communicate the benefits of Drupal and Open Source and persuade organizations to explore our software and community.

Our first step is convincing organizations to enter the open source Drupal waters; then we need to teach them how to swim.

On my blog, I am continually drawn back to exploring the importance of teaching and mentoring in Open Source software development.

The best teachers are not rockstars; they are mentors.

The Drupal rockstar is imaginary

I am hoping that Matthew Tift (mtift) is going to end the myth of the Drupal rockstar with his DrupalCon presentation, The Imaginary Band of Drupal Rock Stars. I was always intimidated by Certified to Rock which ranked a Drupal.org user's contribution on a scale of 1 to 10; I continually got a 3, which was frustrating and discouraging

If the notion that the Drupal rockstar is over, what should we be calling ourselves?

The term 'Drupal expert' may also be a fallacy because the most valuable people in the Drupal community are the contributors, mentors, maintainers, and leaders.

Contribution and mentoring is the key to success

There are two key steps for a person or organization to fully value and understand how to engage in Open Source. First, they need to recognize that the software is built by people freely collaborating by contributing ideas and code which helps benefit the overall project. Second, acknowledging that the open source workflow involves maintainers mentoring contributors.

Mentoring the next generation of Drupal contributors

The maintainer to contributor mentoring relationship is what builds and maintains our software. We are continually mentoring new contributors who become maintainers. Mentorship is what grows our community.

Drupal is about to hit its twenty year anniversary. Our community is getting older and older. Meanwhile, the software industry is growing with younger people filling in the ranks. Drupal is not as appealing as the new and shiny rising technologies. Still, the concept that Drupal could be the backbone content repository to an organization changing digital strategy, is a valuable and long-term vision.

Beside our software, we have a vibrant community; our product powers amazing digital experiences. The fact that our software powers large enterprise companies is a double-edge sword. It is appealing to see one's contribution is being used by and helping recognizable organizations, yet it’s also intimidating to meet the expectations of these organizations. And just as the thrill of meeting those expectations is being realized, the notion of contributing code for free - efforts benefits enterprise organizations, which have money, collides and it dawns on you: something is off here.

Open source contributions come in all shapes and sizes

Open source contributions come in all shapes and sizes, and we do a great job of documenting ways for people to get involved, but we avoid directly asking large organizations to get involved by financially contributing to Drupal. Large organizations are willing to pay for enterprise level support however, their support options are limited. Generally, enterprise-level Drupal support involves a 1-on-1 relationship with a Drupal agency (aka Drupal experts). Drupal is too big for one single agency to solve all the problems and challenges.

When we start collaborating to promote Drupal, are we also going to collaborate to improve the support for Drupal?

Every single pitch which includes Drupal as part of the solution needs to also introduce organizations to how they can get involved and support Drupal.

Compensating contributors

Recently, I worked through a few security issues related to the Webform module. I saw how valuable and important it is to have as many eyeballs as possible helping to review and secure our shared code. It is great that we are now compensating people for finding security issues.

What about paying people to fix security issues, critical bugs, or even feature requests?

Removing the frustration

Let's ask the direct question…

What is frustrating people about Drupal?

People become frustrated when something does not meet their expectations with no immediate and easy way to fix the problem and/or improve the situation.

More than a decade after Jeff Robbins' (jjeff) blog post, titled How Drupal Will Save The World documents the same frustrations and problems which we are still facing today.

"Drupal is what you want. It will solve all of the problems that you're having. But it's really hard to set up. And don't do it wrong or your site won't work at all!"

Jeff also offered some answers to…

What if we had unlimited funds to grow Drupal into its full potential as an indispensable web tool that is simple to use and lets people get control of maniacally complex data?

All of Jeff's answers boil down to collecting and distributing funds to address and solve the challenges and frustrations around Drupal and Open Source.

Funding Open Source using Open Collective

Open Collective is a service which allows Open Source projects to transparently collect and distribute funds. Organizations who back an Open Collective will get a receipt for their financial contributions and be able to see exactly how the collected money is being spent.

Having unlimited funds does not solve any problem unless the money can be properly distributed to the people who are needed to solve the problem. Since there is no such thing as unlimited funds, how funds are spent also needs to be tracked.

Open Collective has the potential of solving the funding problem hindering Drupal and Open Source, by making it possible to distribute and track funds. We need to raise awareness about what is Open Collective, individual Open Collectives, contributing funds to different Open Collectives, and finally experimenting with spending collected funds to improve our software and community.

Most of my blog posts end with a call to action to back the Webform module's and any Drupal related Open Collective. Yes, we need your funds and right now, we need your ideas. If you want to share your ideas or start your own Open Collective, please consider attending the Open Collective BOF at DrupalCon Seattle on April 10th, 2019 at 17:30.

Final thoughts

Drupal is no longer a box of colorful Lego bricks being used by rockstars to build websites.

Drupal is used to build ambitious digital experiences by a community made up of maintainers, mentors, contributors, and leaders who collaborate to build a powerful and flexible ecosystem of ideas that evolve with the continuously changing digital landscape of the world.

The challenge is supporting and sustaining our collaboration.

All Posts
×

Almost done…

We just sent you an email. Please click the link in the email to confirm your subscription!

OK