Skip to main content

Nieuwe inzichten op DrupalCon Amsterdam

Eind Oktober was het weer zo ver. Het Drupal event van het jaar: Drupalcon. Dit jaar was de "place to be" Amsterdam. We gingen met 3 enthousiastelingen van Corecrew ons een week lang verdiepen in alles wat met Drupal te maken heeft. Hieronder volgt een samenvatting van onze indrukken en de meest interessante dingen die we die week te weten gekomen zijn.

 

Een van de dingen waar het meest naar uitgekeken werd was de keynote van Dries Buytaert, de "founding father" van Drupal. Met als belangrijkste talking point natuurlijk het nieuws over Drupal 9.

The big deal about Drupal 9 is ... that it should not be a big deal.

De keynote begon onmiddellijk met goed nieuws. De update van Drupal 8 naar Drupal 9 zou een pak vlotter moeten verlopen dan de update van Drupal 7 naar Drupal 8. Het idee is dat de update bijna even eenvoudig zou moeten zijn als een  “minor” update (Van Drupal 8.6 naar 8.7 bijvoorbeeld). Natuurlijk moeten we ook rekening houden met custom implementaties in projecten maar er zal normaal geen volledige rebuild nodig zijn.

 

 

Voor projecten die nu nog Drupal 7 gebouwd zijn is er dus niet echt een reden om te wachten op Drupal 9. Het is beter om nu al de update te doen naar Drupal 8 en dan, als Drupal 9 beschikbaar is, daarop over te stappen. De release van Drupal 9.0 staat trouwens voorlopig gepland voor 3 juni 2020. Met daarna (zoals nu ook bij Drupal 8 het geval is) elke 6 maand een “minor” release (Drupal 9.1, 9.2... ). De beschikbaarheid van modules voor Drupal 9 zou bij release ook veel beter moeten zijn dan bij de release van Drupal 8. 45.5% van de modules in nu al klaar voor Drupal 9 en 36.8% van de modules vereist een update van minder dan 5 regels code.

 

 

Verder werden er nog een aantal nieuwigheden aangekondigd. Een van die zaken is een nieuwe backend interface. De nieuwe interface krijgt de naam “Claro”. Het doel van deze nieuwe interface is om Drupal een frissere “Look & feel” te geven die meer aansluit bij een modern CMS. Naast de visuele aanpassingen zullen er ook aantal usability verbetering toegevoegd worden om het gebruiksgemak voor administrators te verhogen.

 

Een andere nieuwe feature wordt een “Auto update” functie. Dit moet het mogelijk maken om Drupal en modules met één klik op de knop te updaten. Hiervoor worden momenteel al stappen gezet in Drupal 8 maar helaas werkt dit nog niet volledig met externe modules en is er nog wat werk aan de winkel om dit mogelijk te maken voor updates waar ook database aanpassingen aan verbonden zijn. Maar we blijven deze interessante feature zeker verder opvolgen!

Voor de geïnteresseerden is de volledige keynote ook online te bekijken - in de video hiernaast.
 


Naast de “Driesnote” waren er natuurlijk ook nog tal van andere interessante sessie waar we veel opgestoken hebben. Zaken zoals ‘“Linux Server Deep Dives” en ”QUIC and HTTP/3” die meer DevOps & hosting gerelateerd waren tot Backend en Frontend zaken zoals  Dive deep into Drupal 8 Render API  & “Component Based Development in Drupal 8 with Pattern Lab”.

Hieronder onze persoonlijke top 3 van de meest interessante en opmerkelijkste sessies.
 

De top 3 van Jeroen Begyn

Security, Drupal 9, and Navigating the Changing Web Landscape

QUIC and HTTP/3: Too Big to Fail?!

[PANEL] How companies are currently using Kubernetes with Drupal 

Security, Drupal 9, and Navigating the Changing Web Landscape

Deze sessie werd gegeven door XJM. Zij is de Drupal core release manager en deel van het Drupal security team. De presentatie ging vooral over de impact van het gebruik van externe dependencies in Drupal en hoe dit impact heeft op de security en updates van Drupal. Het was heel interessant om te zien waar bij de release van een update of bij het uitkomen van een security leak het core team van Drupal rekening mee moet houden. Aangezien Drupal voor een deel gebouwd is met externe tools zoals Symfony en Jquery heeft dit ook impact op het release proces. Als er bijvoorbeeld een Security issue naar boven komt een een bepaalde versie van Symfony moet die ook opgelost worden in Drupal. Daarom werken de security teams van deze tools nauw samen om dit allemaal in goede banen te leiden, wat niet zo eenvoudig is als het op het eerste zicht lijkt.

