From September 26 to 30, 2016 (September 24 to October 2 including sprints), DrupalCon Dublin took place.
I attended on September 27 and 28 with Smile (Gold sponsor).
My first DrupalCon. A truly outstanding conference centre, in terms of venue, equipment, and staff. A whole different scale of event; I don't have the exact number, but around 2,000 attendees.
Even though we didn't really have time to explore, I found Dublin a very pleasant city. I'm not sure if it was the proximity to the sea, but I found the area we were in very welcoming.
I got to see Dries in the flesh at least once in my life :D.
Here is a summary of those 2 days.
Keynotes
Prenote
A very humorous introduction following the journey of stereotypical open-source community characters who were trying to obtain the cauldron of gold found at the end of rainbows, guarded by the leprechaun (Dries).
To claim this reward, the various characters had to set aside their differences and unite their efforts. A lovely moral about unity and cooperation.
Driesnote
Opening with a message from Megan Sanicki, Executive Director of the Drupal Association, on the various contributions to Drupal, Dries gave a state of Drupal 8 followed by a look at one of the reasons for Drupal's success.
The state of Drupal 8:
With growing adoption, Dries highlighted the new features, notably in 8.2, including placing blocks from the front office, configuring page elements from the front office, the beginnings of workflows, etc. He also explained that this is made possible by the new six-monthly Drupal release cycle.
He also reminded attendees that it is possible to propose initiatives, and that experimental modules in core have 1 year to become stable otherwise they risk being removed, as happened with "Inline form errors".
One of the reasons for Drupal's success:
Its community. (surprising… :))
Through a rich collection of interviews, images, and videos full of powerful messages showing the impact Drupal has on thousands of people's lives, whether simply for sharing information, fighting poverty by providing work in disadvantaged countries, or enabling disaster relief coordination. It was a truly motivating and unifying moment.
Emer Coleman
A very interesting and timely presentation on ethics in the technology sector. Emer highlighted the dangers of companies like Facebook, mass surveillance legislation, etc. A much-needed wake-up call.
Sessions
How do I typed data in Drupal 8
The Typed Data API is a Drupal 8 feature for structuring data. Not having had a need to use it until now, it is quite hard to explain, the simplest approach is to use the example from the presentation.
If you want to define a color data type, you can specify that a color corresponds to a name (string) and 3 integers for red, blue, and green. The integer and string data types are already defined.
You can then define a data type composed of colors, for a primary color and a secondary color, etc. It is therefore possible to nest data types as desired.
What is it for? It allows, for example, modeling complex data from a web service and easily performing serialization and deserialization with data validation.
It is not intended for storing this complex data in Drupal. It is for manipulating it. To address the storage problem, someone in the audience mentioned having faced this issue and using a long text field to store serialized data and deserialize it when needed.
Writing automated tests for custom data types appears quite complex, as it is a very low-level concept.
Entity validation: the kick-ass road to data integrity
Before Drupal 8, validating data on a piece of content was done at the time of form submission when creating or editing that content. If the content was manipulated elsewhere, you had to handle that validation yourself.
With Drupal 8, validation now lives in the objects being manipulated. So even when outside of an entity's form, it is easy to call validation on that entity.
There are several levels of validation, each aware of the levels nested within it:
- validate the entire entity
- validate a list of values for a field of the entity
- validate a specific value of a field of the entity
- validate the data type of that value
Drupal association board meeting
Public meeting of the Drupal Association board. During the meeting, updates were presented on a number of topics:
- update on the evolution of tools on Drupal.org,
- update on the association's finances and the DrupalCon budget,
- update on the membership campaign,
- update on DrupalCon attendance figures,
- etc.
The presentation slides will be made public.
Launching online stores with commerce 2.x on Drupal 8
Presentation of the new features in this rewrite of Drupal Commerce. Having briefly tested Drupal Commerce a week earlier, I didn't learn much. It did confirm that the product page is now the page the visitor sees, with an add-to-cart button. No more need to go through a node for display.
The Drupal Commerce core will now be more complete: through better integration with the Entity API, allowing fields to be added and display to be managed on products, order items, etc. natively; and through the inclusion in core of all discount management functionality.
It was also announced that the first Drupal 8 site built through the Commerce Guys / BlueSpark collaboration launched that very day.
Offline first
Presentation of the use of service workers (an API available in modern browsers), allowing visited pages to be cached for use in case of disconnection or network failure.
An interesting presentation, but having already come across the Progressive Web App module, I didn't see much that was new and the "wow" effect had already worn off.
BOF
On Wednesday the 28th from 10:45 to 11:45, I presented the Webfactory module during a BOF announced just one hour beforehand. Someone from Aegir was very interested and was trying to understand how Aegir and the Webfactory module could work together.
Stand
I spent the rest of the time at the Smile booth, where we took turns so that everyone could attend the sessions they were interested in.
It was also an opportunity to hold a board meeting of the Drupal France association, since we were all present at the event. A welcome change from remote meetings :).
Conclusion
A very enjoyable and energizing experience. Being able to put a face to usernames known in the community is something I never get tired of.
Events every evening. The Community Welcome party on Tuesday evening aboard a boat was great. On Wednesday, A night with Drupal Commerce followed by the Freistilbox Happy Hour were also very enjoyable.
Thanks to the organizers, sponsors, and participants.
And thanks to Smile (gold sponsor) for sending me there.