MidCamp 2016


Videos from MidCamp 2016.

Conference page
Video Sponsor(s) / Provided by
MidCamp - Midwest Drupal Camp
Curated Videos
Speakers: socketwench

Session Description

Drupal 8 isn't just a new version of Drupal, it's a change in how we approach coding and community.

Over the last few years, we've overcame Not-Invented-Here Syndrome. We've embraced new technologies and new approaches to writing code. We've shortened our release cycles to bring fixes and new features into Drupal faster than ever before. During this monumental effort, we've also endured burnout, taught ourselves new ways of doing things, all while confronting single, a daunting goal. Where do we go from here?

Drupal 8 enables us leave our island and sail the greater PHP seas. There's never been a better time to join us on our voyage.

Speaker: dobrzyns

Session Description

Containers are all the rage. But why? Are they really better than virtual machines? What is a container even? Should I move from a Vagrant development environment to Docker? How does this look when a Composer based development workflow is used? What is it like moving from Vagrant to Docker and learning D8 at the same time?

This session will cover:

Virtual machines versus containers
Why containers? Why Docker?
Why Composer?
Development workflow using Docker
Development workflow using Docker and Composer
Tools/frameworks to get started

Intended Audience:


Speaker: cehfisher

Session Description

Website accessibility is often an afterthought at the end a project when there is an accessibility audit or a user submits an issue, but what if we switched focus and started thinking about accessibility at the beginning of a project during the initial design and development stages?

In this talk I will present a quick overview of website accessibility (the what, who, and why), then review the underlying guidelines to making a site accessible, and finally present some general rules to keep in the back of your mind while designing and developing your next site. Not only will incorporating accessibility into your daily lives help people with disabilities actually be able to use your site, but it can help attract a wider audience/larger customer base, make your site rank higher with search engines, and can improve your overall user experience on both desktop and mobile devices.

Speaker: brianperry

Session Description

Style guide driven development and the intelligent re-use of design components can prevent quite a bit of heartache as the look and feel of your site evolves. Your style guide can protect you from unexpected regressions throughout your theme and let you break the cycle of wasting time and effort styling redundant variations of page templates and content.

This session will focus on the tools and methods available to create a living style guide for your Drupal site.

Past - creating a living style guide in Drupal 7 with help from some contributed modules.
Present - how changes to the theme system in Drupal 8 lend themselves to style guide driven development.
Future - looking at some of the style guide related gaps in Drupal 8 and thinking about how they could be filled.

Last but not least, we’ll top it all off with some automation and use visual regression testing techniques to let our living style guide alert us to unintentional regressions in our theme.

Speaker: wesruv

Session Description

With Drupal 8 out, learn everything you need to know to make the switch from Drupal 7. We'll be going over all of the moving parts of the theme layer, best practices, and the little gotchas.

That will include:

Differences between D7 & D8 theme layer
File organization
Core's markup/styles
CEM syntax (aka BEM)
Theme's YAML Files

We'll be talking more from a 'theming from scratch' perspective more than 'theming off of contrib'.

Not familiar with Drupal 7, or not a themer? If you know basic Drupal, HTML and CSS you need not fear! You'll understand most of what we talk through and some of it (e.g. Twig) could be very very useful if you're going to work with Drupal 8.

Slides are subject to change (but only for the better!): http://wesruv.github.io/reveal.js/d8.html

Speaker: NodeLoophole

Session Description

The recent launch of Drupal 8 brings big changes to various functions and processes around custom module development. This session is geared toward people who have built custom modules in Drupal 7 but haven't yet dove in to Drupal 8. You’ve used the (awesome) Drupal Console to build your custom module with a controller or service, but what now? You have this in your muscle memory from Drupal 7, but how do you create it in Drupal 8?

In this session, you will learn how to do in Drupal 8 some of the most common programming tasks you know from Drupal 7. Topics in this session include:

Creating an HTML table
Creating HTML links
Outputting bulleted or numbered lists
Overriding page titles
Overriding local task (tab) titles
Creating nodes programatically
Editing nodes programmatically
Querying nodes based on field values
Cron tasks
Getting the Node IDs that are part of a Views result
Creating a custom menu link
Creating a custom block

