Drupal Dev Days a retrospective
On the anniversary of my first experience with Drupal as a whole, last week I had my first experience with a Drupal convention.
Thanks to the generous acquiescence of Livelink's boss, I attended the Drupal Dev Days event in Barcelona last week.
Held in the Citilab building (previously the venue of DrupalCon Barcelona in 2007), the event was attended by approximately 300 people at its peak on Saturday when the majority of the lecture sessions were presented.
The focus was split between code sprints and sessions, with the former being held from at least as early as Tuesday in some cases (and unofficially carrying on well past everyone had gone home).
Among the sprints being held was the D8 Multilingual Initiative sprint. Gabor Hojtsy spent his time wrangling coders for all sprints, it seems, but provided persisent leadership for getting some serious work done on D8's language support and its translation interfaces. It's never going to be sexy but it's definitely something we all need eventually for international clients.
Another was the D8 Entity API sprint. Fago and Fubhy (and of course an army of others too numerous to mention) are spending a lot of time working on making the Entity API a lot more shiny at the moment, and their efforts will affect us all in time. From my time listening to their discussions it seems the core focus is on simplification and increased flexibility - something that I'm sure I'll appreciate on the day I finally give in and use Entities for something!
Other sprints that I did not find time to take a deep look at include ones looking at media/file handling in Drupal (please make it pretty!), improved mapping capabilities for D7 (I really should've got involved with this - my experiences building the Drupatlas would garuantee I have something to say and contribute), and improving Social Network integration beyond the fairly lackluster (but competent, of course) per-service integrations. Certainly Livelink will benefit from all the work being put in here.
On Saturday and Sunday the sessions themselves were held. Saturday had three tracks between 10am and 6pm, with a fairly interesting offering for everyone in each hour.
I started the day with "Designing and building for the editor experience", a comprehensive talk by Andreas Sahle of Wunderkraut on providing as great an experience to our content editors on the backend as we do the customers on the frontend. From small tweaks like showing the remaining character count right up to designging the whole node create/edit form, and a hundred small tips in-between for easing the pain-points, these slides are definitely worth reading.
Next up was "10 tips to run Drupal-based mobile & multi-device apps", given by Maxime Topolov of Adyax on the various mobile solutions in wide use and how they can be created in Drupal. Livelink has projects in both native apps and responsive websites in development so it's great to see other people in the Drupalshere really talking about this stuff and seeing how others are trying to solve the problems. The session was absolutely packed, with people eventually being turned away because they couldn't get in the door.
Other interesting topics from Saturday included two talks on performance - the first, from Rodrigo Alfaro, Antonio Almeida, and Pedro Gonzalez Serrano covering all the things to do when memcache/varnish aren't enough, whilst the second talk from Marcus Deglos covered how to actually get the memcache & varnish stack working in Drupal and what sort of performance gains we can hope for. Both were informative in their own way and something every site-builder will need to know eventually.
After a long day there was a beach party in Barcelona itself, but I was unfortunately much too tired both physically and mentally to drag myself down there. Which is a shame, because aparently I missed such crazy adventures as someone proposing to Angie Byron...
Sunday started with the aforementioned webchick telling the assembled Drupalers what we might need to know in preparation for Drupal 8. Specifics are somewhat light at the moment due to the lack of nailed-down changes, but the big winner here is the switch to Symfony at a core level. Specific "watch out for this" were light but there was a definite air of "pay attention now or get bitten in a year".
Sunday was a smaller affair - only two tracks covering 10 sessions, so there is less to talk about.
I started the day with "A sneak peek at Commerce Kickstart v2" by Bojan Zivanovic and Augustin Delaporte of Commerce Guys. As the title suggests, the focus of the session was taking a look at the impressive new features that the Kickstart distribution includes. And boy were they impressive! My core issue with the Drupal Commerce package was that the actual process of creating products with multiple attributes (colors, sizes, etc) was about as painful as it could possibly be. Happily, the Commerce Guys presented a solution to this in v2, along with better solutions to content search/filtering, order management, discounts, and pretty much every other part of what might be considered the ultimate e-commerce distribution.
The day ended for me with a talk by Javier Usobiaga entitled "Responsive Web Design: Everything has changed". It was a competent talk, and well-given, but I must admit to some disappointment. "Responsive design" as a method and as an idea has been with us for between 2 and 5 years depending on if you ask Ethan Marcotte or Apple, and it seems that every talk I see on it still has the same angle; that RWD is something new and scary and, to an extent, without solution. The problem of massively varied device formats and contexts is no longer new, and we have spent enough time looking at the monster under the bed to no longer be scared.
Talking about Drupal specifically, RWD is not entirely solved but we are starting to bear the fruits of 2+ years of development efforts. When we look at themes like Omega or Zen we have the basis for media-query based responsiveness, and through the use of proprietary systems or custom-code we can add source re-ordering responsiveness to that list. When we further take a look at what D8 provides us out of the box (and what we can include in D7 with custom/contrib modules) then we get for free things like ESI (edge-side includes) which have implications for both caching and reponsiveness. The days when massive device variation was a new problem is over.
I can only hope that future talks (as their is always one at any conference) can start moving forward from the "this is new" to "this is solved" one day, and that that day is soon. That is not to say the Javier's talk was not excellently done, "just" that the web development community as whole needs to move on.
Sunday wrapped up with a closing session in which (with good reason) everyone thanked everyone, and a group photograph of 300 geeks hiding from the sun (myself included). After that, it was just a matter of getting on a plane and trying to pretend like I didn't have work at 9am the next day...
All in, a great experience with great people about great things. A big thanks to all the organisers and speakers, a big hello to all the people I didn't speak to, and a hearty recommendation that if you can go to something like this, you do.