Drupal Asheville 2021


Videos from DrupalCamp Asheville 2021.

Video Sponsor(s) / Provided by
Curated Videos
In these especially tense and stressful times, we are often in situations that can make traversing difficult conversations even harder.

There are moments when we need to discuss, argue and defend ideas and issues, and, at times, we even need to defend ourselves.

This can be made especially difficult, for example, if it involves topics, people, and causes we feel strongly about, if we feel unheard and if there are power dynamics at play.

We will be discussing tips, theories, and common pitfalls when having discussions, arguments, and other types of (passionate) discourse.

I will be highlighting key takeaways to hopefully aid you in these conversations.

Many Drupal projects spend a lot of time and energy on architecture, integrations, deployment pipelines, user experience and more. Very few spend time tuning the editor experience, often resulting in obtuse and intimidating content editing interfaces. The result? Stale content, unhappy clients who dread editing the site. In the end, something that clients are willing to declare a wasted investment in a difficult-to-use tool. Drupal itself becomes a scapegoat for failure, and sadly some decide to leave it behind.

It doesn’t have to be that way. Drupal Gutenberg is an easy to use, easy to setup tool that can dramatically improve the usability of your sites for editors and content creators. Drupal and the Gutenberg editor is a killer combination, empowering content authors to build rich landing pages inside a rock solid CMS framework. Having the solid foundation and flexibility of Drupal combined with the ease of use from Gutenberg, creates a sweet spot you won’t find in another CMS. The Drupal Gutenberg module is stable and continuously updated and improved!

Authors and marketers want to focus on perfecting their content. They want to adjust and improve, and have the flexibility to create exciting content that stands out. All of this needs to happen within the agreed boundaries of their own design manual. Come to this session to see how real-world teams make the combination of Drupal + Gutenberg work for them.

Estimations are the baseline of every project. If you will perform unreliable estimates subsequently it will lead you and your team to burn the midnight oil or work over the weekends to meet timelines. We have practiced beautifully to take both project timelines and work-life balance seriously. We have developed better tactics to manage capacity and effective estimates to make the weekend work the exception rather than the rule.

There are a plethora of options to set up a Drupal environment for local development; from MAMP to Virtual Machines to Docker. The developer experience of all these solutions has improved greatly over the course of the last few years. Install the application, run a few commands and you have a Drupal environment with various dependencies up and running. However, in case you are running an underpowered device or want to work from your tablet computer or mobile phone, none of these solutions would work. Underpowered devices led to extremely slow performance which in turn affects your productivity. On the other hand, for Tablet computers and mobile phones due to their Operating System and Architecture limitations, it isn't possible to run such applications.

In this session I'll be demonstrating:
- How you can set up Drupal on the Cloud (AWS) for local development.
- How to configure your IDE and Code editor to provide a development experience similar to your local environment.
- How to seamlessly switch between multiple devices including your phone and tablet without the overhead of configuring each of them.
- How to keep the remote environment secure.

This hands-on demo will show you how to run Drupal in your own AWS account. We will look at three different ways to deploy Drupal from scratch.

Quickstart: Use Quickstarts to deploy Drupal distros, projects and templates over and over again. Once set up, you can share your Quickstarts with others and let them spin up their own copy with a few clicks.

AWS Lightsail: The cheap and easy way: Deploy Drupal on AWS using Lightsail, a low-cost, shared server /container based solution for quick deployment of small sites.

AWS EKS: The Cloud Native (Kubernetes) way: A container based auto-scaling fault tolerant system that can host hundreds of sites and handle all kinds of loads and spikes.

We’ll see how each one works and discuss the pros and cons of each approach. You’ll also learn how you can get started with each approach.

It’s easy to forget that our programs actually run on metal; where ones and zeros are stored as charges in physical components. Modern programming languages give us a false feeling of separation from these circuit boards. Interpreted languages like PHP offer such flexibility, we often don’t consider the low-level issues, such as how our code affects memory allocation.

This beginner session explores computer science topics related to memory in PHP through practical examples. The goal is to demystify memory allocation so that we can write more efficient scripts. Topics include:

- The basics: What is memory and where is it allocated in the PHP lifecycle?
- Dynamic types: How ZVals allow us to change a string to an array to a boolean; and the costs associated with this flexibility.
- Simple benchmarking: How to capture memory metrics without installing large frameworks or profiling tools.
- Memory leaks: A look at garbage collection in PHP and how to reduce the memory consumption of our scripts.

