From spaghetti to lasagne - writing clean code for Drupal 7 and 8 with Domain Driven Design

Drupal is often referred to as a set of golden handcuffs. Whilst it allows you to rapidly prototype your development project, you can easily end up with a spaghetti mess of unmaintainable code that can only be tested with end-to-end functional tests.

Domain Driven Design is an approach to software development that was coined by Eric Evans in his 2004 book of the same name. It involves placing the primary focus of development on the core business domain and domain logic.

Lee Rowlands

The aGov Drupal 8 government distribution

Following the forking of aGov for Drupal 7 for govCMS in 2015, significant effort has gone into rebuilding aGov as a distribution for Drupal 8. This talk will detail the major changes made in aGov 8 in terms of functionality and architectural approach, along with examples of it being used on live websites by major government organisations.

Owen Lansbury

Update hook vs Post update hooks

Drupal 8 introduced a new hook in update system called post_update hook. 

This session will cover:
  • What is an update system in Drupal?
  • What is an update hook?
  • What is a post_update hook?
  • How post-update hooks are different from update hooks?
  • When to use the update hooks?
  • When to use the post-update hooks?
  • How can we improve the update system?
Jibran Ijaz

Drupal 8 and Microservices

Over the past 5 years we have watched microservices come into the mainstream and be sold as the future of applications.

Large companies are trending towards splitting up their large monolithic service into smaller, more manageable deployment objects.

But what does this mean for Drupal 8? What could this mean for Government built sites?

Come on a journey with me as we cover:

  • Drupal 8
  • Microservices
  • Docker
Nick Schuch

Testing any day: guide to end to end test driven Drupal projects

Do you get notified if some crucial functionality on your website was changed or broken?

Is automated testing part of your daily routine or deployment process?

If not, then you are risking of losing parts of your website or even entire project.

Testing is no longer developers realm and everybody should get involved and get the benefits of test driven development.

In this session we will cover:

Vladimir Roudakov

The blueprint for secure Drupal 8 platform/builds with composer

This session will focus on what a secure Drupal 8 distribution should look like, and how to use Composer to build, package and deploy a Drupal 8 site.

In a Drupal 8 site, the only code in the repository will be custom code - everything else is defined as a dependency. This makes it clear what the audit surface is. If it's in the repository, it's custom-code. Everything else is added via our composer.json file.

Lee Rowlands

Digital eDeposit using Drupal at the National Library of Australia

Publishers are now able to deposit publications with the National Library of Australia electronically, a process known as eDeposit. Publications are accepted in multiple electronic formats (such as PDF) and automatically registered with the Library's data management systems. The front end and management of submissions is powered by Drupal.

This session will discuss the overall business requirements for the project, a deep dive into the technical architecture, and a summary of some of the learnings for using Drupal as an application front-end with complex business logic.

Christopher Skene, Colin Sweett