DrupalCamp Twin Cities 2024

Introduction

Videos from DrupalCamp Twin Cities 2024

Video Sponsor(s) / Provided by
Curated Videos
Description
What happens when the web team drifts apart?
What happens when they lose sight of shared goals?
Everyone optimizes their own chart.
Each role maximizes their own controls.

Hear the story of a new stakeholder
Who asks for a seemingly simple tweak
And is answered by a chain of scolders,
Each too siloed to find what they all seek.

This session will examine dynamics
Present in nearly all web teams trying
To balance many different metrics
Without clear guidance. And without crying.

Before you get lost in the WebOps weeds,
Navigate the hierarchy of needs.

About the Speaker
Steve Persch
Director, Developer Relations at Pantheon

https://2024.twincitiesdrupal.org/session/dramatic-and-poetical-tale-website-hierarchy-needs
Description
At UMN we are running large multi-site instances that share a codebase. Many customers downstream of us build with the design system we develop and others create custom-developed solutions that build upon our components.

To continually deliver quality work while avoiding regressions for our customers, we implemented both visual regression tests using BackstopJS and end-to-end functional tests with Cypress. This allows us to develop enhancements to our features and catch issues without relying on the slow manual testing process. We also made our tooling available to our customers to use with their custom solutions.

We would like to share this process and talk about the benefits of automated regression testing.

Thank you!

About the Speakers
chamil amarakoon

Devin Kendall
Web Developer at University of Minnesota

https://2024.twincitiesdrupal.org/session/automated-regression-testing
Description
Every day, visitors send and receive data from your web site. We know it is secure if the web developers are using industry standard practices, but how does it work?

On modern websites, pretty much every bit of communication between a visitor and each website is encrypted for the security of the site owners and visitors. And when you use a password to log in to a Drupal site, the site doesn’t know your password; they only store an encrypted version of the password. In this session, we will explain in not-too-technical language how these technologies work. We will also talk about other things Drupal does to provide security like salting hashes, login form limiting, etc.

After this session, you will understand the basics of how data on websites is secured and why it is smart to use standard practices for best security. We will also talk about resources for improving security further on your site, if desired.

About the Speaker
Dan Ficker
Staff Customer Success Engineer at Pantheon

https://2024.twincitiesdrupal.org/session/how-your-website-handles-secure-data
Description
One of the key elements of the Starshot Initiative is the rapidly evolving system for Recipes. Designed to accelerate site-building, recipes will help people new to Drupal to solve for common needs, and for users of all skill levels to quickly build out content architectures using best practices.

This talk will discuss the elements that make up a recipe, how to use recipes, and what new capabilities are still in development. We'll also do a deep dive into the Events recipe and its available add-ons, allowing you meet even complex requirements quickly and without custom code.

About the Speaker
Martin Anderson-Clutz
Senior Solutions Engineer at Acquia

https://2024.twincitiesdrupal.org/session/recipes-its-about-time
Description
Come One, Come All! I built a theme system using taxonomy, configuration and preprocessors. Why you ask?! To create a Pantheon upstream site that has all the components needed for a content editor to start building a downstream site without the need for further development while getting all the brand colors you need. Using this system a second site was built and launched within 30 days of the first site.

This code walk thru is for Site Builders, Full Stack Developers and Themers. We will walk thru the configuration setup and thought process of the Taxonomy, Content Types and Components; stroll over the inspector to investigate the page, css variables and components; and finally we will dive into the preprocesses and logic that tie it all together.

As you leave, I hope you will have gained the insight into why and how you could build a dynamic theme system and the inspiration to dream and build your own interconnecting ambitious system.

About the Speaker
Oz Heller
Software Engineer at Nerdery

https://2024.twincitiesdrupal.org/session/building-theme-cascade-downstream-site-building
Description
The contract is signed, the project team is defined, and goals are set. So you’re probably thinking, let’s kick the project off. Although it’s exciting to jump in and make progress on a new project, there’s a lot to think about before getting started.