As processors become faster, the way we use memory can be one of the greatest factors slowing down our program execution. Attendees should leave this session with a better understanding of how memory works and feel empowered to reduce their memory footprint.

Freelancers and small agencies typically don't have the luxury of having a person dedicated to bringing in new work. However, that doesn't make the business development effort any less important for a small agency or freelancer. In this session, I will distill the key facets of the sales process into a framework that any freelancer or small agency can use to help organize their business development efforts and be more successful at that effort.

Every day we have a series of choices to make. Get up early to work-out or hit snooze and sleep a bit longer? Make a nutritious meal at home or order something maybe just a bit less healthy to go? Finally, stop rocking sweatpants at work or switch to wearing PJs instead? All the choices we make - even the little ones - shape our identities and empower us in our own lives. In today’s world, we all expect to have multiple choices regardless of the product or service we are researching. And yet, in the digital sphere, we often don’t give our users many options.

By allowing a user to make choices, we could help them accomplish the tasks they set out to do, connect more easily with others, and ultimately help empower them. When we don’t offer choices, we are sending the message that we think we know what is best for the user. While we might get it right sometime…how can we possibly know what the 7 billion people inhabiting the earth really prefer? Don’t users know best when it comes to their own needs?

This talk will cover some of the pain points users face while using digital products such as: font size/family, color contrast, reduced motion, and navigation/layout. This talk will also cover the level of effort it would take for designers, developers, and users to create choices in these spaces. Allowing your users to choose their own experience is always better than assuming you know what they want.

Drupal 9 has been happily released, and everyone is eager to move to the new version. What are the blockers? Many modules that are almost ready, but not yet. If we could just finish testing "this one issue", and maintainer could the commit patch with confidence, we could move to D9 today. Drupal code on GitLab and fixing issues in forks is already huge step forward. With new tools like GitPod and DevPanel we can finally set up public testing instance for folks who are ready to contribute their time, but are struggling with setting localdev, composer, etc.

We will demo how you can test issues on a public test instance using Feeds and Migrate Plus Feeds modules as a foundation for this demo. The same setup can be used for any module on drupal.org or for your own projects.

This session will cover the basics of getting started with Layout Builder for Drupal 8 and 9. We will cover how it can be used to supercharge your site building tasks so that content editors can utilize the awesome power of Layout Builder for a unique front-end presentation.

In this talk, we will go over:
- How to get up and running and the basics of setting up a content type for Layout Builder
- Layout Builder Styles module and how it can really help with theming a Layout Builder page
- Layout Builder Component Attributes for developers to implement custom classes and ids
- Layout builder Library to give content editors easy selection of pre-built layouts
- Layout Builder overrides
- How Drupal configuration works for all this

As a site builder or content editor looking for continued career growth, what should you learn next? In this talk, we'll explain tools and technologies simply and how learning them aligns with common career paths.

Looking at Drupal conferences and videos you'll find talks on React, docker, VueJS, Symfony, Twig, and much more. Picking the 'right' thing to learn feels impossible! Where do I start? What's the benefit of each topic? Where will it take my career? Will I enjoy it?

We'll also learn a bit about each, so that they stop being buzzwords, and begin forming the foundation of greater knowledge.

This talk represents a chance to learn about these topics (and more) *in plain English*:
- Composer
- Object-oriented programming
- Symfony
- Twig
- Agile/Scrum
- JavaScript
- React & VueJS
- Docker
- CDNs
- And more!

“Go Away and Come Back Tomorrow” - that’s what the man at the gate to the Emerald City said to Dorthy and her companions in the Wizard of Oz. Every inaccessible site is essentially putting a face at the door that yells “Go Away” to nearly 20% of the US and Canadian populations.

...but clients and budgets and deadlines, Oh My!

As Project Managers, you have the influence over timelines, ticket estimates, team resourcing and more. In fact, in many ways the accessibility of the projects you manage rests more in your hands than the strategists, designers and developers on your team. But don’t worry - there are no flying monkeys in this talk - rather cauldrons of information to empower you.

We’ll travel down this yellow brick road together to discuss:
- how to plan for an accessible project,
- what pitfalls to look for, and
- how to talk to your stakeholders.

This talk may be a bit of a horse of a different color when it comes to how we approach accessibility but come away feeling empowered to fly your accessible outcomes home.

Words Matter and awareness of how powerful even the most subtle language distinctions can be is an important factor in understanding human experience. In this presentation we will discuss the language used in daily life and examine how and why certain words and phrases can be hurtful to members of the disabled community -- even if no harm is intended. Covered topics will include:

- Shifting language perspectives/ how we see certain words
- Ableism/how our words effect others
- People first language
- Identify first language
- “Don’t” words

Discover how to use your strengths and passions to give back to Drupal through a community project.

Not a coder? That’s perfectly fine! There are many ways to give back to the community. Not everyone who works on open source projects is a developer. Code is very important, and so are all the other parts that make up the Drupal project, including community building and sharing knowledge.

Join us for a contribution overview. We'll talk about ways to give back beyond code and documentation. We will do a high level look at some community projects who are actively looking for contributors, as well as how to set up a new community project on drupal.org.

Attendees will leave with the understanding of what is considered a community project and how they can attribute contributors for their time and efforts.

The pandemic proved that anything can derail us in a moment. Last year, our plans were put on hold, our lives were changed. We all ended up with zoom fatigue trying to satisfy our human need for social contact and social change. As a tech leader, what are you doing for yourself and your team to build resiliency and compassion in times of uncertainty? Let's discuss what we can do to open ourselves up and notice how we create a limited mindset that resists flexibility in those times when we need it the most. We will unpack the concept of mindful leadership, and how we can cultivate the skills of emotional intelligence necessary for clarity, trust, and inclusion. Once you see the limitations of your perceptions, your world will open for greater alignment of your work to your life and to those for whom you are responsible.

In this session we explore the tools you will need to be part of a cohesive teams that runs on trust, accountability, and results. We will include time for a short practice and discussion led by a certified mindfulness teacher and facilitator.

A look at my 2020 year-long project of migrating the website for the Ivan Allen College of Liberal Arts at Georgia Tech from a completely proprietary content system to Drupal 9, all while dealing with the uncertainties and headaches of a pandemic. We'll explore how I dealt with finding and getting content out of a one-of-a-kind CMS with zero documentation and managed the project with virtually no help while keeping our Communications Director happy and getting the project done by the time she retired at the end of 2020. Along the way we'll look at how I made heavy use of core components like Layout Builder, Media Library, and Views to both make the job easier and build a site that will be sustainable well into the future. Of course, we'll finish up with lessons learned from the project and a look forward now that the site has been in use for half a year.

There you are, a senior developer, minding your own business when suddenly you are trusted (and thrusted) into a manager role. Now what? What should you do, and when is the right time to panic?

Let's go on a journey to learn how to make that transition a successful one.. from having to deal with immediate challenges like managing people that just a short time ago were your peers, all the way to how to set yourself up for future growth.

Going from a developer to a manager is essentially a career change, albeit in the same industry, yet it is a natural and expected progression in any agency.

Let's tackle that imposter syndrome head-on. As a direct manager or team leader, you have more to do with your team's happiness than anyone else in the company. Embrace that responsibility and learn to make everyone around you a better person and a better employee for the company.

So you want to move to Drupal from Wordpress?

The two weren't made to play nice together.

Learn from a real case study the how-to of migrating content from one CMS to another.

Our clients, a municipal government agency, were already using Drupal for their main site. The public relations department had built a secondary site in Wordpress that all parties now wanted to migrate to Drupal.

They wanted:
- to take advantage of Drupal's flexible content types and customizable views,
- the security Drupal offers,
- new custom search features,
- a consolidated site that would be easier to maintain.

The `wordpress_migrate` module provided initial lift-off. Then the real challenge began. In this presentation, you will discover some of the technical challenges we faced, and the process plugins we used to bring home a recent Wordpress to Drupal 8 migration.

Take a look at:
- The starting point including the basic principles of the migration,
- Some tricky bits, and,
- The plugins and plugin chains we used to migrate the content.

With an increased awareness of DEI and accessibility in the world, are you keeping up online? From Zoom to Twitter to websites, this talk will highlight the importance of creating accessible, diverse, equitable and inclusive digital spaces. We will look at the accessibility of design, layout, and content; writing inclusive alternative text for media; how to think beyond color in design; creating diverse, respectful and accessible online meeting spaces; and why accessibility and DEI matter in a digital world.

Case studies are great sales tools. But how many times have you gotten ready to submit a pitch, and realized you were missing case studies for the projects you want to highlight? You assumed somebody on the team would write one after the projected deployed, but everyone got reassigned to other projects, and it slipped through the cracks, again. And now you are sad. But it doesn’t have to be this way.

Learn why we draft our project case studies before writing the first line of code, and how the team uses the case study draft as a quality assurance step to help ensure a successful project outcome.


Drupal is a registered trademark of Dries Buytaert.