Session Schedule

Saturday, November 8 2014

10:00am - 11:00am

The Theater
DevOps + Performance

Last year, Facebook switched 100% of its production servers from a PHP to C++ compiler to our own virtual machine, HHVM. Since then, HHVM has gotten a further 2x faster, and now supports a huge number of PHP frameworks and extensions out of the box.

This talk will go through:

  • Our current capabilities (frameworks and extensions)
  • How we differ from standard php
  • Getting HHVM up and running
  • The exciting additional features available only in HHVM (spoiler, there’s lots)

1:30pm - 2:30pm

The Theater
Design, Theme + UX

We must get the content to the user, and we must do it fast. In a world constantly moving, getting a site loaded in under 1000ms is key to keeping users on your site, and engaged with your content. This is not a new idea, and the 1000ms barrier has been written about, presented, talked about in web circles for a while now--- but how do we actually do it?

Working on a Drupal site, how can we decrease bloat on a page, to get our site delivered to the user quickly and efficiently. What steps can we take to decrease that first hit, so a page is available as soon as possible, especially for a mobile user.

This talk will go over the tech, and the basics of the TCP protocol so you understand where the lag is in presenting a web page. It will describe the modules any frontend developer can use to help in presenting their content, and frontend techniques that can be applied by advanced themes to make your site the fastest on the net.

1:30pm - 2:00pm

Warp Zone
Business + Community

Check out the slides!

Websites are never done. Evolving version 1.0 from launch to the next redesign is an unpredictable adventure in problem solving, ingenuity and collaboration wholly distinct from the journey we take when building a site from scratch. Website support is its own discipline. Some sites need minimal security updates, others need constant attention and care to continue functioning, and many sites groan with technical debt from all the things you didn’t get to when you were building them. None of these needs arrive in a steady, predictable stream. This month the site might need 10 hours of work; next month it might need 100. As a developer, how can you make a living with this hurry-up-and-wait workflow? As a website owner, how can you ensure that you’ll have the resources you need when you need them? This session will cover: 1. The importance of minimizing technical debt on existing properties. 2. Seeing support work as an opportunity, instead of an opportunity cost. 3. How we structure our support team in a way that makes good business sense for us and our clients. 4. Case studies showing how incremental improvements can have a disproportionate impact for stakeholders.

2:30pm - 3:30pm

The Theater
Design, Theme + UX

There's a lot of front-end tools out there you can use with your Drupal themes that will improve your code quality and organisation, development workflow and ability for multiple people to work together on the same project.

This session will show you how you can...

  • Structure your sass
  • Use node.js' npm modules
  • Manage your external packages with bower
  • Automate your builds with Grunt.js
  • Save yourself lots of clicking by using LiveReload
  • Ensure your team is running consistent versions of tools with bundler
  • Use AngularJS templates in your theme to offload processing to the client-side
Code + Develop

We’ll show you how we designed and engineered a HATEOAS compliant API using Drupal 7, the awesome RESTful module, and a node.js client to interact with it. We’ll dig into this reference implementation and validate which best practices make things easier for the API Clients, and which ones are just hype. Thing’s we’ll discuss:

  • What does it mean to be compliant with HATEOAS? What does this even mean?
  • If your API is HATEOAS compliant are there libraries your clients can leverage, and what is that development experience like?
  • Everything is a resource. Multiple endpoints to represent those resources, and actions attached to them.
  • Do hypermedia best practices improve the client coding experience, and pay off long term?
  • What API design decisions were the most important for good client coding experiences?
  • How do you structure your API to provide compliant responses?
  • What API design decisions are just hype and are things you shouldn’t worry about?
  • API design tools.

5:00pm - 6:00pm

The Theater
Design, Theme + UX

In the face of bewildering advancements in the front end, it's useful to take a step back and take stock of where the fundamentals are headed: namely HTML and CSS. These two lowly languages have been largely left by the wayside as we front-enders scream ahead with abstractions and frameworks. But where are HTML and CSS headed exactly? This session examines progress working groups have made to the existing standards, techniques that are already or will soon be available for developers, and some of the proposals being floated around the standards.

We'll devote our attention to the following questions: How far have HTML and CSS come? What upcoming techniques or proposed additions are most relevant to us as Drupalists? What does the future of HTML and CSS look like in terms of cross-browser compatibility, programmatic approaches, and more extensive possibilities? What are Web Components and the Shadow DOM? How can we prepare for the approaching future of HTML and CSS?

Just some of what we will delve into:

  • A brief retrospective: Where are we now?
  • The current rendering engine landscape
  • Vendor prefixes: Dead but not extinct
  • New selectors, combinators, and pseudo-classes
  • Flexbox, Grid, and other layout
  • CSS backgrounds, borders, and gradients
  • CSS variables and extensions
  • Web Components and the Shadow DOM
  • Custom elements, HTML imports, and CSS scope
  • General implications for Drupal
  • ... and much more

This session is geared toward front-end developers, themers, and designers interested in a robust crash course in where HTML and CSS are headed in the short and long term. This session also assumes an advanced understanding of modern HTML and CSS. Though some of these techniques are still unavailable for general use, this session will give you the tools to engage in the discussion and to plan for the future of markup and style.

About me

Preston So has designed websites since 2001 and discovered Drupal in 2007. He is a Software Engineer at Time Inc. and also co-founded the Southern Colorado User Group. Since 2008, Preston has spoken at conferences and camps across the U.S. and on two continents (most recently DrupalCon Amsterdam 2014 and DrupalCon Portland 2013) on topics such as design, theming, usability, responsive design, and cutting-edge CSS.

Note: This session is an updated version of the DrupalCon Amsterdam session The Future of HTML and CSS. It is also a sequel to Frontiers of CSS (BADCamp 2012, DrupalCamp NJ 2013, DrupalCamp CT 2012).

Bowser’s Castle
Site Building + Using Drupal

Drupal has features falling out of its butt. And where a feature doesn't exist, Drupal has highly generative systems that usually allow the clicking together of new features. We already have tons of stuff to make things "easy." Problem is, 'easy' doesn't scale.

Drupal isn't losing market share because its feature checklist isn't long enough. It's losing market share because its essential design makes it difficult to scale into complexity. Complexity slows down innovation, release cycles, and introduces a subtle upper bound on the interesting-ness of feasibly solveable problems.

So, if you really want to help out Drupal, don't think about features. Don't even think about "making it easy." Think about reducing complexity.

This is an updated reprise of my talk from Drupalcon Austin, incorporating some elements from my Keeping it Simple essay, and accounting for some of the interesting discussions in the community that have been burgeoning since then. The talk is strongly rooted in Rich Hickey's Simple Made Easy, which is profoundly worth watching.