Successful projects are a result of great partnerships, and it’s important to establish a strong project team and be on the same page from the start. In this session, we’ll cover the importance of:

Business and client team building
Encouraging Trust through transparency and delivery
Empowering decision-makers with a discovery-first approach
Performing phased projects to deliver success when dealing with high-risk and uncertainty

Synopsis
In the tech agency space, agencies may perform poorly because they act as a "middle man" instead of a "facilitator". Whether you’re an agency or work with one, join us to learn the best practices for successful project management and a successful agency partnership.

Learning objectives
At the end of this session, attendees will be able to host valuable and transparent team-building activities with their partner businesses and produce successful projects.

Content focus area
Leadership, Management & Business

Target audience
This session is for project teams (both at an agency and within an organization) who are interested in effectively managing projects from the start.

Prerequisites
Attendees will get the most out of this session by being familiar with business-client relationships.

About the Speaker
Norah Medlin
Senior Technical Project Manager at tekNorah and Digital Career Sandbox

https://2024.twincitiesdrupal.org/session/maximizing-project-success-high-value-partnerships
Description
Workspaces fills a longstanding gap in the Drupal core content management lifecycle for site managers needing to create, review, approve, and publish groups of content simultaneously. With Drupal 11, we now (finally!) have a way to easily stage multiple content changes for your site and publish them all together, when ready.

This session is geared toward Drupal content managers, site builders, and site administrators who want to learn more about this new functionality in Drupal 11. The session will cover:

General overview of Workspaces and common use cases that it addresses
Explore multiple approaches to leveraging Workspaces for content management
Review how Workspaces fits into content management workflows
Discuss current limitations of Workspaces and potential workarounds

About the Speaker
Scott Weston
Senior Director, Drupal Engineering at Bounteous Accolite

https://2024.twincitiesdrupal.org/session/wonderful-world-workspaces
Description
A modern Drupal development environment enables the developer to work at peak efficiency to create sustainable code that meets modern coding standards and is bug-free (hopefully!) By leveraging a modern IDE like Visual Studio Code, along with a recommended set of extensions and configuring, one can put themselves in a position to succeed.

This session will demonstrate how to set up Visual Studio Code to work with DDEV and a number of code quality tools to maximize a developer's efficiency. This includes integrating phpcs, phpcbf, PhpStan, and PHPUnit with Visual Studio Code's interface as well as making it easy to run PHPUnit tests directly from the Visual Studio Code interface. Furthermore, guidance will be provided on how to configure Xdebug with Visual Studio Code.

Attendees of this session will leave with the knowledge necessary to configure their copy of Visual Studio Code as will be demonstrated in the session.

About the Speaker
Michael Anello
Developer and trainer at DrupalEasy

https://2024.twincitiesdrupal.org/session/maximizing-visual-studio-code-ddev-drupal-developers
Description
So much of our lives is spent working. We talk about work/life balance. And sometimes we talk about harder things, like Imposter Syndrome, or burnout, or "mental health". But we rarely talk about mental illness or about how our emotions affect our lives and our work.

At the root of Imposter Syndrome is shame. Shame is a complex emotion. And, in addition to imposter syndrome and burnout, shame can lead to a myriad of problems in our work lives: cycles of procrastination then frenzied work, avoiding work issues, poor boundaries, reduced problem solving ability, black and white thinking, criticism, and abusive behavior. Sometimes we may not even recognize that we are feeling shame while it is affecting our behaviors.

Despite what Instagram ads may say, there is no easy, 1-minute fix. But understanding the complexities of shame has helped me to begin to navigate these issues and start to heal. We cannot be afraid to talk about shame.

In this session, we will:

define shame, imposter syndrome, burnout, etc.
discuss what causes shame
analyze how shame works
seek solutions

About the Speaker
John Albin Wilkins
Frontend & Full Stack Developer

