Trainings start at 9am and end at or around 3pm unless otherwise noted.

Food (sandwiches) and coffee will be provided.

Contributing to Drupal

Come for the code, stay for the community.

Drupal thrives on community contributions in the form of patches and documentation to both contributed modules and core. This helps the project move forward and stay relevant.

Not everyone who works on open source projects is a senior developer. Drupal is built through lots of little tasks. Smaller tasks help people increase confidence and gain experience, which, in turn, leads to more contributions. We'll build on each other's strengths to learn how to navigate the issue queue while having fun trying new things.

But how does one become a contributor? 

Together we will go through the process of creating an issue, writing a patch, uploading the fix to Drupal.org, reviewing the patch for RTBC (reviewed and tested by the community) and more. We'll even take a look at the upcoming GitLab contribution process because specific tools and processes change over time.

Instructor: volkswagenchick

Introduction to Drupal 8 Module Development

Module development for Drupal is more powerful than ever with Drupal 8.
Object-orientation, the maturity of Drupal's various APIs, Drupal 8's new underlying Symfony (and other) components, and the emergence of Drupal Console means that developing for Drupal 8 requires some new knowledge for existing Drupal developers.

This workshop is designed to introduce existing Drupal developers as well as (non-Drupal) PHP developers to some of the techniques and concepts for Drupal 8 module development.
The workshop includes an overview of some of the main concepts and tools as well as several hands-on module development exercises designed to build knowledge and confidence.

 

Instructor: ultimike

Theming Drupal 8

Themes combine HTML, CSS, JavaScript, and Drupal in order to make beautiful websites. Creating truly unique themes requires knowing how to use the Twig template language to manipulate HTML, how to add CSS and JavaScript assets in a way that's compatible with Drupal's caching, all while maintaining the flexibility that Drupal is known for.

Whether you’re creating an entirely new theme from scratch, or making nips and tucks to an existing design, understanding how Drupal’s theme system works, or having someone on your team who does, is essential.

This workshop will familiarize front-end developers with Drupal 8's theme system through a combination of presentations and hands-on exercises. Whether your goal is to theme your personal site, pass the Acquia front-end developer certification, or upgrade your skills for a job, our goal is to provide students with a solid foundation and enough knowledge to continue to practice and learn on their own.

You'll come away from this course knowing:

  • How the Drupal theme layer relates to the rest of the system
  • Common theming terminology and processes
  • How to override any of Drupal's HTML output
  • The relationship between base themes and sub themes
  • Everything you need to know about Twig when working with Drupal templates
  • How to add both custom and third-party CSS and JavaScript libraries
  • Tools for introspecting and debugging a theme
  • Tips and tricks for using common front-end development tools like CSS preprocessors and task runners, in conjunction with Drupal

Attendees should be familiar with HTML and CSS and understand how to administer content on a Drupal website. This workshop will be relevant for both people who are new to Drupal theming as well as those looking to move from Drupal 7 to Drupal 8.

Attendees who wish to follow along with exercises will need to have a working copy of Drupal 8 on their laptop on which they have permission to edit files, and administrator access to the site. We will not be covering setting up a local environment during the class, however Drupalize.Me has related resources and we can provide instructions on how to do so ahead of time for anyone that needs them.

This course is based on the Drupalize.Me Drupal 8 Theming Guide. Attendees will receive one month of full access to the complete Drupalize.Me tutorial library so that they can review and continue to learn after the workshop is over.

Instructor: eojthebrave

Hands-On Introduction to React Development

React is a powerful JavaScript library ideal for building interactive, data-driven user interfaces, and it’s used by some of the most successful brands in the world, including Facebook, Netflix, Airbnb, and more.

Learn the core concepts of modern JavaScript development with React; topics include:

  • Building with Create React App
  • Modern JavaScript; ES2015, 16, 17, and 18
  • React Core Concept
Instructor: John Tucker

Decoupling Drupal 8 with GatsbyJS!

