Legend
7:30am to 9:00am
Registration
Room Lobby 7:30am to 9:00am All Attendees admin_fldcCome grab coffee, light breakfast and meetup with old friends or make new ones!
9:00am to 9:20am
9:30am to 10:20am
Faster and Smarter Drupal 8 Development
Room Auditorium 9:30am to 10:20am Intermediate jmolivasManaging the increasing complexity of Drupal 8 can be a daunting task for anyone, are you prepared for this new challenge?. Now, writing a module involves much more boilerplate code, and there is a lot you need to know to get started.
The Drupal Console is a CLI tool that helps you manage that complexity allowing you to generate boilerplate code, interact and debug Drupal 8. Come along as we explore this tool that will help you developing by taking advantage of the modern PHP practices introduced into Drupal 8.
Slides: http://jmolivas.com/slides/fldc16/faster-and-smarter-development-with-drupal-console/
Sizing up responsive images: Make a plan before you Drupal
Room 172 9:30am to 10:20am Intermediate mdrummondFun 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 Marc’s experience as a front-end developer at Lullabot and as one of the co-maintainers of Drupal 8’s Breakpoint and Responsive Image modules.
Don’t overthink it: Drupal 8 Site Building
Room 173 9:30am to 10:20am All Attendees cwightrunDrupal is already a powerful and robust system for producing sites and systems, but there are concerns of an increased level of complexity with the latest version. Many changes exist as enhancements and improvements to our beloved CMS. This session will outline those enhancements, how best to use them, as well as various tips, tricks and tools to help you work best with Drupal 8. These include the updated Block Interface, Authoring Experience improvements, Twig, Devel, Drush, Drupal Console and more.
Building Faster Drupal Sites
Room 175 9:30am to 10:20am Intermediate bollskisDescription
Building fast websites is surprisingly straight forward - building them with Drupal is less-so. In this talk I cover modern performance techniques, and how to go about accomplishing them with Drupal. I provide real world examples of these techniques, and easy ways of using them on any Drupal project.
Topics include
- Performance measurement tools
- The critical path and how to optimize for it
- Responsive Images
- SVG icons
- Cutting the Mustard
Outcome
Participants should leave with a better understand of what goes into making a website fast, and how to accomplish that in Drupal.
Scrum in Less Than an Hour
Room 177 9:30am to 10:20am All Attendees robert.laszloDid you ever wonder why your daily status meeting is called a “scrum”? That meeting is a standard part of the most widely adopted agile project management methodology - called Scrum. This session will provide attendees with a basic understanding of what Scrum is, where it came from, and how it can help organizations achieve success. We will also talk about some of the challenges involved in implementing Scrum, as well as some alternatives to Scrum.
Including Everyone: Web Accessibility 101
Room 178 9:30am to 10:20am All Attendees helenasueShouldn’t the web be awesome for everyone? That's not always the case, but it could be.
Designed for developers, project managers, and directors alike, the goal of this session is to introduce everyone to the fundamental principals and business related factors of web accessibility. We'll cover the basic standards and regional expectations for accessibility, as well as the principles and concepts that make up the accessibility field. This session will touch on Section 508, WCAG 2.0 standards, and the financial viability of a web accessibility initiative in an industry where time is money.
Based on my experience as a web accessibility specialist from both the perspective of a project manager and a front-end developer, I'll share the knowledge I've gained with you to address the following important questions:
- What is web accessibility?
- Why does web accessibility matter to my users?
- Why does web accessibility matter for my company and clients?
- How will a web accessibility initiative affect my bottom line?
- How can I include web accessibility in my company's culture and work plans?
- What tools can I use to assess and improve accessibility in my projects?
- How can I help the web accessibility community?
OS Training Drupal 8 Beginner Track
Room Library 9:30am to 10:20am Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
10:30am to 11:20am
Faster and Smarter Drupal 8 Development
Room Auditorium 10:30am to 11:20am Intermediate jmolivasManaging the increasing complexity of Drupal 8 can be a daunting task for anyone, are you prepared for this new challenge?. Now, writing a module involves much more boilerplate code, and there is a lot you need to know to get started.
The Drupal Console is a CLI tool that helps you manage that complexity allowing you to generate boilerplate code, interact and debug Drupal 8. Come along as we explore this tool that will help you developing by taking advantage of the modern PHP practices introduced into Drupal 8.
Slides: http://jmolivas.com/slides/fldc16/faster-and-smarter-development-with-drupal-console/
Debugging, Profiling, & Rocking Out with Browser-Based Developer Tools!
Room 172 10:30am to 11:20am Advanced mherchelBrowser based developer tools have become an indispensable tool for modern front-end web development. New features and changes are being added at a rapid pace!
In this presentation, I’ll walk the attendees through the tricks of the trade of Chrome developer tools, in addition to Firefox and Safari’s developer tools. I’ll walk through common problems and how to solve them including
- Integrating DevTools into your modern front-end workflow
- Modern front-end debugging techniques using browser-based developer tools
- Identifying front-end performance problems (and fixing them!)
- Profiling browser rendering issues
- Making sure your CSS is resilient to content-based changes
- Common add-ins
- How this all relates to Drupal
- Using browser based developer tools to remotely debug your smartphone - both Android and iOS (but not Blackberrry - Sorry!)
- Various tips and tricks that will save you hours in your next project
And best of all, this will all be covered through the use of real-world examples.
Understanding Drupal
Room 173 10:30am to 11:20am Beginner dinarconDrupal 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 including BADCamp 2015.
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.
HelpDesk: Improve Client Relationships and Maintainer Experiences
Room 175 10:30am to 11:20am All Attendees DigitalFrontiersMediaClient: "Our website is broken! Help!"
You: "What's wrong?"
Client: "The thingy isn't working right."
You: "What thingy? What page?"
Client: "The registration thing on the registration page."
You: "Hmm...It looks okay to me."
Client: "Really? You can't see it? Are you blind? I'm looking at it right now, it's covering the whole page and it's broken!"
We've all been there. The old "it works for me" problem. It is frustrating to you, it's frustrating to your clients, and it can cast a shadow of doubt in your client's mind about your competence. What you need is a way to (as best as possible) see the site and it's conditions through your client's eyes--a way for non-technical people to submit highly technical reports that answer nearly any conceivable question without the need to bother the client for more information.
Here, we discuss a custom HelpDesk module we created and have been using internally with our clients for about a year that does just that. In addition, it integrates with Open Atrium to allow reports from clients to be entered directly into maintainer ticket/case workflows seamlessly.
History, decisions, and technical aspects of the module will be presented along with a discussion about where mistakes were made and (hopefully) an interactive discussion about future plans for the module as we move to contribute the code as a project on Drupal.org.
May the GIT --FORCE Be With You
Room 177 10:30am to 11:20am Intermediate markdorisonThese Are Not the Commits You're Looking For
You know how to get things done with git: pull, add, commit, push; but have you mastered it like a jedi does the force? Nothing is a more lasting record of our work then our git commits. In a galaxy where companies ask you for your Github account in lieu of, or in addition to a resume, we have one more reason to make sure that our commit history is as readable as our code itself.
We'll cover the following:
- Rewriting commits
- Reordering commits
- Combining commits
- Improving commit messages
- Finding bugs using git
- How to avoid common pitfalls
You'll leave this session a jedi-level git master!
OS Training Drupal 8 Beginner Track
Room Library 10:30am to 11:20am Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
11:30am to 12:20pm
Mostly Core: Constructing real world sites (mostly) using Drupal 8 core
Room Auditorium 11:30am to 12:20pm All Attendees KarenSDrupal 8 contains lots of new features and functionality, including a lot of things that previously required contrib modules. I'll explore Drupal 8 and see how far I can get using mostly Drupal 8 core and as few contributed modules and custom code as possible to solve real world problems.
Front-end Workflow Automation
Room 172 11:30am to 12:20pm Advanced BLadwinAs front-end developers -- ones who love to code and design -- we must find a balance between each, without sacrificing creativity. Automating manual tasks lets computers handle the tedious and repeatable tasks, allowing developers to focus on what matters most. Many backend developers are already using server-side tools to automate their build and release processes; for the front-end, many of these tools hadn't existed up until the last few years. Often, we’re having to compile stylesheets, minify and obfuscate JS, tag and release versions, and deploy all this code to multiple systems. The few minutes that it generally takes to complete these tasks numerous times eventually add up to hours of what most would consider "wasted time".
Which problems will an automated build process attempt to solve?
-
Inconsistent builds: IDE's are wonderful tools, but unless your entire development team is using identical versions of the same software, the settings are bound to be different. This means that you will probably encounter inconsistencies, which will require time to resolve before releasing (git rebase -i, anyone?).
-
Failing builds: When developed correctly, unit tests are an integral part of any application framework, if not by simply avoiding scenarios where one bug-fix creates another bug. However, writing a test simply isn't enough, as you have to regularly execute the entire batch of tests, which if you're doing manually, you may be forgetting some -- you could have failing tests and not even know it.
-
Human error: this is simply unavoidable -- we're not perfect, therefore anything requiring human interaction is prone to potential mistakes.
In this session, I will be going over a highly opinionated piece of software that myself and a couple teammates at Acquia have built to automate our front-end build process. This process has granted us consistency in our development practices as well as increasing velocity in software development. Building the tools for our most important audience -- ourselves -- we were able to pinpoint the exact problems that we wanted to solve and the problems we wanted to avoid. While automating a process is an important endeavor, we also had to focus on coding standards and best practices to ensure that the tools we are building are optimal and extendable; no one-trick ponies in this circus. There is a special surprise at the end of this session! You will not be disappointed.
Drupal 8 development for Drupal 7 developers
Room 173 11:30am to 12:20pm Intermediate Christian Crawford, Christopher Raley, Jitesh DoshiNEW! All the slides, the code and the video screencast links are now available here.
Drupal 8 is a vast improvement over Drupal 7. But it's also a complete rewrite of Drupal. There are a lot differences from Drupal 7 and there is so much to learn ...
- Symfony framework
- YAML files for configuration
- OO & Classes for Controllers etc.
- Twig templates & theming
- Drush & drupal console (powerful new tool)
This session will give a quick start to developers who know Drupal 7 and want to learn development for Drupal 8.
Drupalnator Themestation: Understanding Drupal 8’s New Theming Layers
Room 175 11:30am to 12:20pm Intermediate darol100In this talk we are going to be discussing the major differences between Drupal 7 and Drupal 8 theming layers. In addition, participants are going to learn file organization of a theme in Drupal 8. Basics twig syntax, which will include output variables in twig and how to use filters, will also be discussed. Although we will be demonstrating this with the base themes (Classy, Stable, and Bootstrap), users will be able to apply what they learn to other themes, and maybe even be able to make themes of their own! Participants are going to learn how to use Drupal Console to their advantage to build their theme. At the end of the session, participants will be able to understand, configure, and deploy a variety of themes using the updated Drupal 8 CMS.
Fast! Anywhere! A Drupal Self-hosted Video Case Study
Room 177 11:30am to 12:20pm Intermediate DigitalFrontiersMediaSometimes for various reasons (legal, etc.), your client's video-based site is not able to use YouTube or Vimeo, etc. and must self-host the videos. When those videos are in HD, Drupal media fields out of the box don't make the choices easy. You can upload the high resolution HD video to the field and risk losing all your mobile users due to high latency, buffering, and low-bandwidth issues that make the video experience intolerable for them, or you can upload a lower resolution version that looks bad on high resolution monitors connected to systems with gigabit ethernet connections. And if you do decide to upload the full HD versions, be prepared to blow through your webhosting disk space and bandwidth resource allocations in the blink of an eye.
This is a case study on how just a small amount of work turned a frustrating, site-killing user experience with 400 HD videos into a performance powerhouse with playback latency times being reduced up to 90%, mobile device playback improved with consistent experiences even when there's little cellular signal available, and disk space and bandwidth costs reduced to some of the cheapest rates possible through the implementation of AWS, S3, Lambda, Elastic Transcoder, CloudFront, and HLS video. Work done in collaboration with Aisle 8.
For those who asked, here is the link to the original example Lambda Node.js code for sending a job to Elastic Transcoder that inspired this workflow: https://github.com/aws/aws-sdk-js/issues/455 .
Drupal-as-a-Service
Room 178 11:30am to 12:20pm All Attendees Sarah Gladstone
Thinking about an "as-a-service" business or project? Then this session is for you.
Designed for anyone, no technical knowledge or Drupal experience needed. The goal is to learn from a veteran on what is needed to get started, what to avoid, and other lessons learned the hard way. Learn where the Drupal helped, where the Drupal caused issues, and how the field is changing. This session is based on my experience starting a "as-a-service" business from scratch, growing, coding, and running it for 6 years, then selling it. As a programmer and former business owner, I am happy to share what I have learned, and hopefully help you with your "as-a-service" ideas.
Agenda:
- Overview on time-frames, key pieces of the system
- What Drupal and its ecosystem provides, what is missing
- How to avoid headaches.
- The good, the bad and the ugly: lessons learned on theming/templating in an "as-a-service" world
- Questions and Discussion
Assumptions about the audience:
None. No prior Drupal experience or technical knowledge assumed or needed.
OS Training Drupal 8 Beginner Track
Room Library 11:30am to 12:20pm Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
12:20pm to 1:30pm
Lunch
Room Lobby 12:20pm to 1:30pm All Attendees A Logo GringoDelicious Tex-Mex buffet from Gringos Locos!
1:30pm to 2:20pm
Mostly Core: Constructing real world sites (mostly) using Drupal 8 core
Room Auditorium 1:30pm to 2:20pm All Attendees KarenSDrupal 8 contains lots of new features and functionality, including a lot of things that previously required contrib modules. I'll explore Drupal 8 and see how far I can get using mostly Drupal 8 core and as few contributed modules and custom code as possible to solve real world problems.
Visual Regression Testing with Webdriver.io
Room 172 1:30pm to 2:20pm Intermediate lhridleyManual testing of user interfaces for visual and style components is a tedious and time consuming process, and by very nature introduces the human error aspect to web application QA review. While tools such as Behat have made testing certain aspects of the user interface less tedious, and have removed some of the "human error" aspect from the process, Behat doesn't provide the capability of testing the "layout" of site changes for those unintended consequences of misapplied HTML, CSS or Javascript.
There has been a great deal of growing interest, and emerging toolsets, to give developers the ability to conducting automated visual regression testing. In this session we will take a look at one of those tools -- Webdriver.io -- discuss what it takes to get a test environment set up to execute visual regression tests using Webdriver, and how you can write visual regression tests and conduct cross browser testing using BrowserStack.
Behat Kickstart for Drupal Developers
Room 173 1:30pm to 2:20pm Intermediate xpsusaTesting is more important than ever. In an Agile development enviroment, testing is essential.
Now you can learn to understand Behat testing as related to Drupal 7 and Drupal 8 -- fast.
Behat Kickstart for Drupal Developers covers the basics of Behavior Driven Development (BDD) and Behat and then rapidly moves into more advanced concepts that will quickly escalate your grasp of Behat by clearly integrating Behat with your existing Drupal and PHP knowledge. This session gets under the hood of Behat immediately. And tells you what you need to understand, write, organize and share your Behat work professionally as a developer. The Behat Kickstart for Developers session is fast-paced and aimed at intermediate developers in Drupal 7 and Drupal 8 who need to get up to speed with Behat testing now.
- Intro to Drupal/PHP Testing Ecosystem
- State of Testing in Drupal 8
- Composer
- Intro to BDD
- Intro to Behat
- Mink, Mink Extension, Drupal Extension
- Steps, Scenarios, Scenario Outlines, Background
- Features, Suites, Hooks, Contexts
- Steps: Relationship to Context Methods, what they do, how they work
- TableNode: Pass arrays of data from step to method
- Tagging
- Behat Debugging steps
- Context: Contexts are PHP classes. How to structure, working within, pulling into project
- Using Javascript: Selenium, Phantom.js, what is headless
- Behat.yml file: Organize and setup your testing environment
- Behat command prompt parameters
Cat gifs. Also front-end build process.
Room 175 1:30pm to 2:20pm Intermediate cwightrun, bollskisToday’s front-end workflow benefits greatly from familiarity with a few key languages and libraries - this is especially true as we move closer to a D8 release date. The front-enders at Chapter Three came together to discuss standardizing projects; a goal that had raised much contention in the past. After several rounds of hand-to-hand combat, we were able to come together and produce a front-end build process that has increased productivity, decreased friction, and helped with posterity and team interoperability. Topics include preprocessor languages, frameworks, asset architecture, task-runners, Drupal best practices, swear words, and complaining. Come learn what the hell we’re talking about and bask in the glow of our curated cat-gifs.
Drew Bolles - @bollskis
I first started building sites back when GeoCities was all the rage, spending my nights as a kid learning HTML and CSS. Fast-forward a few years, and I'm still viewing sources and reading A List Apart articles. I'm passionate about developing scalable, reusable architectures that not only look great, but are built with good semantics and performance as a feature.
Casey Wight - @cwightrun
With a background in design, development and Drupal, I bring a diverse set of skills to the Chapter Three team. My initial jump into the web-development forway began in the dark days of tables and frames. I’ve performed many roles over the years but my main focus has always been getting my hands dirty in code. Now I’m designing and developing flexible and scalable Drupal front-end systems.
Look Ma, No Hands ... Deployment
Room 177 1:30pm to 2:20pm Intermediate swirtDevelopers and Engineers are in the business of rolling out continual changes. Continuous Integration requires continuous tests. Continuous testing requires a hands-off approach to making changes to the configuration of your site and rolling out new features. Drupal 8 has much of this baked in, but what about all those existing large scale, mission critical Drupal 7 sites? They still need the safety of hands-off deployment. Come explore both the rationale and options for achieving this in a way that will make your feature deployments smoother, more agile, and less complicated.
Debugging Drupal 8
Room 178 1:30pm to 2:20pm Intermediate jmolivasDuring this session, we'll see the how to debug your Drupal 8 site.
You will learn how to debug
- System errors.
- Twig templates.
- Services registered on the service container.
- Routes registered on the route system.
- Configuration objects.
- State values.
- Database connection.
- Site settings.
- Available node types.
- Available users.
- Available taxonomies.
Slides: http://jmolivas.com/slides/fldc16/debugging-drupal-8/
OS Training Drupal 8 Beginner Track
Room Library 1:30pm to 2:20pm Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
2:30pm to 3:20pm
Twig & Drupal 8 Theming
Room Auditorium 2:30pm to 3:20pm All Attendees MortenDK**NOTE This session is moved to Sunday 10am!**
Drupal 8 has many new exciting features, but none are as radical or as needed as the changes made to the theme system*!
For 10 years Drupal's front end was design and built by developers that tried their very best to figure out what the front end needed; the lack of dedicated front-enders in core; resulted in front end architecture that was "less than ideal" for the challenges that the front end has faced for the last 5 years.
Drupal 8 and twig changed it all!
A complete overhaul of the theme system started 3 years ago - PHPtemplate is now out the door, the twig template system is implemented, and most importantly, the core idea of how the front end is build has done a 180° from how Drupal 7 handled theming.
This means:
No more divitis!
No more Class soup
No more of Drupal's standard markup and classes
No more yelling at the markup and not knowing where stuff came from
No more using regex for modify a CSS class!
Such a dramatic change would normally cause panic is a time for celebration.
The session will give you a solid understanding of the key concepts of Drupal 8 theming, as a themer, as well as giving insight to why the drupal8 theming is changed so radical.
The session will cover:
- "Best practice" of Drupal8 theming.
- The structure of a Drupal 8 theme's
- Classy and Stable, what happend with basethemes
- How {{ twig }} works from a CSS/HTML coders perspective (how to build a theme)
- A detailed look into fields, loops & how to completely control the markup
* Yes I know that a lot of “big things came into d8” that weren't front end related ;)
** This is the "next version" of the session I gave at DrupalCon Los Angeles & Barcelona, it builds on feedback from attendees & the changes that have happend since beta to RC1 to 8.0
A Successful Drupal Development Pipeline
Room 172 2:30pm to 3:20pm All Attendees cyb.tachyonA Successful Drupal Development Pipeline
Track: Coding & Development
Target: Beginners
Every time (or even the first time!) you build a Drupal site, you should be asking yourself if there’s a better way to do it. And we’re not just talking about site-building - we mean topics from Git to Deployment and everything in between. We’ll show you how all the tools fit. Here we’ll peek inside other people’s processes to see some of the best practices development that goes on at a professional level, and as a bonus help newbies get a grasp on which topics they want to dive deeper in.
This is the glue that holds all of the hot topics of today together: The Development Pipeline. We'll take an in-depth look at the way a professional Drupal Shop does things like transitioning from Sales, to Discovery, to site building. We’ll talk about the myriad of tools you can use to ensure development goes as smoothly as possible.
The best-practices whirlwind will separate the development process into stages and help you know which tools to use where. We’ll tie in starting a Drupal project with a Discovery Phase, drop in on estimation and documentation, and get the ball rolling with Drupal 7 & 8 Developer Tools like Git, TMUX, and Vagrant. We’ll list the top D7 & D8 modules and cover things like Premature Optimization, Testing, and Code Reviews.
Together, we'll cover the life cycle of a Drupal project from start to finish!
Rapid Prototyping with Kalastatic
Room 173 2:30pm to 3:20pm Intermediate derek.deraps--
Slides! http://bit.ly/1TWHtly
---
Prototype clean, beautiful sites that users enjoy and clients can easily collaborate on and understand. We’ll introduce kalastatic, the open-source Kalamuna prototyping tool that co-exists with Drupal themes, Wordpress, and stand-alone sites, and consumes JSON from Drupal 7, 8 or other services.
A solid prototyping framework should put in practice atomic web design principles to produce a living styleguide to guide back-end implementations in a framework agnostic approach. It should serve as a point of convergence between front-end development, back-end development, and content strategy.
BENEFITS TO THIS APPROACH
- Enable designers and front-end developers to focus on their craft instead of struggling with poorly documented CMS APIs and configurations.
- Drive design thinking early in the project lifecycle by giving clients something they can see and understand.
- Provide a litmus test against style regressions during development by using the prototype as a living style guide.
- Accelerate development by using a workspace for front-to-back and back-to-front collaboration.
- Craft small sites with fun and fury, not tedium and infinite clicks
Constantly Contributing Pretty Patches
Room 175 2:30pm to 3:20pm Beginner markieMany times we developers have come across the perfect contributed module, with a section of code that just doesn't do it for us. Since the Drupal infrastructure is Open to all, it is simpler to take that awesome-ish module and make the changes we need to make it full on awesome. Then we need to take those changes and apply it back to the module and let the whole world bask in the awesome, but we don't get to commit, to Git. (Rule of threes). Therefore we need to create a patch that allows the maintainer of the module to easily combine your great code with theirs. In this session we'll go over the acceptable ways to clone a projects repository, create a great looking patch and contribute said greatness back to the project. Thus, adding to the great chain of life. Oh, was it mentioned that this will work with Drupal Core as well? It should have been.
Un-hacking Drupal 7 Sites
Room 177 2:30pm to 3:20pm Intermediate johnstoreyRecently we have been given large amounts of work in taking sites with hacked core or distributions. This has led to the beginnings of a 'best practices' document for such projects, and we will cover those for the benefit of the audience.
Topics covered will include
- What to get from the client
- Generally useful non-drupal tools
- Solution patterns
- Sample solutions
- When to Know You Can't Fix It
With several decades of software development experience, and over seven years of Drupal experience, John brings a wide range of experience to the development process.
Multisite vs Organic Groups vs Domain Access
Room 178 2:30pm to 3:20pm Intermediate duckydanThis presentation will show, live and without a net, the how and why concerning these three models of Drupal 7 site architecture. Each of these three has a fit (or maybe even more than one) for most sites of even medium complexity.
Choosing the right approach is important, as going down one path for too long, can make a site much harder to support and maintain that it could be.
The focus of this presentation will be Drupal 7, as some of the modules are still under development, or may have significant design changes, with Drupal 8.
OS Training Drupal 8 Beginner Track
Room Library 2:30pm to 3:20pm Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
3:30pm to 4:20pm
Twig & Drupal 8 Theming
Room Auditorium 3:30pm to 4:20pm All Attendees MortenDK**NOTE This session is moved to Sunday 10am!**
Drupal 8 has many new exciting features, but none are as radical or as needed as the changes made to the theme system*!
For 10 years Drupal's front end was design and built by developers that tried their very best to figure out what the front end needed; the lack of dedicated front-enders in core; resulted in front end architecture that was "less than ideal" for the challenges that the front end has faced for the last 5 years.
Drupal 8 and twig changed it all!
A complete overhaul of the theme system started 3 years ago - PHPtemplate is now out the door, the twig template system is implemented, and most importantly, the core idea of how the front end is build has done a 180° from how Drupal 7 handled theming.
This means:
No more divitis!
No more Class soup
No more of Drupal's standard markup and classes
No more yelling at the markup and not knowing where stuff came from
No more using regex for modify a CSS class!
Such a dramatic change would normally cause panic is a time for celebration.
The session will give you a solid understanding of the key concepts of Drupal 8 theming, as a themer, as well as giving insight to why the drupal8 theming is changed so radical.
The session will cover:
- "Best practice" of Drupal8 theming.
- The structure of a Drupal 8 theme's
- Classy and Stable, what happend with basethemes
- How {{ twig }} works from a CSS/HTML coders perspective (how to build a theme)
- A detailed look into fields, loops & how to completely control the markup
* Yes I know that a lot of “big things came into d8” that weren't front end related ;)
** This is the "next version" of the session I gave at DrupalCon Los Angeles & Barcelona, it builds on feedback from attendees & the changes that have happend since beta to RC1 to 8.0
Bridging the gap between business and technology - Behaviour Driven Development with Drupal
Room 172 3:30pm to 4:20pm All Attendees Marcin PajdzikBehaviour Driven Development is an agile technique based on Test Driven Development that promotes communication and close collaboration between everybody in the team and focuses on writing specifications of the system behaviour. BDD can be used together with agile methodologies such as Scrum or Kanban to facilitate communication between all individuals working on a software project.
This presentation will explain how BDD works and when it should be considered as a potential approach by businesses. The speaker will show the advantages of using this technique from the perspective of both business stakeholders and technical team members. Real life examples form the speaker’s experience will be also given.
Writing a custom Drupal 8 field formatter
Room 173 3:30pm to 4:20pm Intermediate ultimikeDrupal 8 is here - if you haven't already, now is the time to start learning how to create custom modules. In this session, I'll walk you through how to create a custom field formatter using Drupal Console, a Twig template file, and a little bit of custom code.
Progressively Decoupled Panels
Room 175 3:30pm to 4:20pm Advanced mrjmdAs the concept of “progressive decoupling” gains traction in the Drupal community, existing use cases where such implementations have proven their value can be instrumental in guiding our path forward. Weather.com is a perfect example of a scenario where a large Drupal site had to balance the needs of performance, maintainability and innovation, while providing tools that would allow both content editors and developers to move rapidly and independently.
Out of this balancing act was born what has been called at various times “Angularmodules”, the “Presentation Framework”, and now, “Progressively Decoupled Panels (PDP)”. The premise is straightforward: create a system where front-end developers can write piece of functionality in their framework of choice (for weather.com, this was Angular 1) without having to know anything about Drupal’s APIs. Next, allow those pieces of functionality to be ingested by Drupal into panels content types in such a way that content editors can simply drag and drop them into new pages and layouts.
Now, with Weather Underground being migrated onto the platform built for weather.com, this system is being generalized to allow for their use of the forthcoming Angular 2 framework instead of Angular 1. This paves the way for a truly front-end-framework agnostic system that would give the same performance and editorial benefits while allowing front end teams to use whatever framework is the hot thing of the day.
This session will explain how and why all of this came to pass, the lessons learned, and ultimately begin to lay the roadmap for building this system to be framework agnostic from the ground up as a Drupal 8 contrib module.
Self Employed on the Web
Room 177 3:30pm to 4:20pm All Attendees davidjlaiettaSelf Employed on the Web
Do you want to learn how to work better on the web? Let’s look at ways that you can improve your workflow, automate some common tasks, and offload the things that you don’t want to do to focus on the parts of working for yourself that you chose in the first place!
I’ve run a web development company for the past seven years. Most of that time was self-employed, but I’ve also worked for others, in teams, hired contractors, and been a contractor. There are pros and cons to each of these, and I’m here to discuss my experiences, as well as how to get the best out of these situations.
Let’s look at ways that you can improve your workflow, automate common tasks, and offload things that you don’t want to do to focus on the things you chose in the first place!
Data architecture: Strategies for Drupal in academia
Room 178 3:30pm to 4:20pm All Attendees jeppy64The art of data architecture in your Drupal site for higher ed presents a slew of challenges from every direction. But, with the common knowledge that "content is king", where do you begin to discover that new website design? How can you use that old main frame, green screen data, re-architect it and present it in clear and concise information architecture without resorting to those monster mega menus with dozens and dozens of links? Can academia websites have that "cool and sexy" front end and at the same time give visitors a simple, easy to consume data rich experience? Do you need to bow to the challenges of numerous custom modules, or resort to using monster size distributions?
The simple answer is you CAN have the cool and sexy front end WITH the clear and concise information architecture without custom anything! The magic is stepping back to the most elementary (grade school level - pun intended) reasoning, planning and implementation.
Join me in reviewing a case study of a recent academia site launch where the challenges you might be faced with were documented, planned and implemented on time and on budget. Plus, the modular design is now ready for additional data layers to be "bolted on" taking the existing architecture and allowing it to become part of a much larger architecture without missing a beat.
OS Training Drupal 8 Beginner Track
Room Library 3:30pm to 4:20pm Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
4:30pm to 5:20pm
Designing For Those Who Matter – Your Users
Room 172 4:30pm to 5:20pm Beginner davidjlaiettaWe often forget when designing and developing websites that there are actual users on the other side of the screen. Whether through ability, age or cultural differences, there are a lot of ways that we can inadvertently alienate users. We sometimes forget that we’re making websites for our clients and customers, not ourselves.
In this presentation, I’ll give a brief rundown of considerations that should be given to make your website as effective to as wide a range of users as possible. Accessibility, internationalization, UX and UI changes will be covered, as well as some tips on how to determine your goal, and make your website work toward that goal for you.
Don't Give Away Your Business
Room 173 4:30pm to 5:20pm All Attendees cacheeNew new session for the day
Content Migration: CSV to Drupal 8
Room 175 4:30pm to 5:20pm Intermediate Hector
Now that Drupal 8 has been released, we need to start planning migrating our Drupal sites to Drupal 8. The migrate module is now in Drupal 8 core, which facilitates migrating content into Drupal 8.
This session will focus on migrating content into Drupal 8 from CSV files. Topics will include the following:
- Exporting content from Drupal 7 to CSV files via the Contentout module: https://www.drupal.org/sandbox/iribarne/2461613
- Using custom code in Drupal 8 to import content from CSV files using the Drupal 8 Migrate module, including leveraging contrib modules like migrate_plus, migrate_tools and migrate_source_csv
The presentation will include slides and several demonstrations, and we will also leave some time for Q&A.
The slides to the presentation can be found on SlideShare: http://www.slideshare.net/hectoriribarne/content-migration-csv-to-drupal-8
Partner Manager
Room 177 4:30pm to 5:20pm All Attendees bensr1Successful 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.
Choosing hourly vs fixed bid pricing based on the situation.
When and how to bundle additional services like hosting, SEO and support services.
How and when to say no to new prospects
OS Training Drupal 8 Beginner Track
Room Library 4:30pm to 5:20pm Beginner OStrainingFor the fourth year, Florida Drupalcamp is excited to announce OS Training, a professional training company, is presenting the Drupal 8 Beginner Track!
Headquartered in Atlanta, OS Training has teachers located across North America and England. The company is led by CEO and founder Steve Burge, author of Drupal 7 Explained: Your Step-by-Step Guide.
5:25pm to 5:45pm
Closing Session & Wrap Up
Room Auditorium 5:25pm to 5:45pm All Attendees ultimikeClosing session & wrap up