I attended Laracon 2016 recently, and I was glad I went. Why would I, a Drupal Developer, go to a conference about Laravel, a seemingly unrelated PHP framework? A few reasons:
- It was in Louisville, KY. That’s where I live. We don't get many open-source tech conferences, which is sad because Louisville is a great host for conferences. Good venues, Midwest prices, Southern charm, and local restaurants to make the mouth water.
- Laravel is based on many Symfony components, just like Drupal 8, so there is some overlap.
- I wanted to support another open-source community and just see how they did things.
- High-quality names and speakers: Zeev Suraski of PHP, Fabien Potencier of Symfony, Evan You of Vue.js, and Ryan Singer of Basecamp were just a few. With a conference of just 500 people, the opportunity to bump elbows was greater.
It drew in people from all over the world. I made it a point to meet at least one new person a day during the afternoon mingling hours and ended up meeting people from Egypt, Canada, Nigeria, and Australia.
It was a tech-heavy conference, with lots of live coding on the stage, which is the public-speaking equivalent of skydiving without a backup parachute. Gutsy.
The conference offered only one track, and while that obviously limits your choices, if you aren’t sure exactly what you want to get out of a conference, you want your choices limited. Otherwise, you are overthinking and overplanning the night before, and it's hard to focus on a single session because you have serious anxiety about what you might be missing out on (the cool kids call it FOMO). It's nice to be able just to show up and take it all in.
All of the sessions were beneficial in some way, but for me, these were the highlights of the conference:.
Adam Wathan - Test Driven Laravel
Adam started developing an app with test-driven development, writing the tests first, then writing code that fixed the failures one at a time, step-by-step. Adam only allowed himself to write code when the code addressed a particular test failure. Quoting another author, he called it “programming by wishful thinking.” Another interesting idea he demonstrated was starting off with a broad functional test which acted sort of like an “outer loop” that could then drill down into more specific unit tests.
He also helped answer the question “Where do I start?” You want something that is simple, but cuts through your whole app and returns some results. Something that touches many parts but is not too complex. He used “Viewing a user’s tweets” as an example.
Jack McDade - Wizards, Lawnmowers, and Hovercrafts
Jack gave a fun talk and clearly loved being on the stage. Developers are creative creatures but how do we keep the creative juices flowing? Jack quoted one of my favorite authors, Brandon Sanderson, who, when asked his opinion on the hardest day job for an aspiring writer, answered: being a developer, because it draws on the same creative reserves. It’s hard to write after a day of coding. This is part of why writing documentation is such a struggle.
His advice—change perspectives (even if it means moving your desk a little bit) and ensure downtime—was not revolutionary, but was a good reminder presented in a skilled way.
Sandi Metz - Get a Whiff of This
Overall, the conference felt very unpretentious. It's a community and ecosystem that caters first and foremost to the developer experience, offering lots of hand-holding for beginners, coupled with a desire to prevent developers from getting bogged down in a swamp of configuration. To achieve this, they are more than willing to pull ideas from other areas (like .NET and Rails), and that certainly came through. Sandi Metz typified this perfectly.
First, she doesn't even run around in the PHP world, let alone Laravel—and yet she was invited to speak. The community clearly loves Laravel, but they don't suffer from an excessive pride in their toolset.
Second, her talk on code smells was one that could have quickly gotten lost in some advanced weeds but remained bright, funny, and succinct while delivering a ton of value. Every developer, beginner to experienced, could have taken something valuable from it. I know I did.
Ryan Singer - Design: Case Study
Ryan’s talk had echoes of "The Design of Everyday Things" and probably a ton of other material, but he has internalized and thought through so many problems and solutions that his voice was one of personal experience.
He reiterated that design is not the skin, but how something works. He walked through a short case study in discovering affordances and user flows, which doubled as a great advertisement for the iPad Pro, and then summarized his "tower of interface design" comprised of:
- Domain experience
- 2D Layout
Based on the number of questions at the end, and the crowd surrounding him after the conference, this talk resonated with a lot of people. His presentation camped at the intersection of development and design, which is a problem space our team at Lullabot thinks about a lot.
What Would I Change?
Laracon might benefit by adding sprints or hackathons. After parties are ok, but for an introvert like me, that's not how I get to know people. I get to know people by working with them, struggling through shared problems, and then relaxing at a dinner table over a shared meal.
Having a sprint of some kind before the conference (and maybe one after) would have made a good experience even better. First, it would have allowed people to kick off the conference by beginning to form meaningful relationships or renew old friendships, and this would make the rest of the conference more enjoyable. Second, sprints would give outsiders and newbies a good idea of the type of problems the community is grappling with.
Overall, I think I would go back if the opportunity comes up again. Especially if it happens to be in Louisville.