DrupalCamp London 2020 and CxO Day


DrupalCamp London brings together hundreds of people from across the globe who use, develop, design and support the Drupal platform. It’s a chance for Drupalers from all backgrounds to meet, discuss and engage in the Drupal community and project. 

The Friday consists of a dedicated CxO day. Throughout the day we'll have speakers talking about their experiences working with Drupal and Open Source technologies. Over the weekend we have 3 Keynote speakers, a choice of over 40 sessions to attend.

Video Sponsor(s) / Provided by
Curated Videos
Kevin Bridges, DDEV

We all hear about how wonderful the DevOps movement is and how modern technologies can make our daily work lives better. The reality for most of us is that projects can seem super difficult and even insurmountable at times, no matter how many tools we have or what methods we employ. That’s when it’s key to have a safe space where we can experiment and develop our emotional intelligence to best support each other.

In this session we’ll share with you some of the lessons we’ve learned in the course of building a local development environment and hosting platform:

Why we need to think about small steps in our work
Some key points to understand when planning work with a team
How to approach challenges as human beings
What to do when communication is hard, challenges pile up and the work begins to seem insurmountable
When, where and how to make changes and offer help
How to identify what is emotional, personal and what is technical, then approaching a solution with that perspective
How this all ties back to some of the basic principles of DevOps
With some careful planning (the investment is worth it!) and thoughtful execution of tasks with goals and initiatives in sight, we can make steady progress towards success together.

While working on rebuilding a Royal College platform in the United Kingdom, we were tasked with a challenge on how to manage permissions where Groups played a major role in granting the correct access.

Having several entities in play, different roles in different Group types, with various fields from those entities deciding on the logic when granting access to a certain entity, the number of components used in the system quickly grew.

The system also had to plug into several other components the platform used such as Search API, Views API, Plugin API.

I’ll be going over the challenge presented, the thought process behind the implementation and most importantly how we built different components with examples. As mentioned above we implemented plenty of custom code, using different APIs provided by Drupal and contrib modules.

Co-Speaker: Abhijeet Kumar Sinha

According to IDC, 90% of all the digital information is unstructured locked in multiple repositories and digital businesses have either underinvested in technology or invested in substandard technology in order to access them. Traditional search method leads to failures majorly due to the absence of optimisation practices and lack of unified framework. In a data-driven world, unlocking the hidden insights, that are shut off from view within both structured and unstructured data present in multiple repositories, is more critical than ever.

Today, the sheer quantity and the pace of digital information that knowledge workers have to deal with every day are dramatically increasing. To tame the chaos of multiple repositories is a challenge. There has to be a deployment of a search method over distributed and heterogeneous data sets in order to receive a unified results list. This brings us to Federated Search.

OpenSense Labs initiated one such enterprise search tinkering robust Apache Solr and versatile Drupal 8 for eleven different websites with a great variation in CMS leveraging portability using Node JS.

In this session, we will equip you with the know-how of:

Enhancing website search experience retaining a blend of useful and accurate results
Expanding inter-site searchability decreasing the bounce rate and latency
Increasing data discovery and interoperability of information by cross-functional support to a plethora of platforms
Architecture which will be walked through in the Session.

The major takeaways would be:

Challenges amidst architecting a microservice
Scraping content using an open-source tool like Scrappy
Choosing the right set of stack and technologies.
Fiddling the Solr configuration and boosting queries
Create a pluggable and platform agnostic search UI with react.
What to keep in mind while building a cognitive voice search.

You should be able to access the slides here:

Finn Lewis, Agile Collective (https://www.drupal.org/u/finnlewis)
Will Callaghan, London Borough Croydon (https://twitter.com/willguv)
John Waterworth, DXW Digital

Session details
There are 408 councils across the UK who are spending £millions of taxpayers money on publishing platforms and regularly re-inventing the wheel.

We are working with a group of currently four councils that have decided to stop doing this and actively work together on a shared Drupal codebase. Rather than attempting to create a one-size-fits-all solution, we are understanding the needs of our various users and creating Drupal components that can be mixed and matched to suit.

Our group is growing quickly. We were funded by the Ministry of Housing, Communities and Local Government (MHCLG) to explore other councils’ needs and scale the project. As part of the current work we are in active conversations with 11 UK councils and we’re receiving expressions of interest at a rate of about 2 per week.

Through working in the open and active collaboration, all councils can:

save time,
save money,
make things better for the end user.
Our session will cover:
The story so far
Motivations to share
Motivations to work in the open
Resistance: Why isn’t it already happening?
How we’re changing things
Next steps
How to get involved
Background reading:
Making sure a website can be found is a science. The rules (from google) change all the time. I will discuss the latest trends and how we can help our customers make their site rank as high as possible.

According to Gartner 93% of customer experience projects yield return on investment. Visionary enterprises are moving away from building individual Drupal websites and are moving towards Digital eXperience Platforms (DXP).

This session explains how Drupal combined with other open source frameworks can be deployed as an open Digital eXperience Platform, making this powerful technology also accesible for midsized businesses, organisations and governments.

Attendees will learn:

what the key differences are between building regular websites and a Digital Experience Platform.
how they can use a DXP to drive their digital transformation and increase customer life time values.
how to build an open DXP framework based on multiple open source components such as Drupal, Mautic and Unomi.

Dominique De Cooman is an expert in creating digital customer experiences with Drupal over the last 12 years. He helped hundreds of organisations with their open digital experiences and their digital transformation. He is the founder and CEO of Dropsolid, a Belgian based company helping businesses with digital strategy, UX, agile implementations and optimizations. It leverages an in-house built Open Digital Experience Platform to give businesses total control and freedom in creating their digital experiences.

Taking a basis in how I came back from severe burnout, this presentation expands upon the tips I generated throughout my 15+ years as a developer (And far to many years experience at life in general) to provide more tips and tricks that can help you beat burnout and imposter syndrome. The presentation includes a more human feel to what imposter syndrome and burnout actually are, more tips and tricks that may be of use to people (Including ones that didn't work for me but others stories have highlighted worked for them) and ideas to further expand the conversation into the Drupal Community and how audience members can help either in the UK or from abroad.

Rough timeline:

Introduction to me and any necessary terms (3 - 5 mins)
Burnout (5 - 10 mins)
What worked
What didn't
Imposter Syndrome (5 - 10 mins)
What worked
What didn't
What the community can do to help others in preventing burnout and/or imposter syndrome (5 - 10 mins)
Q & A (Any remaining time, 5+ minutes)

Previous versions of this talk have been given at Drupalcon Amsterdam 2019 and North West Drupal User Group (Jan 2020), but this is an iteration of these talks and not a direct repeat.

The tasks as a project manager are manifold. But often I feel more like a kindergarten teacher.

Each developer has their own needs and must be treated individually. Each client has their own needs and must be treated individually.

How the project performs is in my hands as a project manager. You will not change a developer nor the client. As a project manager you need to accept the individuality of each character and lead the project to success.

I would like to share my experiences, problems, learnings, successes and mistakes I made as a Project Manager and how I use standardized processes to lead a project and help both the team as well as the client to be happy at the end of the day.

Join us on this panel to discuss with project maintainers, users and other actors in the open source community what's the future of open source, the challenges we are facing as maintainers, but also as users, and what can we all do to make the whole ecosystem fair and future proofed.

I'll be joined by:

Rachel Lawson,
Baddy Breidert

Gen Ashley

Eriol Fox

Gabor Hojtsy

This will be a Zoom/Video session as per the virus situation, but you'll be able to follow from the room.

In 2019, the Drupal Association lead an initiative to bring Automatic Updates to Drupal. The first phase of that work is complete. Join us for a presentation about where we are today, what’s next, and how to get involved in this initiative.

Implementing an automatic updates system is no small feat, especially for a project as mature and architecturally complex as Drupal. There are many different factors that have to be considered:

Supporting both Drupal 7 and Drupal 8

Ensuring that sites are ready to safely & securely receive updates

Managing the transitional state of Drupal, where some installations use Composer, and some do not

In this session we’ll focus on:

Some of Drupal’s history

Why the Automatic Updates initiative is important

Where we are today

What’s next

How we are avoiding creating more surface area for risk

And how you can get involved

The Automatic Updates Initiative was an effort done in collaboration by the Drupal Association, the European Commission, Acquia, Pantheon, MTech, and Tag1Consulting. We particularly want to thank contributor mbaynton, for his work on the architecture of the signing oracle.

A similar session discussing the complexities of implementing a secure signing infrastructure for the update services being delivered by Drupal.org is also being submitted by Neil Drumm at Drupal Dev Days.

MemSQL - what it is. Key features.

Comparison with MySQL. Performance tests.

Integration with Drupal. Introducing DB driver for Drupal 8 https://www.drupal.org/project/memsql

When it can be used effectively and when it should be avoided to be used.


A typical Drupal website today needs a moderately sized team. In fact, there would most likely be more than one team in case of Decoupled Drupal solutions. A team of any size (even size of one) needs automation and standard workflows. There is probably no developer workflow for automation more ubiquitous than using continuous integration in some fashion.

In the vast landscape of CI/CD tools available today, it is difficult to pick the right tool or even the right workflow for your team. In this session, I will talk about one workflow we adopted for a recent Decoupled Drupal solution with multi-site architecture and multiple front-ends. I will describe how we use Jenkins to run builds and deployments to certain environments for an Acquia Cloud Site Factory hosted Drupal back-end and multiple Angular front-end websites hosted on multiple cloud providers. We will also discuss the testing strategy for the code before deployment.

Further, we will discuss specific methods where we can reuse the Jenkins pipeline definition code in multiple repositories to help maintainability. We will talk about how we would use Docker to run containers with a specific build and test tools rather than installing it on the Jenkins server and using tools like BLT as part of this process.

In this session, you will learn:

What components are required in building a build toolchain.

Using Jenkins to configure builds and writing a scripted pipeline.

Use Docker to run tools without installing it on the Jenkins server.

Share pipeline code across multiple repositories for back-end and front-end.

Deploying code and even provision infrastructure conditionally and securely.

While hosting a Drupal website can be a challenge, it is largely a solved problem with several PaaS providers providing optimized Drupal hosting. Even if we didn’t want to use that, there is extensive documentation around best practices in hosting a PHP application or Drupal specifically.

In a Decoupled Drupal setup, we would need to even host the front-end application separately somewhere apart from Drupal. In this session, we will discuss how we hosted a “serverless” front-end application with multiple cloud providers available via a CDN while allowing it to access Drupal’s API endpoints on the edge (again with FaaS computing paradigm). We will also discuss developer constraints, security considerations, and website performance.

Further, we will also see how such an application can be provisioned multiple times in different regions of more than one cloud providers using Terraform. We will talk about using Terraform and writing wrapper scripts for Terraform to make it easier and more consistent to deploy infrastructure. Further, we will discuss how much of this setup can be automated considering enterprise security regulations, developer effectiveness, and customizations.

In this session, you will learn:

Plan your API contract across multiple websites in a multi-site Drupal setup.

Architect a “serverless” solution to serve the front-end with data retrieved via an API from Drupal.

Use Terraform to build this setup.

Run Terraform modules using a wrapper script or even via a CI tool.

Enterprise level security considerations such as IP whitelisting the access to Drupal server, firewall, granular access to cloud resources, etc.

Join Alex Moreno and Terry Anderson to learn from the challenges they have faced and things they would have loved know before embarking on Enterprise platform builds.

Challenges from not just the architectural and technical point of view (e.g. Multisite vs multiple single sites, configuration management, etc), but also from Project and Product Management; Solving the correct problem, the platform support ecosystem, Chaos control, Staying aligned with stakeholders and synchronizing with third party actors like design agencies or software houses.

This will be a Zoom/Video session as per the virus situation, but you'll be able to follow from the room.

Let's dive into the Drupal issue queue. What do you do when you encounter an issue in a community component or have an idea for improving Drupal or one of the many contributed projects? Creating issues (and when not to), issue statuses and priorities, creating and rerolling patches and following up. Also, a peak at the future (boo patches!)

This is not specific to frontend or backend developers, and even if you're not a coder but want to contribute in other ways it is good to know how the issue queue works.

Drupal 9 is planned to be released June 3, 2020 while Drupal 8 goes unsupported by November 2021. By the time DrupalCamp London 2020 rolls around, the state of Drupal 9 will be of huge importance. This session covers the timeline getting to the Drupal 9 release as well as where are we and what kind of changes can you expect. It will be most valuable for developers but businesses can also get a summary about the value of Drupal 9 and what it means for Drupal 8 and 7 users.

Nick Veenhof

Websites are not enough. Business these days are required to deliver highly personalized digital experiences to their stakeholders to remain competitive, and need to adhere to consent management and the GDPR rules, within a reasonable cost. The discontinuation of the CMS magic quadrant in favor of a DXP magic quadrant confirms this trend. When moving beyond CMS to DXP, what does this mean for Drupal and what are your opportunities?

I will talk about what defines a DXP and how it translates to a technical solution. You’ll discover some of the possible components to create an Open DXP with Drupal, Mautic and Apache Unomi at the core. The session includes a technical deep dive into Apache Unomi, and a practical approach to learning from your visitor data and using AI and ML to enhance your Drupal sites with real-time personalization. I will explain how adding marketing automation adds up to a great Open DXP platform.

In this session, we will try to explain how Netflix’s personalization approaches to display tailored content to each user can be implemented in Drupal using existing modules and technologies.

Drupal is the CMS of choice when it comes to creating content rich sites. However, it is no longer enough to display the same content to all users. In a world where diversity is increasingly obvious and celebrated, websites have to step up their game and adapt to a wide range of users and their preferences. This is where Personalisation comes in. While Netflix personalization is complex and composed of thousands of algorithms, it can be broken down into distinct use cases which can then be solved independently.

Presentation Flow:

Why Personalize

Understanding Netflix personalization use-cases

Getting started with Personalization your Drupal solution
-- Comparison of existing modules/technologies

Solving Netflix like personalized use-cases in Drupal
-- Applying modules to different use-cases
-- Comparing different Drupal personalisation modules for solving the same use-case.

Terraform is the defacto champion of Infrastructure as Code and provisioning. GitLab provides the perfect platform for managing code, CI and containers from development to production. AWS is the leader in Infrastructure as a Service.

In this talk, I will introduce the audience to a complete pipeline to build and transfer applications from GitLab to AWS using Terraform and GitLab CI.

Along the way we will:

Provision and manage our infrastructure with Terraform
Configure our infrastructure with Ansible (both mutable and immutable)
Secure with Vault
Manage it all in GitLab CI pipelines making it all versionable, auditable and visible
Have fun (hopefully).

We will look at the current state of responsive and lazy-loaded images on the web. We will see at the multiple ways of achieving these techniques in Drupal using a combination of contributed modules and Drupal 8 core modules. We will also look at the results of several benchmark tools before and after we apply the techniques covered. For responsive images, we will see how far we can get using just Drupal 8 core modules and what are the main use cases for responsive images. For lazy loading images, we will look at multiple contributed modules that let you achieve this technique and how to implement this on the theming level. The best formats and ways to optimize images will also be covered in this presentation, we will go over formats and different types of compression we can use to deliver our images faster to users.

If the internet was a country, it would rank 6th for electricity usage and 1.700 M tons is the current size of the internet's annual carbon footprint. Since we cannot simply remove the internet from our lifes, we need to make sure that what we put out there has as little impact as possible. I will show you some examples on how we can make our products as green as possible.

Entities are an integral part of the Drupal ecosystem and almost every entity in Drupal is linked with forms. Thus Drupal provides a beautiful Form API that helps in building, validating and submission of forms. All three stages are very important and have their own significance. But our focus throughout the session will be the form validation aspect.

To perform custom server-side validations on forms we often write #validate functions in Drupal which always do the job. But there are some negatives to it, Example: Validations don’t run when you try creating/editing the entity via means other than entity form. Perhaps this problem was assessed and tackled in Drupal 8 by the introduction of Entity validation constraints.

In this session we will be learning about the following:

Problem with form API validation

Creating custom validation constraint

Applying validation constraint to the entity field

Applying validation constraint to the entity

Running validations for REST API requests

The Demo

At the end of this session, users will have a clear understanding of how decoupling entity validation from entity forms allows validations to be independent of form submissions.

Drupal can be your perfect technical SEO platform, but to get the most out of it, you have to make sure it's set­ up like it should be for the search engines, and there are a number of easy to miss issues that can have a big negative impact on your site’s organic visibility. By default, Drupal isn’t bad at all in supporting SEO, but in this session, we’ll go into detail on how to find and fix problems, and how to prevent them in the future.

We will go into the details of how to detect SEO issues common and rare (on real Drupal sites!) and explain their impact on SEO: from indexed internal search pages, invalid sitemaps, indexed test environments to interesting challenges with pagers, multilingual metatags, and more.

Of course, we’ll show you how to solve all these issues when you find them, but more importantly, we’ll show you how to prevent them in the first place.

When you leave this session, you will understand there's more to SEO in Drupal than enabling a couple of modules. We’ll give you methods and guidelines to detect, fix, and prevent problems to develop high quality Drupal sites with SEO in mind.

Wouter De Bruycker, SEO Specialist, is experienced with the ins and outs of Drupal site audits, and getting the best SEO visibility out of Drupal.

Brent Gees, Drupal Architect, implements the technical fixes discovered in Wouter’s SEO audits and has his own bag of tricks for solving them, from configurations to patches, the right contrib. module, or custom code. Every solution has its place in supporting the work that your content teams put into your content.

This will be an extended and improved version of the session given at Drupalcon Amsterdam (https://drupal.kuoni-congress.info/2019/program/abstract/186)

"Value Mapping: Building Understanding, Communicating the Benefits of What You Do."

For your product or service, we will show you how to build what we call a Value Map. Creating a Value Map can clarify and enhance everyone in your organization’s understanding of what your product is, what it does, and build consensus around what value it delivers.

The result of this collaborative effort is a set of agreed-upon language that everyone across all roles and departments can use to describe, position, write, and talk about your work consistently. It provides a single, sane, maintainable source of truth to use when creating all kinds of assets: sales, marketing, tech roadmaps, hiring materials, and more.

The Value Map helps developers and technical roles see and understand the connection between their work, down in the details of technical implementation, as part of delivering value to your clients and their respective missions. It helps sales and marketing departments communicate confidently, knowing that their big gestures and rhetoric are backed up by technical reality.

Use the Value Map to

Build your communication and marketing strategy and marketing campaigns

Create content and communications materials

Inform your technical feature roadmap, priorities, and planning

Build a competitive matrix with your competition

Plan site and information architecture

And more …
"Contribution makes sense for your business. Here’s how the Drupal Association is providing the plumbing to drive that success"

We hear from all quarters that contributing to open source projects, and Drupal in particular, makes sense for our business. But what does that mean for your organization?

Carrie Lacina and Rachel Lawson, the Fund Development Director and the Community Liaison for the Drupal Association, will take us on a journey through how the Drupal Association and Project work to ensure that your business is recognized for contributing which can grow both the project and your organization. . They will demonstrate the diverse ways that contribution happens right now, and how that will evolve and expand in the future. They will detail the infrastructure that the Drupal Association supports to create Drupal Champions and amplify their contribution and expertise to the community and even potential Drupal customers/end-users
"Introducing a New Association"

Last year at DrupalCon Europe there was absolutely no representation from the UK at the meeting of global associations. More generally, there is a current lack of coherence with regard to our approach to supporting, teaching, promoting and marketing Drupal in this country. There is no association for the UK, aside from Scotland there is no association for devolved regions, nor is there one for England. There are successful regional groups and events, but there remains no combined marketing or promotion.
"Taming complexity to champion creativity"

Managing an agency that delivers compelling digital experiences in a precise and competitive field is a challenge that by necessity takes many of us out of our comfort zones. Teams must be able to work together successfully in a culture full of inspired, highly creative, passionate individuals and an ever expanding list of tools and technology. In this session we will review some of the complex considerations and challenges an organization must navigate in order to access new opportunities that are changing the way that we do business.

Complexity arises throughout an end to end work cycle: starting from defining business goals, aligning a product with those goals, facilitating communication between product and technical teams so that technical can have input and execute predictably, handing everything to sprint planning while accounting for testing, validating what is delivered before it's released including documentation, releasing it, and building the communities necessary to support users and drive the future roadmap. whew.

How can we bring all these pieces of a business together to execute effectively? We'll look at the specific challenges and solutions you might examine for your team and how those choices will impact efficiency and open the door to new possibilities.
"UX Equity: The added financial value of a good User Experience for your business, brand and Drupal project."

Creating and designing an excellent user experience can improve the value of your company and minimise the development costs of your project drastically. This is what Michel van Velde, founder and brand strategist at creative & digital agency One Shoe, calls UX Equity. A great user experience (UX) as a driver for profit potential. In this keynote he explains the 8 most important UX KPI's you can use to calculate the value of UX, explains the difference between Brand Equity and UX Equity, gives detailed examples, explains when to choose out of the box Drupal versus headless and introduces multiple ways to calculate the return on investment (ROI).
"TRUST - 10-Ways to Build Better Connections"

Drupal is a registered trademark of Dries Buytaert.