Dutch PHP Conference 2015

Back in June I was lucky enough to head over to sunny Amsterdam to give a talk & run a workshop at the Dutch PHP Conference.

I'd never run a workshop and this was my first time speaking at a conference (though I've presented at some local friendly meetups & hack days before).

Neither Dutch nor PHP are languages I know the first thing about. I'm not all that familiar with the PHP community, so I had no idea what tools & frameworks were popular (PHP equals WordPress & Drupal, right?) or whether the truckload of JavaScript I was about to unload with a nervous Australian accent would be useful to a Dutch PHP developer.

Of course, everybody was super friendly, the conference was really well organised and full of interesting talks and I had the pleasure of meeting loads of talented people from all over Europe!

Workshop: Hands on with the modern front end stack

Over the past year or so, my workflow has transitioned from being largely centred around the Rails Asset Pipeline and the default front end toolset that it provides - CoffeeScript, Sass, ERB templates & Sprockets' dependency management - to one centred around JavaScript with Webpack, Babel & React.

It can be a daunting stack to approach & setup for the first time, especially if you're not familiar with the JS ecosystem. I'd recently given the team at Envato a high level introduction, so I decided to run a workshop along those lines with the aim of helping people understand & actually start using these tools.

It turns out workshops take way more preparation than talks. Finding a balance between talking/slides & hands-on coding time for an unknown audience with varying levels of familiarity topic is tricky - I have a newfound respect for all the teachers out there!

I had a great day of JavaScripting with a diverse bunch of people, from Angular pros to designers to sysadmins who'd never written a line of JS. It was eye-opening to get out of my bubble where everyone has a MacBook - the JS world isn't quite as approachable when your primary dev machine is a Surface!

6 months is a long time in JavaScript, so some of this content is already out of date, but here are the workshop slides and coding exercises.

Talk: The UI is an Application

Most of my day to day work, blog posts, talks & side projects over the past couple of years have had a common theme: that UI code should be treated as real application code, approached with the same engineering mindset as we approach code that runs on servers.

I wanted to explore what happens when you go all in on this idea. Here's the talk overview:

The UI is no longer just a ragtag collection of templates, scripts & styles shoehorned in alongside "real" application code, but is now a rich, complex piece of software in and of itself.

We have a de facto standard language for UI development in JavaScript, yet too often our UI code remains tangled up in hamstrung templating languages, CSS preprocessors and whatever language or framework our back end happens to be built with.

In this talk we'll explore what happens when you treat your UI as a first class citizen, separating it from the rest of your app and replacing traditional templates & CSS with the real programming language you already know: JavaScript.

I'm super excited that just a few months later, none of this seems particularly radical. UI apps built from the ground up with JavaScript & tools like React are well on their way to becoming the new normal.

My talk was well received and I was pleasantly surprised at the appetite for all things front end at a conference for a server side language. The conference & community at large seem to have a nice overall focus on just shipping great, fast websites & trying out new methods of achieving that goal, rather than being hyper focused on PHP itself. I'd love to see more of this from the Ruby & Rails community (and in the past few months there have definitely been some encouraging signs!)

Here are the slides!

Between the dedicated front end track and the not-super-PHP-specific nature of the conference, I also got to see a bunch of really great talks. Some of my favourites were:

Overall I had an amazing time, learned lots and got to meet a bunch of really talented people (Belgians: the friendliest people on earth?). If you're thinking of either attending the conference or submitting a talk for the 2016 edition, I highly recommend it!

Big thanks to Martin, Joni, Robbert, Angela & the rest of the iBuildings team for having me & organising a fantastic few days!