DrupalCon Amsterdam 2014

Introduction

Videos from DrupalCon Amsterdam 2014.

Video Sponsor(s) / Provided by
Curated Videos
Description
Belgium born Drupal founder, Dries Buytaert is a pioneer in the open source web publishing and collaboration platform space. Dries is passionate about technology innovation, social media and photography.

Dries maintains the role as the project lead for Drupal, as well as the president of the Drupal Association. He is the co-founder and CTO of Acquia, the enterprise guide to Drupal; and the co-founder of Mollom, a web service that evaluates content quality and stops spam on your website.
Description
Speakers: KrisBuytaert
The State of Drupal DevOps was first given by Kris Buytaert at the 2011 Munich Drupalcon. The data has been captured and extended to help the Drupal community understand DevOps and track the impact it is having. It is useful to understand where the community has come from to be able to target and adjust where we are going. We would like to keep collecting and exposing this data in an open format. The survey will be opened again for Drupalcon Amsterdam https://drupal.org/project/devops_survey

DevOps is a cultural conversation supported by technology. It is ambiguous and hard to define, but this has not stopped it from becoming the Golden Chalice for all things tech. For executives, it has become the ticket that solves their internal software management issues while keeping harmony between Stakeholder, Product, Sales, QA and Engineering. For developers, it gives them control of systems and better methods for integrating their work while protecting them from disgruntled decision makers. It gives operations the consistency and predictability to be able to support their systems while the rest of the organization makes decision after decision that affects them. What does this mean to the Drupal community and how can we learn from the data?

This session will help us understand what DevOps is and how it relates to the projects, management styles, and systems that our work touches. Armed with this knowledge, we will evaluate Drupal as a community to identify what is working, and what is not. We will address the fragmentation in this space and encourage a conversation that helps us move forward as a community. DevOps, when applied correctly, allows people to shift their focus from the technical challenge of delivering their message to the message itself. This is an important paradigm shift with profound implications ... let's discuss.
Description
Speakers: jthijssen
The Standard PHP Library (SPL) might be one of the most powerful, yet the most unused part of PHP, but you are one of those lucky developers who have discovered it! But now what? The lack of documentation about SPL makes it that a lot users don't really harvest the power that SPL brings. During this presentation I will dive into the numerous iterators, data-structures and interfaces that SPL defines and when & how to implement them in your own projects, but we will talk about the edge-cases as well, as in SPL land things don't always are what they seem..
Description
Speakers: mortendkFabianxjoelpittet
Drupal 8 will have a fancy new template engine (Twig) and a simplified theme layer. We'll show you the new syntax (don't worry, it's easy) and walk through how you can actually use Twig in your every day lives.

Are you a theme developer? Come see how consistent, easy, and straightforward it will be to create your own custom themes.
Do you maintain contributed modules? Come learn what you need to do in order to adapt your code for Drupal 8.
In this session some of your friendly Drupal 8 theme system co-maintainers will walk through the state of Drupal 8's theme system. We'll talk about what's different from Drupal 7 but also walk through some of the internals of different aspects of the theme system and how they might affect your day-to-day work with Drupal.

Topics include:

A high-level overview of the changes to the theme system in Drupal 8.
Some of the goodies that are possible now that we’re using Twig as our templating engine.
Using theme hook suggestions to cut down on custom code and have themers thanking you.
Phases of the theme system and where you can step in to alter things.
Description
Speakers: Michel van Velde
How to grow from a creative founder to corporate leader

The average Drupal agency has about 15 maybe 18 employees. Often there is the desire to grow the agency but the owner fails to grow past this threshold. Why is there an invisible threshold at 18? What does it take to grow past the 18 marker. Why do many agencies fail and start firing people when they reach 25 employees and turn their agency in a negative spin back to 12 employees. These hurdles can be overcome with the right knowledge and skill set.

This session will give insights in how to leap the hurdles and grow your Drupal agency. It will give insights in the management and people skills needed to grow from a creative founder into a corporate leader. It will also highlight the human resource side of growth, the sales skills needed and the financial impact of growth.

Michel van Velde, founder and co-owner of One Shoe will explain what is necessary to grow from a creative founder to a corporate leader and will take you past all the pitfalls he encountered growing his agency to an internationals player with over 40 employees without any external funding.

Business Track BoF: Growing Drupal Businesses: A follow up discussion to this and Life in the Fast Lane - Achieving Sustainable Growth has been scheduled on Tuesday from 15:45-16:45 in G111 · Adyax.
Description
Speakers: kattekrab
Conflict can be constructive.

Testing ideas by challenging them with alternatives is a useful process. But it can be uncomfortable and confronting for many people.

We value consensus. This is one of the Drupal community's great strengths. However, when consensus can't be reached, valuable time and energy is wasted. Contributions are left to languish forgotten in an issue queue.

This session will outline the types of conflict we encounter in the Drupal community, and explore some techniques for using conflict as a positive force for moving issues forward and avoiding stagnation.

Let's discuss how we can build a culture of respect to embrace the positive aspects of conflict and work together better.
Description
Speakers: Crell
One of the most widely-used and mature Content Management Systems on the planet, Drupal runs more than one in fifty websites in the world. However, it has always been something of an odd duck, with an architecture and design very different than anything else in PHP.

Enter Drupal 8: Almost a complete rewrite under the hood, Drupal 8 is a modern, PHP 5.4-boasting, REST-capable, object-oriented powerhouse. Now leveraging 3rd party components from no less than 9 different projects, Drupal 8 aims to be the premiere Content Management Platform for PHP.

But how do you use all this new-fangled stuff? This session will provide a walkthrough of Drupal's key systems and APIs, intended to give developers a taste of what building modules with Drupal 8 will be like.

Prior familiarity with Drupal 7 is helpful but will not be assumed.
Description
Speakers: ohthehugemanatee
Drupal has a whole ecosystem of modules to help you with layout. Which one do you use? There are Display Suite die-hards, Context converts, Panels proselytizers, and even people who swear by Core's built in template/block system. Who's right? Which layout system should YOU use?

In this session you'll learn that the answer is "all of the above". Each layout system has unique strengths and weaknesses; you'll learn to combine them to maximize those strengths! We will discuss and demonstrate the three major approaches, highlighting the best use cases for each and ways they can be combined. We will cover extensions to each module such as Panelizer and Field Group, and when those can be helpful as well. Finally we will review some case studies where a combined approach has improved maintainability while reducing setup time.

You will leave this session with an in-depth understanding of major layout concepts in Drupal, and with some practical experience in combining them for optimum effect. Why restrict yourself to one layout system when you can use them all!
Description
Speakers: pcambra
Drupal 8 core initiatives introduced a new methodology for Drupal core development, they've helped to focus contributions and efforts very effectively towards the main objectives of the release. All these initiatives, "Views in core", "Multilingual", "Configuration management", "Web services", "Blocks & layouts" and "Mobile" have accomplished really important milestones, key for an innovative and powerful Drupal 8 version.

However, there's a number of other efforts behind the scenes that have brought major changes to Drupal 8.
This session will cover the most important changes that are not necessarily covered by any initiative but the community has made possible. Some of these changes include the way that menus work, field and entity api changes, actions, modules that have made it into core, features removed, etc.

Join me in this talk to take a look to the most relevant changes coming from these often overlooked initiatives that will change the way we face projects in Drupal 8.

This session is intended to site builders and coders willing to know what's going on under the hood of Drupal 8 and get a better understanding on all the changes that are coming.
Description
Speakers: pwolaninNick_vh
Acquia Search is a hosted Apache Solr service that Acquia has provided with each subscription since 2009.

Last year, the service was re-launched behind the scenes on a new infrastructure to provide even more automation and integration with our other systems. Taking concepts in part from Drupal Gardens, we built a Drupal site that serves as a deployment machine: it receives data via Services module to create or update nodes. The data on the nodes is then used to configure load balancer and Apache Solr servers using a combination of git and direct ssh tasks using phpseclib.

This talk will include

A summary of the existing challenges to operations and development of new features
A high-level picture of how this is orchestrated by Drupal
How server configuration is managed for Apache Solr
Request handling with Nginx to help our load balancing process
How this scales for up to 4000+ Solr cores.
How we spawn new search cores for customers automatically.
Some more detailed explanations of how Drupal modules, the Drupal queue, and PHP libraries are leveraged.
We hope you will come out of this talk with a new view of Drupal as a potential automation tool, and think about building your own system or adopting existing projects like Aegir or DevShop to help manage your deployment.
Description
Speakers: rosstuck
Models, sure. That’s all part of MVC. Those are the objects that hold your business logic. Except…do they really? In PHP, the norm is to have an anemic domain model. Even if you want to move away from that (whatever it is), how do you do it? In this talk, we’ll look at different schools of thought for managing your code’s truly important parts and the impact on related areas like testing or form libraries. We'll also discuss making your framework unimportant and integrating different systems, no matter what they're written in.

From plain models to service layers, DDD to CQRS, we’ll try to apply them to an average application using PHP libraries and see where they stand up or fall down. There’s no magic elixar for designing good models but sometimes all you need is a little iron in your diet.
Description
Speakers: jason.coghlan
Proponents of open source technologies, especially Drupal, have a strong understanding of the collective effort required to achieve a very ambitious goal. We understand the need for shared vision, team collaboration and a strong sense of community. All to support what is essentially a large scale globally distributed self-organising team.

For those of us whose daily work life involves implementing such technologies do we apply a similar approach to our own projects? Is the self-organising team a reality, especially in a commercial or public sector Drupal services environment? If so, how well does self-organisation work in practice and what are the factors that underpin the formation of a successful team?

This session aims to:

Focus on people as individuals and how to balance personality and behaviour for optimal outcomes.
The concept of distributed leadership and project management over command and control.
Define how much process is enough to support but not hinder a successful team.
Look at how commercial realities and the pressure to deliver affect the ability to self organise.
Discuss recruitment methods for creating self-organising teams.
Define the effect of organisational culture on the motivation to self-organise.
Explore if an agile approach combined with a strong self-organising team is the panacea for successful Drupal projects or just a utopian dream.
Entertain with tales of Machiavellian treachery, brutal politics and cute furry animals.
BoF: A follow up discussion to this, and another related session on the Business Track, has been scheduled - https://amsterdam2014.drupal.org/bof/business-track-bof-new-ways-working
Description
Speakers: rachel_norfolk
Learning is something that we all do; every day of our lives. The things we learn from, and the organisations that validate our learning and recognise our other contributions, are as diverse as the lives we lead.

As people's careers and experiences become more diverse over time, there is a growing desire to collate evidence of achievements and contributions in one place.

I've recently been working on a project where we have implemented Mozilla Open Badges (@openbadges) into a website providing Continuing Professional Development in pain management for Health Professionals.

I'll look at learning in general, how we came to use Open Badges as an evidence option (and why it is just an option), the technology decisions made and the lessons we learned along the way.

Finally, I'll discuss why I think something similar is important to the Drupal community, especially as now some major Drupal companies are offering certification that I believe should actually appear on our drupal.org profiles, and how I would like to get involved in making it happen.

Having http://drupal.org behave as both an Open Badges issuer and a displayer allows us to recognise the myriad ways people contribute to the Drupal Community and allows other Drupal-related organisations, such as DrupalCamps, to show recognition to the community right on members' profile pages.
Description
Speakers: kvirta
You can get far by caching Drupal's content feeds. There are a lot of caching layers available. But when you need a bit of intelligence to your caching layer, drowning deep into the world of Varnish VCL configurations isn't the only option.

We went from trying to optimize Drupal's ability to deliver JSON-feeds out with MongoDB field storage and SOLR backed Views with a Varnish caching layer to a performance-optimized standalone Node.JS/MongoDB stack.

In this presentation we'll show a real-world case, where Drupal's content is optimized and indexed to MongoDB and then delivered out in JSON with astonishing speeds with a very simple Node.JS layer.

The setup serves most of the video content to Finland's biggest media corporation, Sanoma. It's the sole source of video content to their online TV service, Ruutu.fi.

The same setup could be used for serving as a backend for high-volume Javascript applications, replicating a lot of content around the world or optimizing the UX of a Drupal site by adding super-fast asynchronous APIs.

In the presentation we'll look at the architecture, the development phases, performance optimizations and lessons learnt in storing complicated data structures to Drupal and MongoDB. We'll also look at the current development efforts in getting the system in shape for Drupal 8 upgrade in the near future.
Description
Speakers: eatingsBcwald
Innovations in front end practices and technology continue to push our industry forward. While Drupal approaches a significant milestone with the impending release of D8, let's take a moment to survey the current landscape of front end practice and consider what it means to be a front end person in general, a front ender working with Drupal, and what it means to straddle these two worlds which are increasingly moving in different directions, at different speeds.
Description
Speakers: wwalc
Drupal 8 will finally be shipped with a default WYSIWYG editor: CKEditor. Content creation and editing is one of the most frequent tasks in CMS applications, that’s why it’s important to fully grasp the tools used while editing. A good understanding of the editor will help you control what’s being posted and increase the efficiency of your site’s content creators.

This session will not only guide you through CKEditor-related features in Drupal 8, but will also help you extend CKEditor functionality by providing your own features.

Agenda:

Why existing WYSIWYG solutions for Drupal 6/7 are bad.
New features offered in CKEditor & Text Editor modules.
What is ACF? How content filtering works in CKEditor.
Widgets: why use them and how they handle images.
Writing and adding plugins to CKEditor, extending the list of configuration options.
Security: HTML Filter vs. ACF.
Migration.
About me: Wiktor Walc, CTO @ CKSource. I’m a Drupal enthusiast. I had the pleasure of being an FCKeditor / CKEditor module maintainer for Drupal 5, 6 & 7.
Description
Speakers: emmajane
Many of the new fangled front end development efficiency tools require you to drop into the Command Line. For those who are accustomed to using a Graphical User Interface, this can be a frustrating and demoralizing experience. The Command Line User Experience (CLUE) may be archaic, but it is also a very efficient way to work.