https://2024.twincitiesdrupal.org/session/imposter-syndromes-bigger-badder-sibling-shame
Description
Do you understand how Drupal's configuration system is supposed to work? Do you ever experience inconsistencies between environments? Are you interested in building a best-practice continuous integration and deployment solution with configuration validation? This session, led by a 10-year maintainer of Drupal's configuration system, will focus on how the configuration management system is designed to work, explore its integration with continuous integration systems, identify common configuration pitfalls, and discuss how initiatives like Recipes will enhance the robustness of your site's configuration.

About the Speaker
Matthew Tift
Lead Engineer at Lullabot

https://2024.twincitiesdrupal.org/session/principles-configuration-management
Description
In 2017, the University of Minnesota began an ambitious project to initiate an evolving design system made up of modular components that can be combined in numerous ways to make creative and consistent University websites. A collaborative effort across departments led by University Relations, the Folwell theme is now in use across hundreds of University of Minnesota Drupal websites and continues its evolution.

This presentation will review the history of this effort, the evolution of Folwell over time, and will include a demo of some components and sites. We will walk through the development process from feature request to production release. Finally, we will discuss some of the challenges we’ve encountered, and provide a sneak peek into plans for Folwell 2.0.

About the Speakers
Dimitri Tadege
Senior Developer and Technical Team Lead at University of Minnesota

Kieran Kohlhase
Product Owner - UMN Drupal Platform at University of Minnesota

ALINA RIMBU
University of Minnesota

https://2024.twincitiesdrupal.org/session/theming-scale-case-study-folwell-university-minnesota
Description
How can a group of thousands of people talk about and decide anything? How's this 'community' concept supposed to work at scale, even in theory?

Any Free/Libre Open Source Software project will have elements of do-ocracy (rule of those who do the work), but not all decisions should devolve to implementors. A better ideal is that decisions should be made by the people who are most affected.

Particularly when a decision strongly impacts more than those who carry it out, we need better ways of making decisions that give everyone their say. This starts by letting people by heard by everyone else. Fortunately, we can scale conversations and decisions in a fair and truly democratic way.

Learn why meritocracy ("rule of those with merit") is a bogus and harmful concept.
Gain a passing familiarity with various ways decisions are or have been made in Drupal and other projects.
Add sociocracy and sortition to your vocabulary and understand how these esoteric concepts can help our community scale.
Get introduced to (and give feedback on) Visions Unite, non-Drupal free software for mass communication mediated by the participants.
The most important things we have to do need to be done together. And our work together is most powerful when we make decisions about it together.

This session is for people working on developing large communities about Drupal, with Drupal, or otherwise— or existing in society.

About the Speaker
Benjamin Melançon
Developer & Worker/Owner at Agaric Technology Collective

https://2024.twincitiesdrupal.org/session/scaling-community-conversations-and-decisions
Description
At its core, content is about people.

Despite what sometimes overzealous JavaScript developers and architectural purists say, the content management system remains unique as a nexus of collaboration between disparate content and technical personas, all with their own prerogatives and goals—and for most, headless CMSs aren't the right choice.

The fact is that the CMS has stood alone in its ecological niche in the software world, bringing together people across the back office to work together to push the end user experience forward. Neither headless and composable CMSs, with their focus on developers, and hybrid-headless and monolithic CMSs, with their focus on editors, have an entirely clear answer for what the CMS's future holds.

That's where the Universal CMS comes in.

The Universal CMS paradigm restores the grand compromise that characterized the static web CMS era, with its excellent stories for developers and content editors as first-class citizens. The CMS of the future is universally editable, universally developable, and universally deployable, irrespective of the presentation layer—whether that means Vue.js or Vision Pro, Next.js or native mobile, Amazon Alexa or Angular, WebXR or WebAssembly.

Let's build the Universal CMS that honors the people at the center of all content. Are you in?