While decoupling Drupal 8 sites has been very popular in recent years, creating a decoupled site architecture is no small feat. With GatsbyJS, however, we can build out a decoupled, statically-generated site by harnessing the power of Gatsby’s Drupal 8 source plugin, Node API, and a little bit of ReactJS magic. This training presents how to JAMStack-ify a Drupal 8 site.

Over the course of this half-day training, we will cover:

  • Installing the Gatsby command line interface (CLI) tools
  • Creating a Gatsby project on a local machine
  • React basic concepts
  • Configuring a Drupal 8 site to serve as a data source for Gatsby
  • Querying Drupal data in Gatsby using GraphQL
  • Programmatically rendering lists of content from Drupal
  • Creating static pages in Gatsby from Drupal sponsored data
  • Building and deploying your Gatsby site to Netlify

At the end of the training we will have gone from a bare-bones Drupal 8 site and a vanilla Gatsby startkit to a fully-functioning statically-generated Gatsby blog site powered by Drupal 8.

Instructor: nerdstein

Absolute Beginner's Guide to Drupal

Are you new to Drupal?

If you are, the Absolute Beginner's Guide to Drupal is the class for you.

This class will get you up-and-running with Drupal.

You'll learn all of the key concepts you need to understand, navigate and use a Drupal site. You'll learn how to build a Drupal 8 site, from content and user organization, to working with modules and themes.

This class will be entirely hands-on. You'll have a Drupal site in front of you and will be actively working and learning throughout the class.

Instructor: hotsaucedesign

Intermediate to Advanced CSS for Practical Peoples

The goal of this training is to help people who have are familiar with CSS but find it frustrating, or want to learn more about how it works. We'll start by talking about how CSS was designed to work, what it wants to do, and then talk about the major parts of it.
We won't be focusing much on syntax, that can be googled, the goal is to help you understand it so it doesn't feel frustrating, random and buggy.
We'll be going over:
  • CSS Layout in 2018 (how to use grid, flexbox, and when to use the old stand bys)
  • Document flow, who can be your best friend (but may currently be your enemy)
  • CSS architecture with topics like:
    • Code writing tips and organization that can help keep CSS maintainable
    • Different approaches to class names and applying CSS and their pros/cons
    • Gotchas, tips, and myth busting on performance, organization, integrating CSS with your CMS (we'll use Drupal as the example)
  • Tips on building CSS in an existing system, or creating on of your own
  • Debugging CSS
  • The tools to debug
  • How to debug different kinds of layout issues
  • Exercises/examples of common bugs
  • Transitions/Animations in CSS
  • Advanced CSS techniques and tricks
  • Favorite tips and tricks (guest speakers and audience participation welcome!)
Instructor: wesruv

DevOps for Agencies

In this workshop, using intuition backed by empirical research, we will cover why DevOps is the most important technological strategy of our day. In doing so, attendees will gain the understanding necessary to gain buy-in for DevOps at their organization as well as how to know what might fit a DevOps strategy and what doesn't. 

Join in as we explore how DevOps concepts and strategies can help, specifically in the full service web agency setting, to increase speed and effectiveness, ultimately delivering better value to customers faster while gaining a competitive edge in the marketplace.

Using interactive group assessment and idea generation activities we'll cover the most relevant areas of focus, including:

  • What is DevOps for agencies?
  • An introduction and overview of various methods
  • Ways to getting started and continue the DevOps journey
  • Troubleshooting challenges in the methods

Attendees, of any expertise, will leave with an understanding of how DevOps methods can be grown and applied to their context to gain a competitive edge in the marketplace.

A portion of the workshop will be dynamically driven by results for this 2019 Drupal Community DevOps survey. If you are on a team that builds Drupal sites, and you haven’t responded to this survey yet, please respond to its DevOps statements, on behalf of your team, to see the results, with areas of focus and some advice. The results will structure the content of our DevOps workshops and presentations this year in the Drupal Community, including at our DevOps talk at DrupalCon Seattle.

Instructor: ksalbrecht