This session will uncover some of the mysteries of the command line, and unpack the psychology behind your frustrations with it. We'll dive into details necessary to enhance your appreciation of this simple tool by touching on the following topics:

why you're right to hate the command line (and how you can get over your hatred and get on with your job)
the features of a well-written command line utility (so you can distinguish between the good ones and the ones that ought to make you curl your toes in frustration)
the benefits of working at the command line when things are going wrong (and why things are more likely to go *right* when working from the command line for certain kinds of tasks)
and finally, some simple tips to make your time at the command line more bearable
By the end of this session you should be equipped to tackle command line tasks. Specifically, you will be able to:

create a mental model of the tasks you need to complete while at the command line
locate the command line on your computer
complete tasks using relevant commands
identify and apply troubleshooting techniques if things go wrong
safely exit the command line when your tasks are complete
Yes, this is an introductory session. This is for people who feel shame that they don't know how to "just see Dee into yer root durrr" and get mad when people say "just diff me a patch" as if it's as easy as playing with a kitten. No, you don't have to have Git, or Grunt, or Sass installed to attend (you don't even need to know what they all are--bonus marks if you do though). You don't even need to know where the command line is on your computer.

slides are available: http://www.slideshare.net/emmajane/getting-a-clue-at-the-command-line
Description
Speakers: dasrecht
Drush is not only awesome for managing your local Drupal site, with site aliases you can manage Drupal sites on remote servers without logging in via SSH!

With Drush Deploy you even can deploy sites on multiple servers completely automated with one tool we all aready know at heart: Drush, no other additional library like Capistrano needed!

In this Session we will present how to setup Drush to work with remote sites, what is possible and what we use in our daily business.

Then we will dig deeper into Drush Deploy: how it works, what it does and show how to set it up to deploy a drupal site on multiple servers with a single command, with automated backups, database updates, cache clears and even rollback functionalities.

We will cover all the different parts which need to be aligned before we can start using drush to deploy your site. We will also cover the problems we had and how we solved it and give you a outlook to Drupal 8 to show you that establishing a good deployment does not mean it will break with the next Drupal release.
Description
Speakers: pdjohnsonjwalpoleweskutimdeesonjannekalliola
Help make this panel conversation relevant to you

Please contribute your question(s) for the panelists using our web form.

About this session

Do you run a Drupal business? Have you ever suffered growing pains as you scale to meet with demand? Ever wished you could be a fly on the wall at a thriving larger agency? If so this session is just the thing for you!

Join business leaders from 4 of the world's most accomplished Drupal businesses, lifting the hood on their organisations, revealing their winning formulae. Each panellist will be quizzed as to how they have primed their business to achieve sustainable growth, how they have triumphed in highly competitive markets.

Operating across multiple continents in various sectors you can be assured this panel conversation, chaired by Janne Kalliola, will provide relevant and valuable takeaways. With such diverse backgrounds, expect healthy debate and contrasting thought provoking opinions.

With the fast approaching release of Drupal 8 there’s never been a better time to prepare your business for a new golden age.

Chair person: Janne Kalliola - Exove

Panelists

Vesa Palmu - Wunderkraut
Tim Deeson - Deeson Online
Paul Johnson - CTI Digital
Jeff Walpole - Phase2
Key topics will include:

How do you differentiate your business in the market?
Are you sure you WANT to grow a large organisation?
To service larger clients what specialisms have you needed to deliver in house?
How does your business plan to sustain growth? i.e VC, Acquisition, JV
What is the most challenging aspect of delivering larger projects?
How do you mitigate risk?
What is the biggest challenge your business foresees?
How should large Drupal shops contribute to the sustainability of the project?
Business Track BoF: Growing Drupal Businesses: A follow up discussion to this and Leaping the Hurdles to Growing your Drupal agency has been scheduled on Tuesday from 15:45-16:45 in G111 · Adyax.
Description
Speakers: lornajane
A practical, no-rhetoric session on what objects are and why they might be useful to developers. We'll start with a little theory and then move on quickly to some practical examples of what you'll see in an OOP PHP project. From classes, objects and inheritance, we'll move on to file structure and autoloading code in PHP. This session will also cover more advanced concepts such as traits and interfaces, and discuss how they allow us to build more powerful, flexible applications with less code to maintain. Developers who attend this session will be able to tackle their next OOP project with confidence.
Description
Speakers: hugo.eurailakhodakovskiy
About Eurail.com
Eurail.com is a fast growing company that sells train passes online worldwide, with which travellers can visit Europe by train for a few days or a few weeks. Main products are InterRail passes for European residents and Eurail passes for the rest of the world.

Eurail.com belongs to one of the 50 largest internet companies in the Netherlands (located in Utrecht) with the yearly turnover of 60 million euro.
Running 3 ecommerce websites: www.eurail.com, www.interrail.eu and www.germanrailpasses.com

What and Why?
Eurail was experiencing the problems with their previous supplier in support, maintenance of the websites and in development of new features. Outstanding downtimes of the web applications leaded to the drops in sales.

They were looking for a reliable technical partner who could fulfill the existing gaps and who could act as a technical adviser and integrator in the long-term relations.

How?

Audit of the code, security bug fixing
Onboarding on a new platform - Acquia Cloud Enterprise
Performance testing with BlazeMeter
24/7 SLA Support
Complete Drupal 6 to Drupal 7 migration
Agile development
CDN integration
Drupal Commerce integration
Ecommerce migration into Drupal
Who?

Eurail team
Adyax engagement, development and support teams
Partnership with Commerce Guys
When?

Start: March 2013
1 month of Onboarding
7 months of re-development/migration to Drupal 7
1.5 years of Support
7 months for ecommerce migration to Drupal Commerce
Strategy and development plan up to 2017
Results and Learnings?

No downtime
Stable sales
Improved user experience, content management
Ecommerce flows optimized
...
More learnings will be presented by the IT manager of the Eurail.com - Hugo Knobbout, who kindly agreed to assist Adyax in presentation on the conference.
Description
Speakers: danigrrl
Many of the tools we use to get our work done (Groups.Drupal.org, the Issue Queue, IRC, etc.) are ineffective in facilitating the collaborative decision making that Drupal needs to move forward. As a result, discussions and collaboration most often happens at cons, and must then be brought to GDO or the Issue Queue, only to get hashed out again. Progress stalls.

The issues of collaboration and cooperative problem solving are those that designers and UX professionals deal with every day, and as designers, we are uniquely positioned to help. Drupal community leadership has begun to understand the importance of UX design to the continued growth of the project over the last few years. However, very little funding is put towards UX design, and UX activities tend to be focused on singular activities, e.g. the Drupal.org redesign, or issues facing a particular screen or module.

Additionally:

* Our current development processes are poorly set up for UX/research/design, e.g. discussing design within Issue Queues

* When UX issues are worked out, up to 60% of them are never implemented.

* Designers and UX professionals who donate their time to the community find that their contributions aren’t recognized, and sometimes face negative/harsh treatment from community members.

As a result, UX professionals and designers who enter the community tend to burn out within a few years, or they just don’t contribute.

In this presentation, veteran Drupal designer and UX Designer Dani Nordin will share some of the things she’s learned as the UX lead for the Drupal Community Tools team, such as:

* How the community currently collaborates on design and solves tough technical issues
* A vision for how the process can be improved
* Updates on the work that the Community Tools team is doing, and how you can help us move forward.

About Dani Nordin

I'm a UX Researcher and Designer who works with Drupal teams on medium-to-large implementations, usually involving complex relationships of content, stakeholders and technology. Additionally, I have taught UX Design at CDIA, General Assembly, and Harvard Business School. Currently a Research Associate at Bentley User Experience Center, where I'm pursuing a Master's Degree in Human Factors and Information Design.
Description
Speakers: Jess Iandiorio
What does it take for the UK's most popular recipe website to keep that standing? Engaging content, powerful search & navigation and a seamless experience across devices.
Join BBC Good Food's digital team as they showcase the history of their digital presence, how they built the engaging experience they have today, and where they hope to take their digital business in the future.

Speakers:
Duncan McKenzie, Digital Product Manager, BBC Worldwide
Alan MacKenzie, Drupal Team Lead, BBC Worldwide
Jess Iandiorio, VP, Product Marketing, Acquia, Inc.
Description
Speakers: SchnitzeldasjoaspiliciousDave Reiddrunken monkeymiro_dietikerquicksketchbojanzBerdirjaperry
Drupal 8 is on its way and you are a maintainer of one of the most used Drupal module. In the Site Building track we plan to organize a "Drupal 8 Contrib Module Status Session", which gives all the maintainers of famous module a possibility to tell everybody about their status of the Module.

This session will take 2 1/4h and will include 12 minute sessions of all the maintainers. Where every maintainer will present the status of their module for Drupal 8 in the same way (plans and changes for D8, current status, help & possibilities to contribute). The idea is to give site builders a concentrated overview of the status for the most important modules they need to build Drupal 8 sites.

These Modules will be presented:

Webform (by quicksketch)
Rules (by dasjo)
Display Suite (by aspilicious)
Media (by daveried/slashrsm)
Search API (by drunken monkey)
Commerce (by bojanz)
Redirect, Global Redirect, Token, Pathauto (by berdir)
Panels (by japerry)
Simplenews (by miro_dietiker/ifux)
Description
Speakers: Prasad Shir
There are several ways in which you can learn, ‘how to build a Drupal site’, this session focusses on, ‘how NOT to build a Drupal site’!

This session talks about the bad, worse and worst practices which many novice developers are vulnerable to follow. Such practices are followed simply due to lack of awareness of their implications or to take shortcuts to achieve desired behavior in a site.

The session highlights the practices which have a potential to bring your site down when you need it the most!!

In my 8 years of Drupal career, I have burnt countless nights solving issues on Drupal sites built by others, just because someone followed bad practices while building the sites!

This session summarizes this experience and provides a nice consolidated ‘NOT TO DO’ list to developers and site builders.

This session will cover:

How NOT to plan, design and architect a Drupal site
What NOT to do when building a Drupal Site
What NOT to do when creating a custom theme
What NOT to do when writing custom code
Which configuration settings should NOT be left on live sites
How NOT to host a Drupal site
How NOT to maintain and manage a Drupal site
At the end of the session you will take away a nice handy list of what NOT to do on your next Drupal projects. Then, you can spend your evenings the way you want to and NOT for solving issues!
Description
Speakers: iamcarrico
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.
Description
Speakers: Aimee Degnan
PDF of Slides: DrupalCon Amsterdam - Contributing to Drupal as a Small business

We are all powered by Drupal, so lets keep it running! Every single contributor makes a difference to the community. Business owners of all sizes have a unique opportunity to empower their team to be a team of active contributors!

At Hook 42, one of our strategic business goals is to be actively involved in and give back to the Drupal Community. We contribute in ways that are within the means of our company size - we are a team of 8 and qualify as “small”. Before the company we were freelancers, so we know how to contribute on an individual to medium scale.

This session will surface how we plan, budget, and execute our Drupal community efforts. Our goal is to provide you and your team creative options for community contributions within your company or individual resources.

From Kristen Pol:
"We need to encourage more contribution, and contribution comes in different shapes and forms. This would be a good session for students, freelancers, and small to medium shops."

Everyone makes a difference!

Benefits to Attendees / Objectives:

Contribute beyond “committing to core”.
Identify non-coding contributions to get everyone involved.
Surface contributions that are not monetary in nature.
Address the “How much contribution can I afford?” question.
Quantify the return of your Drupal community investment with real data.
Tie community contributions into your project work.
Surface contribution resources on Drupal.org and other sites.
Speaker's Certifications & Education:

Certified Project Management Professional, PMI.org. - 2006
Stanford Certified Project Manager / Advanced Project Management - 2006
Certified Scrum Master
Certified Scrum Product Owner
Certified Microsoft Technical Specialist - MS Project (and a bunch of other old MS tech)
Business Analyst Education - IIBA.org
Business Process Improvement - Performance Design Labs / Rummler Process (pre Six Sigma).
University: Kinesiology / Physiotherapy, Psychology. ;)
Beyond the Certs - Real World Experience:

CEO & Co-founder of an 8 person Drupal shop in San Francisco, Hook 42. A small team with big enterprise experience.
Ran own freelance company working with large enterprise clients.
Worked at and with full service agencies as a vendor manager, Managing Architect, and partner.
Large enterprise applications architect, project, program, and portfolio manager at a bunch of big name companies.
Specialized in large enterprise collaboration applications, knowledge management, process automation, and web technologies since 1997.
Industries include: Agencies, Entertainment Software, Healthcare, Retail/E-Commerce, Security, Industrial / Commercial Software
Description
Speakers: calevans
PHP is a powerful tool. It is estimated that it is running on more than 80% of the servers on the web today. Many know that PHP can also be run from the command line, but don’t truly appreciate the power that it gives them. You can use PHP for everything from simple command line pipes to back-end maintenance for complex web apps. In this session we will start with some simple examples of using PHP from the command line and then build up to using it as part of a larger application.
Description
Speakers: joe-boperinko
We're all putting in lots of effort to 'make the web faster', and DevOps practitioners are especially interested in using tools to make their sites superfast. Nginx and Varnish are go-to performance tools to make your site fly, but with some cross-over in what they can do, and important capability differences in that cross-over zone, how can you get the best out of them?

This talk will look at using Nginx and Varnish together with SPDY in a 'SPDY sandwich' (Nginx » Varnish » Nginx) to reduce the latency of web pages, and to improve web security. With some overview of the technologies involved, their strengths and benefits, weakenesses and limitations, we'll focus on putting them all together and getting benchmarks for the potential performance paybacks.

The session will cover:

Nginx, I got you (I feel good)
Varnish - Bring it on … Bring it on
Superbad, Superslick, SPDY - What, why, how?
Get on the Good Foot - Everything in SSL/TLS, and encryption ciphers
Get it together - the SPDY sandwich
The Payback - testing it all
Barney Hanlon (@shrikeh) originally proposed the 'SPDY Sandwich'. This session is an in-depth look at set-up and configuration, with special attention given to performance benchmarks.

About the Speakers

Olli Erinko and Joe Baker are developers at WunderKraut, with experience in DevOps roles on large, high performance sites for the UK Ministry of Justice, Oxfam International, Uusi Suomi, Puheenvuoro and Tekla.

Wunderkraut is Europe's largest Drupal service provider, employs one of the largest Drupal development teams worldwide and delivers measurable client happiness and business value.
Description
Speakers: Dave Reidslashrsm
Every keynote by Dries, and every time a new version of Drupal core is released, one of the biggest features asked for in Drupal 8 is better media handling. There are currently a wide selection of media management solutions for Drupal 7: media, scald, asset, mediabox and more, each with its own strengths and weaknesses.

At DrupalCon Prague, the first steps were done towards a unified media solution for Drupal 8 using media entities, while the File Entity and Media maintainers wanted to continue extending core's file entities. At NYCCamp the different teams came together to agree on a common solution forward. This session is the occasion to present our progress so far.

There is also quite a lot of organizational and political questions related to this field and we'll try to present some of those also, including:

Why disagreeing on what entity type to use benefits the solution for end users
The challenges that we foresee when porting and revamping these modules
Where help is necessary still in Drupal 8 to meet those challenges
A call to action to help contribute at the code sprint!
Things we'd like to discuss with the D8 core and contrib developers:

How can we solve contrib library dependencies? We're using Composer for Drupal Core but we also include all of our external libraries in Core itself. Should contrib do the same?
What, if anything should we propose to improve the media handling support for Drupal 8 core before release? What could we include in the 8.x minor releases? What needs to wait for Drupal 9?
What needs have we not considered or need to meet?
Description
Speakers: rszramaGuGuss
For the last five years Commerce Guys has pursued its vision to develop the leading open source eCommerce framework on Drupal. As our footprint grew internationally, our understanding of such a framework likewise grew to include the tools and systems required to sell anything to anyone anywhere. Recent developments in the Drupal Commerce 1.x contributed module ecosystem and in Drupal Commerce 2.x itself highlight just how far we’ve come in providing global support for currencies, price formatting, addressing, and more.

As of this Summer, with the launch of Platform.sh to the general public, we now also provide development teams with the tools they need to launch their projects even faster. Additionally, the tools we developed to drive our recurring billing and voucher systems are now available to power your next digital commerce project!

In this session, Ryan and Augustin will showcase these latest developments at Commerce Guys with a special focus on the business value they bring to our partners and customers.
Description
Speakers: attiks
A session for site builders (and themers) to get all the details about breakpoints and responsive images (picture) in Drupal 8.

1/ A bit of history
- why do we need this
- drupal 7 version
- the evolution of the picture tag
- performance benefits
- the polyfill and some pitfalls

2/ Breakpoints
- breakpoints used for the layout (grid) in your theme
- breakpoints used for inline content

3/ Responsive image mappings
- why do we need this
- when to use sizes, when to use breakpoints
- use of different mime types

4/ How to use it

5/ The future
Description
Speakers: DyanneNovajaperryjyee
Many people in the Drupal community have some familiarity with COD, the Conference Organizing Distribution, due to its long history in powering regional Drupal event sites. Development of COD has recently seen a resurgence in resources and has expanded the power and usefulness of COD beyond the Drupal community.

In this case study, we’ll feature LinuxFest Northwest, the premier Linux event for the Pacific Northwest United States and Western Canada which draws over 1500 attendees every April. We’ll cover many of LinuxFest’s requirements including session submission, scheduling, ticketing/registration, and sponsorships; and how COD has effectively addressed those needs. Then we’ll focus on some key areas where Drupal’s flexibility has allowed LinuxFest to scale efficiently to handle its growing number of attendees, including a registration check-in system, badge label and barcode printing, digital signage, and RESTFUL endpoints for 3rd party mobile applications.

We’ll conclude by highlighting some of the recent COD developments and how COD can be used to help any organization with event management needs.

About the Presenters:
Jakob Perry and Emilie Nouveau are organizers at LinuxFest Northwest, and contribute to COD. Jason Yee is also a contributor to COD and created the Ticketing system.
Description
Speakers: joshk
How your Drupal Site Performance Impacts Your Customers and Bottom Line

There's no denying that launching websites is a big undertaking, but it also represents a colossal opportunity for your business. If you nail it, people will sing your praises eternally.

Take steps now to lock in a perfect launch and you'll find that by focusing on your website success - from the platform up - you can run a more efficient organization with better profits and happier customers.

In this platform-agnostic session co-hosted by Pantheon, you’ll learn best practices and tools for rooting out problems and doubling site performance by launch day:

You’ll learn:

How to lead an agile, coordinated launch with a cross-functional website team
Actionable tips for benchmarking your performance and capacity
How to increase website value through iteration - “always be launching”
Description
Speakers: jancborchardt
Open source becomes more and more important in an age where the web is mainly run by companies. At the same time, as more normal people are interested in keeping their stuff safe and secure, design and user experience is a key point of the success of software projects.

Luckily it’s not that bad anymore. There are quite a few designers working in open soure now – but we need more! And we need to work together!

I worked as designer with lots of open source software projects and will present the methods I use every day at ownCloud to improve open source design.

Some topics I will cover:
* how to establish a design culture in your project
* how to work together with developers
* making designers develop and developers design
* getting university students involved
* the importance of cross-project collaboration
Description
Speakers: Josh Waihi
- "Just scale it in the cloud"
- "No you've got to put the database on raw metal!"
- "You've gotta use Memcache if you want performance"
- "You need Nginx for speed"

Its really easy to get bad advice about acquiring an efficient architecture for your Drupal application. The truth is, there is no one-size-fits all solution. Drupal is, by design, a flexible system and its resource footprint is as unique as its implementation. Not to mention, you've got a budget and your investments can't be be built on bad or incomplete advice.

This session will provide an overview of common architectures and technologies used in the industry to host performing Drupal sites and more importantly, why they are used. This includes:

Single server and multi-tiered architecture
Server roles in a multi-tiered architecture and their resource requirements
Databases: MySQL, PostgreSQL, SQLite
Webservers: Apache, Nginx
PHP: FPM, CGI, LibModPHP
Cache Proxies: Varnish, Nginx, Squid, Akamai, Fastly
Cache Stores: Memcache, Redis
Knowing what's right for your application is more than knowing the architecture and the technology to use. Performance testing and monitoring tools are just as important as the infrastructure. We'll look at some free and paid tools to help you measure the ability of your application including:

Testing with JMeter
Testing with Blazemeter
Profiling with XHProf
Monitoring with Cacti
Monitoring and profiling with New Relic
Finally, in getting your platform ready for the real world, we'll look at the top 10 most commonly found performance issues in Drupal applications and how to remedy them. We'll look at how monitoring your application identifies these issues and how to determine the solution.

Josh Waihi is a Technical Account Manager for Acquia. His experience and background with large scale Drupal projects in digital media and publishing have given him exposure to tools, infrastructure, problems and solutions of high traffic, high demand Drupal implementations.
Description
Speakers: wesku
Agile is not a new thing, everybody and their mom has heard about agile projects. Most people also know about the business benefits of agile. Agile practises are spreading like wildfire in the corporate world, companies are discovering considerable business benefits from agile adoption. At the same time too many Drupal companies are making excuses for why waterfall or fake agile *LINK* is the way to go simply because they have failed to sell or adopt agile.

Wunderkraut was born agile. We've never done anything else and we do exclusively agile projects. At the same time most of our new customers are not all that familiar with agile. Selling agile for non-agile customers is an art form that very few people master. After doing it for living for longer than Wunderkraut has existed I'm ready to make the bold claim of being an expert on the topic.

My goal for this session
To help Drupal vendors move to agile, for real this time. As the CEO of Wunderkraut and a director for the Drupal Association I do my best to help Drupal grow. Personally I see improving the business of all Drupal vendors as a very good way to do this.

What will you get from attending
You'll hear some of the not-so-well guarded business secrets of the largest Drupal services provider in Europe. Just don't expect to get a silver bullet from this session, this stuff is really hard. The session will however provide you with a starting point and a direction for becoming really efficient on selling agile.

Caution: This is the very first time I'm presenting this session. As for anything software related, the initial launch is likely to have some bugs in it. Consider yourself warned, if you attend you'll be a beta tester for this session.
Description
Speakers: mradcliffe
PostgreSQL is an open-source database, which implements ANSI SQL standards closely. As a community, we support running Drupal on PostgreSQL. Over the past several years I made a commitment to try my best to learn PostgreSQL as a MySQL user in contrib.

However all is not well.

The pgsql (and sqlite) database driver support has always been spotty in core and contrib. The majority of Drupal web sites are run off the mysql driver, and many do not see the need to maintain support for alternative databases which implement SQL (or nosql).

I will talk about and show the state of the pgsql driver including:

What it would take to move pgsql out of core and what are the implications for the future of Drupal;
Or what it would take to maintain pgsql in Drupal 8 and beyond including mention of current issues and initiatives such as the testbot improvements;

Note

Drupal 8 is evolving and decisions are made every week. If as a community we move forward with pgsql, this session will still be relevant although the session description will be updated to reflect changes in topic or direction.
Description
Speakers: fabpot
Drupal 8 is about some fundamental changes in the way the platform is built: from OOP everywhere to Twig as a templating system. Amongst all these changes, one of them is the usage of the Dependency Injection design pattern. This pattern greatly improves the decoupling and the testability of your code, and it will make Drupal evolutions easier in the future.

During the talk, I'm going to introduce Dependency Injection with real-world examples and then, we are going to learn more about the Symfony Dependency Injection Container which powers Drupal 8.

Don't be afraid, big words do not necessarily mean complexity!
Description
Cory Doctorow (craphound.com) is a science fiction author, activist, journalist and blogger -- the co-editor of Boing Boing (boingboing.net), and a contributor to The Guardian, the New York Times, Publishers Weekly, Wired, and many other newspapers, magazines and websites. He was formerly Director of European Affairs for the Electronic Frontier Foundation (eff.org), a non-profit civil liberties group that defends freedom in technology law, policy, standards and treaties. He holds an honorary doctorate in computer science from the Open University (UK), where he is a Visiting Professor; in 2007, he served as the Fulbright Chair at the Annenberg Center for Public Diplomacy at the University of Southern California.

He co-founded the open source peer-to-peer software company OpenCola, sold to OpenText, Inc in 2003, and presently serves on the boards and advisory boards of the Participatory Culture Foundation, the Clarion Foundation, The Glenn Gould Foundation, and the Chabot Space & Science Center's SpaceTime project.

In 2007, Entertainment Weekly called him, "The William Gibson of his generation." He was also named one of Forbes Magazine's 2007/8/9/10 Web Celebrities, and one of the World Economic Forum's Young Global Leaders for 2007.

His forthcoming books include In Real Life (a graphic novel from FirstSecond), Information Doesn't Want to be Free, a nonfiction book about copyright (from McSweeney's), and a children's picture book.

Cory is the co-founded the UK Open Rights Group. Born in Toronto, Canada, he now lives in London.
Description
Speakers: dixon_
By popular request: This is a follow-up session from Content Staging in Drupal 8 that was presented in Austin.

Drupal 8 has made significant improvements towards the ability to stage configuration. But what about content staging? Has it gotten easier in Drupal 8?

This session is targeted towards site builders where we will continue to explore the content staging solution that is being built for Drupal 8 and that was initially presented in Austin. It's a solution that brings vast improvements to sites owners that need to stage or replicate content across sites.

Further, site builders will learn how this solution also applies to broader and sometimes more exciting use cases - content sharing and filtered replication across networks of sites and applications.

And for the first time, a demo will be presented on the following scenarios:

Traditional content staging
Editorial hub powering a network of light front-end sites
Bi-directional (!) content replication between different Drupal sites


This session will also be a great introduction to the topic for anyone interested in joining the Content Staging in Drupal 8 sprint that the presenter is hosting during the sprint days! Sign up on the sprint spreadsheet.

About the presenter

Dick Olsson (aka dixon_) is a long time core contributor and author of the defacto content staging solution for Drupal 7 - the Deploy and UUID modules.

Dick started his Drupal career at NodeOne (now Wunderkraut) and later went on to work for Al Jazeera Media Network as their Lead Drupal Developer. Now he's working as a Digital Engineering manager at Pfizer.
Description
Speakers: Wim LeersmarcoFabianx
Speed Up your site!

Render Caching has been there in Drupal since Drupal 7, but never before Drupal 8 and the render_cache module for Drupal 7 has it been so simple to have a fast website with automatic content expiration. With render_cache it will be possible to really just rebuild the parts of the site that have changed, which will make even authenticated user pages very fast.

These three simple steps will make you wonder!

Come to this session and see how in Drupal 8 _and_ 7 with these three simple steps you can have a flat belly ... uhm, a fast website and never worry again about content expiration.