Preston So
Preston So (he/they) is a product executive with 20 years in software and 9 years leading product, design, engineering, and developer relations functions at organizations such as Oracle, Acquia, dotCMS, Time Inc., and Gatsby. He is Vice President, Product at dotCMS and the author of Immersive Content and Usability (A Book Apart, 2023), Gatsby: The Definitive Guide (O'Reilly, 2021), Voice Content and Usability (A Book Apart, 2021), and Decoupled Drupal in Practice (Apress, 2018).

Named “the smartest guy in the field” by Content Strategy for Mobile author Karen McGrane in 2024 and “probably the smartest person working in this industry right now” by Web Content Management author Deane Barker in 2020, Preston is a globally recognized authority on the intersections of content, design, and code. He is an editor at A List Apart and former top-read columnist at CMSWire. Preston is a frequent presenter with 17 years of speaking engagements spanning over 50 conferences, including SXSW Interactive (2017, 2017 encore, 2018) and An Event Apart (2020–22) and keynotes in three languages. He is based in New York City, where he can often be found immersing himself in languages that are endangered or underserved.
Description
But Drupal can already render your website on the server! Why would you want to decouple your frontend and have it render your website in JavaScript on the server?

If JavaScript developers have just discovered that rendering on the server is faster, why aren’t we just going back to Drupal’s PHP server rendering? Because it’s simpler. With React Server Components, frontend developers can leverage their knowledge of Fetch-based API integration without having to learn any PHP, Twig, Render API, library definitions, or Drupal behaviors.

React Server Components are a new feature of React v19. This session will focus on Next Drupal, a set of Drupal and NPM modules that integrates Drupal’s JSON:API or GraphQL with Next.js, an opinionated React framework. We will discuss how the differences between JavaScript's import statement and PHP's include statement affect the way we need to build and route our application. And we will get into specifics of reducing bundle size and how to weave interactive features with server-rendered content.

In this session we will cover the following topics:

Why? Just why?
Okay, but how?
React Server Components in React 19 and Next.js' App Router
Async promises on the server
Client Components and the "use client" directive
Suspense boundaries and React rehydration
How the Next module improves the Drupal content editor experience

About the Speaker
John Albin Wilkins
Frontend & Full Stack Developer

https://2024.twincitiesdrupal.org/session/server-side-rendering-drupal-site-nextjs
Description
Join me for an engaging and insightful session where I take you through the remarkable two-year journey of transforming a large university's custom-built CMS into a modern, efficient Drupal 10 website hosted on Pantheon. This presentation is designed to share the experiences, challenges, and triumphs.

I’ll start by diving into the initial pre-project discovery phase, where we meticulously gathered requirements and an understanding of the unique needs of the university. Moving forward, I’ll explore the thoughtful development of a comprehensive content strategy and the collaborative efforts that shaped the website's design. You'll hear from both the client's and the developers' perspectives, providing a holistic view of the entire process.

I’ll also cover the development phase, detailing the steps taken to build the new site and move content from the old site and some lessons learned! Throughout the presentation, I'll emphasize the importance of community

About the Speaker
Adam Fuchs
Director of Development at Electric Citizen

https://2024.twincitiesdrupal.org/session/uw-eau-claire-rebuild-case-study
Description
It is suggested that you read the following, as the presentation will begin where this ends. Thank you.

You are all leaders; in your families and your communities. You are responsible for helping others do and be better, not just for themselves, but for collective growth and well-being.

And so this is about productivity, efficiency, optimization. Though we must also remind ourselves that the pursuit of "success" and excellence, can itself be an obstacle to achieving these goals.

So what do we mean, when we say "productivity"?

We're looking at what is called Human Capital Theory & Economic Development. Essentially, there are three components to any economy, raw materials, labor and capital; but increasing any of these ends in a plateau of growth, not continued exponential growth. The only resource able to be increased with seeming perpetual benefits to growth, is education.

So what is Education, and how do we define the value?

Whether it is a D-1 athlete, or a legacy admission, and granted these are stereotypes/hyperboles ... it is not unfathomable to think that past metrics of "education" are not sufficient.

Even according to Economic theory, numbers are considered good if they can explain 20-35% of the correlations we see in the data (via the R-squared and Adjusted R-squared metric.)

Moreover, we must then ask ourselves, does money equal success? Or does education guarantee success?

Regardless, in order to attract and retain the best talent, it seems now more than ever, one needs to be paid in something more than money.

And so this is where our presentation begins ... what does that that mean, and what might that look like? To be paid in value more than money?

Yes, this is complex; yet it is also simple. We're going to break it down into accessible components, and then see how they combine to create the individuals we experience.

Because at our core, each of us just wants to feel productive. Though exactly how to do that is complicated by the unique situation our society presently finds itself confronting.

As we start to seek safety from ourselves.

And so begin to ask, who are we?

And as leaders, how can we better see others around us, so as to serve them better and so further nurture individual and collective growth ... yes/no/maybe?

And this is the start of the conversation :)

