Friday Morning Training

Drupal Camp Asheville 2024 - July 12th-14th

Drupal Camp Asheville is proud to morning training workshops on Friday, July 8, 2022! Each of these workshops is included in the price of the camp admission and taught by a world-class instructor.

Friday Schedule

Registration: 7:30am-7:45am EDT
Welcome: 7:45am-8am EDT
Morning Trainings: 8am-12pm EDT
Lunch Break (provided in Brown Dining Hall): 12-1pm
Unconference: 1-4pm EDT
Friday Prize Raffle and Closing: 4-4:15pm EDT

Space for these workshops is extremely limited, so please only register if you are 100% positive that you'll be able to attend.

Register Now and select a training as your Friday Activity.

Intermediate OOP in Drupal: Patterns, Services, Events and Dependency Injection

Drupal 8+ changes made it necessary for developers to have a stronger understanding of object oriented programming. In this training we'll discuss and demystify some of the most useful OOP concepts, patterns, and jargon as they apply to modern Drupal development.

This training will best serve developers who have some understanding of OOP, and want to learn more about the theory behind best practices seen in Drupal 8+ and Symfony. The approach of this training is a series of discussions paired with practical examples of how the topics apply to Drupal 8 module development. If things get really wild, we'll live-code some modules.

Topics include:

  • OOP Concepts: Nouns & Verbs, Composition over Inheritance, Dependency Injection, Programming to Interfaces, Cohesion and Coupling
  • Patterns: Dependency Injection Container vs Service Locator, Events (vs Hooks), Factory, Decorator
  • Drupal/Symfony: Services and Dependency Injection for Services, Forms, Blocks, Controllers

Attendees will leave this training with working understanding of many new concepts they can use to create better and more maintainable Drupal modules.


Basic OOP knowledge (what classes are and syntax for using them), and maybe some Drupal module development.

Intermedia OOP In Drupal Opening Slide
Jonathan Daggerhart
Daggerhart Lab
Photo Of Jonathan Daggerhart
Long time Drupal and WordPress developer. A lead organizer of Drupal Camp Asheville.

Getting Started with Drupal

A three-hour workshop to learn the fundamental building blocks of Drupal

Are you Drupal-curious? Just getting started with CMS’ and WebOps? This live, three-hour workshop, will take you from understanding what Drupal is, why Drupal 9 matters, to creating basic content, users, and an overview of more complex Drupal features. No prior experience with Drupal or web development is necessary. 

At the end of this workshop, you’ll have an understanding of how content creation in Drupal works, and have a working test site that you can tinker with for as long as you like.

Learning Drupal doesn’t have to stop after this workshop. You’ll get access to a recording of the workshop so you can work through the steps again, plus additional resources to take your learning further so you can leverage WebOps and Drupal to accelerate your workflows.


  • What is Drupal?
  • What's new in Drupal 9?
  • Content Management
  • Creating Structured Content
  • Creating Dynamic Lists
  • Users, Taxonomy, & More
  • Pantheon
  • Q&A

Who Should Attend:

All are welcome.  The three-hour course consists of topic-driven lectures and step-by-step exercises delivered online.
Some typical attendees of past events have been:

  • WebOps team members: project managers, content creators, site builders, QA testers and anyone else who works with a Drupal site.
  • Drupal-curious developers: ever wonder how to build sites with Drupal?
  • Junior developers: anyone getting started with web development will learn the foundations of Drupal.

Here’s What You’ll Learn:

  • Drupal Basics: Getting set up to create content in Drupal, navigating and understanding the interface, and the benefits of the open source Drupal community. 
  • Content Types & Fields: Content Management Systems are built to help you manage complex content and relationships. Content Types and Fields are two powerful building blocks that Drupal offers to allow you to create and manage complex data structures within an easy UI.
  • Dynamic Lists: You’ll learn how to use Views to create many different dynamic lists that update automatically across your website.
  • Q&A: We'll spend a portion of the time answering any questions you have around the essentials of Drupal.
Getting Started With Drupal
Tearyne Almendariz
Tearyne D
Tearyne D. Almendariz is a Developer Advocate at Pantheon
AmyJune Hineline
Red Hat Inc.
AmyJune Pictured Wearing Her Dark Blue Drupal Camp Asheville 10th Anniversary T Shirt
Senior Community Manager at

Introduction to Backdrop CMS

Backdrop CMS is Drupal 7, but it includes many of the features you'll find in Drupal 8+. It's been optimized for performance and improved for usability. Backdrop is targeted towards companies and organizations that are delivering comprehensive websites on a budget.

If you or your organization are still using Drupal 7, Backdrop should be in the mix as an option, especially if the Drupal 7 sites works for you.

Topics covered:

  • Logging in - the new dashboard
  • Creating content - differences between a Page and a Post
  • Creating content types - adjusting settings, and adding fields
  • Content display - customizing how field data will be rendered
  • Modules - how to install without leaving your site
  • Views - a very basic high-level overview
  • Layouts - creating new layouts & modifying existing ones
  • Configuration management - exporting from one site & importing into another.

There will be plenty of time throughout the workshop for questions.

In addition to these topics we can also discuss the upgrade process and tips for module porting.

Intro To Backdrop Slide
Justin Keiser
Just Keiser Head Shot

Justin Keiser, Drupal Web Programmer for the Academy of Model Aeronautics, learned about Backdrop CMS at DrupalCamp Asheville in 2019.  Since then he began working on a daily basis with Backdrop in addition to Drupal and WordPress.

DevOps with Lando

Developing, testing, maintaining, and deploying your Drupal application can involve many complicated, repetitive, or otherwise cumbersome tasks and processes. Automating and streamlining these operations can save time, increase engagement within your team, and empower developers to ship more often and with a higher degree of confidence.

Join Aaron for his DevOps with Lando training session to learn how to utilize Lando as more than just a local development tool. You will learn to

  • Build a streamlined development to production pipeline that unlocks Lando's features as a DevOps and automation tool.
  • Automate builds and testing using Lando in the cloud.
  • Utilize DevOps processes and tooling that compliment Lando in automating away the burden of many testing and maintenance tasks.

To get the most out of this training session, attendees should have a basic understanding of Lando or similar container-based local development tools as well as experience working with command line interfaces and Git.

Aaron Feledy
Arrow One Solutions LLC
Aaron Feledy
Aaron Feledy is a Lando contributor and evangelist who frequently appears at Drupal events across the United States