Plan to walk away from this session with a firm grasp on how to execute common programming tasks in Drupal 8 and be on your way to building custom Drupal 8 modules.

Speaker: craychee

Session Description

Link to my presentation.

If you have been faking an understanding of concepts around testing, building infrastructure, and deploying and/or sidestepping implementation details of how to apply these concepts, we will rectify this at last in a fun, engaging, and memorable way. We will make sense of this “continuous integration” tool chain that seems to so excite folks at Drupal Camps and get you excited too.

Leave with a knowledge of what all of these things are:

continuous integration/delivery/deployment
configuration management (Vagrant/Ansible/Chef/puppet/scripts)
Behavior Driven Development and Test Driven Development
Testing frameworks (Behat/a11y/wraith/phpspec/phpunit)
Automation frameworks (circleci/travis/jenkins)

Leave with first steps to implementing a workflow that includes:

An environment configured with Ansible.
A local environment configured with Vagrant.
A behavior driven system testing framework with Behat.
Automated testing and deployment with CircleCI.

Whether you are a seasoned developer who hasn’t quite gotten around to implementing a sane, CI workflow, or all of this is completely new, you will leave with something that can immediately make your work better.

Speaker: caxy4

Session Description

This session will give you the UX insight and development tools you need to start simplifying the Drupal admin experience – something that will save you time over the course of the project and improve client satisfaction.

As a case study, we’ll review the admin experience of Relief International's new site and how its ease of use led to many positive outcomes.

The site we built:

Lowered the learning curve for site administrators.The most frustrating part of picking up any new technology is getting past the initial paradigm shift.
Built trust early. If the first impression of Drupal is bad, the client will carry this forward throughout the project lifecycle.
Cut down on hours spent training and providing trivial support. This allowed for focus on more advanced functionality, which was more fun to build!
Allowed clients to stage content more quickly. We helped deliver massive stress reduction in the crucial weeks/days prior to launch.

Please provide feedback here: https://legacy.joind.in/talk/view/17253

Slides can be found here: http://slides.com/alexellison/clean-simple-drupal-admin

Ashleigh Thevenet

Session Description

​​Top-down management and a command and control environment can easily cause tensions to arise amongst team members as they feel their contributions and opinions are undervalued, or worse, unnoticed. Over the past year, our company has shifted from our previous management structure and adopted holacracy. Holacracy is a form of self-governance and an organizational structure which removes power from a management hierarchy and distributes it across clear roles, which can then be executed autonomously, without a micromanaging boss. Our experience with holacracy has been very positive. It has given our team much more autonomy and authority to work to improve our company, our process, and our projects. We want to share our story, and help other companies to learn about different forms of management that may work for them and their culture.

In this session we will look at:

what holacracy is

what caused our company to implement it

the transitioned from our previous organizational structure to holacracy

how we adopted it and applied it to our company

what we have gained with holacracy

Attendees of this session should come away with an understanding of what holacracy is and how it works. They may even decide that it would be a great organizational structure for their own company, and if so, have the tools to take initial steps to do so.

Speaker: Les Lim

Session Description

This session is intended to introduce the concept of Views, a powerful tool for automatically collecting and displaying lists of content according to rules you define. We will define key terms and locate them in the interface, look at examples of Views that are pre-installed in a Standard profile Drupal installation, and fiddle with them to observe how different configuration options change their behavior. We will also create an example View from scratch.