Agenda:
0-5m: Introductions
5-25m: Presentation
25-40m: Conversation

About Canin Carlos
I've been working with code since MySpace, and playing with Drupal since 2008 ... This talk is about tech as a community.

I will be presenting the core ideas behind, within and around, Manifesting Empathy & ForWhiteMenOnly for the first time publicly.

Though this conversation will be open to, and intended for, all.

The goal is to provide alternative ways of looking at diversity while providing a safe space for exploration and conversation. We'll explore ways to process diverse experiences, and gain tools to optimize growing with them.

I was adopted by Scandinavian farm-raised Evangelical upper-middle class Minnesotans, as an infant. I graduated K-12 from the "#1 Traditional School in the State of Minnesota", or something like that; and I now work as a web developer for a research institute at the UofM.

About 7 years ago I reconnected with my biological family; and by the time of this presentation, will hopefully have completed my degree in Economics, Statistics and Communications from the University of Minnesota.

Diversity cannot be taught, it can only be experienced. I am an experience, though have structured myself to be as educational and informative as possible in these conversations. So I am an experience that you will walk away from, not just with memories, but with tools for better-navigating an ever-diversifying world.

Vamo puesh, si o no?

Canin Carlos | DreamFreely

https://2024.twincitiesdrupal.org/session/diversity-psychological-safety
Description
For those who are new to Drupal, or who simply want to know what's new in Drupal, let's take a tour. We'll look at the new functionality that has landed in the past year. And take a glimpse at what's on the horizon.

Features we'll talk about include:

Components
ECA (Event Condition Action)
Experience Builder
Recipes
Maybe more (as I get demos ready)
There's still time to impact what we discuss. Let me know in the comments what you want to see.

About the Speaker
Chris Weber
Drupal Support Manager at Velir

https://2024.twincitiesdrupal.org/session/tour-new-drupal
Description
So many websites suffer from content bloat, especially the all-important homepage, as they try to meet all the needs of a wide-ranging audience (including internal staff and leadership).

Multiple call-to-action sections, image sliders, department news, upcoming events, workshops, registrations, mission statements, and navigation menus that stretch on and on. It’s all too much!

Let’s put the focus back where it belongs – on your users. What do they need most? What actions and pathways do you want them to take? How can we simplify the navigation and make a better user experience?

We’ll move through the stages of resolution, from identifying when there is a problem to the joys of finding solutions. Using real case-studies from past projects, we’ll talk about strategies for taming the homepage, and applying the same lessons to your site navigation and other landing pages.

About the Speaker
Dan Moriarty
CEO and Creative Director at Electric Citizen

https://2024.twincitiesdrupal.org/session/dont-put-it-all-homepage
Description
Learning to work with others can be daunting, scary, frustrating and can even feel downright impossible some days. Compile that with learning to code, implementing a new feature, migrating hosts, upgrading Drupal versions, or simply trying to commit a configuration change and the mood can quickly turn less than fantastic.

Let's talk about ways to improve processes! Let's talk about ways you can improve the workflow even with less than enthusiastic teammates! Let's talk everyone's favorite things in development like documentation, communication, version control, documentation, training, morale, and more documentation!

About the Speaker
Jennifer Brueske
Drupal Developer at Nationwide IT Services, Inc

