Drupal GovCon 2018


Videos from Drupal GovCon 2018.

Conference page
Video Sponsor(s) / Provided by
Drupal 4 Gov
Curated Videos
Jason Moore

This session will explore techniques that web development teams and QA teams can use with Probo.CI to automate accessibility testing with some command line tools and APIs available today. While automated accessibility testing is not foolproof, it can quickly identify possible problems that should be resolved before code is deployed to production.

Probo.CI is a Continuous Integration and Continuous Collaboration tool that integrates with GitHub and Bitbucket repositories. Probo was developed originally by Zivtech to automate tests and build a temporary sandbox to preview changes on Drupal websites. It can also be used for running tests against and previewing changes for just about any web based application such as a LAMP based website, or static based site generators like Jekyll.

Accessibility testing is important for government websites because of 508 Compliance regulations. Probo.CI allows developers to automatically run custom scripts, BEHAT tests, and run other automated testing APIs against their codebase as part of their git development workflow. Probo spins up a sandbox to test each Pull Request of an enabled repository in an isolated container. Each commit pushed to that Pull Request causes the sandbox to be rebuilt from scratch with the latest changes in the PR.

Probo.CI helps teams continue working without common blockers and process bottlenecks. Probo also amplifies feedback from all team members, clients, and stakeholders with an easy to share URL for each Build. Come learn how Probo can transform your team’s workflow and automate at least some of your accessibility testing.

Amy Shropshire

If you've ever logged into Google Analytics and wondered just exactly you were looking at and what to do with it, this session is for you. We'll break down all that Google Analytics has to offer, how to decide which metrics are right for you, and how to use that information to make decisions to bring the right people to your site.

In this session, we'll take a closer look at -

Google Analytics and what all the different types of data you can get from it are.
Different processes by which you can decide which metrics will help you decide if your website is meeting its goals. We'll take a closer look at vanity metrics, how sometimes the information you're looking for is really a combination of metrics, as well as how to combine analytics sources to give your organization a better view of its success
Using these metrics to develop strategies to increase your audience base.
How to report this information to stakeholders without overwhelming them with charts and numbers.

Dori Kelner

A content audit is the basis for ensuring great user experience. It helps align your organization’s brand, message, and objectives with the needs and expectations of your site visitor. It lays the groundwork for the site architecture, content model, and page layouts. It addresses content ownership and the content creation process.

In our agency, the content audit consists of two phases. Phase one is the quantitative component, when we do a deep dive into the available content, including analytics, meta, and tone. Phase two is the qualitative work, when we collaborate with clients to determine what to keep, modify, or cut, as well as identify what is missing. We discuss content governance, consistency, and brand alignment.

In this session, you will learn how to conduct a content audit and what to do with the results. You will discover some of the tools that can help you to analyze your website. You will understand how the insights you gain can feed into the core model process; taxonomy and sitemap development; and content modeling. You will then see how to tie the audit to the needs of content creators, and how to think about sustainable content. You will come away with a full picture of how a content audit drives the website design process, and results in more than just an inventory.

This session was presented at DrupalCon Nashville 2018.

Kevin Walsh, Jen Harris, Iris Ibekwe

As a content strategist or site builder/architect, you’ve most likely encountered CMS bloat, like a Drupal website with three times the number of content types it needs, or a dozen taxonomy vocabularies that rarely get used.

In this session, we’ll look at techniques to fight that bloat by designing elegant and flexible content models with smaller “chunks” of structured content. We’ll discuss how a modular, or component-driven approach yields a better content authoring experience, and a much less repetitive approach to site building, theming, and site maintenance.

We’ll examine the implications of modular content model for content auditing, migration planning, UX and VX design, site building, and site architecture, and documentation. We’ll show how modules like Paragraphs and D8’s fieldable blocks allows site builders to solve edge cases in the content structure at a “lower”, more molecular level, without adding technical debt or complexity.

Then we’ll turn to some examples. First we’ll show how we reduced the number of node and taxonomy bundles from 50 to less than 10 for doctorswithoutborders.org, during a D7 to D8 redesign (relaunching early summer 2018), while increasing the flexibility and maintainability of the content and codebase. We’ll demonstrate the modular content structure for DEA.gov (also relaunching early summer 2018), and how content strategists worked with developers to prototype and then optimize the content model, using tools contrib modules like uswds_paragraphs. We’ll also show how we used Pattern Lab and KSS Node as living style guides to facilitate iterations and documentation of the content structure.

Kelly Albrecht

This talk will focus on a large scale Drupal project as a case study for this topic.

Products as Projects

If the focus or your group's work can be considered a product, then ideally, development delivers features into operation, to the delight of customers. While dividing different aspects of the product into individual Jira projects is always an option, the value flow for a product is usually best represented in a single ongoing Jira project.

Enter Component Teams

Even simple products can have a handful of critical components that benefit from focused improvement. If kept within a single Jira project, teams will naturally organize around these components, each concerning themselves with different subsets of issues.

Without frequent alignment activities, teams will typically each divide up their focus in Jira in different ways. Without a shared understanding and agreement about how an issue comes to "belong" to a Team, configurations and workflows can diverge fairly easily. As issues statuses are shared by all teams in the project, workflow divergence can lead to many statuses that aren’t relevant for other teams. This can lead to friction when transitioning issues or trying to make Jira Boards work, as teams need to find ways to filter the issues they are concerned with out from amongst other team’s issues, creates a feeling that issues can get lost. If each of these Teams instead applied a team-specific Jira Component to issues within their orbit (knowing issues can have multiple Team components), the broader team as a whole would experience more streamlined, cross-team collaboration.

Comments like, “we all know Jira, for better or for worse...” can be fixed! That doesn’t need to be the relationship with the team's arguably most used tool.

Allan Chappell

Continuous Integration and Deployment continue to be an interesting challenge moving forward with Drupal 8. Hosting platforms are now providing "kits" to provide some of these services if you are willing to take the plunge and implement them.

So far, Acquia has given you bits and pieces to this puzzle. In this presentation an explanation and example will be shown highlighting a open sourced continuous integration and delivery system designed to work against Acquia using Circle CI and Acquia's Cloud Hooks.

For reference, Pantheon provides a simular solution using quicksilver and circleci here: https://github.com/pantheon-systems/example-drops-8-composer/blob/master/circle.yml

* Introduction
* Requirements
* Before Automated Builds, Come Local Builds
* Circle CI and Artifact Builds
* Acquia and Cloud Hooks
* Tying It All Together
* Questions

For an example see https://github.com/fourkitchens/example-acquia-8-composer-circle2

For information on how to configure the script follow the steps here. Some of the files you are asked to copy over may not exist: https://github.com/fourkitchens/example-acquia-8-composer/blob/master/README.md

Scot Self

We will explore the Group module in D8; how to set it up and configure your groups. Discover the power of a module properly using the D8 Entity API and the flexibility and usability that comes with it! Along with that, natural integrations with D8 core field API, Views in core make this module a stand-out for building group-based content workflows in Drupal.

Don Koller, Lewis Eigen

• Portable scan stations can be used at conferences, meetings, offices, buildings, or any access-controlled points. Within one second of scanning, the Drupal backend is consulted and a decision is announced: Enter, Your Meeting is in Room 1024, or See the Service Desk or any other message that you want.
• We have developed this for a Drupal site with more than 80,000 registered users. When users come to one of our facilities, they use the local scanner stations to confirm their eligibility status for admission. Service staff nearby can arrange for new users to become eligible, and deal with users rejected by the scanner. The Drupal website and backend database run at AWS.
• Admission can be based on any combination of start/end dates, payment status, specific event, training session, any data in the user’s account profile or other data in the Drupal database.
• Users will either scan their QR code on their mobile device (like at the airport gate check-in) or scan a unique keytag obtained on their first visit. {{The mobile app is also decoupled.}}
• The local hardware cost is less than $200 (qty 1 but much less in bulk). Network connection is by WiFi or Ethernet. Device supports Bluetooth, HDMI and audio devices.
• User scan and response (Valid/Invalid) within one second, includes audio feedback and display of user name and photo. If rejected, screen displays reason why the user is invalid. If Valid, the date/time of successful scan is recorded in the user account. In our app, the scan remains valid for 3 hours.
• User presence status can optionally be displayed on large-screen monitors–e.g., in classroom–showing valid/invalid status and whether the user has scanned in.
• App communicates with backend using the Drupal API and can for example be coded in React.js or other.

This session will discuss and demonstrate:
• The overall approach: QR/barcode scanners with Drupal backend
• How we selected and configured the hardware
• How we programmed interaction with the Drupal MySQL database

Ashish Pagar, Hunde Keba

When building websites, doing so in a consistent manner becomes very important. It allows developers to focus on functionality, clean UI, and accessibility. Providing the ability to quickly duplicate production environments into lower level development environments allows for standardization, simplicity and fast deployments to automate the “necessary” mundane. This presentation will explore the use of Docker to:

Maintaining development environments
Deploying applications to AWS
Managing & maintaining your data within your containers
Database and Application container management using Docker

David Hernandez

We've started embracing the world of Composer, the PHP dependency manager. However, it has become one of the biggest pain points reported by Drupal 8 developers. Once using Composer with Drupal, you can no longer simply download zip files to manage your project.

I will go over Composer basics; starting from scratch, and going step-by-step through a full project build.

This will cover many of the topics and steps in a tutorial I've posted on Github. https://github.com/david-hernandez/composer-tutorial

Topics this will include:

Composer.json and composer.lock files
Adding dependencies and development dependencies
Adding repositories
Managing version numbers
Scaffolding and scripts
Using the create-project command

This is beginner level information, but one should be familiar with Drupal 8 folder structures and basic command line usage. Familiarity reading JSON files will also help.

Mike Madison

Everything (nearly) about Drupal 8's development process is different than it was in Drupal 7. Some of it is a "little" different and some of it is so totally different you wouldn't recognize it as belonging to the same software. That's ok! Different isn't scary, it's just... different.

One of my biggest challenges when I started learning Drupal 8 was understanding where to start. I had the basic knowledge of "what was different" but I didn't understand how to apply those differences in an effective way. I particularly didn't have real world examples of why I might want to do something in a particular way. This lead to much confusion and frustration on my part, and resulted in a very slow assimilation of knowledge.