QUIC and HTTP/3: Too Big to Fail?!

Deze sessie werd gegeven door landgenoot Robin Marx van de Universiteit van Hasselt. 
De presentatie ging over het nieuwe HTTP/3 protocol en de verschillen met HTTP/2 en HTTP/1. Niet echt Drupal specifiek maar meer over het protocol in het algemeen. Een heel technische maar geweldige interessante uitleg over hoe deze protocollen onderliggend werken. Een van de dingen om te onthouden is dat er in de toekomst heel veel “buzz” zal gecreëerd worden door hosting partijen rond deze technologie maar dat niet alles rozegeur en maneschijn is. “If something sounds too good to be true, it probably is!”. Er zal zeker een snelheidswinst optreden door deze technologie te gebruiken maar “alles zal ineens 2x zo snel gaan” lijkt hem wat te optimistisch.

[PANEL] How companies are currently using Kubernetes with Drupal 

Deze sessie was niet echt een gewone presentatie. Het was een panelgesprek tussen sprekers van verschillende bedrijven. Kubernetes is al een tijdje de nieuwe revelatie op hosting gebied. Tijdens dit panelgesprek deden de speakers uit de doeken hoe zij Kubernetes gebruiken in hun bedrijf en wat ze geleerd hebben tijdens het traject van R&D tot het gebruik van Kubernetes in productie.    

De top 3 van Kevin Celis

What's Next for the Layout Initiative

Quick wins for an accessible website

SVGs in Drupal Frontends - Creating configurable blazing effects 

What's Next for the Layout Initiative

In deze sessie werd de Layout Builder voorgesteld, een tool in Drupal die de gebruiker toelaat om de blokken in hun website te beheren. Momenteel wordt dit in onze websites nog door de developer gedaan en heeft de eigenaar weinig mogelijkheden om de layout van zijn website aan te passen.
Een standaard Drupal project gebruikt namelijk de block-layout en deze bevat alle blokken, van het logo en het menu bovenaan tot de content in de footer van de website. Een niet-ervaren gebruiker zou via deze tool dus zijn hele website overhoop kunnen halen. Daarom bieden wij een tussen-oplossing met de Paragraphs module, waarbij de gebruiker toch per pagina zeggenschap heeft over de layout van het content-gedeelte van hun website.
Ik ging dus met veel interesse luisteren naar deze sessie, hopend dat we onze gebruikers met deze tool meer zeggenschap zouden kunnen geven over de layout van hun website.
De Layout Builder module lijdt echter aan dezelfde kwaaltjes als de Block module, er wordt nog niet voldoende restrictie opgelegd over welke blokken en regio's er aangepast kunnen worden, waardoor er te veel mogelijkheden zijn voor een gewone gebruiker. Er wordt wel al gewerkt aan een 'Layout Builder Restrictions' submodule, maar zolang deze niet op punt staat is de Layout Builder voor ons toekomstmuziek. Zeker interessant om in de gaten te houden, iets dat we in de toekomst hopen te kunnen gebruiken, maar nog niet vandaag.

Quick wins for an accessible website

Ik ging naar deze sessie met zeer lage verwachtingen. Drupal-websites zijn over het algemeen al zeer accessible out-of-the-box en bovendien gingen wij in 2019 al met enkele developers naar een accessibility opleiding van Feweb. De titel van de sessie 'quick wins' kon twee dingen betekenen: ofwel krijgen we een lijst van oplossingen die wij al lang toepassen, dingen die voor een ervaren-webbouwer bijna vanzelfsprekend zijn; ofwel krijgen we effectief kleine aanpassingen die we niet standaard meekrijgen in drupal en die echt een verschil maken.
Het bleek een combinatie van beide te zijn.
Na een korte intro die nog maar eens het belang van accessibility aankaartte, kregen we verschillende toepassingen te zien die ons enerzijds vertelden dat we goed bezig zijn - opties die wij reeds toepassen - en anderzijds aanpassingen bieden om onze websites nog toegankelijker te maken. 
Er waren zeker genoeg van deze laatste om mij het gevoel te geven dat we onze websites nu nog meer accessible kunnen maken. Meer nog, het eerste wat ik deed wanneer we terug op kantoor waren na Drupalcon, was ons installatie-profiel aanpassen met enkele van deze quick wins.

SVGs in Drupal Frontends - Creating configurable blazing effects

