When DrupalCon came to Sydney
A DrupalCon is one of the biggest events on any Drupal developer's calendar, and in February 2013, it came to Sydney for the very first time. We've had numerous DrupalCamps and Drupal Downunder events in previous years, and even some Drupal South events across the ditch, but we haven't really seen anything that covers the scale and gravitas of an official event. Now that I've actually been to one, I'd like to share my impressions of it.
CrossFunctional was one of the platinum sponsors for DrupalCon Sydney 2013, so we had a lot to do in the leadup to the event; writing things, preparing marketing material and other such stuff. It was a lot of hard work, but it was pleasing to see it all come together on the day.
One of the neat things about any major Drupal get-together was being able to meet up with Drupal developers, business owners and hackers from all over the place. According to the closing plenary, about 20% of attendees were from overseas, from places including Japan, Scandinavia, India and of course America and New Zealand. I was even able to meet some of CrossFunctional's remote developers, who I had never even seen in person until now. We met up with a lot of people over those four days, and I assure you that if we crossed paths, it was a pleasure to meet you.
I was fortunate enough to attend the training day, and Jeff Eaton and Addison Berry delivered a great overview of the development process, delving into each step as much as the time allowed. They discussed all kinds of things including project planning, estimates, keeping your team on the ball, best practices for builds, testing strategies, content deployment and a lot more. I'd highly recommend this session to any developer that wants a good top-down view of the entire process, or a project manager that wants to step their game up.
There was a fantastic array of presentations on offer, and I decided to make the most of it by covering items across as many of the tracks as possible. I ended up watching presentations about the REST layer in Drupal 8, the new Twig theming engine, strategies for structuring content, front-end accessibility, distribution of Drupal content via APIs, and also a history lesson covering every single major version of Drupal, going all the way back to when it was called Drop. We also had some distinguished people delivering keynotes, including Dries (the guy who started the Drupal project) and Senator Kate Lundy, who spoke on how open technology not only offers the possibility of improved interaction between the government and its constituents, but can also assist in modifying legislation so that it is better suited to its purpose.
I got a lot out of two separate presentations in particular that centered upon content structure and deployment. Presented respectively by Jeff Eaton from Lullabot and Tarrant Marshall from SBS, they both described the similar needs they had as organisations; to develop a way to get content out to multiple sites and viewing platforms, while preserving the intent of the content.
Jeff discussed how Lullabot had built an API for the NPR radio network, from which content was served out to different sites, aspects, devices and readers, and how they had carefully set up their content types on the API end to allow their editors full control over the content without compromising how it would display at the user end. This effectively meant building fields for special purposes; setting up image fields in special ways, enforcing character limits on some fields and metadata on others, and carefully rebuilding the content to fit those restrictions to ensure that it could be delivered by this API pretty much anywhere they wanted.
Tarrant discussed how SBS had a similar issue, but it revolved around a different method; sharing content between different sites, including taxonomy terms and other metadata. They were still using Drupal as the CMS, but opted for a remote data store backed by Symfony and MongoDB which allowed them to store unstructured content in a way that could be queued for distribution to all their other websites. The solution seemed robust and elegant, and the way they had made it possible to effectively rebuild their content for any other site on the network really impressed me.
Another of the presentations that I really enjoyed was hearing Morten's Angry Themer talk. This basically comprised of him ranting for 45 minutes about the issues in Drupal's theming system, and ways in which it can be made better. I wouldn't be the first to compare him to Bill Hicks, full of righteous anger and humour aimed at breaking through to people and convincing them.
The crux of his complaints revolved around the complexity of Drupal's theming system, and the overloaded markup that Drupal produces. He did a great job of pointing out ways to clean up markup, mentioning the Mothership theme, Fences and Display Suite. He then used that to segue into discussion on the Twig initiative, the plan to introduce the templating engine of the same name into Drupal 8. He gave plenty of reasons why it's a logical course of action for Drupal (better templating, industry support, basis in Symfony project) and encouraged people to get behind it; with the feature freeze so close, it's becoming a pressing matter for people who want to see this happen.
On the Friday, Ryan and I gave a presentation covering a project we've been working on. This wasn't my first time speaking at a Drupal conference, but it was my first time talking about a project that I'd been involved in. I hope I acquitted myself reasonably enough, Ryan did a stand-up job finishing everything up and giving his slice of the presentation, and we got asked a lot of interesting questions about what we'd done. We've found Drupal Commerce to be a really versatile piece of kit to work with, that integrates really well with Drupal, and we're looking forward to using it a lot more.
The final day was spent in the post-convention code sprint, an all day hackfest where the people who have decided that the convention isn't over yet get together and try to hammer through the issue queue. The CrossFunctional team was there, taking on tasks including documentation, development, theming and working with Drupal developers across the world.
Having had my arm figuratively twisted by Morten the day before, I opted to join the Twig sprint. There, I joined forces with other devs including a bunch of the local sydney community developers, John Albin, Jen Lampton and more, as we attempted to prepare Drupal 8's theme components for translation into Twig templates. After a few minor setbacks, we managed to start translating theme functions, and some of the other team members got their patches committed courtesy of Webchick and the more senior sprint members. I spent a while working on Aggregator module, and after a bunch of futzing around with it, concluded that the module as a whole really needs work to bring it up to modern standards, which in turn would really help with the Twig conversion. Once I find some free time, I should be able to put it into helping to sort out Aggregator a little bit more.
Of course in between all this, there was a lot of meeting people, chatting, drinking and doing all the other stuff that happens at large Drupal events, although there wasn't quite so much hunting around for wifi this time around...
On a personal note, I'd like to thank everyone who downloaded and used the DrupalCon Sydney 2013 Mobile App. I put a lot of work into this app, and while it wasn't perfect by any stretch, I was still pleased by how it made it possible for people to have another source of information about the convention on hand. I'd especially like to thank everyone who gave feedback on it, even people that it didn't work properly for. I know of a few people out there who would have liked a particular feature that we couldn't implement (I would have liked to integrate it with the schedule on the site, too). I'm also sorry that I wasn't able to prepare a Windows Phone version in time; we found that translating the existing codebase over would have needed a lot of work and we already had a lot on.
This isn't to say that I'm not interested in doing Windows Phone apps, or even apps that take better advantage of the platform they're on. I'm looking forward to more opportunities to develop mobile apps, especially ones focused on Drupal, so I'm hoping to be able to take everything I've learnt and turn it all into something better.
I'm really looking forward to the next major meetup in Wellington next year. See you there!