This talk is going to focus on real world examples in Drupal 8 development.

Why might you do something a certain why?
What are the advantages of doing it in code vs. the UI?
Where do you even start with the basics (of instantiating a class, debugging your code, and perhaps most important, getting it to show up on your site!)
We'll also get into some slick example code like:

Creating your own custom blocks
Creating your own custom view fields / filters that are MUCH better than what Views provides
Creating custom actions using your own routes
In addition to slides, example modules from this session will be made available on GitHub.

Warning: this session is a beginner session, but we WILL be working with actual code in a local environment.

Topics Covered:

Drupal 8 Hook System
Plugin System
Routes / Controllers
Common Drupal 8 Classes
Code vs. Configuration
Site Building vs. Custom Development
Local Environment Configuration Using Acquia BLT + DrupalVM
Standard Development Tools such as Composer, Git, PHP Code Sniffer (PHPCS), etc.
Who Should Attend:

Developers that are...

interested in making the leap from Drupal 6/7 to 8
already working in Drupal 8 but not solid on development methodologies
looking to hone skills with object oriented php

Judy Dew

We have a One EPA Web philosophy at EPA.gov along with 39 web standards. We built the WebCMS to support those requirements. We built a Drupal Training site. We also offer classes for everyone at the Agency. We programmed into our system, content review. If content is not reviewed, it is removed from epa.gov automatically.

The classes we offer include Tools for Correcting Broken Links, Drupal WebCMS 101, Creating home pages for Resource Directories and Microsites and Basic Pages - Basic training, Dynamic Lists, Events, Forms, Quail and Section 508

We will talk about our version of Drupal and how we've trained a whole lot of people using the WebCMS to create content for www.epa.gov.

Todd Nienkerk

Content! It’s everywhere! It’s displayed on websites and in apps. It’s streamed to smartphones, televisions, and watches. It’s heard on podcasts, radios, and Amazon Alexa. With so many platforms, how can you keep pace with the rapidly changing landscape of content management and publishing?

In this session, you’ll learn how publishers, universities, media companies, and nonprofits are adapting and thriving — all while keeping their content centrally managed. We’ll talk about:

Centralized content management: Collecting, managing, and distributing your content from a single location — and fostering a community of content contributors and app builders.
Context-aware content: Telling the same story using different experiences and devices.
Multichannel and omnichannel publishing: Distributing your content to any service or device (think Facebook Instant or Apple TV) with minimal changes.
Decoupling your CMS: Separating the management of content from the presentation of content makes it easier to support new technologies and devices.
Future-proofing your project: Thinking about the future means being prepared for changes, not being able to predict where technology will go. What ideas should you pursue, and which should you avoid right now? Where does VR, AR, and the 3D web fit into content management and delivery?
We’ll close with a couple of Four Kitchens case studies that demonstrate how we help clients get ready for the future of the CMS:

PRI.org: This year, we helped relaunch a decoupled frontend for Public Radio International's legacy Drupal site.
NBC: We helped relaunch NBC.com, The Tonight Show with Jimmy Fallon, and Saturday Night Live as decoupled Drupal sites with an API that shares content across multiple NBC brands, devices, and apps — including the Amazon Echo.
TWiT.tv: We relaunched This Week in Tech as a decoupled Drupal site with an exposed API that allowed their fanbase to directly access content and build their own apps.
An earlier version of this talk was delivered at DrupalCon Baltimore in 2017. I update this talk each year to remain ahead of the curve.

Bryan Ollendyke

I set out to build the best user Authoring Experience for my Drupal based systems a few years ago. At the same time, I was experimenting with a technology called Polymer and went down a rabbit hole to a magical land called "Front end development" and more specifically the future of all development called web components. But this isn't being listed as an expert talk yet I mentioned front end dev (whaaaa)?

Well, that's because we built it and we've built the ultimate authoring experience for the web. Not Drupal. (whaaaa?) BUT, if Drupal produces and runs on the web (which it does) then, that means we've made the ultimate authoring experience for Drupal (too). I'm talking about a technology we call HAX. HAX is short for Headless Authoring eXperience and it's revolutionizing the way content authors and developers work.

Unlike other WYSIWYG solutions, HAX leverages your design assets in order to let people use them to build the page. Your design assets through a very small bit of code teach HAX how to talk to them. Then, HAX provides all the GUI for management of what is basically an HTML area.

Like other WYSIWYG solutions, HAX is easy to use, easy to integrate and easy to update / maintain from a developer perspective. It's just that it's able to do WAY more then any WYSIWYG you've ever used before. Just like you don't give a ton of training on CKEditor now, HAX is easy enough to use that with a minor amount of training anyone can build out complex, accessible, sustainable, HTML.

HAX writes web components (and regular old HTML) and we've got integrations with Drupal 6, Drupal 7, Drupal 8, BackdropCMS and GravCMS. That means you can do training for content contributors across platforms and have the same killer AX pattern for them to build with.

This session will teach you what HAX is. How to use it. Why it's fundamentally different from other layout / design / editor paradigms. How to get involved and how to extend it.

Arash Farazdaghi

Voice Assistants are beginning to play a large part in our everyday lives - with the popularity of Amazon Alexa growing, organizations will need to consider how to best extend their omni-channel content strategy to include delivery of content on voice and chat platforms.

In this session, we will take a closer look at how to integrate Amazon Alexa with Drupal 8, allowing for content to be accessed both via the web and voice assistants. We will take a close look at:

Voice Conversational Flows
Amazon Alexa Skills \ API Integration
Drupal 8 Web Service Integration
Artificial Intelligence (AI) Platforms
By attending this session, you will walk away with the knowledge needed to begin your journey on integrating voice and conversational intelligence with your Drupal website.

Aimee Degnan

What happens when you encounter a project that seems broken beyond repair, but for whatever reasons, a brand-new fresh start is not possible?

You may run into the following challenges with these "broken projects":

No clear scope
No requirements documentation
Far less remaining budget
Far less remaining time
"Project fatigue" from the client
Massive amounts of technical debt
And many, many more challenges...
How do you even start approaching such a broken project and bring chaos to order?

But what does order really mean? How does one measure success or completion in a fog of wrongness?!

Using project management and enterprise process management techniques, you can work through unclear and incomplete deliverables to help define what Done (success) means. This includes unraveling complex business logic, multiple business processes, and a slew of modules and configurations.

At the same time, we were proactively healing the client’s project pain by finally being able to articulate a clear list of what needs to be built versus what has been built.

We even got to answer the final burning questions:

When will it be done and how much is it going to cost?

What should your session accomplish?

Surface signs and symptoms of unhealthy projects
Discuss methods to manage those symptoms / mitigate issues and risks
Who should attend this session?

Project / Product / Account Managers
Executive Sponsors / Executive Leadership
Interested Contributors (developers, designers, etc.)
Learning Outcomes

Starting assumptions may not completely prepare the team for the project.
Identify and proactively address stakeholder’s project fatigue and apprehension.
Explore practical techniques to unravel and define the half-built and the unknown.
Understand that tools and techniques are really applying the “best practice for the situation” and which tool you use will evolve through the project recovery process.
Understand how to prepare your project team for the road to recovery with the client.

Geoff St. Pierre

We often think of DevOps in a siloed context (eg one project at a time), but having an organizational DevOps plan/strategy and some cross project standardization is really how you benefit. This talk is about the business value of horizontal DevOps across people and projects.


Beginner / Intermediate / Advanced

All concepts will be discussed at a high level. This will be talk about code and workflow examples, but your experience level will not preclude you from gaining contextual benefit and it is probably good for a beginner to be exposed to some of the concepts and vocabulary.

If you are a decision maker (or have or intend to influence decision making) for your agency/company
Lead Developer
People who are thinking about workflows, efficiency, and repeatability for their company




Documentation, Documentation, Documentation
Processes (People and Machines)

Shane Jeffers

Media is now in core! Feel free to break out into your happy dance at any point while reading this abstract. Let's be honest...handling media in Drupal has been a nightmare in the past. Now that media is in core—thanks to the Drupal Media Team—handling images, video, and other media assets has never been easier.

This session will walk through the ins and outs of setting up a media library using the core media module. The session will also cover how to use common contrib modules (Entity Browser, Media Entity, and Entity Embed) to extend functionality. You will leave this session with concrete site-building principles you can apply to all of your Drupal 8 site builds. Experience with site-building is all that's necessary to attend this session.

Slides: http://shanejeffers.com/govcon-2018

Annie Hardy, Krystal Webber

Today, the lion’s share of key decisions about citizens and their experiences are owned by a small contingent of educated people. But when those biases are released into the community, there is only so much we can do to rescue an investment that fails to resonate. However, there is hope; in some sectors, designers and developers are engaging design research earlier in the process, using stories and statistics to validate a business case for crafting more empathetic products and experiences.

In this session, Annie Hardy and Krystal Webber will discuss the empathetic design approach they've gained from their experience working with populations ranging from indigent Spanish-speaking populations to corporate CEOs. In the case studies shared, we'll examine the biases that emerged in the design process by government entities, startups, and corporate America, as well as how the public sector can make the upstream changes that can lead to success.

Attendees will leave with a set of questions and approaches they can apply to question their own biases in the design process.

Lauren Maffeo

Product management and project management are two of today’s fastest-growing roles. Harvard and Cornell are among the business schools that have added product management curriculums to meet demand from students.

Meanwhile, the Project Management Institute predicts that employers will need 88 million people in project management roles by 2027. But if you're wondering what the difference is between these two roles, you're not alone.

These titles are often conflated, especially on small teams that have minimal time, resources, and candidates. But despite some overlap between these two roles, they serve distinctly different functions. This session will cover:

The definitions of project management vs. product management.
The key business functions that each role serves.
Frameworks for project management vs. product management.
Areas of overlap between these two roles.
How to know which role you should hire for your own team.

Gerardo Maldonado

In this session we will analyze different strategies for decoupling Drupal 8, Whether we are pursuing a fully decoupled architecture, a progressively decoupled architecture or a standard Drupal architecture.