Our example will be derived from the "farmers market" guiding scenario being used by the Drupal 8 User Guide project (https://www.drupal.org/project/user_guide).

Speakers: baugues

Session Description

I am a developer, and I have bipolar disorder and ADHD. For years I suffered from cripling depression interspersed with bouts of high-energy and productivity. I failed out of school. Bounced from job to job. An in general, felt like a lazy bastard for underperforming versus my potential.

Turns out, I'm pretty far from alone. The developer community is racked with mental illness. It's estimated that at least one in six will suffer from depression this year. Yet, our friends and colleagues who suffer from this so often feel that they are the only ones. As if depression isn't bad enough, the shame and stigma of mental illness often keeps folks from finding the help that's available.

In this talk I'll share my story of getting diagnosed with bipolar, living in denial, finally hitting bottom and seeking help. I'll talk about how mental illness uniquely affects the developer community, and how we can help our friends, our colleagues and ourselves to fight back against these deadly illnesses.

Speaker: jorgediaz

Session Description

In this presentation, we will describe the entire process of moving our legacy company website into a brand new Drupal 8 site created from scratch. The presentation is conceived to be wide and descriptive enough to just "present" how our company conceived every step and then delivered it on top of Drupal 8.

Key points we will talk about:

Project Management: Conception & Phases
Information Architecture.
Migration process.
Site Building.
Design and Theming.

Speaker: pixelite

Session Description

If you're a Drupal site builder, you've probably heard about how you can migrate your content into Drupal using the Migrate module. But you might have assumed that migrating content is the 'developer's job': a long and arduous task best avoided.

As site builders, we're often responsible for setting up the information architecture of a Drupal site, and testing that the content provided fits into this architecture. We start most Drupal projects by looking at content: What content needs to be displayed on the website? How does it need to be organized? What's the content strategy? Site builders often become content experts, and are in a great position to inform the migration process. By learning about the migration process, we can make better site building decisions.

This session will provide an introduction to Drupal's Migrate module for site builders. No experience developing modules required. We'll look at how to get your content into Drupal, from another Drupal site or from an external CSV file. We'll also see how to line up your migration with Drupal’s configuration components. We'll look at some examples from Drupal 7 and also discuss how this will work in Drupal 8.

Speaker: fluo09

Session Description

Have more than a few groups with users playing different roles while multiple events are going on simultaneously? What if a user has different roles when it comes to different events but don't want to create extra accounts? Organic group solves this problem by focusing on group, instead of users.

Why I want to talk about it?- As a beginner, I heard OG was imitating. But after working with it, I found it is less complex than my assumption- I want to share this learning experience with the other beginners- I think this experience could also be applied to other complicated modules

What can the attendees get from this?- Basic understanding and use of OG- How to teach yourselves to get the work done- The drupal help documents (and community, if there is more time)

Please comment this seesion by going to the following page:https://joind.in/talk/90b76

Thank you!

Speaker: chelsiejohnston

Session Description

If you had the chance to reduce part of your project's budget by 60%, wouldn't you take it?

Change isn't always easy, but sometimes it's vital to your business (and your sanity)— and in the end, your clients may thank you.

In this talk, I'll tell the story of how we redesigned our own ten-year-old design process. I'll walk through some of the challenges we faced, what drove us to finally make the change, and share insights and tips I picked up along the way.

Speaker: mdrummond

Session Description

Fun fact: the web is powered by cat photos.

But hark, far too many cat photos are larger than they need to be!

How can I view as many cat photos as possible on my phone, so I can see every detail of each cute kitty, without them taking forever to download? Then, when I get home, those gorgeous cats absolutely must look fabulous on my large-screen high-resolution monitor, too.

When there’s a problem that involves cats, you can bet that Drupal is ready to help!

Drupal 8 has built-in responsive images support based off of Drupal 7’s contributed Picture and Breakpoint modules. Understanding how to use those modules without first making a plan could easily lead to a cat-tastrophe!

So we’ll start not by reviewing every detail of the responsive images specification or every option you’ll need on Drupal’s configuration screen, but instead by studying cats. We’ll look at how our cat photos fit into our site’s layout. Once we understand that, we can plan how to create multiple versions of a cat photo. Then we can provide different size options based on the browser width and resolution. Best of all, we’ll get Drupal to take care of that tedious work so we can spend more time with cats.

Don’t worry! No cats will be harmed or cloned in this process! Even though cloning cats would create a more purr-fect world.

Learning objectives and outcomes:

We want our sites to shine with beautiful images that load quickly.

To do so, we’ll first learn how to analyze how a particular type of image fits into a site’s layout. Then we’ll use that analysis to make a plan for the image file sizes we’ll need at various viewport widths.

Once we have that plan, we’ll learn how to let Drupal take care of generating the image files and writing the HTML markup we’ll need for our responsive images solution. That includes learning how to do that today with Drupal 7’s Picture and Breakpoint modules, as well as how to do so Drupal 8, which simplifies several key steps. We’ll look at responsive image configuration and image style setup, field formatter settings as well as how to work with responsive images in preprocessor functions.

While we will discuss the key concepts of the new responsive image specification, we won’t be going into great detail on the history of how these specifications were developed. Instead we’ll focus on practical lessons on how to make images more responsive with Drupal, based on my experience as a front-end developer and as as someone who helped work on Drupal 8’s Breakpoint and Responsive Image modules.

Speaker: dinarcon

Session Description

Drupal is an extremely flexible system. To achieve this, various layers of abstractions are built into it. Many concepts were create to explain these abstractions. Unfortunately, they are not always intuitive for someone just starting with drupal. For example, the ubiquitous word 'node' does not represent a point in a network nor a server side programming language.

Have you ever asked yourself any of these questions?

What is a node?
What are entities?
What is a block and what can I do with it?
How are users and permissions managed?
What is a module and its purpose?
What is a theme and how can it change the look and feel of my website?
How can I create the navigation of my website?
I'm not a fisherman. Why do I need hooks?
Why is it that a kitten passes away, every time I make a quick fix in the downloaded code? How can I prevent that?

Drupal 8 has been released and it ships with lots of cool new features. As you might imagine, it brings new concepts and more questions for beginners. For example:

What is the difference between content and configuration entities?
What is the difference between state and configuration?

The Drupal community doesn't want new adopters and prospective contributors to go away for not understanding our parlance. Come to this session and figure out what Drupal is all about. Don't worry, it won't be a theoretical, boring talk. It will be a joyful conversation with lots of examples to help you understand drupal and why it is so powerful.

See you there! :D

This session has been presented in other Drupal events.

P.S.: The majority of the concepts that will be explained apply to Drupal 8 and previous versions. Those specific to Drupal 8 will be noted as such.

Speaker: prestonso

Session Description

Decoupled content management has been taking the front-end world by storm recently as developers seek new ways to leverage battle-tested back ends alongside more flexible, extensible front ends. The JavaScript renaissance firmly envisages a future where single-page apps with ever-quickening advances can integrate seamlessly with "headless" back ends such as Drupal -- often by bypassing the theme layer altogether.

What are some of the implications of this newly decoupled world for front-end Drupal developers and designers working with Drupal? What are some of the advantages and disadvantages of decoupling? This session will examine some of the trends and new ideas emerging from the Drupal community and others, but it will also frame decoupled Drupal against the backdrop of the rapidly changing front-end ecosystem, considering the impacts in such areas as Web Components, Drupal's theme layer, and presentation as a whole.

Here's what we'll dive into:

A brief retrospective of content management
Why (not) go headless?
Why (not) go with a JavaScript framework?
The JavaScript framework landscape
Managing content and headless Drupal
Decoupled out of the box with Drupal 8
Integrating with frameworks (e.g. Angular.js, Ember.js)
Integrating with native applications
Progressively decoupled Drupal
The future of the Drupal theme layer
The future of front-end Drupal

This session is intended for designers, front-end developers, and Drupal themers of all skill levels who are interested in learning more about headless Drupal and decoupled content management. While there will be some JavaScript presented in the context of client-side frameworks, no prior knowledge of Drupal is presumed.

Les Lim

Session Description

We’ve all been there. You’re a site builder, and you were just shown a new design for article nodes. Within the post you see a visually compelling tapestry of mixed media: text, photo slideshows, columns, dynamic lists, and even full width photos.

The client will love it, but how do you give so much editing power to the end-user without writing custom code for each new post? The answer, my friends, is Paragraphs.

Instead of creating ugly blobs of content within a WYSIWYG body field, end-users can now choose (on-the-fly) between predefined Paragraph Types independent from one another. Paragraph Types can be anything you want, from simple text, or image, or a complex and configurable slideshow.

In this session we’ll be:

identifying the pros and cons of using this technique

contrasting this technique with others (including panels)

showcasing some case studies with interesting examples

describing the various contrib modules for Paragraphs

walking through the steps to add and extend your first Paragraph

This session is perfect for:

Site builders who want to give more power to the end-user.

Editors and content creators who are fed up with Drupal’s rigid and inflexible content creation process.

Total beginners who want to be inspired and see what you can do with a fully configured Drupal site using Paragraphs.

Speaker: walangitan

Session Description

Asking the right questions during the discovery phase of a project can reduce the amount of roadblocks and surprises in a development cycle. This session will help both developers and stakeholders understand a client's needs and address Drupal specific caveats when creating estimates for a project. By documenting a process that targets these four topics:

Design and Development

we will unpack the important questions that can help you, your client, and anyone else involved in project to quickly understand both the big picture and the details.

Don't worry if you're already past the discovery phase, this process can be used both before and after a project has been kicked off.

Speaker: stevector

Session Description

Speed is one feature many clients assume they will get but do not always ask for. In fact, you are more likely to hear your clients ask for features or functionality that will make the site slower. As the person or team developing the site you must often protect the speed of the site. This session will look at key areas in a site architecture where speed may suffer and how to structure your project to ensure they stay fast. Specifically:

Setting and tracking performance budgets so that everyone can see how speed is changing over the life of a project.
Analyzing the benefits of third-party integrations and ads that can kill front-end performance.
CSS and JS organizations and minification strategies that your team will use.
Identifying which places in a system can be cached aggressively.
Debugging problem code and queries.

Speaker: DwayneMcDaniel

Session Description

Successful businesses have happy customers. Taking the time to discover the real problems, pain points and opportunities of your clients will help you propose and sell the solutions they need. This will make them happy. Your business will benefit as a result.

This presentation will cover:

The importance of Discovery and how to conduct it.
How to help customers define clear business objectives so you can enable their success.
How articulate differentiation and focus on value instead of price.
Bundling additional services like hosting, SEO and support services.
How and when to say no to new prospects.


Session Description

It's D-Day, your site has hit the front page of reddit and alarms are ringing everywhere. You try your hardest to stay online- enable caching, followed best practices, but your site still crashes and burns. If only you had taken the time to prepare, you could have at least salvaged the wreck! Be it an unexpected promotion or planned flash sale, learn the tools for simulating a large amount of traffic and how to be ready. We will cover areas of potential failure, tips on making them more robust, and ways to recover even in worst case scenario.

How to create a holiday performance plan
How to test (tools) and optimize before the big day
What to test before the big day
Analyzing results and optimizing
Diagnosis checklist for the big day
Repairing in real time
Plan B

Speaker: Crell

Session Description

The next era in the life of our favorite language has come. PHP 7 brings numerous improvements to PHP, from minor syntactic enhancements to major engine changes to a new, stronger type system.

What does it mean for developers? What exactly are the new tools at our disposal? Are the changes in PHP 7 worth the upgrade? We'll try to answer that question, and make the case for upgrading sooner rather than later.

Speaker: hpcalaf

Session Description

It's 2016.....Pictures (and/or sounds) speak louder than words. Your site needs to be Media enabled. Learn some cool tools for making that happen.

Rendering media (images, sound files and video) can be a hit or miss adventure on the web in general and in Drupal specifically. This session will discuss from the point of a site-builder or less than experienced developer, some of the considerations and methods that are available for effective rendering of media elements for a rock solid end-user experience. The session reveals pertinent information relative to use of the Media module, File Entity and other Media focused contrib modules and plug-ins. Also new techniques specific to Drupal 8.

Speaker: Crooney

Session Description

Are you sick of the headaches of trying to provide ongoing services to your clients after they go live, when your primary focus is on finding more client projects and executing them? Do you find that the clients you provide ongoing support for always seem to have an emergency at exactly the wrong time, when you are heads-down in a new project? Wish you could have dedicated resources handle your support queue, but just can't make it work operationally? Then this session is for you. In this talk we will review one agency's approach to keeping a roster of ongoing support clients happy and operational with a team of resources that are split between "project" and "support" duties. We will discuss processes, tools, and business practices that we have found useful, and discuss the pros and cons of growing your ongoing support business.

Speaker: michaelemeyers

Session Description

The business rationale for contributing to open source projects - why and how you should get engaged in the Drupal Community (and other open source projects).

Drupal is one of the largest and most successful open source projects, and much of our success is due to the vibrant and thriving community of contributors who make the platform what it is – the individuals who help put on Drupal Conferences and events, the documentation writers, the designers and usability experts, the developers who help write the software, and countless others. But why do people and organizations contribute to Drupal? and why should you and your organization get more involved?

In this talk, I'll go over why you and your organization should get more involved in contributing to Drupal and other open source projects – it is not about altruism – getting involved will take your career to the next level and drive the growth of your business. We’ll discuss how participating in open source projects like Drupal will help you transform your career, grow your bottom line, drive new business, and help you execute. I'll cover real world examples, and leave you with a clear path to getting more engaged in the areas that will help you and Drupal grow to new heights.

Speaker: mikemiles86

Session Description

This session outlines and explains Drupal 8 AJAX callback commands and how to use them. AJAX callback commands are the sets of PHP and JavaScript functions that control all AJAX functionality on a Drupal site. You will be suprised about how simple and straight forward they are. Mastering these commands will allow your AJAX calls to do so much more then just return rendered HTML.

This session is presented in three parts.

First, explaining what AJAX callback commands are.
Second, explaining how to use AJAX callback commands.
Third, explaining how to create and use your own custom commands.

Each section provides example code and a real world Drupal 8 scenario.

Speaker: ameeuwsen

Session Description

The release of Drupal 8 brings with it a completely overhauled Block API system, in which blocks are now entities. While this is a priceless tool developers have been wanting for a while, it can be a bit daunting at first when trying to create a block in custom code. This session will highlight some of the more powerful features of the Drupal 8 block system, as well as some gotchas and best practices. Through a streamlined demo this session focuses on the bare minimum to get a block plugin up and running, as well as leveraging new block features to add custom configuration like never before.

In this session you will learn how to define and place various parts of a block entity through custom code. This will include:

What is a block plugin and why do I want to know about it?
Creating a block plugin
Adding custom configuration to a block plugin
Placing a block plugin
Exporting a block plugin
Importing a block plugin

Plan to leave this session knowing how to write, install and configure a block plugin from scratch, as well as how to use blocks in various ways on your Drupal 8 sites.

This is meant to be a hands on session; this means following along on your own computer with example code provided. To be prepared for this session please clone the Drupal 8 site from the repo located here: https://github.com/ameeuwsen/MidCamp2016Blocks.git and install the site as you would normally. Doing this and following along will help you get the most from this session.

Speaker: ryanissamson

Session Description

Here's the scenario, you're building this fantastic site for a client and the client wants to see how the site is coming along. You help the client secure a domain, set up hosting on a server, and you manage to get the site installed so the client can view it remotely. The client loves how the site is looking, starts adding some content, and sends you some feedback on a new section of the site. After building the new section on your computer, everything looks great. You get approval from the client and start the process of replicating that same section on the live site. No big deal though, this only took you a couple of hours. Bad news though, it hits you that you're going to need to do this for every new bit of functionality that you build. And you can't just reinstall your local site on the remote server, the client is already adding content. You may be tempted to just start building in the live environment, but that’s a recipe for disaster.

Sounds exhausting right?

The good news is that it doesn't have to be this way. Right out of the box, Drupal 8 allows site builders to move configuration from your local site to any number of development, testing, or live sites. You don't have to rebuild work that you've completed locally. You don't have to give in to the temptation to build everything in the live environment to save time (don't do this!). You don't have to learn the command line or how to code. Drupal 8 has made managing configuration between your site's environments powerful and simple.

In this session we will:

look at common problems a site builder can get into when not using configuration management.
explain why configuration management can and should be part of your site building process.
show just how easy configuration management is and how to start using it on your D8 site builds.
talk pro tips regarding configuration management in Drupal 8 and how it will help us level up as Drupal site builders.

Speaker: joshmiller

Session Description

Drupal-based documentation: https://drupalcommerce.org/user-guidevs.Gitbook-based documentation: http://docs.drupalcommerce.org/

Documentation doesn't have to be a node. The idea of not using Drupal to write and publish documentation on Drupal may spark a bit of controversy. During this session the history of Drupal Commerce documentation will be discussed by the person who wrote the bulk of the documentation for both Drupal 7 and Drupal 8 versions.

My self-described effort for Drupal Commerce 2.x is to utilize any tool possible that both presents documentation clearer and empowers the community to add to the knowledge store in an easy and reliable way. I think Gitbook is that technology, and I would love to present my case and hear feedback from fellow Drupal contributors. Other big contributions (Drupal Console, Drupal Rules) have all started using Gitbook as well.

Since this is the community track and this topic may be controversial, the speaker would love to see audience participation, reactions to not using Drupal for such a content-heavy application. Perhaps even spark a larger discussion of whether other projects might be able to learn and use this approach to documentation in other parts of Drupal.

A live demonstration will be planned where we click edit on the Drupal Commerce documentation and it immediately lets us make a pull-request change, which will trigger a complete rebuild of the documentation with our changes.


Session Description

Are you now or have ever you been new to Drupal and the Drupal community? Entering into any new community requires some grasp of the language used in that community. This session takes an ethnolinguistic approach to understanding the Drupal Community and presents an analysis that can act as a guide to newcomers as well as seasoned Drupalers who are fascinated by the way we talk about a thing shapes the thing. In particular, we will look at the grammar of Drupal, the use and development of Drupal slang, and how to communicate effectively within the Drupal community.

Speaker: allisonmanley

Session Description

All great musicals tell stories of some sort of journey. Sometimes it’s a love story, but it’s almost always a tale of overcoming some sort of adversity, with plot twists and humor. And isn’t that what a project is? Musicals simply include songs to help move the plot along. So we’re going to give an overview of how we run a project: what tools we use, what steps we take, and how we work with clients, and how we overcome the odds to create a fantastic website at the end. It’s going to be informative, and at times very very musical.

Speaker: dgorton

Session Description

Knowing security best practices only gets a team so far. They have to implement them too. This session will cover the security risks that a web development team faces and the underlying reasons why risks can go unaddressed. Ultimately, there are no excuses for leaving your web projects exposed to known vulnerabilities. This session will cover common security concerns for Drupal and the root problems a team needs to solve in order to mitigate these risks.

Points of discussion will include:

Three layers of web security, from the perspective of Drupal: Platform-level (e.g. Linux), Application-level (e.g. Drupal), and Organizational-level (e.g. procedures)
Familiarity with your hosting platform’s security-related practices.
Overview of common vulnerabilities in web applications (XSS, CSRF, HTTP vs HTTPS, etc.)
Understanding how security concerns are handled for core and contrib.
Clarifying support responsibilities and procedures so that security fixes are applied quickly.

Speakers: vasi

Session Description

We all know that security is important, so we should regularly update Drupal core and modules. And when we upgrade between major versions of Drupal or modules, we often gain cool new features. But doing the updates always feels dangerous! What if something breaks, and we have to fix it? What if something breaks, and we don't even notice until much later?

At our company, we use several techniques to ensure that we can update safely. Some of these involve infrastructure: Good deployment tools like Docker, automated testing, and automated backups. We also have a custom tool to compare a Drupal site before and after an update, so we can identify even changes that we weren't specifically looking for.

Speaker: pizzabrarian

Session Description

Want to have completely different page layouts for different sections of your website? Want to show different page layouts to users with different roles? Want to give your site editors the ability to move blocks around, but only on certain pages? Then Panels might be just what you're looking for!

This session will provide an introduction to using Panels to create customized layouts for your website. We'll go over the requirements for using Panels, its possible applications, and how to actually set up some of those different use cases with the Panels interface.

Speaker: lauriii

Session Description

Drupal 8 uses Twig as its default templating engine. This has generated a lot of excitement but Twig isn't the only thing that has changed in the Drupal 8 Theme System - Twig has been a tool that has allowed us to make many other changes.

In this presentation I will give an overview of how markup should be printed in Drupal 8. I will also walk through some of the changes that have made outputting markup more complex and how to cope with them.

Topics in this session includes:

A high-level overview of the the theme system in Drupal 8 and how Twig works in the backend.
Using theme hook suggestions to cut down on custom code and have themers thanking you.
How to become friends with autoescaping without losing security

We were able to capture and stitch together some raw footage of the MidCamp presentation of this session.


Session Screen/Audio capture:

Session description:

Drupal is a registered trademark of Dries Buytaert.