https://2024.twincitiesdrupal.org/session/how-love-your-team-without-get-along-shirt
Description
The IXP-Fellowship, a Drupal community initiative for onboarding inexperienced developers has its initial goal of using Drupal's contribution credit system as an incentive for Drupal organizations to hire new and inexperienced Drupal developers.

One of the major challenges for new Drupal developers is landing their first paid gig. As a community, we can't expect Drupal to grow if there are limited ways for new, inexperienced Drupal developers to gain that important initial experience.

Over the past year, the IXP community initiative has worked to define and implement a process to utilize existing drupal.org functionality to incentivize Drupal agencies and other organizations to hire trained, inexperienced developers in exchange for drupal.org commit credits.

In this session, you'll learn about the overall scope of the initiative, its current status, and how you and/or your organization can get involved.

About the Speaker
Michael Anello
Developer and trainer at DrupalEasy

https://2024.twincitiesdrupal.org/session/ixp-community-initiative-using-contribution-credits-encourage-organizations-hire-new-drupal
Description
A year ago I decided to start live streaming development as a way to motivate myself to learn new things. Today, I stream almost every day, I've built a full stack application using TypeScript, I've learned game development, and I've done things with websockets and game engines that probably shouldn't be done.

It all started by talking to myself in front of a camera and pressing "Start stream".

In this session, we'll talk about how using live streaming became the ultimate rubber duck for me, and how it motivated me to learn and try new things, build a community, and expand my network around the globe. We'll also cover what tools are available, how to set up a stream, and some tips and tricks I've picked up in the past year of streaming things that aren't me playing online games.

If you're interested in learning more, don't forget to click that "Follow"... I mean "Register" button and attend this session.

About the Speaker
JD Flynn
Software Engineer

https://2024.twincitiesdrupal.org/session/why-i-talk-myself-and-how-it-made-me-better-developer
Description
Join us for an engaging panel discussion on the Drupal Starshot (Drupal CMS) initiative, an ambitious project aimed at propelling Drupal into the next decade of innovation. Our panel of industry experts and community leaders will delve into the vision behind Starshot and discuss its potential to transform the Drupal ecosystem.

In this session, we will explore:

The goals and roadmap of the Starshot initiative
Key projects and milestones that will drive Drupal's evolution
Opportunities for community involvement and collaboration
Insights from panelists on the future of open-source development
This discussion is designed for Drupal enthusiasts of all backgrounds, from seasoned developers to newcomers eager to contribute. Come with your questions and ideas, and be a part of shaping the future of Drupal!

Don't miss this opportunity to connect with thought leaders and fellow community members as we chart the course for Drupal's next era.

About the Speakers
Martin Anderson-Clutz
Senior Solutions Engineer at Acquia

https://2024.twincitiesdrupal.org/session/drupal-starshot-panel-discussion-shaping-future-together
Description
The goal of this session is to explore OSS (open source software) themes, both core and contributed, to find useful techniques and snippets of code that help speed up theme development or upgrade older themes.

Projects we might explore include 4Kitchens Emulsify, DrupalX, Wingsuit, Olivero, Rain, DrupalGovCon2017 theme, and more.

If you are new to Drupal or haven't done much theming this session should glance at what's available and how you could leverage those to build or upgrade your theme.

About the Speaker
Bernardo Martinez
Web dev at Vaultes

https://2024.twincitiesdrupal.org/session/frankentheme-shortcuts-fast-theme-development
Description
Have you ever considered migrating your sites from your current hosting provider? This session talks about the options you have, the pros and cons, the process, the timeline, the costs involved, and risks you may encounter. We will look at three ways to migrate your sites. From simple to complex migrations that include dev and staging sites in addition to the live/prod site. We'll discuss how you can move your sites to your own accounts on AWS, Digital Ocean, or any other cloud provider. We will look at an actual case study from start to end and consider their options and decisions.

About the Speaker
SAL Lakhani
Co Founder at DevPanel

https://2024.twincitiesdrupal.org/session/managed-hosting-cloud-freedom-three-ways-migrate-your-sites-aws-or-digital-ocean

Drupal is a registered trademark of Dries Buytaert.