With this presentation I will answer questions like: Which architecture should we choose? Where do we start? What are the different approaches we can take to implement them? What are the advantages of using one against each other. And of course, examples showcasing their benefits and differences, we will see what are the pros and cons for each architecture and suggested techniques and methods to successfully achieve them.

For the examples on this session I will use React alongside Drupal to demo these decoupled capabilities.

Co-speakers: Natalie Beneventi, Web Operations Coordiator, Administrative Office of the U.S. Courts and Kevin McCulloch, Lead Developer/DevOps Engineer, Administrative Office of the U.S. Courts/New Target

The Administrative Office of the United States Courts is an agency within the judicial branch that provides a broad range of legislative, legal, financial, technology, management, administrative, and program support services to federal courts.

One of our web projects is the judiciary’s internal website, JNet. JNet is a primary information resource for Judiciary employees and is accessed more than 2.5 million times each year. The site offers news, policy, program-related information, and a variety of reference tools, and serves as a gateway to systems used judiciary-wide.

JNet was first our Drupal 7 project and the code base has become large and unwieldy over time. When our web team was asked to add a complex feature to JNet that would promote training opportunities and accept applications for the entire Judiciary, we were faced with a choice: expand our Drupal 7 code to handle user-submitted content outside of our pre-existing publishing workflow, or build a separate web app for application handling and host it on JNet?

We opted for the latter. We built a single-page web app, using headless Drupal 8/JSONApi as the back end and Angular as the front end, and integrated it with JNet. In this session, we will discuss our project requirements and decision-making process, and then explain how we addressed various technical challenges, such as passing the authentication context from Drupal 7 to Drupal 8 in order to avoid an extra login step for our users. As a bonus, come hear how a swift community response to a security issue helped persuade our IT Security Office of the value of open source software.

This presentation will interest technical decision-makers and developers interested in progressive decoupling, headless Drupal, and Angular.
For the technical part of the talk, attendees should have intermediate to advanced knowledge working with the Drupal back end.
Attendees will walk away having seen a solution for creating an interactive feature site designed for authenticated user access by integrating a D7 intranet site with a headless D8/Angular Service.

Shawn MacFarland, Jason Schulte

It happens in every project across every organization. Deadlines approach, scopes expand, QA finds bugs and engineers do what they do best: make a square peg fit in a round hole. Never has a software project been launched without introducing a non-zero amount of technical debt: cludgy code, hacky work-arounds, TODO MAKE THIS WORK FOR REAL functions that barely-just-barely get the job done, but need to be laboriously re-factored to be done "right".

The difficulty comes in explaining this state of affairs to product owners and clients, who may be happy with functionality but lack the technical chops to understand why more work is necessary that won't result in new whiz-bang features. Clients are naturally protective of budgets and must balance short-term business requirements with long-run strategy, and this calculus doesn't often sit well with developers' natural instinct to stay on the bleeding edge and make all code beautiful.

We share lessons learned across multiple Drupal projects for Federal government clients including NASA, USGS and NOAA, and attempt to share strategies for dealing with "difficult" clients when it comes to the dreaded "R" word: Refactoring.

Julia Gutierrez, Adam Cogbill

Since 2016, the Commonwealth of Massachusetts Digital Services team has been hard at work reinventing our digital front door, Mass.gov. The new site is agency agnostic: We want constituents to feel confident that they can find what they need without having to know which agency or bureaucratic process to navigate.

This session focuses on how we created a voice, and how our content strategy and customer success teams scaled that voice through working with more than 600 content authors across more than 140 state agencies.

We’ve embarked on a journey to train, support, and listen. Our content authors are a diverse bunch: Some are subject matter experts, others communications professionals, web liaisons, or interns. Some have years of experience writing for the web. For others, “inline link” is new vocabulary. Some have experience with Drupal. Most don’t. And the idea of creating a unified voice is new for all of them--and for us.

In this session, you will learn about the strategies we’ve employed to train content authors, and to scale the Mass.gov voice. We’ll describe how we’ve:

Defined the Mass.gov voice, including how we structure content, how we talk to users, and how we make data-driven decisions about content improvement.
Evolved our support model from 2 people monitoring an Outlook account to a distributed model that leverages the entire team’s knowledge, and that understands what technical improvements and enhancements will be most consequential for authors.
Trained authors to learn and adopt our voice by creating self-help resources, encouraging the use of analytics and content improvement tools, forming communities of practice, and using Drupal 8’s tour module.

Flora Qian

“Should I use Drupal multisites or multiple sites?” was the question often asked by many Drupal architects and developers when building multiple Drupal sites.

To help you answer this question, we will share our experience and lessons learned in working with several Drupal sites using the Drupal multisite feature. We will talk about what Drupal mulitisite is, its architecture, and why we chose it over other approaches. In addition to the big picture, we will also walk you through Drupal multisite installation in the Acuqia cloud environments and show you how we configure Apache Solr search in multisite settings. You will come away with a better understanding of the common challenges and solutions for Drupal multiple sites management.

Katie Eidson

You are eager to become more user-centric in your next project. Hoping it will remove the clutteriness and complexity on your project. However, you don’t really know how to approach it, or tad skeptical if any of this well wishing can fit in your tight timeline and budget. Don’t worry, I’m here to help.

This talk will break down the jargon, provide a do-it-yourself roadmap, and basic understanding that provides you the confidence to help bring user research and usability testing into your project no matter what timeline. Whether you are maintaining a site or in a process of a redesign, you will learn how to collect user insight, set up user testing sessions, and understand what to do with all that information. You'll learn cool lessons like:

- How to get started with user research
- Simple tools to start collecting user insight
- Setting up your first user interviews & usability tests
- Running your first Card Sorting
- How to set up Navigational Testing
- All the pitfalls to avoid throughout the process

Each lesson will show will world examples and timelines it took to complete each task. By the end of the session you learn some new technicals and growing confidence in adding some user research and usability testing in your next project.

Jeff Maher

The world of technical operations has never been more exciting: skies full of clouds, containers full of containers, and servers serving without servers. Yet, teams still struggle with changing code safely, scaling effectively, and recovering when disaster strikes. Drawing on firsthand lessons building platforms like Vets.gov, Mass.gov, and the California Child Welfare System learn the tangible, small steps you can take to help your teams embrace DevOps culture, gain visibility and control over their applications and infrastructure, and stay focused on building digital services that truly serve the public.

Danielle Sheffler

Did you know that a project can fail even when you use best practices in project management and development? In fact, it's almost guaranteed to fail if you don't think about the soft skills needed when working with internal and external teams.

Many times, we think of the most important parts of a project as determining MVP, staying within timeline, scope, and budget, and implementing what the client has asked us to. But we often neglect to develop our soft skills: having difficult conversations with our clients, getting our clients to trust us, and building relationships with our internal teams and with our clients.

In this session, we'll cover the following:

How to be transparent, without being too transparent
Learn skills to gain your team's and your client's trust and how to develop these skills
Learn how to really listen to what your teammates and clients are saying
Understand how to apply these skills to many different types of teams

Matthew Cheney, Jody Hamilton

There are a lot of obvious benefits to using version control for your projects, but there are a lot of non obvious benefits too. In this session, learn how to create an industrial grade version control workflow using Git and automatic testing. Topics that will be covered include:

How to Use Git Branches - Instead of having all of the developers work on the same "master" branch, you can have developers work on separate branches that can be created per developer, per feature, or even per ticket in your project management system.
How to Do Performance Testing - Instead of crossing your fingers when you site gets a lot of traffic, be sure that your site can handle the traffic by doing performance testing on each deployment that you do.
How to Do Cross Browser Testing - Instead of firing up a bunch of Virtual Machines to test different browsers and devices, set up an automatic script so that every time you are looking to do a deploy you get a bunch of screenshots to review.
How to Do Visual Regression Testing - If you are pushing a change that shouldn't effect the front end of the site, wouldn't it be nice to verify that? Learn how to visually compare a "before" and "after" version of your site to see where (if anywhere) visual changes happen.
How to Notify You Of Deployments - Instead of wondering if code has been deployed, learn how to integrate your workflow with chat solutions like Hipchat/Slack or more traditional solutions like SMS or Email.
If you are a developer or manage developers on web projects, this session will help you learn how to level up your workflow and do a lot of really powerful testing on your project every time you do a commit.

Lindsey Kopacz, Brian Reese

JavaScript had it’s biggest release since 1996 with ES6 (ECMA2015), and new features are being added with regular releases. Have you begun the process of transitioning your coding style on your Drupal sites?

In this session, we’ll look at several new features available in ES6, including new variable declarations, arrow functions, classes and modules. We will show you how they can drastically improve your code’s readability and speed up overall development with less code. We’ll also look at adapting a Drupal theme to use babel, webpack, and of course how to create Drupal behaviors using the updated JavaScript features.

You’ll leave this session knowing the key differences between ES5 and ES6, the benefits of updating your code to ES6, and ultimately feel more confident transitioning your coding style on your Drupal sites. You will also have a github repository to fork and use on a sandbox.

Larry Gillick (DOI.gov), Scott Horvath (USGS.gov) & Paul Tsao (Fig Leaf)

With the revision in accessibility requirements, audio description has become an important challenge for federal websites to meet. Divergent efforts within the U.S. Department of the Interior have led to a pair of technology solutions and a wealth of choices for site managers and content creators to use, to meet requirements and properly serve the public.

DOI.gov uses a Video.js solution. USGS.gov uses OzPlayer. Both work within their respective Drupal systems. Both face the next hurdle of crafting audio descriptions for video productions.

We will demo our working solutions, point to shared code, and describe our solutions for creation of 508-conformant content.

Rahul Maheshuni


Composer is an open-source one stop shop tool for updating (or reverting) Drupal core, modules, and patches that will also manage all of their dependencies while also help improving your site’s security. This presentation will show you how you can use this powerful tool for your project and what you need to do to use Composer with your current Drupal site.


Composer makes the developer life easier by managing all the external libraries/dependencies for a project. Developer talks to composer for the external libraries he needs; Composer gets these dependencies and organizes them. Using composer in your project alleviates the pain of maintaining and managing the modules and its dependencies. We need to follow certain steps to migrate our existing Drupal project to a composer-based Drupal project.

Things to take away after the end of this session:

