Room Auditorium9:45am to 10:30amAll Attendeeswebchick
This session will detail the mind shift in the Drupal community around how Drupal software is released. Drupal 8 is the first major release under this new philosophy, which frees users to focus on innovating instead of waiting when it comes to features and functions. Angie Byron discusses how the Drupal community has changed the way we think about software releases.
With all of the advances in DevOps, it is easy to focus on delivering more, faster, as our important measures of success. However, DevOps is as much about listening as it is about delivering. How do we know we are delivering the right things? How are we informing our customers of this work and getting their feedback effectively?
If our project is using Drupal, it usually ends up being operated by the end users being delivered to. With Drupal being so close to the customer in production, we can use all of its powers to leverage new feedback loops and truly measure our success by customer satisfaction.
In this talk we'll look at using Drupal:
to communicate "What's New/Fixed" to our Drupal end users with each delivery
provide our end users contextual guides and resources on site features
to gather feedback on the usefulness of our guidance
to collect feature requests and bug reports
Ultimately we'll look at how Drupal, as a CMS, fits into a DevOps mindset, fully closing the loop between what's developed and what's in operation.
Attendees of any level of experience will walk away with ideas for using Drupal to get closer to their customers and continuously improve their product.
Room Auditorium11:00am to 11:45amAll Attendeesmglaman
Reporting is essential to e-commerce. Store owners want to know what products are selling, if a marketing campaign is turning into a realized investment, how much sales tax to remit, and more. However, reporting is not without its challenges related to creating certain types of reports and working with the data.
For Drupal Commerce, there is the Commerce Reports module, which uses raw data in your site’s database to present information and statistics. Commerce Reports provides out of the box reports that are directly integrated into your site.
Additionally, you can use the Commerce Google Analytics module to push data and order information into Google Analytics. This allows you to put a revenue value on sessions and create other reports within Google Analytics using this data.
Finally, Commerce Guys has created a new sales dashboard and analytics tool for Drupal Commerce users called Lean Commerce Reports. It provides denormalized storage in a highly available, easily scalable third party database. The dashboard it provides visualize sales and conversion data and link to reports that can further influence your marketing decisions. Whereas Commerce Reports exposes you to direct statistics without insight and Google Analytics allows you to derive limited insights with special knowledge about how to build those reports, Lean Commerce Reports is a tightly integrated SaaS solution that bridges the gap between the two with a plug and play sales dashboard.
One of the first things I learned when taking over sales at Palantir.net was the importance of setting client expectations early in the sales process. For many clients, web projects happen once a decade. It becomes imperative that we make sure that clients understand the components that make for long-term project success.
In this session, we will look at the building blocks of successful projects, how to describe them to clients, and how to set expectations around schedules and budgets. We will take deep dives into the following project areas:
This session is designed for sales teams and business leaders. Attendees should leave with actionable ideas for how to:
Tell a story about how their services drive client success
Help clients understand how to plan for a web project
Set client expectations around budgets and schedules
Prepare training materials for sales teams to use when talking about Drupal projects.
Transparent and accessible data is vital for everything from holding elected officials accountable to moving scientific advancements forward.
When governments, non-profits, and universities make their data directly available to the public, these resources can then be used by citizens, researchers and journalists in new and innovative ways.
DKAN is a community-driven, free and open source Drupal-based open data platform with a full suite of cataloging, publishing, and visualization features. With usage spanning 30 countries, 35 cities, and 5 federal agencies, it is a powerful tool to open up data to the people.
Sites built on DKAN include HealthData.gov, the USDA's National Agricultural Library, and the State of California's open data portal.
Features and functionality within DKAN include robust APIs, built-in compliance with federal and international open data standards, customizable metadata schema mapping, custom workflows, data harvesting, data storytelling, and more.
Participants will learn how to use the DKAN open data platform to publish and visualize data. and walk away with the ability to create a DKAN site of their own. Users will also gain an understanding on how to contribute to the Project DKAN community effort.
Every newbie dreams of being a contributor to the Drupal project. But where do you begin? And more importantly, what are some of the tools to help navigate the adventure successfully?
In this session, we will go over a couple of the tools of the trade that will help you while you work in the Drupal issue queue as a novice.
The session concludes with a live lightning round demonstration of the process that includes: creating an issue, writing a patch, uploading the fix to Drupal.org, and reviewing the patch for RTBC (Reviewed & tested by the community).
Tools of the trade:
What is Simplytest.me? And how does it make life easier?
Evaluating a module and its dependencies
Applying a patch
Uploading new modules to current test site
Git Client -
Why use a Git client versus only using Command line?
How to create a branch and properly name it for the issue
Committing changes to the repository
Creating a patch
What is Dreditor?
Installing Dreditor and a quick demo of functionality
How does it help in the issue queue?
Intended audience: Community members who want to contribute back to the Drupal project but have perhaps felt left out because of lack of experience, technical skills, or job description.
Anticipated outcome: Empowering the community with some basic knowledge and technical skills to help them gain experience in coding and documentation, build their Drupal profile and reputation, and help collaborate with the Drupal project.
Nowadays Drupal is not simply a CMS, it's a big and complicated framework that stands behind large enterprise level websites.
Drupal is used successfully for government, high education and healthcare websites that store large volumes of data. Often enough these organizations need their data to be updated over night, monthly or annually. It can be as simple as stock information updates performed once an hour and as big as update of all programs and courses offered by the college and university including all of the program details and costs.
Large scale complicated imports bring their challenges: time and hosting resources, parsing algorithms, different sources: XML, JSON, CSV. In my talk I'll cover some problems that a developer may face while building imports of data from various external sources into Drupal. I'll cover different formats such as XML, CSV and JSON, as well as approaches that can be used to make the task easier.
The audience will learn how to build imports with solid architecture so they would have less problems with performance as well as won't be limited by cron job time. I will also cover Batch and Queue APIs in Drupal 8 as well as touch base on continuous integration tool such as Jenkins.
The talk is for intermediate to advanced level back-end developers.
Room Auditorium1:00pm to 1:45pmAll Attendeeskbasarab
Normally in a web development agency, your focus is on the front end, consumer-facing side of a website. Yes, we talk about the administration but mostly defer to "it is what it is" and "that's just how Drupal works." With the rise in popularity of decoupled infrastructures, more clients are shifting their focus on improving the Drupal Administration UX.
From a business perspective an editor often has more say in the support and success of your CMS then the end user browsing the site so the editor persona should be considered throughout the development process. In this session, we'll dive into how ways of improving hte editorial experience with contrib modules, architectural choices and some custom code additions.
What to expect:
How is design/UX reversing to focus on the editorial experience?
What contrib modules currently enhance the editorial experience?
How can a better editorial experience be beneficial to your client?
Where is the future of editorial experiences and Drupal heading?
Design systems are a powerful tool in any company’s arsenal. They provide consistency, support brand recognition, and streamline the design process itself. There are many benefits, but implementing systems across a large product portfolio can be cumbersome for the most nimble of teams.
"Red Hat’s Front End team has built a multi-use toolkit for implementing a design system within Drupal..."
Come and learn how one of Red Hat’s Front End teams has built a multi-use toolkit for implementing design systems within Drupal, including PatternFly, Red Hat’s open-source design system based on Bootstrap. See how products from OpenShift, to interactive Drupal partner toolkits, and even RedHat.com’s Drupal marketing site all utilize parts of the same-style implementations - ensuring each adheres to Red Hat’s corporate branding and design standard.
You will leave the room with a clear understanding of massive-scale design systems implementation and a Drupal-compatible toolkit to take your design systems to the next level.
If you have ever googled to find “top drupal modules” you probably have read Mediacurrent’s popular, long-running blog series on the top modules for Drupal. Blog author Jay Callicott, a 12-year veteran of Drupal, has a passion for talking open source and Drupal.
In this session, we take a leisurely stroll through the best modules that Drupal 8 has to offer as Jay presents an updated list of his top picks. Like a guided tour of the Italian countryside, you can sit back and enjoy as your guide discusses the benefits of each module. By the end of this session, you will have been introduced to at least a few modules that will challenge the boundaries of your next project.
Updated list of best Drupal 8 modules in 2018
A brief walk-through for each module recommendation
About Our Presenter
Jay Callicott is currently the VP of Technical Operations for Mediacurrent and has 9 years of experience delivering enterprise solutions for Mediacurrent.
Jay is also an avid supporter and contributor to Drupal open source projects. Jay writes blogs on Drupal and has spoken at several Drupal events including “Multilingual in Drupal 8” at Drupalcon, Baltimore last year and “Meeting Marketing Challenges with Automation and Drupal” at Drupalcon, Austin.
In this presentation I'll show some of the best practices today and highlight some of the directions that the search industry is moving towards.
As engineers and developers, we tend to be passionate about building something great, which Drupal is perfect for doing. We tend to put a high priority on the quality of what it is we’re building. The best way to ensure sustainable quality in what you build is through testing. While Drupal already uses some great tools for this (simpletest, php code sniffer, php unit) I like to talk about another option; Behat, and the Behavior Driven Development paradigm that it encourages. BDD will deliver a better product; something that developers and clients can both agree on.
Room Auditorium2:15pm to 3:00pmAll Attendeesnerdstein
Security is not a one-time activity that is performed and completed. A mature operation promotes continuous improvement in an ever evolving landscape of threats and mitigation techniques. Where does this leave us in the Drupal community? This presentation focuses on the tools and techniques for promoting security in practice related to Drupal, both the infrastructure and the application. We will explore the different user personas and targeted attacks that can be exploited within typical Drupal applications. I’ll present some high level recommendations for mitigating these attacks, including multiple uses of two-factor authentication, development best practices, security conscious development workflows, continuous integration and DevOps practices, log analysis integration, community contribution, and alert and monitoring solutions. I’ll wrap up exploring future opportunities with emerging topics like secret managers, blockchain, and machine learning.
At least 19% of the overall population in the US has some sort of a disability. And yet, we in the Drupal community could do much better when it comes to serving the needs of those individuals.
It’s not easy for fully-abled designers and developers to feel empathy for the disabled. This talk will address that empathy gap by taking a close look at the obstacles disabled users encounter and the assistive technologies meant to overcome them. You'll experience how users with disabilities like low vision and blindness interact with websites. You’ll gain a real-world understanding of where most organizations and site builders go wrong, and how it can be fixed.
The past two years have brought a flood of lawsuits which have changed accessibility from a nice-to-have feature to a fundamental requirement for most websites and apps. We'll cover a couple of these landmark cases and learn how to keep your clients out of court and avoid common accessibility mistakes.
For those looking to bring accessibility into their own practice, this session will share tools and techniques along with resources and training opportunities for building and designing for web accessibility.
In D8, Twig became the default templating engine in themes and modules, which means learning some fun new syntax and filters! In this session we will detail how and where to place a Twig template in a theme or module, how to replicate common PHP function that would have gone in D7 .tpl.php files, and how to customize default templates included in Drupal core. We will also look at some common debugging techniques used for Twig files to help developers solve some common template problems.
In this interactive experience, we will start off by talking about how people with disabilities use the internet and how we can make websites more inclusive. Once you’re briefed on the ABC’s of a11y, we’ll delve a little deeper into different personas within the disability community and how web accessibility relates to the specific needs within. You may even get a chance to join in!
Whether you’re a seasoned accessibility pro or you’ve never heard of it before, technical or non-technical, you’ll be able to follow along, participate, and gain valuable new knowledge and insight about how to make your websites more inclusive.
Attendees will leave this session with:
A greater understanding of the specific needs of people with disabilities online
Tips and tricks to alleviate accessibility challenges when developing a website
Links to valuable tools and resources to use in your own projects
Fabulous prizes to be won!
*’Fabulous’ is a subjective term and fabulousness of prizes may vary by personal opinion
“With Drupal features are cheap and details expensive” — Vesa Palmu, CEO of Wunderkraut
We’ve all been there with a client. Back when the project kicked off (days, weeks, months, or even years ago) there was some type of mutual understanding of the time, timeline, and cost of their project. Unfortunately, things happened along the way! Conversations sparked new ideas. Assumptions turned out to be incorrect. Life happened and someone left the team. Whatever the reason(s), the scope of the project today is no way matches what was discussed at the very beginning of the relationship.
How did we get here?
Perhaps a better question: how could we NOT get here?
While it seems like a cop-out to say that there it’s impossible to accurately estimate a Drupal project, the reality is that features are cheap and details are expensive. Want a fully functional, world-class eCommerce solution for Drupal? You can literally download and enable Drupal Commerce in minutes! Want to make a super customized and flexible coupon system and recommendation engine? You could sink 100 (or 1000) hours into that one feature alone. And no matter how much time is spent in an RFP, it will almost all get thrown out that window once conversations begin and new ideas start to form (and that’s a good thing!).
Perhaps a better approach is to go into a project setting the expectations that estimates are not fixed numbers carved in stone, but evolve as they go from mere ideas (with high variability of cost and complexity) to increasingly more refined values.
That sounds all nice and theoretical, but how does one go about this? Over the years as a technical project architect, I’ve adapted a process by Seth Brown (see The Art of Estimations) to include a time component into the mix. One can start off with coarse estimates during the RFP and pre-sale process and then save snapshots of the estimations over time as things evolve and move through discovery, definition, designs, etc.
This talk will involve a mix of theory and actual case studies where this technique was used to either increase budgets when/where appropriate and/or defend removing or eliminating functionality that simply could not fit within the original budget. Used properly, all members of the team can contribute towards the evolution of this document and stay on the same page with the client at all times during the evolution of the project.
We'll review some of my findings while learning and building web applications in Drupal 8.
We'll go over architecture options for web applications built in Drupal 8. Modern PHP dependency management with Composer, Content Entities vs Nodes and when each is appropriate. We'll look at some excellent combinations of contrib modules and glue code to create flexible architectures.
Who is this for?
Though extensive experience with these is not necessary, you are at least familiar with:
Many developers, including myself, deal with mental health issues, yet mental health in the developer community is often overlooked, hidden, or swept under the rug. Too many of us suffer in silence and end up hurting our professional and personal relationships, or even worse, ourselves.
What can be done to help de-stigmatize mental health issues? How can we, as a community, band together to help those of us with mental health issues feel more welcome in tech?
Together, we can work to Erase the Stigma associated with mental illness.
In the global world, it helps if your site can speak multiple languages - even if you don't. Taking an existing site and localizing it, or building a new site with a localization requirement can be a daunting task if you've never tackled it before. Fortunately, there are some solid guidelines that can help smooth the way for a seamless launch of your fully translated site.
We'll discuss common pitfalls in new development, things to look for on existing sites that are adding a localization element and maybe even throw in a few examples of what NOT to do if there's time.
An effective testing strategy demands many tools in our tool belts. Let’s take a look at some tests, environments, and tools for Test-Driven Development (TDD):
Behavior-Driven Development (BDD) ensures the application functions as we are intending, and serves as documentation. We’ll look at leveraging existing Behat definitions and explore opportunities to compose our own.
Visual regression testing is great for ensuring your site keeps looking the way it is supposed to when changes are introduced.
Room Auditorium4:15pm to 5:00pmAll Attendeesadmin_fldc
⚡Lightning Talks⚡ are short (5min-ish) impromptu sessions on anything you want. Do you have something you’re proud of? Do you have a new technique that’s saving you time? Have you learned about something cool? Get up and share!