Block Cache in D7? Forget it and meet render cache the new tool that will blow your mind and can be applied already now for your D7 sites. What are you waiting for? (http://drupal.org/project/render_cache)

Get inspired and do it yourself!

The session will cover:

Cache Tags - Why they are totally awesome (and D8 only).
Cache Hashes and Cache revalidation - Another approach that can be used in D7 now.
Drupal 8 will be fast out of the box, but learn how to tweak it more to your needs.
Render Caching and possible pitfalls (#attached I am looking at you)
Control, control - I want all control over my caching. Changing cache tags in D8 and total control already now in D7.
Recursive Render Caching - How that can make page load times of just a bootstrap
(no not even a bootstrap possible - directly from NGINX!)
After this session you will ask yourself:

Why did I not do this already since the start of Drupal 7?

And then you'll probably head and download either Drupal 8 or just implement render_cache on your D7 site right out of the box for your entities and your blocks placed by context.

And we'll have fun!
Description
Speakers: tizzo
The single biggest jump my team has ever seen in proficiency, knowledge, and productivity happened when we switched from developing on MAMP to using virtual machines that matched our production servers. At the time Vagrant had not yet been created and devops was not yet a word, all we knew was that we were collaborating in way that wasn’t possible before. Soon the whole team was solving problems and improving our stack rather than just the “ops” members of the team.

Devops is not about tooling; it is not about the freedom to innovate and the power to learn. When developers are empowered to learn the tools that will be used to launch and run their creations they have more flexibility and more permission to experiment with new technologies and to come up with innovative solutions. When operations people are empowered to build the tools they need, they can add the pieces they need to solve business problems.

In this session I will explain how my team shifted from being a team of developers using MAMP to a cross discipline team where every member has a deeper proficiency with the tools of our trade and how we are better for it. We’ll also look at how our clients and trainees have benefitted from this approach, both in working with us and in adopting these practices.
Description
Speakers: cam8001fdemetsbacardi55
We all want to convince our prospects that Drupal is the best strategic platform for their next project or indeed their entire digital strategy. But getting buy in from every party can be a challenge.

An enterprise sales cycle can be very complex and has many stages, often in parallel. This session focuses on the technical component and how to convince the stakeholders of Drupal’s technical abilities.

Acquia's EMEA Solutions Architects are a group of pre-sale Technical Consultants who position Drupal in the prospect’s digital landscape. We’ll go over our experience and discuss the different steps to get the technical win. We’ll provide examples, tips & tricks and best practices.
Description
Speakers: pixelwhip
Most current CSS methodologies, such as SMACSS or BEM, revolve around one core concept–components must look and behave the same no matter where they are placed in a layout. Despite layouts being a fundamental aspect of responsive design, more attention is paid to components than layouts. In this session, we’ll focus on reusable solutions to common layout problems by beginning with foundation CSS layout concepts and building up to specific techniques for implementing complex layouts in Drupal.

Topics include:

CSS

Naming conventions
Isolation vs Float
Intrinsic Ratios
Grids

Semantic grid systems
Asymmetric vs Symmetric grids
Drupal Theming

Page layout vs the System Block
Creating custom layouts for Panels and Display Suite
You will come away with; a deeper understanding of CSS layout models; what to look for when choosing the most appropriate grid framework for a project; techniques for creating reusable layouts in Drupal themes. All of which will enable you to solve any layout problem with confidence.

John Ferris is Lead Front-end Developer at Aten Design Group. He has implemented many complex responsive layouts for clients such as wri.org and cpr.org. He has spoken at past conferences on topics such as writing maintainable CSS in Drupal and Photoshop best practices for web designers.
Description
Speakers: ikos
Lush is a UK based company that produces ethical and natural handmade cosmetics. They have over 900 stores in more than 50 countries and an annual turnover exceeding $600m

What?
The Lush Digital team has a vision of creating a Content Driven Commerce website where the stories and campaigns of the company are strongly linked with the products offered. Drupal and Drupal Commerce were selected as the ideal framework for fulfilling this vision.

How?
The branding and design of the website was being developed at the same time as the Drupal build was in progress so we used an agile development process with the design team ahead by one sprint. This allowed us to adapt the build as the design evolved.

One of the key success factors was developing the theme of the site in a Jekyll powered Style guide (or pattern guide). This enabled us to prototype and prove the design before moving to Drupal.

We developed an automated build process allowing a full site build on the development server each night.

Why?
Lush were developing a new digital platform for delivery across multiple regions. The UK site was the first of these to be rolled out. The site was intended to deliver the new company brand and experience across multiple devices.

Delivering Content and Commerce on a single platform was one of the deciding factors in selecting Drupal.

Who?
This project was developed by i-KOS in partnership with Method (Digital Agency), CommerceGuys (Technical Partner), Acquia (Infrastructure and Technical Partner).

When?
Development started in August 2013 with the first phase going live on 1st April 2014.

Result?
The site launched successfully 1st April and was a featured site in on www.awwwards.com and econsultancy.com.

This session highlights some of the approaches and systems used to develop the website and deconstructs the project to reveal some of the lessons learned.

In particular, we will talk about:

Using a live style guide for prototyping and theme development
Achieving complex page layouts in Drupal
Integration with third party systems - where best of breed can trump roll your own
Solr powered catalogues
Performance challenges
Finally we will discuss some of the key lessons that we hope will be beneficial to you when working on large scale multi-partner projects.
Description
Speakers: eatings
For years, front-enders have had an uneasy alliance at best with Drupal, but with the advent of client side Javascript MVC frameworks, the idea of building decoupled/headless Drupal sites has attracted increased interest from all over the community, promising to deliver that ever-elusive unicorn: true and complete control of the presentation layer. Its rapid growth throughout the larger web development universe shows that it is a serious trend to be reckoned with, and a significant indicator of the future of our industry.

But such systems present new difficulties and challenge historical ideals of a monolithic, do-it-all end-to-end CMS solution. Under the decoupled model, our long-held gospel of Drupal's power and flexibility strains to the point of breaking as feature after touted feature falls away -- layout admin tools, contextual information, modules extending or controlling the display of content elements. What does this mean for the engineers (both front and back end), the administrators, and most importantly, the users of such systems?

This session will discuss the following questions:

What does it mean to build truly decoupled apps? How does this fundamentally change the way Drupal sites are architected, developed, and most importantly used?
What do we gain by building such systems? More importantly, what do we lose?
Is Drupal well-suited for such headless systems? Where does it fall short? What does Drupal need to change, and where, to accommodate these uses?
Lastly, and most importantly, what does the Drupal community risk by not embracing this use case and engaging the greater development community pushing it forward?
(This talk was borne from a number of conversations at Drupalcon Austin which led to the formation of the Headless Drupal Working Group)
Description
Speakers: SchnitzelRackspaceBNX
Note: This session contains two half hour sessions back to back.

Session 1: Building a full site in Drupal 8 Alpha

Time: 10:45-11:15
Experience level: Advanced
Company: Amazee Labs

Many changes in the alpha version of Drupal 8 are currently untested “in the wild.” This holds especially true for the D8 multilingual initiative, which brings major process adjustments for building multilingual sites.

Being personally involved in the new multilingual initiative equates to extensive testing on my part. Fortunately, my team and I had the perfect testing scenario: building a fully multilingual site on Drupal 8.

The gist of our D8 story goes something like this:

We began our journey the 2nd of April (2014). And despite a long and bumpy road, we managed to launch our new site the same month on the 29th — in just under 30 days of extensive work. Not only did we make our launch date, we learned A LOT. Now, we would like to share our learnings with you:

Multilingual Drupal 8: It works and it’s awesome.
Managing HEAD to HEAD updates without an update path
The new kid on the block: using Configuration Management and deployments via GIT
Dealing with a completely missing field of contrib modules. *Spoiler: it made layouting really hard!
What’s missing in the core theme layer for building full websites
Which new site-building tasks were confusing and/or challenging to understand
Bugs in Core!
Why our experience leads us to believe no-one should fear building sites NOW with Drupal 8.
Session 2: Improve your online infrastructure to increase revenue and customer experience

Time: 11:15-11:45
Experience level: Beginner
Company: Rackspace

Today customer experience is top of mind, meaning you have to juggle many tasks at the same time. Your site needs to be interactive, contain a lot of content and be available on multiple devices. Your site has to be quick and needs to deal with both predictable and unpredictable spikes. And last but not least your site needs to be safe and compliant and the payment process quick and hassle free.

All in all, not an easy task to complete! During this 30 minute session we will cover the benefits of having a good online infrastructure and utilizing the flexibility of the cloud to deal with peak traffic, without having to commit to a costly contract.
Description
Speakers: lornajane
With new PHP versions being released more often, and projects including Drupal increasing their minimum requirements for PHP versions, it's clear that things are changing rapidly. This session is all about the changes introduced in newer versions of PHP (5.3 onwards), and what that means for PHP projects everywhere. There will be practical examples of the shiny new features, advice on finding hosting and safely upgrading existing projects, and news about the performance improvements you can expect as you move between the versions. The way PHP is evolving is truly exciting so come and join in on the fun!
Description
Speakers: populistDavid Strauss
The Drupal 8 Configuration Management Initiative (CMI) is a straight up game changer for Drupal development and deployment. As much as we all love doing it live, no longer will this kind of human powered configuration replay in production be necessary. Instead, developers will be able to natively export their configuration to code and deploy that configuration to production using the CMI tools.

This session will feature both a basic overview for how CMI will work in Drupal 8 and an advanced overview of how to use CMI with version control as part of a managed development - testing - production workflow. Forget the pain that was drush fe and drush fu-all. Come join David Strauss (one of the technical leads for the CMI in Drupal 8) and Matt Cheney (entertaining populist showman) in embracing modern configuration management in all its glory.
Description
Speakers: jeni_dc
Drupal isn't a CMS, it's a framework and toolkit for building a CMS. Drupal doesn't know how you're going to structure your site, so how can Drupal provide a great experience for the day to day administrators of the site? You need to tell Drupal to do it! It really is that easy. Let's make that admin backend tasty. Seriously tasty.

This session will focus on providing clients/content managers, with a simplified, easy to use, no nonsense, awesome, delicious, and overall useful experience on their site. It's born of the frustration I had when originally developing with Drupal back in the day, and thinking "Wowsa, this is powerful!" Then, "Oh crap, I need to hide most of this so my tech-phobic clients can just do what they need to do. And NOT ruin the site."

Through the use of some contributed modules such as views bulk operations, contextual administration and field group, some menu tweaks, combined with a small rethinking of Drupal's add content forms, we'll delve into making Drupal easy for your clients, so you can just focus on the fun stuff, shorten your training time, and stop fielding support requests.

There is also a new Tasty Backend install profile currently in development! We'll go over how to use that during the session and hopefully by the start of DrupalCon I'll have a full release available on drupal.org.

Some technical aspects of this session will be primarily focussed on Drupal 7, but we'll also look into how we can best utilise the new features of Drupal 8 to customise our admin experience. A Tasty Backend install profile for Drupal 8 may also be included or hopefully ready by DrupalCon.

A customised Drupal backend is a happy backend, and who doesn't want a happy backend?
Description
Speakers: alanburke
So zen-grids is pretty cool, and susy continues to strive forward. We haven't quite got to grips with Flexbox yet. CSS grids might soon be usable and CSS regions is coming down the track.

But there is something new on the scene [well, it wouldn't be a frontend session unless it talked about a new thing that's both ground-breaking and almost unheard of], that promises to blow them all away.

It's called Grid Style Sheets, and it bypasses the standard browser layout engine, frees us from those shackles, and unleashes a new world of layout possibilities.

This session will:

Explain the concepts behind Grid Stylesheets
Explain the syntax and language
Demonstrate how it can be used in the real world
Demonstrate use in a Drupal 8 site
If you're interested in the future of CSS layouts - this session is for you!
Description
Speakers: agentrickard
With the growth of Drupal, we're starting to see large organizations adopt Drupal as a long-term platform. Doing so means leveling up the internal development team and helping the client identify project goals, best practices, and long-term resource needs.

We'll discuss our experience working with major American universities and public institutions as we tackle these challenges. Our focus in this talk will be on:

Defining success as a consultant instead of a developer
Engagement levels for consultation projects
Building trust as a consultancy
Identifying gaps in resources and skills
Training in best practices
Long-term relationship Building
Introducing clients to the larger Drupal community
While this could be a business session talk, we're going to look at specific case studies across a wide range of projects and budgets (from $15,000 to $500,000 USD), and how the needs and circumstances of clients affect the approach to a successful project.

In three distinct cases, we'll examine the project needs, process, structure, timelines and takeaways, in order to give a clear sense of how best to engage a consultancy to help solve your organizations specific needs.
Description
Speakers: juampy
At Lullabot we built a system that, given a Pull Request in Github for a Drupal project, it clones the project and posts a message in the Pull Request discussion with a link to a testing environment and another link to tear it down.

Over time, this system has become a core tool of our workflow. Having an isolated environment to test a new feature before it becomes part of the main branch is really helpful for the team for peer reviewing and for the client for doing Quality Assurance.

In this session we will start by outlining how the system works on a sample ticket for a Drupal project, and then jump into its internals to see how it integrates with Github and Jenkins.
Description
Speakers: nick_schuchlarowlangrom358everzet
This is your opportunity to shape the way we test Drupal!

In the Drupal 8 cycle we have invested alot of time into writing tests. We are now writing unit tests for our logic and acceptance tests for our scenarios, but what about our frontend (Javascript) testing?

Originally Drupal's WebTestBase evolved from SimpleTest but over the years it has morphed and transformed into a mutant beast of difficult to maintain custom code.

Whilst we've been off on our island, the PHP community at large have been working together on solving the same problems we've been adding additional band-aids and bolt-ons to SimpleTest for.

One such solution is Mink.

Say hello to Mink

Many of us are familiar with Behat's gherkin syntax but you may not be aware that the real power of Behat is powered by Mink. Most of the built in step-definitions are added by the Mink extension, which is a Behat Extension that wraps Mink.

The core of Mink is the DriverInterface which allows a swappable back-end for functional testing.
Much of the custom code we have in SimpleTest can be handled by existing functionality in Mink, but in a back-end independent manner.

Since Early April 2014, the three of us have been Re-architecting WebTestBase on top of Mink but retaining as much backwards-compatibility as possible.

So at present in WebTestBase when a test calls $this drupalGet the implementation is hard-wired to use curl.

This means that we are limited in our web-testing to things that Curl can handle. As a result we have some interesting work-arounds for JavaScript/Ajax handling (we are looking at you drupalPostAjaxForm).

With WebTestBase rearchitected on top of Mink, we maintain a Mink session for browser interactions. The default implementation of this would use the Goutte driver, which is simple web-scraper that wraps Guzzle and the Symfony DomCrawler component. So with the new code $this drupalGet hands off to the driver, what the driver does is up to it, WebTestBase need not care.

So how does this help Drupal?

We get rid of loads of custom-code for parsing/manipulating the dom and just use widely adopted implementations.
We get rid of loads of custom Curl handling code and let Goutte and Guzzle worry about it.
Any issues we find strengthen those code-bases. We've already ported Goutte to Guzzle 4 - i.e. Goutte 2.0. We've found and fixed bugs in Guzzle 4. PIE for the win.
We can move towards real JavaScript testing
Wait how does this help JavaScript testing?

So imagine JavaScriptTestBase extends WebTestBase but instead of using the Goutte driver in our session, we instead use the Selenium, Sahi or Zombie drivers - these drivers understand JavaScript - they are either headless browser implementations or they control real browsers.
Or in code terms.
Description
Speakers: demeester_roelbertboerlandjaxxedsteveparksyoroybadrangeemma.makinenyannickooaxe312tomper00anngalland
Wunderkraut does many things differently, and we would like to share some of our insights by using a presentation method called Ignite. In an effort to start a tradition, we wanted to use this technique premiered by us last year in Prague. We'll bring you 12 best practices from Wunderkraut presented by 12 of our experienced employees.

Each speaker has exactly 5 very much practiced minutes to share their topic. With auto-advanced slides, there simply is no room for our speakers to blabber on making each presentation interesting and to the point.

Last year, the individual topics varied from employee happiness to remote collaboration giving the audience enough variety. Again this year we would like to offer you a full spectrum of topics to cover the fast evolving world of Wunderkraut. Topics will vary from how to handle cultural differences at a workplace and the power of saying 'No’ to experiments on different bonus systems and best practices on responsive designs.

Disclaimer: The actual topics might still change, but rest assured, we'll give you a run for your money and offer you a quality session improved based on our experiences from last year.
Description
Speakers: EclipseGc
As the PHP renaissance continues to change how developers work with PHP, Drupal has made significant strides toward adopting PHP’s new best practices in both code and interoperability. New groups focussed on the interoperability of disparate PHP projects have begun to get traction producing such standards as PSR-0 and PSR-4 while others work to model a reusable request/response layer. The interoperability awareness of PHP projects and frameworks has never been higher, and projects working to adopt and contribute to that interoperable future have an opportunity to contribute to the future standards of PHP in an unprecedented way.

Drupal carries with it a significant existing install base, and componentization could lead to use in non-Drupal installs. Formally componentizing Drupal’s existing code base further and making individual components available to the non-Drupal world will spread our influence far and wide. In this talk I’ll elaborate on:

Building PHP Components
Componentizing Drupal
The future of modules
Component Interoperability
Stack PHP & PHP FIG
Expanding Drupal’s reach into the 80% of the web that is run by PHP
Description
Speakers: Dave Reid
Drupal 8 is coming! But what decisions can you make now on your current or new Drupal 7 sites to make transitioning to Drupal 8 easier? Dave will cover new features available in Drupal 8, and how you can use those new features now in Drupal 7.

What field modules can I use that work the same as Drupal 8?
What WYSIWYG editor should I use?
How can I start preparing to migrate my existing Drupal site to Drupal 8?
What kinds of modules can I use so I don't have to retrain my editors and administrators when we move to Drupal 8?
I'll also cover some basic concepts for those of you writing Drupal 7 modules that you can do right now to better prepare yourself for writing modules in Drupal 8.
Description
Speakers: Susan Rust
This is a continuation of last year's DrupalCon session with ample how-to action items. Over the past 10 years, this proven project methodology will save you time, money and heartache. Don't worry if you missed last year's session, you can catch it on the PDX Con site but you don't need it to benefit from this year's talk.

Who Should Attend:
-- Sales people who want to know more about business analysis & discovery
-- PMs who want to know more about balancing project power & authority
-- Shops who sell great projects but struggle with delivery
-- CEOs who want to balance authority, responsibility and accountability
-- Anyone who wants to make more margin and deliver success

Would you believe with a $100,000 project, as little as 50% can be spent on actual development? Where the heck is the rest of the money spent? You might be shocked how much can be wisely allocated in discovery, business analysis, risk assessment and architecture before one line of code is written.

Shocking still is that your projects will be more successful, your clients happier and your team humming like a well-oiled machine. Get recommendations, accolades and repeat business that is the holy trinity of business. Spending the effort and money in the right areas will give you the business results so many companies struggle with.

This follow-up session from last year's Train Wrecks, Ugly-Baby Meetings and other Client Calamities takes a deeper dive into the technical process of projects. This in-depth look at the discovery process can be used by small and large projects alike.

Clients are looking for strategic partners, not just a Drupal shop. In this interactive and discussion-based session, we'll cover these specific and detailed ways to walk projects through from the what, why, how, when and who. Learning how to ask the detailed questions, understand the clients needs, manage the internal politics and the entire scope of what makes a project successful will help everyone get better results.

1. Business Analysis: Learning how the client uses their data to build the right object model
-- Content
-- Site audit
-- Performance audit
-- Web objectives
-- Business rules
-- Training early and often

2. Discovery: Translating their business into Drupal ideas
-- Content types
-- Views
-- Taxonomies
-- User Stories
-- Storyboards
-- Dashboards
-- Object modeling
-- Pre-mortem

3. Architecture: Moving ideas into engineering plans
-- Content
-- Migration
-- Integration
-- Wireframing
-- Deployment
-- Performance
-- Scaling

4. Process: Managing teams and tasks
-- Workflow
-- Timeline
-- Ticketing
-- Communication
-- Billing
-- Change Orders
-- Burn Rates

5. Development: Wrapping it Up
-- Build
-- Design
-- Theme
-- QA
-- User Acceptance
-- Bug fixes
-- Launch
Description
Speakers: Steven Merrill
Many of the daemons that work to produce your website are producing logs and be easily monitored to produce metrics. In a production setup, you may have many web servers and multiple database servers. Shipping logs and metrics from multiple servers and parsing them into a searchable format can help you and your team keep an eye on what’s happening and infer trends without needing to hop onto server and work with tools like awk and sed.

A number of open-source tools can help you easily collect metrics, ship and parse logs, and present them all in an easy format that is usable by mere mortals. During the session, we’ll discuss how collectd can be used to collect system-level metrics and ship them to Graphite for analysis, and how to use Logstash to ship and parse logs from all the common daemons in a Drupal hosting stack. We’ll also touch on how you can add extra information so that, for example, you get millisecond duration for all your Apache, nginx, and Varnish logs, and can log Varnish hits and misses.

We’ll also discuss Kibana and Grafana, two great applications that allow you to display and query ElasticSearch and Graphite data, respectively. We’ll also spend a little time talking about how you can use Logstash to ship trend data from your logs to statsd and then into Graphite to get better snapshots of your data without needing to search.

Finally, you’ll also learn how we use the ELK (ElasticSearch, Logstash, and Kibana) stack on drupal.org to manage billions of logs a month, and how it has helped us track down and fix errors from the drupal.org Drupal 7 upgrade.

Concrete takeaways:

Learn how the logging infrastructure of drupal.org runs with fully free and open-source software and how you can apply the same tooling to your own sites
Get in-depth information on how you can use Logstash, ElasticSearch, and Kibana to ship, parse, and search logs to look for trends and anomalies
How you can use Kibana to graph, sort, search, and trend non-Logstash data
How to ship and parse Drupal watchdog logs in order to keep an eye on PHP errors and Drupal module messages
Learn about collectd, graphite, Grafana, statsd, and how they can be used to track system stats over time
Description
Speakers: rupl
You are using grunt and your whole team is on board. You never commit invalid JS because no one can push without passing tests. Your Sass is in control because the team uses Bundler and (again) grunt to control config. You even have buy-in from the client to choose performance over certain design elements. It's the golden age of web development!

But... there are still bugs on the site! And what's worse, you see them cropping up on features you already shipped. Wouldn't it be great if functional testing of your user interface could be as automated and carefree as your developers' workflow? Wouldn't it be cool if you could track performance and regularly measure trends as a site is developed?

You totally can.

Come to this session and we'll discuss how to use functional testing to spot regressions early and often, even before you merge. We'll show how you can visually diff your development branches against master and verify that nothing changed except the stuff you wanted to change. We'll talk about tools like CasperJS, Phantomas, and Wraith. There will be code samples abound!

Slides for this presentation: http://rupl.github.io/frontend-testing/

Note: This session will not contain foundational explanations of tools, only the top layer that you actually see in the presentation. If you want an in-depth intro to the tools used in this session, or some background info on why it's important, please see the following slide decks:

http://rupl.github.io/frontend-ops/
http://rupl.github.io/frontend-perf/
Description
Speakers: dagmitaursbucher
We are from Switzerland and do Drupal. What can we do really well? With 4 official languages, of course, we can do multilingual websites! But sometimes this is not enough. Our customers are big and international, and usually have multiple sites for each country. Which makes it really hard for the global webmasters to manage the site and make sure that the country editors do not break the site. So the best solution is to have only one site, with multiple Domains. We're using Domain Access for that, but it's not that easy.

Even harder it gets when the client is listed on the stock market and publishing node to early could cost you multiple millions. But still some stakeholders wants to review if everything will be correct when he hits the publish button. You need a good deployment and workflow for handling such changes.

In the last years we have build such sites, had multiple deployments and published important press releases for our customers.

Our case will show:

how to setup technically multiple domains, multiple languages and how they play together seamlessly
how we set up roles and user permissions to make sure that country editors can only change what they are supposed to
how to manage translations efficiently and what tools we use for that
which project methodology we used for the initial development and future deployments
how we handle deployments via a special staging deployment
how the team is set up
insights directly from the client, how it is to work with Drupal and Open Source
Description
Speakers: YesCTalexpott
A review of funding strategies used in the past

Direct funding between individual contributors and individual companies
Companies hiring core contributors on staff
Consistent but crowdsourced funding (Gittip)
Project funding gateway (drupalfund.us)
% time given by companies to their employees
We will talk about the pros and cons about each.

And brainstorm about the future, with an eye toward:

Sustainability
Funding done by funding professionals
How funding will effect volunteer contributions
Repercussions on individuals, groups, and Core itself
A central bucket and contact for larger donors
Description
Speakers: intervallenicoloye
I would like to share with you how Actency’s technical team has realized a large extranet under Drupal for one of our clients. This implementation meets the following requirements:

The company can define complex business-rules to define user-profiles
Every element, yep, really every single element of a page like title, every paragraph of text, every link ... is customized and profiled.
80.000 users represent about 80.000 profiles, so we decided to use a real user-centric access-system to manage the visibility of more than 50.000 micro-contents
Security is a high-priority issue, so we used the node-access-system of Drupal to show/hide micro-contents for each user.
Performance is also a major and sensitive issue : we are able to deliver complex pages with customized content under 2 seconds.
Learn how we used massively the Queue-API in the personalization process.
Follow our use of Organic Groups to create a large-scaled personalization.
Be ... perhaps ... astonished of how Panels have saved the performance-issue.

And if you have any doubt that MySQL can handle this kind of requirements hear about our experience to handle tables with more than 200 million entries on this project.

You can learn about the do's and dont's that we have experienced during the project.

Several members of our team like to share with you the global architecture, module-configurations, code and needed patches.
Description
Speakers: everzet
Agile development is a big thing nowadays. Almost every project wants to deliver value as quick as possible, but not all of them succeed because of the share amount of work most projects require. But what if you could actually deliver 2 times more value, but 3 times less features? This talk will discover the way to focus on quality as oppose to quantity in regards to software development. And more importantly, will show a solution to a successful development of the project through the integration of BDD methodology and tools into the quality-driven development process.

This talk is focused on everyone ever been involved in delivering complex software. It will present ways to tackle software complexity through continuous communication and short feedback loops. This is essentially a management talk, that will be helpful for both tech and business minded attendees.
Description
Speakers: joshk
There’s a renaissance going on in the PHP world (hashtag: #phprenaissance). One of the big drivers of this renewed energy is the Hip Hop project, which promises breakthrough increases in PHP performance.

At DrupalCon Austin we presented initial benchmarks for speed gains with a sample Drupal site running under the Hip Hop Virtual Machine. Performance vs a well-tuned PHP 5.3 environment with APC was increased by 50%.

That's exciting. Building on that initial work, we will take a deep dive into the real-world ins and outs of running Drupal sites in production using this new engine.

This session is appropriate for any DevOp or Drupal Architect concerned with performance, as well as developers looking to write future-proof Drupal modules. It will cover technical details of how to set up HHVM, what to look out for as gotchas, and how to get the most benefit from a next generation PHP runtime.
Description
Speakers: skoop
Symfony2 is a great framework and getting your first application up is easy. The documentation of Symfony2 is good, but there's only so much that documentation can teach you. Many details and best practices are best learned while you're working on your project. During this talk, you will be bombarded with those small pieces of knowledge and experience learned from the trenches of actual Symfony2 projects, where developers had to dodge those bullets Matrix-style. Whether it is about that little configuration detail you always forget or a good way of abstracting logic into the right pieces, we'll cover it all.
Description
Speakers: JohnAlbin
Our CSS sucks. We've been building sites for over a decade using crappy, ornamentation techniques and shoddy selectors. Our styles unintentional bleed across the site. Our stylesheets are fragile and unmaintainable and full of specificity landmines. Pandas wander alone in the wilderness.

But there's no need to drown ourselves in beer. New technologies like Web Components and new techniques like OOCSS, SMACSS and BEM show us that planning before building can make our projects maintainable, easier to debug, and smaller with reduced CSS file sizes.

This session will introduce the basic techniques for CSS layering and using design components, the heart of any front-end CSS project. We will also discuss Sass project organization, Sass version control with Bundler and tricks to implement components when you can't change Drupal's classes. Finally, we will go through the steps necessary to automatically generate a front-end style guide to document your components.
Description
Speakers: simanjan
I would like to tell you how we grow Drupal expertise and develop Drupal projects for Fortune 500 companies here at EPAM Systems. EPAM is a global information technology services provider focused on software product development services, software engineering, and vertically-oriented custom development solutions. EPAM is the leading software engineering company in Central and Eastern Europe employing nearly 10,000 engineers. Such companies as UBS, Coca-Cola, DirecTV, Viacom, Thomson Reuters, IHG, Expedia are among our clients.

Recently, the attitude to open-source solutions in the enterprise world has changed and more and more clients choose such platforms as Drupal for building their high traffic and scalable web solutions. With over 20 years of experience in developing products and comprehensive solutions we can confidently fall back on our best practices in implementing Drupal powered solutions.

In my session, I would like to tell you about:

Clients
What Fortune 500 clients need
How is a Fortune 500 company different from an SMB (small and medium business) clients
How to build client trust
People
How we prepare a team of +20-30 Drupal developers in a year
How to get together the right team (20 people or more) of back-end and front-end developers, business analysts, and testers (performance, functional, and automation)
Motivation of a large team in a long-term project
Processes
How 20+ people in 5+ roles over 3+ locations work together
How you can make sure the quality of your decisions
What to do if you are working on 5 projects for the same client
What to do if there are several competing vendors working on the project
How to secure and share knowledge between projects of the same customer
Description
Speakers: rzilouc2

Did you know that half of the issues in the Drupal issue queue remain unresolved for a long period of time? This can cause loss of community investment, missed opportunities for enhancing Drupal, and experienced members to leave the community. One of the reasons that the Drupal community deals with a huge number of unresolved issues is that the Issue Queue interface does not afford strategies for resolving issues.

The mechanics of participating in a discussion through the issue queue is relatively easy: writing a comment in the comment box and clicking on save. However, writing a comment that makes a meaningful contribution usually occurs through a complex process. This process may involve reading through the discussion to understand the current status, talking to individual participants through IRC, or even inviting experts for technical advice. However, the issue queue interface does not support this process. For example, all comments are presented in a similar way, regardless of who wrote them, the importance of the content, or the strength of the message.

In this session you will learn:

What causes the inefficiency in the Drupal issue queue interface?
What are some strategies that can be employed to improve the issue
queue experience?
What would an interface that employs some of these strategies look like?
At the end of the session, I will demo Procid, a new add-on for the Issue queue that implements some of these strategies to make the Drupal issue queue more efficient.
Description
Session 1: Multilingual Site Setup and Management

Time: 15:45-16:15
Experience level: Beginner
Company: Lingotek

Multilingual was an afterthought in the design of Drupal 7. Luckily, there has been a significant effort that now makes it possible and even simple. This session will discuss Drupal 7 multilingual issues and how to streamline the setup and management of it over time using Drupal's multilingual features and the Lingotek translation module.

Topics:

Site preparations and dependencies
Translation of content, blocks, menus, views, taxonomy, and the user interface
Coping with constantly changing content
Enlisting others to assist in the translation process
Translation workflow considerations and automation
Leveraging machine, community, and professional translation
Session 2: Building a multilingual & multi-country e-commerce site for luxury brands

Time: 16:15-16:45
Experience level: Intermediate
Company: Adyax

In this session we go over our experience developing a large, international e-commerce site that is multilingual, multi-country and connected to SAP. We’ll cover: management of several countries and associated workflows, importing and exporting content, CDN integration and optimization, SSL issues and Geo-location by IP.

We will use various luxury brands for this business case such as Céline, MakeUpForever and others

Speaker: Arthur Murauskas, Project Director, amurauskas@adyax.com
drupal.org username : valcker
Description
Speakers: Gábor HojtsyAimee Degnan
Over a thousand people participated in the issues around improving multilingual features and APIs in Drupal 8 for the past three years. There are around a thousand issues, most of which are resolved in this initiative as of this submission making Drupal 8 a truly outstanding release for everybody looking to create even single language non-English sites but especially those making multilingual sites. Although there will surely be contributed modules useful to round out multilingual sites in Drupal 8, there is support for way more than there was in Drupal 7 core and even if you add in all available contributed modules - and with less code and more unified approaches.

This lab aims to provide a hands-on way showing you around all the great improvements and gives tips as to how to best utilise the new solutions. We will also talk about where contributed modules will still be needed.

The ideal attendee at this session has some experience in Drupal 6 or 7 foreign language and/or multilingual site building, however those who have no experience in foreign/multilingual site building will also get a lot out of it.

Want to be involved in this project? See http://hojtsy.hu/multilingual-drupal8 for an article series on the details on what we accomplished. http://www.drupal8multilingual.org/ is our initiative home and we have meetings every Wednesday to discuss and move current efforts forward (see times on the front page). We also have one of the biggest sprints at and before/after DrupalCon.

Ps. its not evident from this entry, but the lab actually runs until 6pm (see https://amsterdam2014.drupal.org/session/drupal-8-multilingual-hands-con... for the other scheduled session that follows this one and blocks out that time in the schedule).
Description
Speakers: prestonso
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 state of rendering engines
Vendor prefixes: Dead but not extinct
New selectors, pseudo-classes, etc.
CSS Flexible Boxes and layouts
CSS backgrounds, images, and gradients
Proposed HTML elements and attributes
Web Components and the Shadow DOM
HTML custom elements, etc.
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. As a part of Acquia, he contributed to authoring improvements in Drupal 8. Since 2008, Preston has spoken at conferences and camps across the country (most recently DrupalCon Portland 2013 and NYCCamp 2014) on topics such as design, theming, usability, responsive design, and cutting-edge CSS.

Note: This session is a sequel to Frontiers of CSS (BADCamp 2012, DrupalCamp NJ 2013, DrupalCamp CT 2012).
Description
Speakers: plach

“Wait, $lang... what?”

If this is the most polite thought that crossed your mind while dealing with the Drupal 7 Field API, you want to attend this session. You will learn how much we improved the Entity and Field systems in Drupal 8 with respect to language and multilingual support. By covering everything from the design concepts behind the new functionalities and APIs to the new storage layer and the related query system, this session will help you transition smoothly to the shiny D8 multilingual world.
Description
Speakers: August1914mirzu
Our goal in this session is to bring enterprise Continuous Delivery (CD) practices to Drupal with a comprehensive walk through of the totally awesome, recently open-sourced CD platform called "Go": Download Go Open Source. The “Go” project started as “Cruise Control” in 2001, rooted in the first principle of the Agile Manifesto: “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software”.

Here's some backstory: Jez Humble on "Go" Open Source

We'll start with an outline of the principles of CD practice, and then move right into implementation. The focus of this session is to show just how easy it is to get a Drupal build up and running in “Go”, and along the way illustrate the very nice benefits of delivering in a pipeline. We'll look at why “Go” can be a game changer in bringing stability to agency practice and for selling Drupal into big projects.

We'll cover:

Core concepts of building a Go pipeline

Setting up a delivery pipeline
Configuring Build Materials
Configuring Build Stages
Configuring Build Artifacts
Configuring Jobs
Configuring Tasks
Drill down to familiar Drush commands
Implementing basic principles of CD practice

Test and preview on production before cutting over a release
Zero downtime releases
Safe and easy rollback options
Making the release a business decision rather than technical decision.
Take away objectives

How Go's Trusted Artifacts can take the ambiguity out of the build
How to get your money's worth out of test automation, with an emphasis on BDD
Outstanding support for managing dependencies between different projects.
Devs who use Drush, have some grounding in devops, and at least know what an all-in-code delivery is about are going to take in the most from this session. Even so, there's will be a lot of value in this session for people in less technical roles such as QA, BA and product owner, because CD practice is as much about the interaction of the team as it is about tools and techniques. Everyone on the team needs have some foundation in CD practice and an idea of how those practices map to a delivery pipeline. We'll keep our enthusiasm for the tool in balance with the importance of engaging the whole team in the delivery process.
Description
Speakers: add1sun
The Drupal project is run by a distributed community, and more and more business are looking to that model as the workplace and work processes evolve. Lullabot has been a fully distributed company (no central office) since its beginning, over eight years ago. In this session I'm going to talk about why businesses should embrace the distribution model, and how that actually works. I'll provide real-world experiences, both good and bad, from the Lullabot experience.

We'll start by defining what a distributed/remote/virtual company is, and then dive into what problems this solves. Why should we shake up the classic onsite co-located model? Why is this a real advantage to not just service and product providers, but also clients and customers?

With the context set, I'll get into how we have things set up at Lullabot to be successful, share the lessons learned, and talk about the current challenges we face, and our thoughts and plans to address them. We'll take a look at topics like timezones, communication, and culture, as we work our way through the reality of the businesses of the future.

BoF: A follow up discussion to this, and another related session on the Business Track, has been scheduled - https://amsterdam2014.drupal.org/bof/business-track-bof-new-ways-working
Description
Speakers: 8ballstevealickmighalli_g_wrighttom_spiers
This session will focus on how a large media brand is utilising Drupal to replace an ageing custom codebase and is doing so using a code driven approach with cutting edge front end theming. We’ll walk through how we assessed business requirements and converted these into modules and features to provide the components of a Drupal 7 distribution and install profile. We’ll walk through the Aegir driven infrastructure and how this provides a simple environment for building, managing and migrating site instances and how we distributed knowledge on Drush, local development techniques and Apache solr.

Spidersnet, part of the Friday Media Group, have been offering a range of marketing tools to assist new and used automotive traders across the UK for the past 17 years. For much of that time utilising a custom built classic asp platform pulling customer specific content from centrally curated feeds. The developers know the code intimately and can tweak every page to meet their customers needs! Feature roll out, however, is a painful affair with each site being a copy of the last. Code changes need to be copied to each instance and quickly issues become hard to track. Classic asp developers are also pretty hard to find these days! The decision was made to find an open source CMS that could standardise the site building approach and provide a degree of automation to allow for optimum value from each site build whilst tapping into a growing developer community.

Enter Drupal

Our approach was to find a solution that was as contributed as possible, offered a standardised core codebase & theme, but that provided the flexibility to allow for each site to retain it’s own personality, all the while sharing a core set of features. We then had to re-skill the internal team and manage a roll out which constituted significant business and operational change.

Points covered in this presentation:

Establishing business objectives and existing platform functionality - Product Requirements Documentation (PRD) phase
Building a pattern portfolio with Zurb Foundation
Defining High performance system architecture
API & feed integration points
Theming architecture
Entityforms
Features for everything!
Flexible install profile and Aegir integration
Ongoing update/migration tasks
This session will be a team presentation providing differing perspectives from individuals involved at different stages of the process, including a senior web dev on the client side and product management and front and back-end development from the supplier side.
Description
Speakers: Crell
Drupal 8 is big. Really big. The code base is much cleaner and more maintainable than in previous versions, but it's still big. And big complex code bases are hard to manage.

We're going to have to manage this system for some time, though; not just for Drupal 8, but in the future Drupal 9 and beyond. How can we ensure that the core team scales? Not just committers, but our social architecture itself?

There are a couple of things we can do, both technical and social, drawing on the experience of other large projects. This session will lay out the problem space of maintaining a big system, then offer some suggestions for how to manage complexity going forward (including how to reduce it).

This talk will cover both Drupal 8's maintenance lifecycle, as well as ways to plan ahead for Drupal 9.

Resources:

Simple Made Easy, Rich Hickey, author of Clojure
Stomp Complexity, Sam Boyer
Norris Numbers
The Tyranny of Structurelessness, Jo Freeman
The Ethics of Unpaid Labor, Ashe Dryden
Twitter conversation from Webchick
How to grow your open source project
Keeping it simple, Sam Boyer
The Danger of Having no Why, Emma Jane Wesby
Description
Watch coder ohthehugemanatee face off in the ring against themer scaragucc' in this ultimate Drupalist showdown!

Starting from the same mockup, these two hardcore Drupalists will compete to build it better in white-knuckle, split-screen action! Scaragucc' is only allowed to use the theme layer, ohthehugemanatee is only allowed to use the module layer. Who will build the best site in this epic competition?

Gasp as scaragucc' manages complex data elements entirely in the theme layer. Feel your heart race as ohthehugemanatee themes from Views. You've never seen Drupal like this before!

After the title bout, you will be grouped into project teams to have your own sparring matches, Coder vs Themer style! We'll compare different approaches to team organization and compartmentalization, and simulate real-world project experiences. See for yourself which methods work in our intense virtual battlefield simulation!

Most shops have theme specialists and development specialists, and a large part of Drupal exists in the grey area between them. You'll learn:

Where each side excels, and where it falls down.
The gaping holes that are difficult for both themers and coders to navigate.
Best practices for site building so that grudge matches like these don't happen.
Organizational and workflow elements that help your team work together, for the best results.
How the organization of your team members can affect project budget and timeline.
ohthehugemanatee and scargucc' are trained professionals. Please don't try this at home.
Description
Speakers: eojthebrave
Goodbye hook_block_info(), hello Block Plugins.

The Drupal 8 plugin system provides a set of guidelines and reusable code components that allow developers to expose pluggable functionality within their code and (as needed) support managing these components through the user interface. Understanding the ins and outs of the plugin system will be critical for anyone developing modules for Drupal 8. Blocks, field types, widgets, and views displays are just some of the places you’ll encounter plugins in D8.

In this presentation Joe will draw on his experience working with Drupal 8 plugins in order to write about and helping document the plugin system, and walk through:

What are plugins and why, when, where are they used?
How Drupal discovers plugins.
Annotations and how they relate to plugins.
Defining a plugin.
Using plugin derivatives to allow for many instances of a single plugin.
Defining new plugin types in your own module.
This presentation will be useful for anyone who will be writing new Drupal 8 modules or porting existing code from Drupal 7 to Drupal 8. It will help developers to better understand where plugins fit in the architecture of a Drupal module, and help to map your Drupal 7 knowledge about info hooks and callback functions to Drupal 8 plugins.
Description
Speakers: klausipwolanin
Security is paramount, for almost any web application. We will take a look at security best practices to keep your site safe and take the perspective of an attacker to understand how they exploit things. We will show you common mistakes that Drupal Developers make when they write code and how they can be avoided. As members of the security team and code review administrators on drupal.org we have seen a lot of code and what can go wrong with it. Sharing our experience about:

XSS, CSRF, Access Bypass, SQL injection, DOS explained
Secure configuration (web server, file permissions, etc.)
Tools and Modules to improve security on your site
This session mostly applies to both Drupal core 7.x and 8.x versions. We will also talk about some security improvements in Drupal 8 such as auto-escaping of the Twig template engine (XSS prevention) and built-in CSRF token support in the routing system.
Description
Speakers: yoroy
This session is about making the shift from documenting a design in static wireframes to prototyping in HTML and from creating screen designs in photoshop to creating a library of design components.

We'll focus not so much on the "how" of frontend tools, but more on the "why" this process works better for all involved.

You'll learn about:

What you need to know before you can start prototyping a design
Why prototypes are more convincing, engaging and "real" then wireframes
How UX, design, frontend and backend can collaborate more closely
How to base your (static) HTML prototype on a Drupal base theme
What you can do to transform the prototype into a design component library
Why this way of working is a better fit for agile teams
Description
Speakers: Dries
Do you have questions about the upcoming Drupal 8 release (or Drupal 9 and beyond)? In this sessions, Dries will moderate a question-and-answer core conversation with a panel of key Drupal 8 contributors. You can submit questions in advance online, and anyone can submit a question. Dries will curate the submissions to ask the panel the most interesting and relevant questions.

This is a rare opportunity for the community to communicate directly with the decision-makers who are shaping Drupal 8 into the best release of Drupal yet.
Description
Speakers: Maxime Topolov
While Drupal adoption raises, we start to compete directly against largest WCM solutions. During this session you'll learn :

Main differencies between Drupal and Top3 WCM solutions
Strenghts of Drupal
How to structure your response to an RFP in order to compete with proprietary solutions
Main weakness of the competition
Total Cost of Ownership estimates
Is Drupal Secure ?
How adapt you story when it comes to major Drupal versions upgrades
Adobe Experience Manager killer demo

HIDE
Description
Speakers: skekwelinwelchev
Elasticsearch is a real-time distributed search and analytics engine. It allows you to explore your data at a speed and at a scale never before possible. It turns Big Data into Big Information!
Some of the biggest companies like Facebook, Atlassian, Wikipedia, GitHub and others are using Elasticsearch and until the time of the conference this list will expand, I'm sure.
We believe it is a time Drupal to join also and we made Elasticsearch Connector module to build Elasticsearch ecosystem in Drupal using this "new school" search engine.

Me (Nikolay Ignatov - @nignatov) and Welin Welchev (CTO Europe at Propeople) will present you the Elasticsearch Connector. This module has been designed to be a full-featured connection from the world of Drupal to Elasticsearch. A few of the current features including handling of cluster connections and settings through Drupal’s user interface, Elasticsearch Watchdog is a supporting module feature that provides logging of watchdog messages, facet filtering, automatic deletion of old logs using Elasticsearch's TTL metadata, and more. The Search API integration contributes searches, facets, autocomplete suggestions, and "more like this" searches. With view integration for selecting from any index and document types in the cluster. And more on the presentation. We are constantly developing the module and we hope to have very soon also a Drupal8 version of the module because it is in developing process right now.

What we are going to talk about:

What is Elasticsearch?
How it works?
What we currently made for Drupal?
Showing you a demo of Elasticsearch Connector module.
Roadmap of the Elasticsearch Connector project.
After the session you should understand how Elasticsearch is working and how to start using the Elasticsearch Connector module for your projects.

Read more about Elasticsearch here: http://www.elasticsearch.org/

Checkout the module here: https://drupal.org/project/elasticsearch_connector
Description
Session 1: AbleOrganizer: Fundraising, Outreach and Activism in Drupal

Time: 10:45-11:00
Experience level: Intermediate
Company: Trellon

AbleOrganizer is a community engagement platform for Drupal. It provides organizations with the ability to conduct fundraising, event registration, petition and volunteer management right from within their Drupal website,

Come learn what makes AbleOrganizer different from other open-source and commercial CRM systems. This session will focus on the following topics:

creating engaging campaigns and user experiences with AbleOrganizer
customizing contact records and the UI to suit the needs of your organization
using the web-based form builder to tailor your asks to your audience
sending email and bulk messages, creating lists, and the like
Participants are encouraged to come with questions and observations about other CRM systems they use to compare with the features present in AbleOrganizer.

Session 2: eCommerce Usability - The small stuff that combined makes a big difference

Time: 11:00-11:15
Experience level: Beginner
Company: i-KOS

Getting traffic to an eCommerce website is both crucial and incredibly expensive and according to Managing Director of e-Commerce & Drupal agency i-KOS Myles Davidson too many companies focus on traffic over conversation and yet there are both marginal and major improvements that almost any site can make to increase customer satisfaction and conversion.

In this session Myles will try and help companies 'flip the funnel' and through 12 - highly practical steps help business focus on the little things, that combined, will make a big difference.

Session 3: Drupal DevOps on Azure Websites

Time: 11:15-11:30
Experience level: Beginner
Company: Gulf University for Science & Technology

Speaker: Dr. Taher Ali (Assistant Professor of Computer Science/ IT director)

The Gulf university for science and technology will present a case study that shows how educational sector can benefit from the use of open source technology (mainly Drupal) to provide IT services to the University community including faculty, staff, and students.
Description
Speakers: matthiasnoback
Events are the new hooks. But what is an event really? How can you best describe an event in your code? What types of events are there, and how do you decide whether or not to implement something as an event?

In this talk we take a look at how events are essential to processing a Request and producing a Response. We take a look at the Symfony EventDispatcher and related classes that you need when you want to hook into this process. When you know all about the event system and how you can implement your own events, we discuss some situations which may or may not be good use cases for events. You will learn to decide if using events is the right solution for your problem.
Description
Speakers: Jody Lynn
The architecture decisions behind a site build will determine its maintainability, usability, robustness, and the time it takes to build it.

Every successful Drupal shop has at least one person who possesses the skill to take a complex set of requirements and create a simple and clear architecture plan. But this essential skill is difficult to teach and little discussed, as it requires a great deal of broad Drupal experience, and experience seeing the negative effects of bad architectures. Meanwhile it's easy to get started building complex sites in Drupal with little to no thought toward good architecture, creating a plethora of unmaintainable Franken-sites.

I propose that best practice in Drupal site architecture can be taught, and that its fundamental concepts should be understood by all site builders, themers, and developers. The philosophy that makes for good architecture is based on semantic meaning: the same concept for what makes for good markup, URLs, code, etc.

This session will give you an approach to thinking about architecture decisions: how to name things and how to use things consistently with their names.

A site with good semantic architecture will have little or no need for documentation for its administrators. It will be readily understood and improved by new team members or new teams it meets after you. It is likely to be upgraded and enhanced rather than to be scrapped and replaced by its owners.

I will go through many building block nouns of Drupal (think content types, user roles, Views displays, field formatters, path aliases, menus, image styles, Panels panes, Commerce products) and discuss how they should be named, used, and their common pitfalls.

Nearly all of this session will be useful across major versions of Drupal, focusing its examples on architecture patterns in modules which exist in (or are likely to be ported to) D8.
Description
Speakers: sukottokun
A site can launch months late and the customer considers it a success and you are the hero. A site can launch on time, and the client's first order of business is to replace your company. The needs and expectations of a client don't always turn out to be what you think. What matters the most, and how can you cultivate a positive and productive relationship with your clients for years?

There are many approaches to customer success management, some of which have been around since the dawn of the merchant class, and others which are rapidly evolving in the relatively new field of Customer Success Management. This session will explore:

1. What is success for your customer?
2. How your sales process, software development methodology,and internal culture affect success
3. Customer expectations: setting them, meeting them, and handling inevitable gaps
4. How to emerge from difficult conversations with a stronger bond
5. Onboarding, Training, Support: How to excel at them
6. Building an empathetic staff
7. Quantifying success via Key Performance Indicators: NPS, CSAT, Survey Results

Scott Massey is Customer Success Manager at Pantheon, a platform for Wordpress and Drupal, and helps customers get every last bit of value out of the platform. This involves direct contact with Enterprise customer and partner development shops, online and in person training, support, and helping to make the platform do what the customer needs.

He is been a support manager, project manager, sys admin, and site builder inside and outside the Drupal world. He has been trained in verbal defense and influence, is a certified scrum master and is active in the San Francisco Customer Success community.
Description
Speakers: mikl
As web sites are becoming ever more dynamic and interactive, they turn more application-like.

Responsiveness is everything when building modern web applications. For this reason, client-side web frameworks do not reload the entire page whenever a user clicks something.

Ember.js is known from, among other things, the Discourse project, and is minded towards ambitious web frameworks. It is a full-stack, browser-side MVC framework. It handles routing based on URL, rendering of templates and business logic, all in the browser.

When building Ember.js applications, it is still necessary with a server-side backend that handles access control, provides admin interfaces, etc., and Drupal is well suited for this purpose.

During this session, I will demonstrate how to build hyper-responsive web applications on top of Drupal with Ember.js, how to hook up Ember Data with the Services module (for Drupal 7) or the new Web Services layer (for Drupal 8), so Drupal entities can be exposed to the JavaScript frontend for CRUD.

I will also dive into how Drupal can be used to bootstrap the Ember.js app to increase the performance of the initial page load, as well as interactive pagination, lazy-loading and other UX and performance tweaks to make your web application more responsive.
Description
Speakers: ronald_istosacrollet
It is more or less universally accepted that the DevOps movement has led to better quality projects, improved quality of life for developers, and finally brought peace between the development and operations camps. However, it is still challenging to quantify the real value of DevOps, especially because it is often seen as a cost center rather than a value generator.

At Bluespark we wanted to get to the heart of the matter and present convincing evidence of the true savings DevOps can bring to a project. To do this we inspected a number of different projects (analyzing the tickets and time logs associated with them) to identify which tasks we performed manually before putting DevOps in place. In essence, we were able to quantify the efficiencies gained by implementing automated testing, continuous integration and other DevOps principles.

Finally, we took this approach one step further and extrapolated potential savings using different DevOps techniques. The end result is an interesting analysis of the value DevOps can bring to a real world project, and a comparative analysis of different approaches/techniques.

We will discuss:

The Drupal Development Process Prior to DevOps
How DevOps changes the Development Cycle and what cost benefits (if any) are to be had
How different DevOps approaches impact outcomes (Answering the question “Is more DevOps always a good thing?”)
You will come away with an improved understanding of the ROI of implementing DevOps offers (or indeed what you’re gaining from processes in place). Additionally, the comparative analysis will clarify where to focus limited resources in order to get the most “bang for the buck”.
Description
Speakers: Fabianx
Front-End, Back-End, Scalability and Database - Lets make Drupal fast!

Motivation - Why does core need automated performance tracking?

Web Page Performance is important. Period.

A performant Drupal Core is an important base for other sites to build upon; to ensure they are performant as well. But how does Core Development ensure that Core is performant at all times?

Drupal has a performance core gate, but the development of Drupal 8 has shown that it is hard to enforce this gate. The only real measurement of how fast or slow Drupal has been at a given time has been provided by single Apache Benchmark (ab) runs and how long the test suite took at a certain point in time. Both are very unreliable measurements as the test suite inherently had quite some different performance characteristics than what is important for a production site.

Particularly the following questions cannot be answered today easily:

Is Drupal 8 slower than Drupal 7 in the back-end?
What about front-end performance? Is Drupal 8 faster there? (yes!)
How many database calls is Drupal 8 doing per page request?
How many bytes are transferred on average?
...
However those are important to know.

Automating the process

The twig team and some other core contributors on the other hand have measured almost every single patch with xhprof-kit and XHProf-Lib by hand, which gave great insight into the back-end of certain issues and also revealed performance problems else where in core, but while that process was already automated, there was still a lot to be done to setup the scenarios / code path to test a certain patch, which was still painful and hard work.

How can we optimize this process more? How can we have performance testing / tracking be as simple as our current test suite. How can we even combine it with our test suite?

What needs to happen for that? What do we need to track? What can we track?

This session wants to explore this field and then go over into a fluent discussion with core maintainers on this important topic.

In addition you might probably want to re-use some of the ideas to track the performance of your own projects over time as well.

The ultimate guide to automated performance tracking.

This session will feature an overview of what automated performance testing / monitoring is and then go into the details of what types are there, what can be tracked, which problems are there and what could be implemented tomorrow and how ultimately Drupal Core and all sites you are building could profit from this.

What is automated performance testing / monitoring?

Types of performance testing:

Front-End: HAR and Browser Timing API; behat
Back-End: xhprof-kit and XHProfLib
Scalability: jMeter and behat
DB: Number of queries; slow queries; queries without indexes
(Remote "services" invocation overhead -- less relevant for Core )
Quantitative vs. Qualitative monitoring:

Speed vs Number of function calls / DB calls / http calls
Bytes transferred
Cache Hits vs. Cache Misses (Files)
Cache Hits vs. Cache Misses (Render Cache)
File System Accesses (readdir, stat)
Aggregation Quality
Problems of Speed Performance Monitoring:

Dedicated server; high number of runs (100)
Difficult with VMs
Minimum vs. average and median
How to report data:

HAR: Available for Download
XHProf-Kit / Lib: Data uploaded and available online.
Approaches Drupal could take:

FrontEnd: Behat Test Suite that is measured while it goes
BackEnd: Need an API to setup site and create users / entities to setup a scenario
Could even backport back to D7 and do retrospective performance testing
Needs to live in Core (tested); devel_generate broke more times than it worked (Moshe)
Scalability: jMeter or behat
DB: Automated query log sweep after scalability test run
Learning Goals

What is automated performance testing?
What approaches can be used now?
What approaches could be used in the future?
How can Drupal profit from this?
Description
Speakers: sunithamktkrajcar
Note: This session contains two half hour sessions back to back.

Session 1: Drupal DevOps on Azure Websites

Time: 13:00-13:30
Experience level: Intermediate
Company: Microsoft Azure

Microsoft’s Azure Websites is a great cloud platform to host your Drupal Websites. Azure Website offers secure, reliable, and scalable environment for your websites and already hosts over 250,000 Drupal, WordPress, Joomla, and other OSS based websites.

Microsoft Azure Websites is a fully managed platform as a service (PaaS) for hosting Websites. The platform offers a quick, easy, and cost competitive way to create, deploy and manage web applications while removing the need to manage or even think about the underlying infrastructure. Allowing you to focus on your application, not your servers. Among other thing, Azure Websites includes capabilities such as, Backup and Restore, Staging Slots, High Availability and AutoScale.

But once you have hosted your site, you must wonder how do I manage my Drupal website? What tools can I use? Will my existing tools work?
In this session we will answer all these questions and help you understand how Azure websites makes it easy to perform all your DevOps tasks from deployment to management of your website. Some of the topics we will cover is:

Automated Deployment for Drupal
Using Drush on Azure Websites
Using Drupal Shell Scripts
Using Azure Web Jobs for Drupal Cron Jobs
Setting up CI from Travis and Jenkins
Session 2: Drupal & Ruby: Let's Be Friends

Time: 13:30-14:00
Experience level: Intermediate
Company: New Relic

As a Drupalist, sometimes we expect Drupal to be the solution to every problem -- the universal, one-size-fits-all hammer to every nail. Ruby is making an appearance in more and more Drupal developers' toolboxes. I'll explain why this is fantastic, how some Ruby proficiency will help you be a better Drupal developer, and equip you to make informed decisions and consider alternatives when building out your Drupal sites' features and functionality.

We'll sprint through a fly-by overview of the language itself, then spend some time talking about the various Ruby-based tools that are being used to build Drupal sites big and small. Next we'll discuss where Drupal excels and where it's not always the best solution, and we'll close with some real-world examples of quickly and enjoyably building simple 'tag-along' Ruby apps to support Drupal sites.
Description
Have a neat tip, trick, hack, or solution for Drupal? We want to hear from you! You don't have to be a pro or an expert to share your favorite Drupal (or web) knowledge.

This series of five-minute lightning talks promises to be fun and informative for Drupalers of all levels. Learn more about this new event.

Lightning Talks

1. Drupal & Bitcoin, jbrown
2. Drupal 8 Console, jmolivas
3. The Unforseen: A Healthy Attitude To Risk on Web Projects, steveparks
4. Druphpet, k0teg
5. Continuous Delivery as the Agile Successor, august1914
6. #D8in8 initiative, stella
7. Just a thought for discussion about security, amstercad
8. Drupal as a Building Management System, idevit
Description
Speakers: danigrrl
When working on relatively simple sites, there's a lot you can do directly in Drupal to show clients how content and functionality will work together. But as functionality gets more complex and more stakeholders get involved in decisions about how the site will work, it's easy to lose development hours on code that will end up thrown out as the stakeholders rip apart your ideas.

Wireframes only tell part of the story. To really get buy-in from stakeholders, you need to show them more than what's on a page—you need to show them how something will WORK.

Enter Axure RP. A common tool used by UX practitioners, it allows you to create site maps, user flows and wireframes quickly, within a single application—and makes it easy to add interactive elements, annotate your work, and export working HTML prototypes with the click of a button. In this session, UX Designer and Drupal for Designers author Dani Nordin will share how she uses Axure to prototype complex functionality and get stakeholder buy-in on projects while saving her team development time.

What question(s) does this session answer?

How do I ensure my project is going in the right direction before spending time on development?
How do I manage projects with many stakeholders without losing my mind?
How can I turn my team's ideas into something we can test quickly?
In addition, you'll learn practical tips for working with Axure to create prototypes that not only give you something testable—without spending days or weeks on Drupal code—but that can also be used to directly communicate important specifications to the development team.
About Dani Nordin

I'm a UX Researcher and Designer who works with Drupal teams on medium-to-large implementations, usually involving complex relationships of content, stakeholders and technology. Additionally, I have taught UX Design at CDIA, General Assembly, and Harvard Business School. Currently a Research Associate at Bentley User Experience Center, where I'm pursuing a Master's Degree in HFID.
Description
Speakers: swentelychedamateescufago
It is now a well known fact that the forthcoming Drupal 8 release brings massive API changes. Field API was not left behind - it was in fact almost completely rewritten. This session will present the major improvements to the way you will work and code with entities and fields in D8, that will make you wish you never have to work on a D7 site again.

New field types shipped in core
Better DX for working with field values in entities
Unification of "base" fields (node title...) and "configurable fields"
Integration with the configuration system ("CMI") for easier deployability
Everything as plugin classes: field types, widgets, formatters
and more...
Whether you're a coder or site builder, fields are one of the essential pieces of your Drupal site, so everyone is more than welcome to join !

Note: this is an updated version of the presentation made in DrupalCon Portland, DrupalCamp Vienna and DrupalDevDays Szeged- a *lot* has changed since then and we are now in the final state of the whole Entity Field API conversion in Drupal 8.
Description
Speakers: webchickxjmeffulgentsia
Drupal 8 is headed for its first beta. Now is the time to start upgrading contributed modules so that they're ready the day 8.0 is released.

We'll begin with a quick overview of how to start the module upgrade process, and provide some brief information about new Drupal 8 APIs, including:

Object-oriented programming and dependency injection
The new Drupal 8 routing system
The configuration system
Plugins
The new Entity API
and more!
This workshop is BYOM (bring your own module). Following our introduction, we'll get everyone started porting a contributed module from Drupal 7 to Drupal 8. Bring a contributed module you maintain, or one that is critical to your business. Several Drupal 8 core developers will be available to answer your questions and help you when you get stuck.

The most important thing we want you to take from this workshop is what resources are available to you as you work with Drupal 8, and how to find the answers you need.

Note: This session is intended for the two-hour-plus lab format.
Description
Speakers: Crellhagen_last
What does a major media company do when they want to manage media content with Drupal but serve a REST API to thousands of users across desktop sites, mobile phones, and set top boxes? They could wait for Drupal 8, or do one better and take a Decoupled CMS route.

"Decoupled Content Management Systems" are all the rage these days. In theory, by separating the various parts of a CMS platform into separate pieces a site can scale, grow, and evolve more freely. Of course, that's quite different than how most open source CMS platforms are built today. That doesn’t mean they can’t be used that way, however.

This session will look at how Palantir.net paired up Drupal 7 with Elastic Search and Silex, a Symfony-based microframework that is well suited to lightweight web service APIs, to build a robust and scalable media metadata system.

The result was a redundant, multi-server, multi-application distribution platform integrating with no less than four 3rd party systems, including Rotten Tomatoes. Once it hit production the performance was superb thanks to its decoupled approach and smart use of HTTP; the system is far faster and more secure than had it been built with just Drupal 7 alone. This was also Palantir.net’s first “fully Agile” project, which also contributed to its success as the client’s contracting partners changed their minds throughout the course of the project.

The decoupled CMS approach has a lot going for it, and the advances made in Drupal 8 will make that even more viable. There’s no need to wait, however. High-performance web services with Drupal are ready today.
Description
Speakers: shumushin
Introducing Docman (available on github, alpha state): the Swiss Army Knife for Drupal multisite docroot management and deployment. Docman acts as a layer between your docroot – usually a git repository somewhere, but not limited to it– and multiple vendors working on different websites using your standards and predefined sets of modules.

Remember how hosting sales teams always tried to push you to buy more docroots "because otherwise it would be hard to manage websites in a Drupal multisite environment"? Docman can simplify your life so you will be able to stick to one docroot and multiple independent websites in it using the same Drupal core.

Have you ever tried to oblige different vendors to work with one Drupal core for completely different websites, inside a multisite environment, without making them break everything and with clear deployment schema? Find out how docman can make the once daunting task of multisite deployment more efficient.

Does the governance of multiple projects in one multisite environment scare you? Docman has hooks, like Drupal, to launch your tests whenever needed and for each website in multisite environment independently.

During this presentation you will peek inside the inner workings of the docman tool and see:

All the advantages it will bring to your multisite /single doc root deployments
A real-world case study of setting up a stable platform using this concept and the tools needed
A development process using docman ('docman build local development' command and others)
Real-world example:

You have a docroot at Acquia Cloud
You have a small governance team setting up standards (Drupal core, list of contrib modules)
You have 3 vendors working on three different websites in multisite environment
Description
Speakers: nod_
A practical guide to understanding when Vanilla JS is enough and when it is not.

* Talking about fanatically ripping out libraries and replacing them with obtuse JS code is not productive. Websites like youmightnotneedjquery.com are interesting but flawed and misguiding. What would be productive is to make sure of:

the need for a particular piece of code,
correct and consistent use of libraries,
identifying the subset of features used from libraries,
only then can we talk about using Vanilla JS instead of popular libraries.

Browsers APIs grew up, developers need to acknowledge it and make use of them — when appropriate. If we don't, browsers will stop caring and we're all going to have a bad time. This session will review common Drupal JS patterns found in core, contrib and projects and how they can be simplified (for some definition of simplified), pointing out frequent library abuse on the way.

The topic of micro libraries will come up and I'll bring up the topic of hybrid approaches for all of us lazy programmers. We'll talk about where and how to draw the line for using a particular solution (this is a cue for the IE8 talk). Drupal 8 code will be taken as an example.

The key concerns throughout the session are performance and maintainability. Unlike fanatics, I want you to be able to use what you learned knowing all the pros and cons. When you decide it's the right thing for you to use, you can trust your choice is the right one in your situation.

The future is now! (for some definition of now)
Description
Speakers: MikhailVink
Note: This session contains two half hour sessions back to back.

Session 1: PhpStorm for Drupal Development

Time: 14:15-14:45
Experience level: Beginner
Company: Jetbrains

That's hard to argue that with upcoming shift to Drupal 8, developers are going to face a lot of difficulties getting used to a brand-new architecture of upcoming Drupal version. While in Drupal 6 & 7 use of advanced IDE is recommended (but in general you could live without using one), version 8 sets a new level of challenges with Symfony2 components included, Twig as the main template engine, OOP introduced, and sophisticated hook & API system in place as well.

And now just imagine that your IDE deeply understands your Drupal code providing context-dependent code completion, safe refactorings, respects PHPDoc and integrates debugger, PHPUnit and many other tools. With this deep understanding, you can use your tool to navigate between hooks implementations and invocations, Drupal API & core methods, and instantly get quick documentation for everything you are working on! Adding to that built-in Drupal Coding Standard (so that you can automatically re-format code before commit), Drush tool which is run right from the IDE, and much more.

During this session we will be working with PhpStorm IDE which has been quite a gamechanging and trending development tool in Drupal community lately.
Description
Help us say farewell to DrupalCon Amsterdam and "hello!" to DrupalCons Bogota and Los Angeles!

We'll even reveal the surprise location of DrupalCon Europe 2015! Don't miss out!
Description
Session 1: Using Symfony2's HttpKernelInterface for painless integration

Time: 17:00-17:15
Experience level: Intermediate
Company: Inviqa

In this short session we will look at one of the Symfony2 components adopted since Drupal 8; the HttpKernelInterface.

Attendees will gain familiarity with this component, the related Request and Response objects, and the overall top level structure of a Drupal 8 project's integration.

We will also see how the Stack PHP project allows us to easily integrate a Drupal 8 site with another codebase that uses the HttpKernelInterface (including Symfony2, Silex, Laravel or even another Drupal 8 project).

We will also explore some of the other functionality that can be added by Stack, all enabled by this powerful abstraction.

Session 2: Paddle presents kañooh: Not just another Drupal Distribution (powered by the Flemish Government)

Time: 17:15-17:30
Experience level: Beginner
Company: One Agency

Building a corporate culture of peer reviewing, extensive testing, and customer intimacy through co-creation.
How the Flemish government and Paddle work together in creating a sustainable user-friendly CMS.

Session 3: MySQL today (and tomorrow)

Time: 17:30-17:45
Experience level: Intermediate
Company: Oracle

In todays IT world the demands for databases are rapidly changing. Where is MySQL today and what can we expect in of a 'Open Source' MySQL in the next couple of months?
A very short overview of that will be discussed during this 15min session.

Speaker: Carsten Thalheimer, MySQL Sales Consultant (CarstenT)

Session 4: High Performance Drupal with MariaDB

Time: 17:45-18:00
Experience level: Intermediate
Company: MariaDB

MariaDB is a backwards compatible, drop-in replacement to MySQL, that has gained much momentum in recent times, and tends to be the default in many distributions of choice now. With its additional feature set, one can take advantage of the better query optimizer, more performant key caches, an opensource threadpool for multiple connections with short running queries and binary log group commit for when your database needs grow beyond a single instance to a replicated one. Learn about cases of using GIS with Drupal & MariaDB.

Learn how to take advantage of the new features in MariaDB, to get Drupal to scale. The talk will also touch on new developments around MariaDB Galera Cluster and how that can be used for read/write scaling of Drupal.

Speaker: Maria Luisa Raviol, Senior Sales Engineer, MariaDB

Drupal is a registered trademark of Dries Buytaert.