Understand the Composer functionality.
Start using Composer workflow in your project.
Understand how to migrate your Drupal site structure to a composer-based Drupal template.
Generate a thought over implementing better development workflows with composer in your project.
Overview of Discussion:

1.What is Composer and Why should we use Composer?

What is a dependency management tool?
How does Composer alleviate the process of managing and maintaining the 3rd party code/External Libraries?
How Composer makes it easy installing, updating and removing modules and its dependencies?
2. Advantages of Using Composer

Understand what differentiates Composer from Drush and Drush-makefile.
Recursive dependency management.
Composer autoloading.
Drawbacks and work-arounds of Composer.
3.Composer Installation Process

Composer can be installed globally or can be installed locally per project.
4.Composer Mania

Learn all about the Composer functionality.
Setup a project with drupal-composer/drupal-project template.
Understand the structure of the drupal-composer/drupal-project template and the reasons on why the structure is different from the usual structure of a Drupal project.
Do’s and Don’t with Composer. Good Practices.
5.Version Constraints

Understand the different version constraints used to download the package dependencies.
Understand why the version constraints really matter.
Tilde vs caret, release tags.
5. Applying Patches using composer

Learn how to apply patches to contributed modules or Drupal/core using a composer plugin and persist the patch even after an update.
How not to create a patch.
6.How to migrate your current Drupal site to composer-based Drupal site.

The challenges we face while migrating our Drupal site to drupal-composer/drupal-project template.
Steps to be followed to migrate your current Drupal structure to a drupal-composer/drupal-project template structure.
7. Development workflow

Learn some of the best practices used for managing drupal sites using composer and for managing deployments.
I started applying composer functionality in my project by realizing its importance from the Drupal community. During this process, my project had modules/themes installed both from the UI and the Composer. Instead of handling both types, I converted everything into a composer-based module structure. I realized the Importance of having the composer-based Drupal project Structure and migrated my site to the same.

In this presentation I introduce the composer approach and share my experiences during the migration of Drupal project to a Composer-based Drupal Project, specifying it's importance.

As a beginner to the Drupal World, I learnt a lot from the Drupal Community & it's resources and I would like to share my learning experiences.

Gerardo Gonzalez

For most teams working in an Agile environment, the backlog is the central artifact for planning, measuring, and tracking our work.

On the other hand, given all the manipulations the backlog goes through, it can easily become an impediment to a project’s success.

Key topics:

In this session we will take a look at a few things from the perspective of the backlog:

Agility and Scrum
Discovery, UX, design and development
Minimal Viable Products
You will learn how to use backlogs more efficiently to empower agility, and be able to recognize the crucial places where backlogs can start working against us.

Who should attend:

Agile practitioners/enthusiasts
Anyone who wants to learn more about Agile

Nancie McCraw

Usability testing is how we know that what we have created is really resonating with our users. It is a waste of resources to build the perfect "thing" only to have users ignore it, as if it isn't there. If only there was a way to get user feedback as part of the development and design process.

Drought.gov has integrated usability testing into the design and development process. Small scale usability tests let us know if our product is meeting our users' needs or if we need to adjust, before we go too far down the wrong path.

See how out internal team creates, conducts, and evaluates user tests.

Karl Kaufmann

Much of what we do as content and site creators is done with type. For both effective communication and Website performance, how it’s implemented can be a delicate balancing act. With the advent of variable type, new methods are available that allow us to communicate more effectively (and beautifully), with Website performance gains to boost.

In this session, I’ll cover:

An overview and history of variable fonts.
Brief overview of typographic and design principles—and how it led to the development of variable fonts.
Why fonts can boost Web performance—and how you can implement them.
Explorations and examples currently in use.
Attendees of all skill levels will come away with a solid understanding of variable fonts, and how to utilize them to improve both the performance and design of their projects.

Lisa McCray

In this session we’ll map out how the parts of Drupal 8 work together by examining how Drupal is like Walt Disney World!

Having an accurate mental model of a complex system helps you work more effectively. Basing the model on a fun and friendly place like Walt Disney World makes it both more entertaining and easier to remember.

Topics covered will include:

What’s a web framework anyway?
What do we mean when we say “core” and what does it do?
How do modules and themes relate to Drupal core?
What parts of Drupal came from Symfony, and what does that mean?
What’s the connection between Drupal and trash cans at the Magic Kingdom?
If you’re new to Drupal, want a better understanding of the various components that make up Drupal, or just want to know what a theme park “weenie” is, this session will help you faster than you can say Supercalifragilisticexpialidocious!

By Tim Erickson

Attend any Drupal event and you will hear people talking about how important the Drupal community is to them or how much the Drupal community has impacted their life. Look deeper and ask around and you will also find many people who at some point in time have felt betrayed or let down by the community when it failed to meet their expectations.

Do some of us expect too much from the community and how do we cope when the community fails to live up to those expectations?
How much can and should we expect from an open source community?
Does the community exist solely in service to product called Drupal or is Drupal merely the byproduct of a community with goals and values of its own?
My plan is to share some of my personal thoughts and experiences on this topic, but also to hear from the audience about what they expect from the Drupal community and how they cope when the community fails to meet those expectations.

Learning Objectives & Outcomes:
To talk about what community means.
To reflect on our individual relationships with the community and what we expect from the community.
To prepare ourselves for that moment when the community fails to live up to our expectations.

Dan Mouyard

Section 508 law has changed! Federal agencies must comply by the updated accessibility standards as of January 2018.

Join Drupal Front End Developer Karen Kitchens and accessibility expert and designer Daniel Ferro as they go over Section 508 2.0 and how the updated accessibility law ties into your role as a Drupal developer or designer.

What We'll Cover

Basics of the updated Section 508 law
How to design with accessibility in mind
How to best take into account accessibility in Drupal 7 and 8 builds
General accessibility best practices and tips

Brian Perry, Adam Bergstein

Over the last two years our community has seen the rise of countless solutions to implement design systems and components within Drupal. During the same period across camps, cons and the internet at large Adam and Brian have been having an ongoing conversation about best practices in component based development.

With Brian focusing on ease of component integration (often with the help of contributed modules), and Adam focusing on a platform agnostic approach favoring functionality in Drupal core, there was initially quite a bit of good natured debate. But as time went on and approaches in the community matured they found their perspectives aligning more and more.

This session will present their (mostly) shared vision of a set of best practices for component based development. They’ll still disagree on some stuff, but that’s part of the fun. We’ll review:

An overview of current approaches in the community, along with some limitations.
Our goals for a component based design system.
Breaking down your patterns using atomic design principles to represent the ideal state of design system components.
Managing your pattern library as an external dependency of your Drupal project.
Limiting processing in your pattern library, and handling processing and mapping within your CMS.
Common misconceptions about integrating design system patterns in Drupal.
A baseline approach to implementation in Drupal using Drupal core and limited contributed modules.
The role of popular component-friendly contributed modules
Emerging technology for the future of component based development.

Bryan Hirsch

The team that reinvented Mass.gov is now charged with bringing a data-driven, constituent-centric, “digital first”, approach to all of the state's web properties. Our vision is to stitch together a coherent experience across Massachusetts' diverse constellation of websites and technology stacks. Whether you’re renewing your driver’s license, checking eligibility for food assistance, starting a new business, or visiting a state park, we want your experience to be as seamless as it would be on a banking or e-commerce website. Even if you have to interact with four different government agencies, it should all feel like one government organization with a consistent look and feel. But “single face of government” doesn’t stop at visual design, it also includes a single search interface, a single data catalog, and a consistent developer experience for the state’s RESTful APIs.

It’s a tall mountain to climb. But we’ve had some early successes to build on and we’re optimistic that we’ll get there if we keep putting one foot in front of the other. We’re eager to share our experiences, learn from the Drupal community, and invite other government organizations to collaborate with us.

Mike Madison

Configuration is a key concept in Drupal 8 that sits at the intersection of backend development, dependency management, theming, site building, and (in)sanity. Already the community has seen several significant shifts in the recommended "best practices" and with the announcement of a second configuration management initiative, there is no clear end in sight!

Still, those of us that work with Drupal 8 every day have to manage configuration, and we have to do it in a reusable and stable way.

This talk focuses on configuration management best practices as they stand today.

We'll focus on things like:

Managing different configuration for different environments (config split)
Ignoring configuration entirely (config ignore)
Basic configuration workflow (including git, CI, testing, etc.)
Interaction with DevOps (using tools like Acquia BLT)
Dependency interactions with other config, modules, and composer
Working with configuration in code
Who should attend:

Site Builders

Joe Miller

It's the email every content manager dreads.

"These two web pages aren't consistent. Can we make sure that we're saying the same thing on our website?"

On a really bad day, there are 30 people on the CC field.

Maintaining consistency across a website—especially on big .gov or other publishing-heavy websites—requires considerable time and focus. But it doesn't have to be that way.

What if you could create a particular block of content once, then reuse that block across your entire site? That's the holy grail for content strategists—a true Create Once, Publish Everywhere paradise in which content modules can be remixed into different arrangements, and where a single update immediately propagates across your entire website.

That's the theory. The practice is much harder. True modular content requires a different approach to writing, organizing and displaying content. And it requires different tools for tackling those challenges.

In this session, we will walk through some tips for planning, organizing, producing, and displaying modular content. We will explore existing off-the-shelf products that allow for easy experiments with modular content, examine Microsoft Word alternatives to help authors create modular content, and then see how those tools come together in Drupal to create embeddable "card stacks" that can be reused across a website.

David Minton, Stephen Pashby

If you have been around software development for a while, you know that feature creep can kill any project dead in its tracks. Defining a Minimum Viable Product (MVP) can keep feature creep in check enough to launch a project that can then be iterated upon in future releases. Fewer, or simplified features won’t necessarily lead to a successful MVP. Cutting features without considering their strategic significance can lead to project failure.

We will discuss how to use a strategic lense to frame an MVP discussion that successfully identifies what should be included in an MVP and what should be moved to future releases.

Mike Herchel

We all know that your website’s performance is critical to the success of its mission. Conversion rates are proven to plummet if with every second of page load time.

What can we do about this? Why is the web still slow in 2018?

In this session, we’re going deep into modern web performance, and you will learn how to identify and fix performance bottlenecks in your website / webapp through topics such as:

Web performance metrics you should be measuring and how. Which are the most important?
How do I optimize my site for each of these web performance metrics
How browsers render web pages, and how to use this knowledge to optimize the loading experience.
What is the critical path? How do I account for this?
What is the JavaScript main thread? How can I optimize for this?
Identifying, profiling, and optimizing for third party scripts.
In order to get the most out of this session, the attendee will have to 1) have some knowledge of HTML, CSS, and JavaScript, 2) have a basic understanding of browser-based developer tools, and 3) find slow websites extremely annoying.

Kat Kuhl

Good work leads to promotions -- and promotions from development to management come with more than increases in responsibility. While they're often awarded based on mastery of one skill set, they require you to learn a whole new one. Plus, the methods you've previously used for learning new skills might fail you -- this learning curve would be a lot easier if you could google "drush commands for management" until you found some results.

During this session, I'll talk about adjusting from life as a developer to life as a manager, including:

Transitioning from communicating like a team member to communication like a team leader
Understanding key leadership styles and how to use them
Giving performance feedback that goes beyond code reviews
Giving room to make mistakes (while mitigating the big risks)
This session is targeted toward new managers and developers considering management, presented by a manager who made the leap.

Alison McCauley

*Composer Beginners, that is ;-)

​​In this session, you'll learn the basic basics (technical term) of using composer to manage a Drupal 8 site.

There's a steep, painful learning curve for many strong Drupal site builders who start using composer with their Drupal 8 sites. This session will help you get off the ground, and even avoid some of the worst pain points.

We'll be showing things from an Ubuntu machine, which should be close enough for Mac users, but we won't be doing anything in Windows. #sorrynotsorry

Previously presented at DrupalCamp PA 2017, Cornell DrupalCamp 2017, and Drupal4Gov Webinar Series.

Lindsay Gaudinier

It is all fun and games modifying existing code, but what about when you have to venture out to unknown waters and create your own custom module? Don’t worry! We can get through this together!

This talk is a deep dive into creating custom modules from scratch, and the role of each component in the final product.

Let’s consider when it is appropriate to leverage custom development, explore the anatomy of a custom module, the types of expected files in a custom module, and the wonderful world of what you can do with a custom module (spoiler - it is a lot!).

This talk will include: Composer, forms, theming within a module, custom pages, Drupal namespacing, object oriented conventions, plugins, controllers, routes and more!

Presentation slides here: https://legaudinier.github.io/Custom-Module-Presentation/#/

Presentation custom module here: https://github.com/legaudinier/Custom-Module-Presentation-Capable-Module

Dori Kelner, Ruby Sinreich

Diverse communities are strong communities, and Drupal is less diverse than we would like. Open source has the potential to transform society for the better, but we are currently missing out on much of that opportunity. We can make the Drupal project better by making the Drupal community a place where a wider range of people can participate and contribute their knowledge and skills.

The Drupal Diversity & Inclusion (DDI) group is working to make the Drupal community more equitable and more successful. The group of volunteers was founded in 2016 and works to create space for important discussions about the Drupal community and for initiatives that support historically-marginalized communities and further their inclusion in the Drupal project.

This talk will cover:

Why diversity is important to building a stronger community and platform.
How we all encode biases into the software and communities we create.
The state of diversity and inclusion in Drupal
What the Drupal Diversity & Inclusion group has been doing to improve representation, engagement, and leadership.
The plans for future DDI initiatives.
Ways to get involved in diversity issues with DDI, or with your local community or your workplace.

Stephen Cross, Scott Armstrong-Cezar, Hadiza Buge

When taking a law enforcement website from one platform to the next, it can seem like a daunting task with various stakeholders at play. These growing pains are what we, the ATF Media Branch, went through to launch the organization’s Drupal version of www.ATF.gov in 2016. This included taking a heuristic view of the former site, using data to improve user engagement, team setbacks as well as getting leadership to buy into the changes we wanted to make. After a rocky start, we put the right team and partners together and haven’t looked back.

Two years later, we are still adapting the website, on the verge of launching a Spanish version of the site, preparing for a Drupal 8 migration and continuing to enhance various aspects of the website while maintaining web accessibility for our target audience.

During this session, we plan to share lessons learned such as contracting, building citizen engagement and the way ahead.

Takeaways for our audience:

Our hope is that other government and commercial organizations can leverage what we have learned and pass this knowledge on to others considering this platform.

Topics Covered:

History of Drupal & ATF
Infrastructure and Hosting
Development Workflow
Revamping DMD
Drupal; moving forward
Law Enforcement Environment
Other Considerations:
Web Accessibility
Citizen Engagement

Tearyne Glover

In discussions about accessibility and diversity, our thoughts tend to jump to ARIA links, screen readers, and people of different ethnicities. While these are key aspects to both topics, this talk will push your thinking to considerations beyond accessibility and diversity basics. At its core, embracing accessibility provides us with a launching ramp to usability, and it helps us to serve and support a variety of users. Tearyne will detail her experiences creating user interfaces and experiences for the myERF user portal and with her teammates across ERF’s digital and print communication channels. Some of the topics she’ll cover are

Why accessibility is not just about accommodating disabilities, but core to creating a foundation for robust user experiences

Designing for audiences with different access to the internet – from different devices to no home or mobile internet access at all

Designing for users with different abilities, such as computer skill levels, education, and language proficiency

Providing content for audiences of different ages and socioeconomic backgrounds

Focusing on developing end-to-end experiences that ensure that your site, publications, and person-to-person experiences are accessible for diverse audiences

Using analytics data, user feedback surveys, and one-on-one interactions to improve your products

Kyle Day, Joshua Burnett, Cathleen Tracy

Giving up a manual task to automate it can feel like something straight out of a science fiction story like “Westworld”. Giving up the time required to innovate process improvements is also a difficult pill to swallow. We know automation is essential to any DevOps project, but why? Is it really worth the effort to automate a process or procedure?

The short answer: an investment in automation will pay you back in spades.

Our team will provide some real world examples of how automating tasks has helped transform our relationship with our platform, which hosts 20+ applications for the Department of Homeland Security, including:

Automating our code scanning process, reducing the process from 3 hours to 3 minutes
Automating our configuration scripts using Ansible Tower
Automating our maintenance scripts, including, removing old DB backups, automating our DB failover, putting our servers into maintenance mode, and more!

Dwayne McDaniel

Whether it is for re-using the same code or deploying a bug fix or just for better document management, one of the most important leaps any site builder will ever take in their path towards becoming a developer is learning a version control system, or VCS. Since Git is the standard VCS over 80% of developers, lets roll up our sleeves and dive in. The benefits far outweigh the efforts needed to learn this tooling. Once you start, you will wonder why it took you so long to unleash the power of this awesome tech.

This talk will briefly explore the need for git, the history and use cases. Then we will jump into how to get started and the basic organizational concepts. We will also examine Github, the web based Git hosting service. Bring your laptops to play along at home and get started before you leave the room.

Lynne Walsh

Is your team gearing up to migrate a site into Drupal 8? In this presentation, I’ll walk through the steps I’ve taken to prep my developer for a Drupal 8 migration. Topics covered will include the following:

Factors that affect migration
Different migration methods and when to use each
What to look for when investigating a legacy database*
How to use your inventory findings to plan out your migration
Creating a field mapping spreadsheet.
Planning a migration may seem like a daunting task for your developer, but it doesn't have to be. Be a resource for your developer and help them work smarter, and faster.
*This prep work can be done by a non-developer but may require an understanding of database sql queries.

Lindsey Catlett

Moving from a collection of single websites to a managed Drupal 8 platform can usher in high-value advantages and efficiencies such as accelerated site creation, sharing common features, user data, and content. This session is intended for technical audiences and will discuss some of the most common mistakes and misperceptions of Drupal 8 multisite platform-building in planning, architecture, development, deployment, and maintenance with a focus on:

- Key technical differences between single site vs. multi-site / platform projects
- Common Drupal 8 platform architecture patterns
- How to develop a code and feature management framework that scales

Philip Ahn

The Digital Services Playbook defines several guidelines towards improving government digital services by becoming more user-centric and putting user experience at the forefront of all service and product design. However, rules and regulations currently hinder both government agencies and professional service organizations from implementing design thinking principles due to a lack of resources. The process incorporates pragmatic UX design in the federal space. We’ll share our experience incorporating user-centric design in accordance with government regulations. Some of the topics we’ll cover are:

What limitations and roadblocks UX designers encounter when encountering government regulations
How to incorporate effective, yet efficient practices that still follow the design thinking framework
Using web analytics as a starting point to explore user needs and wants
How to start designing at a small scale and growing organically

Jitesh Doshi