SVG's zijn een afbeelding-type dat ik lange tijd genegeerd heb vanwege het gebrek aan support in oudere browsers. SVGs zijn vooral grafische beelden, denk aan icoontjes, logo's, pijltjes, infographics, ... Het wordt dus niet gebruikt voor een foto of sfeerbeeld, maar enkel voor informatieve beelden.
SVGs hebben twee grote voordelen ten opzichte van gewone afbeelding-types (zoals PNG en JPG). Dat is dat ze veel kleiner zijn qua bestandsgrootte (makkelijk tien tot honderd keer kleiner dan een PNG van hetzelfde beeld) en ze zijn ook oneindig schaalbaar. Oneindig schaalbaar wilt zeggen dat je een SVG op een high-def 4K beeldscherm kan tonen, zonder kwaliteit te verliezen en toch de zeer kleine bestandsgrootte te bewaren.
Deze sessie toonde echter nog een ander voordeel van een SVG. Dat is dat alle onderdelen van het beeld afzonderlijk aanpasbaar zijn, rechtstreeks in de browser. Zo kan je bijvoorbeeld in een afbeelding van een klok de wijzers afzonderlijk laten draaien in een animatie, of de kleuren van een T-shirt in je webshop laten aanpassen met een keuzeveld door de eindgebruiker.
De opties zijn bijna oneindig en in de meeste gevallen veel meer dan wat een gewone gebruiker nodig heeft in zijn website. Maar het gebrek aan support is al lang verleden tijd en de gebruiker de mogelijkheid geven om via de backend van Drupal een afbeelding in de frontend aan te passen - zonder te moeten prutsen in photoshop - is iets dat ik hoop snel te mogen toepassen.

De top 3 van Wouter Waeytens

Dream Migrations and Imports : Feeds UI + Migrate Engine

Caching in Drupal 8 has evolved: Tips on how to improve your code 

Scaling up and accelerating Drupal 8 with NoSQL

Dream Migrations and Imports : Feeds UI + Migrate Engine

Ik ging naar deze presentatie met een open mindset, bij Corecrew krijgen we regelmatig te maken met het overzetten van inhoud vanuit een oude site naar een nieuwe site. Enerzijds was ik verrast wat feeds UI allemaal kon anderzijds bleef ik op mijn honger zitten aangezien de feeds UI in combinatie niet standaard werkt met een meertalige site. Dit kan je wel doen met wat custom code maar wat is de point dan? 

Het 2e deel van de presentatie was goede opfrissing van wat er allemaal mogelijk is met configuration management. Hierin neem ik mee dat er modules bestaan die het mogelijk maken om config te negeren of te alteren bij import. Wat een zege kan zijn voor sommige toepassingen (bv. multisite, webform, ..) maar anderzijds ook een bron kan zijn van zaken die mislopen. 

Caching in Drupal 8 has evolved: Tips on how to improve your code 

Deze sessie werd gegeven door onze landgenoot Kristiaan Van den Eynde, hij is tevens de maintainer van de group contrib module. Hij maakte een mooie uiteenzetting van de verschillende lagen cache die Drupal rijk is. Ook stelde hij zeer kort een aantal best practices voor die zeker en vast zullen verwerkt worden in onze toekomstige projecten. Als laatste liet hij zien hoe hij een oplossing ontwikkelde voor een caching probleem binnen zijn group contrib module. Uiteindelijk kwam het erop neer dat hij de volledige core caching herschreef, zijn (enorm grote) patch staat momenteel in review en we hopen dat zijn oplossing binnenkort in de core komt. 

Scaling up and accelerating Drupal 8 with NoSQL

Een interessante sessie die het aanbod van allerhande no-SQL toepassing omvatte voor de optimalisatie van performantie en laadsnelheden. Dit alles lijkt op het eerste zicht zeer eenvoudig te kunnen door het opzetten van een aantal programma’s (bv. mongodb) en het installeren van een contrib module in de Drupal. 
Een eenvoudig voorbeeld dat werd gegeven is de kracht van het werkschijven de watchdog (drupal logs) naar een extern systeem i.p.v. naar de Drupal database. Dit zorgt ervoor dat de database minder belast wordt. 

We kijken alvast met een tevreden gevoel en een hoofd vol nieuwe ideeën terug op deze Drupalcon. We kunnen concluderen dat er in de komende jaren nog heel wat staat te gebeuren op Drupal vlak en dat de positie Drupal als CMS systeem en framework enkel maar aan het groeien is. We kijken naar reikhalzend uit naar de release van Drupal 9 en naar Drupal 2020!

Wouter Waeytens, Kevin Celis, Jeroen Begyn