(This is an update to my last year's ReactJS+Drupal presentation, with many improvements.)

ReactJS is the shiny new JavaScript framework that everybody wants to use in their next project. It's a component based approach to building JavaScript based web-applications and SPA's (single page applications). But any JavaScript front-end needs a RESTful service based back-end to store data and implement business logic. Drupal 8 has RESTful services built into core (Drupal 7 has it too, but in contrib modules). So if you have significant investments in Drupal, and need to implement pure HTML+JavaScript front-ends with Drupal back-end, or if you want to integrate rich web applications within your Drupal site, then this presentation could be useful.


What are JavaScript front-ends?
What are RESTful back-ends?
Setting up your ReactJS app with webpack, babel, VSCode
Configuring Drupal 8 to serve RESTful services
Writing a ReactJS application that leverages Drupal
Pulling content from Drupal into ReactJS app
Creating Drupal content from a ReactJS app
Authentication & Security
CORS (Cross Origin Resource Sharing)
AJAX, promises and async/await in ES6
React Native

Kurt Voelker

Increasingly in the digital age, government and community change-makers depend on reliable and digestible big data, disseminated across digital platforms. Two different products, the City Health Dashboard (cityhealthdashboard.com), and County Health Rankings and Roadmaps (countyhealthrankings.org), are leading the charge to impact the public health sector through thoughtful data visualization. Although they use similar data intended to reach similar audiences, the two websites rely on two different digital solutions to answer the same question: How do we set up public health change-makers to leverage national data and inspire action to lead to better health outcomes for the nation?

In this session, we will present a comparative case study of the two sites. We’ll walk you through a demonstration of the public data visualizations on both sites, and discuss what it took behind-the-scenes to build them. We’ll provide insight on the choices we made around UX and design and then look at how those choices resulted in differences in the narrative approach to discussing the data. We’ll also share the challenges we faced using different technologies, including headless Drupal and progressive decoupling, and our lessons learned from these two different approaches.

You will walk away with knowledge of:

Common UX and design challenges related to big data visualization in order to meet organizational goals.
How these UX solutions influence technology choices.
The strengths and weaknesses behind two different technical approaches: headless Drupal, and progressive decoupling.

Bonnie Strong

Successfully migrating to a new CMS is as much a Change Management program as it is a Technology project.

In this session we will examine how expectations around content migrations can interfere with their success.

With two government case studies, we'll examine how myths and fairy tales find their way into enterprise wide content management system changes.

In this fun interactive session you will learn:

The different strategic approaches to Drupal migrations
Decisions to hammer out before making the move
What to take with you, and what to leave behind on your great migration
Awareness of the tendency to 're-create' all the pain points of in your old technology in your shiny, new product.
Best Practices for a 'Discovery / Roadmap' process for a major enterprise wide migration to Drupal

Karl Kaufmann

It’s often too easy to scope a project based solely on a list of client requirements—and ultimate end goal—while overlooking where the real impact will be—with the end user. Whether your projects are non-profit or for-profit, connecting with your audience is what ultimately determines project success. Building upon personal project experiences, I’ll show you how applying user-centered design principles can help you to help your users—and yourself.

In this presentation, I’ll cover:

Incorporating design discovery—right from project kickoff—even for resource-constrained projects.
Breaking barriers between project stakeholders—with your clients and within your team—to boost project success.
Effective Product Management—and what to look out for.
Demonstrating that design is more than decoration, rather, it is needed to be baked in from the start to ensure project success.
This session is geared toward all experience levels, and attendees will leave with new ideas to improve their projects through the use of user-centered-design principles.

Chris Zietlow, Colin Crampton

Drupal excels at empowering people to manage data and curate their content. With the initiative towards further decoupled architectures, we can serve that content in a variety of new and interesting ways. Drupal is already really really good at storing and maintaining lots of data. Now imagine the possibilities of analyzing that data with machine learning tools. From predictively serving content based on event data and algorithms that study user trends to sentiment analysis, and beyond.

Imagine the capability to:

Suggest other related products a user might be interested in purchasing based on past trends
Find music recommendations based on a user’s recent interactions with other music tracks
Perform Lead Scoring (likelihood that a user will convert in the current session)
Understand overall user sentiment around a given topic and context
Predict financial trading patterns
Detect live earthquakes from twitter feeds, faster than a geologic center can issue a warning
These goals are now possible, along with much much more.

Together we'll embark on a journey to connect Drupal and Apache PredictionIO, using machine learning algorithms to learn how to gain better insights with predictive analysis on the data stored within Drupal.

Katie Eidson, Austin White, Orrin Rohrer, Lucas Riutzel

The 2017 Total Solar Eclipse across America shaped up to be one of the greatest scientific events of a generation - a sentiment shared by over 40 million viewers that tuned-in to NASA’s online coverage of all things Eclipse over just a few hours. Needless to say, there’s a significant amount of coordination and management for an event that had four times as many viewers as last year’s Super Bowl.

Austin White, who serves as the Program Manager for application development for www.nasa.gov, and Lucas Riutzel, Mobomo’s Technical Director for NASA Programs, dive into how to effectively manage a singular web event that involved dozens of vendors, the NASA Offices of Communications and Public Affairs, and other Federal agencies to provide a once-in-a-lifetime viewing experience for millions around the world.

Daniel Schiavone

There are two types of mistakes, errors of ignorance (mistakes we make because we don’t know enough), and errors of ineptitude (mistakes we make because we don’t use of what we know). No matter how much of an expert you are, a well-designed checklist can improve outcomes. A checklist is a written guide that walks you through the key steps of a complex procedure. This session builds on popular presentations I’ve given multiple times including, “10 Steps Not To Forget After Installing Drupal” and “The Ultimate Drupal Launch Checklist” to provide tools to better manage Drupal projects. Taking inspiration from Atul Gawande’s “The Checklist Manifesto: How to Get Things Right”, this session presents 4 checklists to improve results.

Out of the box Drupal? Drupal's flexibility comes at a cost. After installing Drupal developers still have a bit of work to do. The pre-development checklist provides a framework to help manage the initial buildout and provide a better, more efficient development experience for your team. The pre-development checklist covers often forgotten steps to get a fresh installation together like:

Configurations to build a site faster by making development easier at the start
Often missed configurations that should be in place from the start
Next we’ll review a buildout checklist that will cover best practices to pull a new Drupal site together. This includes a set of important, common elements to include in every Drupal buildout.

Your team spends hundreds of hours designing and building a Drupal. But when launch time comes there's still plenty of work to be done. The launch checklist covers launch time from every angle, providing orderly steps to avoid post launch surprises. The launch checklist includes:

Pre-Launch Steps to be sure your site is ready for prime time
Launch Steps to make your development site production quality
The post launch checklist is a guide to finish off a site and make the hand off to site maintainers go more smoothly including:

Monitoring a site after launch
Tools to put in place to collect user behavior
Steps to get your site noticed after launch
The pre-development checklist, buildout checklist, launch checklist, and post launch checklist are a great start to using checklists to improve building with Drupal from start to finish.

Session Objectives

Reveal how checklists can be used to manage a Drupal project
Offer tips on how to make a site more user friendly and builder friendly
Make launching Drupal sites go more smoothly
Share tools and tips for managing a successfully Drupal project

Project managers and team leads
Experienced site builders and developers

Brian Thompson

508 compliance and WCAG 2.0 have been around for decades in an attempt to make sure websites are accessible to all people, regardless of disability. While these guidelines have been around for quite some time, over the past few years we’ve seen an increase in high profile lawsuits for websites that are not accessible. In 2017, Winn Dixie lost a court case over the accessibility of their website as the court determined the $250,000 cost (according to Winn Dixie) to make the website accessible was not an undue burden. In today’s age, all websites should strive to be compliant with accessibility guidelines in order to ensure they are available to ALL potential website visitors.

While making a website compliant with 508 guidelines and WCAG 2.0 is not necessarily a large development effort, it can be a large effort to test each page to ensure compliance. This lengthy testing time can slow down delivery of features/functionality as it gets reviewed for compliance and as it is iterated on by developers. Wouldn’t it be better if developers and testers could have an objective report that checks for common accessibility requirements rather than having to manually check each page every time a change is made?

We’ll look at multiple tools produced by Google, WebAIM, Deque, and others that can be used to automatically generate a report on a site’s accessibility. After reviewing the available tools, we’ll look at ways they can be integrated into a development process so they are automatically run every time a change is made in order to save the time of testers. Attendees will leave with actual examples they can leverage on their own for semi-automated testing themselves as well as code examples that can be shared with development teams to even further automate the processing of ensuring an accessible web for all individuals.

Greg Schnippel

This past Spring, Drupal site maintainers raced to patch their sites to address back-to-back critical security issues on Drupal 7/8 that required action within hours. This is in an ever evolving security environment that is seeing a greater range of hostile actors executing more sophisticated, targeted, and damaging website attacks.

As a site owner, how worried should I be about these threats? What can I do besides keeping my modules patched? Are there other best practices for protecting my site from common attacks?

In this session, we will introduce the framework we are using to help our clients answer these questions by

Understanding the nature of the threat;
Assessing common Drupal site vulnerabilities or vectors;
Reviewing the different levels at which we need to think about security, ex.
Security protocols for site users;
Filtering and sanitizing user inputs;
Vulnerabilities from custom code;
Server hardening and monitoring;
and finally, surveying the different tools and techniques that can protect your site at each of these levels.
The goal of the presentation is to leave you with some ideas for implementing or upgrading your own security policy and the tools to enforce it.

Richard Allen

Most development agencies have started the migration from VM's to containers and using docker. With docker and docker-compose becoming a more mature technology, and the improvements by the drupal community; it's easier than ever to replace vm's in your development workflow with lighter weight containers.

However taking the next step from locals machines, to orchestration of a CI environment and production is new, rapidly changing space. I'd like to present a broad over of when and why you should work towards container orchestration, what technologies are available to help with this.

We'll cover:

Long term support and staff concerns. Being prepared to maintain production environments
How to avoid over complicating your business and maintaining a mountain of CI/Containers code.
What technologies and services exist to help orchestrate our environments.
We will NOT go into implementations or specific code for these services.
We will cover 'what' these services do and what problems they solve and some of the high level pro's and con's.
Common pitfall's and traps to avoid.

Daniel Rogers, Nick Rigby

A decoupled, API-first architecture can be fast and efficient. But it can also generate lots of different things in the oddest places: calendar events over here, a newsroom over there, and loads of actual content in a whole bunch of places. And if you’re a developer interacting directly with multiple separate APIs, frontend builds can get complicated quickly as dev teams and stakeholders struggle to understand how to access each different API in your ecosystem.

Enter Middleware. In this session, we untangle the mess of decoupling by creating a simple node based (node.js) Express Middleware server that will combine all of your multiple API's into a single endpoint, all query-able by GraphQl.

Imagine working on a single API that combines all of the separate API endpoints into a common schema, and becomes accessible via the powerful, and awesome GraphQl syntax.

Some benefits of Middleware/GraphQl:

Unlike (most) REST endpoints, use a single, simple HTTP request to make multiple requests, asking for only the fields needed.
Simplify, streamline and standardize JSON responses for frontend development.
Ability to add custom access, and caching functionality unique to the middleware.
Ability to provide custom callbacks on fields/entities/etc.
Ability to build custom callbacks to combine data from different API's into a single combined endpoint for your frontend clients.
And more!
In this session we will share simple examples of:

Single endpoint interacting with D7 site.
Single endpoint interacting with D8 site.
Single endpoint interacting with agnostic public API.
Single endpoint that combines several API endpoints into a single call, and subsequent result set
Plus, we’ll discuss common pitfalls, and some ideas that may help you build an awesomely powerful combined API!

Example middleware Repo: https://github.com/idfive/govcon-2018-middleware/settings

Example middleware sandbox: http://govcon-2018-starships.herokuapp.com/graphql

Greg Dunlap

The development community has seen an immense increase in productivity through automation and other tools created through the DevOps community. Why shouldn't the content strategy community take advantage of the same concepts? In this session I will outline a set of tools Lullabot uses to automate and enhance our content strategy practice. These include extended processing for content audits and inventories, improved testing of designs using real content, and the ability to identify problem content much earlier than normal to get a leg up on migrations.

Hannah Del Porto, Katie Fulton, Morgan Howell

Becoming a manager is awesome! You have a whole team of people you can pass projects off to, so that you can focus on strategy, innovation and leadership!

Wait, why aren't you passing projects off to your team? They won't do it the way you do it? They might make a mistake? You don't have time to explain every single thing to them?

We need to talk.

Giving up control of your work isn't easy, but it's the only way for you to move on to bigger challenges and to give your employees the opportunity to grow. So let's talk about how to identify which tasks make sense to pass on to your team, as well as some rules for supporting them in their new work without suffocating them with your "help".

This session is appropriate for all levels of people that do, could or should delegate some of their work to others.

Jason Hamrick

Despite what you may have read, SEO is not dead. But it has changed shape over the years. The good news is that maintaining your site’s search engine visibility doesn't have to be “one more thing on your plate.” While improving SEO can seem overwhelming, especially for government agencies, there are many ways to improve website search rankings as part of the daily editorial activities that you may already be engaged in: items like plain language content creation, accessibility compliance, and content sharing and syndication.

In this session, we will explore:

The basics of Search Engine Optimization
Which daily activities will deliver the most SEO improvements for government agencies
Why improving website SEO is part and parcel of achieving the public service mission
This session is for all levels of knowledge and all roles, from senior communications staff to junior content managers, as well as developers of all stripes.

Jen Harris

It doesn’t matter how great your content is if your users can’t find it. Drawing on experience designing Drupal platforms for government agencies and nonprofit organizations, learn how to leverage empirical design methods to define and evaluate effective information architecture. Discuss how a user-centered approach to IA supports practical Drupal site building concerns, such as establishing taxonomies and creating menus. Drupal site builders, content strategists and designers will come away with a set of simple yet powerful tools for addressing the complex task of defining and evaluating IA.

Key topics:

Generative and evaluative IA research methods for Drupal
Who should attend:

Drupal site builders
Content strategists

Kelly Albrecht

How do we know we are delivering the right things? How are we informing our customers of this work and getting their feedback effectively? How can we find out what will improve our product?

With all of the advances in DevOps, it is easy to focus on delivering more, faster, as our important measures of success. However, the DevOps mindset, of bringing Development and Operations closer together, is as much about listening for the answers to these questions as it is about delivering more features.

This lightening talk widens the common understanding of DevOps, positioning a broader mindset allowing us to truly measure our success by customer satisfaction.

Dwayne McDaniel

When a project goes wrong, most of the time it fails as a result of mismatched expectations. This can be avoided for most clients by following a repeatable and thorough discovery process. Understanding how to ask the right questions up front can mean the difference between happy clients who are eager to give you more business and nightmare clients who can never be satisfied.

This session will focus on:
Asking the right questions
Controlling the conversation
Creating maintainable expectations
Using discovery throughout your business

Ted Spencer

“What does a DIY* Site Builder need to know for Drupal 8?”

(*Do It Yourself)

Learn the basics of Composer to manage dependencies.

Learn to select production-ready modules.
Discover H5P interactive content.
Learn the basics of theming without becoming an expert themer.
Drupal 8 can work very well without dedicated developers if you follow a "Keep it Simple" philosophy.

Knowledge and resources you need:

ISP/host with SSH access
Basic knowledge of command line and Composer
Strong knowledge of Drupal model of Content Types, Taxonomies
Strong knowledge of Views and Blocks
Basic knowledge of Themes

Analyze needs/understand requirements: Content, Users, Interactions
Model the Relationships
Prioritize Requirements: Need Now, Want Next, and Can Wait
Find Modules: Stable, useful, well-supported

Install with Composer (Prod & Staging/Test on Host)
Clone Production to Staging/Test on host; Local dev optional
Configure Site with modules
Add Theme/Sub-theme
Add static content and menu blocks (About, Privacy, etc.)
Build Content Types & Taxonomies
Build Views and Blocks for interactive content.
Test real content with real users.
Rinse and repeat.
Feature Demonstration: H5P Interactive Content

HTML5 allows users to interact with content using browser-based functionality. H5P.org provides open source libraries to serve these content types from the H5P hub, allowing you to create, export, embed, and import this content across websites.
Demo H5P at VotersPledge.org

Noah Wolfe

Government contracts are increasingly asking for Agile project teams. But government systems from contracts to delivery are designed for Waterfall. How can we as project managers, engineers and designers meet client demands while still leveraging the benefits of our Agile methodology?

In this session I will look at three different vendor-client Agile relationships: the hands on Agile client, the waterfall client who is Agile curious, and the hard Waterfall client.

In each case we will explore:

- What patterns to expect from each of these client types, good and bad

- How to mitigate common challenges (for example translating requirements to user stories)

- Strategies to maintain your Agile approach while still meeting government accountability requirements like milestones, stage gates, and documentation

- How to bring your client into your Agile project

Attendees should walk away with new strategies to help them successfully deliver their project using Agile while still satisfying government contract needs.

Jorge Castedo

REST APIs have become an integral part of the development best practices emerging in the Web Application industry today. REST is a logical choice for building APIs, as it allows users to connect and interact with cloud services. Drupal 8 core includes the HAL module which allows for a consistent and easy way to hyperlink between resources in your API.

In this hands-on session, we will demonstrate how to consume remote APIs using Google API for address location. We will then pass data to the United States Postal Service for address verification and standardization. By utilizing this approach with these two API services, your website users can quickly and easily enter and verify addresses.

Jakob Perry

One of Drupal's biggest strengths is its ability to create semantic relationships between pieces of data. But what happens when site builders take these relationships too far?

We'll explore some of the most recent trends in site building like Paragraphs, Entity Reference Revisions, Field Collection, and Entity Reference in general.

Then we'll look at some examples of sites that abuse these references, creating performance, storage, and editorial issues.

Finally, we'll look at some of the new storage architecture used in the layout initiative and how entity references can be used in a reliable matter.

Stefanie Gray, Aaron Couch

Drupal has emerged as a powerful platform to help governments successfully manage open data initiatives. The Drupal distribution DKAN is a community-driven open data platform with a full suite of data cataloging, publishing, and visualization features.

Used by countries worldwide - plus U.S. states and federal agencies, including HealthData.gov, the USDA's National Agricultural Library, and the State of California - DKAN is a powerful tool for governments of all sizes to directly open up their data for use by researchers, entrepreneurs, regulatory bodies and citizens.

DKAN includes robust web service APIs, built-in compliance with federal and international open data standards, customizable metadata schema mapping, workflow management, data harvesting, and more.

In this talk, we'll explore how organizations are leveraging DKAN to power global government open data efforts and see how it's being used to track school performance, report water quality levels, measure and reduce veteran suicide rates, preview complex geospatial data, empower scientists to perform and share groundbreaking research, and much more.

Learn how government agencies are sharing their ideas and data with one another to build a better world through the DKAN open data community, and how you can get involved.

Clinton Herget

We all know DevOps is about tools, right? Download a few open-source packages, rev up your CI/CD engine and you're off to the races! FINALLY, we can have 100% error-free software deployments every 11 seconds with nary a human being involved!

Except that automation has never been a cure-all for broken processes, and installing Jenkins never fixed a toxic culture. For far too many companies, DevOps has become a buzzword for a set of tools that can be dropped onto a struggling team and result in instant productivity gains. This attitude is actively harmful for everyone involved: developers faced with ever-increasing expectations while navigating irreconcilable demands; clients and end users who aren't seeing promised reductions in errors or more rapid deployments; and managers attempting to maintain trust and avoid broken promises.

Clearly, if it's about anything, DevOps is about people. In this talk we attempt to put the jargon aside and find a definition of DevOps based on two simple questions: How many people in your organization are empowered to break things? And how can that power be given to many, many more of them?

Joe Crespo

There’s been a lot of ink spilled about how the RFP process is broken, particularly when it comes to technology projects. This session isn’t going to litigate various viewpoints on that front, because RFPs are not going anywhere anytime soon — especially when it comes to government projects.

I say, ignore the naysayers: your RFP can be brilliant!

I’m a former project manager and recovering developer, and now that I read and respond to RFPs for a living, I have a pretty good sense of what your partners are looking for and what you need to know from them in order to help you select a great fit for your project.

This session will discuss:

When being prescriptive is necessary and when it can hurt your project
How you can use initial goal-setting and audience work to frame your project
How aligning your stakeholders before the RFP pays dividends throughout the project
Why it’s important to include in your RFP the project constraints — like timeline and budget
How to get apples-to-apples comparisons from the proposals you receive
What you need to know from your potential partners

Sarat Tippaluru

Drupal 8 is a powerful CMS, and integrating Salesforce with it—one of the most widely used CRMs in the market—makes it user/member focused, too. Many organizations use Salesforce as their CRM to store member information. By integrating Drupal with Salesforce, members will be able to manage all their information that is stored in Salesforce within Drupal.

In this hands-on session, we’ll walk through how to create a connected app on Salesforce so that the Drupal site can establish a connection and information can be exchanged between Drupal and Salesforce. We’ll also walk through how to pull information from Salesforce into various fields in the Drupal website and how to push information from Drupal to Salesforce all the while making sure the information is always in sync.

Laura Lacy

Do you have a team that has lost their stride and lost interest in their work? Do you understand what really drives teams to perform their best? As a manager what can you do to create an environment where employees feel engaged and enjoy coming to work?

This session will:

Help you understand what research has taught us about motivation and learn how that may contradict what you currently expect.
Provide case studies on how the open-source community has motivated people to build and enhance platforms like Drupal.
Help you understand the difference between intrinsic and extrinsic motivation and help you understand why one is better than the other.
Teach you techniques to increase morale, productivity and your final product.
This session is appropriate for all executives, project managers, scrum masters and anyone who is leading a team. You'll walk away with concrete activities and exercises that you can put to use right away.

Amy Shropshire, Annie Stone

Personalization is the new digital experience battleground, but what kind of personalization is most effective and how do you implement it? While adding personalization to your digital assets may seem daunting there are many strategies to phase in personalization and improve citizen experience and engagement on your site.

In this session we will review:

The Good - How to choose the right level of personalization and develop a strategy of gradual implementation that allows you to improve engagement on your platform. We'll also look at how to measure the effectiveness of your personalization efforts.

The Bad - We want our audience to have the best experience possible and believe that personalization can help give them this. But what if we're off the mark? We'll look at how to determine if your strategy isn't quite giving your users what they're actually looking for and how to turn it around.

The Creepy - A recent study found that 75% of consumers find many forms of marketing personalization at least somewhat creepy and 40% of brands admit to being creepy. Yikes. Let's talk about how to fix that.

GDPR - If you're not tired of all the emails yet, no discussion on personalization would be complete without a look at what all this means in the world of GDPR. Think it doesn't affect you because you're not operating in the EU? Well... We'll chat about that.


Amy Shropshire, Founder and Principal Consultant at CASK Communications

Annie Stone, Marketing Director at Phase2

Joe Shindelar

Sharing is at the root of our community. We share code, knowledge, experiences, and sometimes even conflict—all in the interest of making Drupal better, our community stronger, and improving ourselves. But sharing is rarely easy to do. Competing forces like lack of time, imposter syndrome, and the lack of a safety net to fall back on can make it feel like we don't have anything worth contributing.

I believe that everyone has something to share. And that contributions comes in many different shapes and sizes. But I also totally recognize that figuring out what that is, or how to get involved can be super challenging.

In this session I'll draw from my 10+ years of experience working on, with, and in, open-source communities to share ideas about:

Different ways that you can contribute to open-source. Some of which involve code, and others that don't
Our local community and opportunities to get involved
The value of contributing to open-source for both individuals and businesses
Saying no, and being comfortable with doing so
Ways to encourage others around you, and help to foster new contributors
This session is for anyone who is interested in learning about how to get more involved in the Drupal community. And how doing so can lead to tangible outcomes and opportunities for growth both in your personal and professional life.

Brian Perry, Andrew Mallis

The original presenter did not make it in time for this talk, so instead some audience members talked Gatsby for the room.

To cache or not to cache? That question has confounded the Drupal community for years and created a whole slew of separate challenges along the way. How do we create performant sites at scale while still allowing content editors to use the Drupal platform they know and love?

Static site generation has emerged as an alternative - rendering views in advance to lessen the burderns on APIs and other backend systems. Additionally, this approach yields faster rendering in browser, better experiences for low-bandwith connections, and better support for SEO. Enter Gatsby - an open source static site generator built with React. Gatsby allows developers to create rich, single page apps using Drupal as a backend.

In this session we'll introduce the fundamentals of static site generation. In addition, we'll do some hands on coding to connect to an exisiting Drupal site to a Gatsby codebase to generate and deploy static views.

Krystee Dryer

Content migration is often one of the most time-consuming headaches of a web redesign or build, but it’s also one of the most critical elements of a successful site. Don’t think it’s just getting your content moved from one system to another. It is the “meat” of your website and doing it without much thought can have disastrous effects on your SEO and your user experience.

Having an effective content migration process helps mitigate these issues and ensures the new website is optimized for search and ensures the user finds the content they are looking for.

You’ll walk away from this session with a process for:

Creating a scripting process to manage changing inline URLs in body content
Handling referenced content that may or may not be migrated
Scripting the creation of 301 redirects for SEO
Measuring the impact of 301s for dissolved content through analytics
Mitigating bad user experience resulting from 301s for dissolved content with an innovative approach to avoid 404 errors altogether

Shani Felder

One thing that makes Drupal CMS stand apart from all others is its vast community of users available right at our fingertips on Drupal.org. We ask and browse questions, share versatile solutions, or simply high five each other in our quests to make beautiful, functional, and accessible government websites. However, some solutions are quickly found and even more quickly forgotten in our haste to fulfill last minute requests or push out overdue releases. Sometimes, we forget to share these solutions back into our great community. This session will cover some of the tools, tips, modules, and tricks experienced site builders are using every day, but may not exist to those new to Drupal.

This session is for site builders who might wonder:

"Why didn't I know about this module 3 websites ago?"
"Isn't there a better way to search and sort all of this content?"
"Will this task require custom code?"
"Is there a module for that??"
You'll learn about:

Modules that make viewing and using the Drupal admin area easier
Simple Drush (Drupal Shell) commands to help you manage your site quickly
Tried and true resources that help you learn Drupal at your own pace
What other attendees are doing and using during a share and tell segment
Other gems that make site building easier
This session will be geared to those using Drupal 7, but with an emphasis on tools and modules also available in Drupal 8.

Mike Pirog

Continuous integration methodologies and containerization technology can deliver huge efficiency gains for web development teams. However, even though many teams are overburdened with feature requests, new projects, and other #DevProblems they still still spend countless, often needless hours maintaining complex local development setups, out-of-date CI config files or those deploy scripts your last Lead Engineer thought were a "good idea", turning the promise of automated everything into a sad sad story of endless churn and technical debt.

In this session we will demonstrate how Lando, a free and open source DevOps tool built on Docker with a vibrant and growing community can simplify your local development and continuous integration requirements with a single in-version-control config file that can be shared across developers and projects, greatly reducing setup and maintenance hours and freeing up developers to develop.

We will cover:

Lando basics
Using Lando to set up a basic Drupal project
Configuring Lando automation and tests locally
Running those same tests in a CI environment

Who Should Attend:

Dev team leaders looking for "a better way"
Docker-frustrated developers
Biz focused people looking to level up their DevOps efficiency
Fans of Miley Cyrus

What You’ll End Up With:

The knowledge that easy and powerful local development and continuous integration tools are available and within your grasp
Appreciation that there is now a tool that can unify the local and CI experience
Example code of a single config file that can power a good deal of your organizations deploy pipeline
A sigh of relief knowing that your DevOps struggles and wrangling days will soon be behind you

Brian Perry

Storybook is a development environment for UI components built using JavaScript frameworks including React, Vue, and Angular. While it does share some similarities to projects like Pattern Lab, it also provides some unique options for visualizing the interactive state of your application, along with an extensive set of addons. Using a small set of React components as an example this session will walk through:

Creating a storybook project
Writing stories for your components
Editing component props interactively with the Knobs addon
Testing with the StoryShots and Specs addons
Exporting your storybook as a static app

Darcy Grisier, Danny Lopes, Matthew Hand, Jing Wang

With the rollout of the new WCAG 2.0 guidelines, federal sites are now required to include new HTML elements and ARIA landmarks and attributes. Ensuring ongoing compliance with those standards and with usability requirements can be costly and time consuming.

Our presentation will explore some of the ways the web development team at Palladian Partners uses software automation to

Reduce the burden of maintenance on website managers
Test for 508 compliance errors and functional errors introduced by developers or website managers before the pages go live
Visually identify and report on discrepancies between new and old versions of a site, so we can quickly identify unintentional changes (font size, image placement, moved blocks of content, missing components, etc.)
Key session takeaways for our attendees:

Automatically meet Federal usability guidelines for file size and file type labeling using the Download Link Labeler module.
Learn a process for Automated 508 Compliance and Functional Usability Testing using Katalon Studio.
Experience a demonstration of a Visual Regression Testing Tool using the Backstop.JS framework.

Jeremy Koulish

UPDATE: Demo site with presentation and examples: http://jpresentation.dev.bixal.net/

Before Drupal 8 and its integration of Twig, limited PHP knowledge generally meant limited control over your site's theme layer, particularly its templates and markup. Thanks the the power of Twig, you no longer need to be a PHP wizard to work magic with custom templating.

This session walks through the basic structure and usage of Twig templates, including:

How do you know when a Twig override is necessary?
How do you set up a custom Twig override?
How do you determine the right way to access a particular variable's value from a Twig file?
What are the different ways to generate a custom class or other attribute?
The session will also provide a real-world example, demonstrating how jump links to sections within a node's main content can be built in Twig with relative ease.

Junaid Masoodi

If you have been working with accessibility on the web, you’ll know that the current Web Content Accessibility Guidelines (WCAG version 2.0) have been around since 2008. In those nine years, the web and the way we interact with it has changed — a lot. Since version 2.0 was released the smartphone market became accessible to developers with the App Store, Google Chrome 1.0 was released, and GPS was starting to enter consumer electronics. That’s an incredible amount of change, and the WCAG needs to keep up.

Last September, a first draft of WCAG 2.1 was released by the working group overseeing the updates which included an additional set of 21 new success criteria to help content and application creators accommodate users with different needs. These new success criteria focus on the usability of these new technologies for the great diversity of users that are active on the web.

With this focus on usability, I found that the majority of the WCAG 2.1 success criteria fit into Nielsen’s 10 Usability Heuristics. Those heuristics are a valuable guideline for interaction design, and can help us make usable products for everyone. I strongly believe in the tie between accessibility and usability when creating content for the web. You can create beautifully usable and accessible content by following these Heuristics, with a consideration for the needs of users with assistive technology.

By the end of seesion you will have
* Understanding of Usability.
* Understanding of Accessibility.
* Understanding of why it is important to know about Accessibility before being a designer.
* Understanding of balancing contrast.
* Understanding of How to design for Accessibility at large.

It's often difficult for Project Managers, CIOs or other leadership to understand "computer stuff". In this session, we will provide 6 high level lightning talks on topics that will break down why leadership should understand technology issues from a high level birds eye perspective.

We'll provide a bird's eye view with these lightning talks each of about 6 minutes:

How Great Semi-Automated QA/UAT workflow provides Continuous Collaboration : Alex Urevick-Ackelsberg
Local Environments and Why You Should Care : Nneka Hector
Devops: the Onramp to Better Delivery Through Customer Satisfaction : Kelly Albrecht
Accessibility : Helena McCabe
Benefits of GDPR - Peter Barclay


Drupal is a registered trademark of Dries Buytaert.