John Kary

Last week I delivered a talk Rethinking Loops at DrupalCon 2016 in New Orleans. DrupalCon is a HUGE conference, with over 3000+ attendees. Easily the largest conference I have attended, let alone spoken at.

The conference records all sessions and posts them within hours of the talk. Very impressive turnaround time!

My session is below and slides are available: Rethinking Loops slides

Rethinking Loops

Being the last session, on the last day, where attendees also had the option of attending a session by the creator of Drupal, I was a little worried if people would even show up…

I walked in fifteen minutes early and the room was already 75% full, with more filing in after me. Relief. I've heard other speakers grow more anxious the more people are in the room. Not me. I feed off of it. Especially a small, intimate, packed room.

A packed room instantly validates what I'm speaking about and gives me confidence that what I have to say is important, insightful and valuable—a feeling I've struggled with most of my life.

Attendee Feedback

DrupalCon facilitates speaker feedback thru their website. I always appreciate feedback so I can improve my talk and overall become a better speaker. If you have any feedback after viewing the talk above please ping me.

Attendees who were gracious enough to submit feedback all gave very positive remarks. Some of the highlights:

One of the very best sessions at DrupalCon this year, and one of the best speakers I've heard. I didn't completely agree with the speaker, but I love seeing different ways of thinking.
Overall excellent presentation. Probably the best one I saw (I only missed 3 slots)
One of the most valuable sessions I attended. Can't wait to pass this on to my colleagues at our next code review.
Very smooth presentation. Even at 2pm on the last day of conf. Had me wide awake and interested. I wish more sessions were like this.

Attendees and other speakers have specifically raved about how my talk uses pre-recorded video to demonstrate refactoring code in one segment. It's actually ten separate videos across ten separate slides, but with a few slideshow and production tricks it appears seamless when talking over it. Here's the exact point in the recorded session where I show this. Maybe I'll do a future post on how to produce it.

Social: First-Time Attendee Social

Because of its scale the conference does well to acclimate first-time attendees with its First-Time Attendee Social the night before the first day of sessions.

We were handed Bingo cards where each cell described a person we needed to meet. Things like "From the East coast" and "Knows what a BOF is" and "Member of the Drupal Association." We were ushered into an intentionally small area, given free beer, water and cookies, and bounced around like pinballs meeting each other and morphing between conversational groups. The format worked well and I talked with several people again throughout the conference.

Coincidentally I met a person who lives in the same city as me (Lawrence, Kansas, population ~90,000) that's involved with publishing Drupal Watchdog, a magazine with articles interesting to Drupal users and developers. Funny we had to travel all the way to New Orleans to meet each other.

Social: Pub Crawl

One of the attendees took it upon himself to loosely organize a pub crawl after the First-Time Attendee Social. I like beer, and meeting other developers over beer, so I knew before the event I'd be going.

Three of us met in the lobby to walk to the first stop, The Courtyard Brewery, about a half mile away. We arrived and quickly saw groups of other conference attendees scattered about. Many attendees I talked with worked in higher education, mostly state universities, while others worked for agencies with quick turn around times. The groups intermingled for an hour before heading to the second bar, The Avenue.

The group eventually ended up out back on the patio, and after meeting a few other people that work with remote development teams overseas I had to call it a night about 10:00pm. I still had my backpack/laptop with me and I didn't want it to get too late, knowing I had a half-mile walk between my cable car stop and where I was staying. Walking by myself I simply didn't want to be a target for theft. I hoped the cable car right outside the bar on St. Charles street and made it home without incident.

Event: Pre-Note

Tuesday, the first day of conference sessions, began with what can best be described as musical theater. The "pre-note" was endlessly hyped at the opening ceremony and first-time attendee social, so I was curious to see what it was all about. At 8:00am I felt I sacrificed a little sleep to get there to see it and wanted it to be worth my time.

My skepticism peaked as the event began with some awkward crowd-rousing "I can't hear you! Are you excited?!" type banter from the first people on stage. But by the end I realized it was absolutely like NOTHING I had ever seen at a development conference and that many other tech communities could learn a lot from this community.

Several prominent contributors to the Drupal community sporting intricate headdresses and shiny skin-tight full-body leotards took the stage, their costumes leaving nothing to the imagination. The actors' lines and musical performances were delivered with as much gracefulness as a high school drama, while their individual singing voices were surprisingly good—an obvious reason they were selected to lead the performance.

As the performance wore on and the other casts of characters were introduced and performed their dance and musical numbers, all with equally cheesy lyrics and all spoofing classic pop culture songs, I realized something…

This performance wasn't trying to be anything. Instead it was the coming together of the community's most prominent figureheads and splaying themselves in a highly vulnerable and slightly embarrassing light. All for the sake of making us smile, laugh, and root for them. It reinforced how everyone attending, whether speaker, volunteer, core committer, or simple attendee, were all simply people. A reminder that those people are not their titles within the community, nor their contributions to the ecosystem. They are people just like you and me.

The pre-note was a microcosm of the Drupal community: people from widely varying backgrounds willing to accept and embrace anyone wishing to take part. And most importantly a community that doesn't take themselves too seriously. It's truly rare to see all of these characteristics within one community set within an industry conspiring in favor of stereotypical ultra-serious, ultra-assertive, yet often ultra-shy geeks.

I must give special mention to Larry Garfield's solo dancing and singing number. I've met and talked with Larry several times at previous conferences, and before the pre-note I would've described him as a vocal but reserved person. Maybe he's a lot like you. But after seeing him get up on stage wearing only pants, his signature black vest yet no blue undershirt, then singing and dancing all over the stage to the tune of "I'm Too Sexy," I have an even higher esteemed respect for everything Larry does for the wider PHP and Drupal communities. There's simply nothing he can't and won't do.

Here's the video stream beginning at Larry's performance. He's absolutely a much better singer and dancer than me. Thank you for everything you do, Larry.

Sessions

With three days packed full of sessions it was sometimes hard to decide which talks to attend. Two sessions I attended stood out in their relevancy to modern web application development:

GraphQL Meets Drupal

GraphQL is a game-changer in querying for data. This isn't the first time I'd seen GraphQL, but it was the first time I'd seen GraphiQL, an in-browser tool for building and executing GraphQL queries. Basically it introspects the GraphQL schema from a server and provides auto-complete to build a query, then you can execute the query and see the results instantly.

The speaker also tailored how he continues to work on a Drupal module to expose Drupal data via GraphQL. It sounds like the project is at a minimum viable state and has room for more contributors.

I love the idea of GraphQL and believe it can supplant REST as the best way to expose data, at least for web applications:

Elm - Frontend with Guarantees

Elm is a functional language for rendering browser-based user interfaces. I have been hearing about it in bits and pieces over the last year and I continue to be enticed by it.

Code speaks louder than any description at this point, so check out this basic counter built with Elm.

Elm is statically-typed and compiles to JavaScript. That might sound terrible, and it probably is. But what's awesome about it is that data only flows one way within an Elm program: from its source of truth (model) downward into the components whose rendering depends on it (view). If data changes the component is re-rendered again. No need to inspect the current state of the UI component and decide how to change it. The data simply flows thru the render pipeline again to get the new result. If this idea sounds just like those in React that's because it is.

One-way data flow and re-rendering components will be core features of the future of building user interface applications on the web. Distributed state is tough and we're only now seeing quality languages and tools for managing it. Elm is a language tailored to that paradigm.

Event: Drupal Trivia

On the last night of the conference, after the closing keynote, and after the event mourning the death of Drupal 6, there was a trivia night held at the World War II Museum in New Orleans. What a fantastic venue! Several planes from the World War II era hung ominously suspended above 100 small round tables.

Each table composed of 5 people made up a team. The trivia panel entertained us with five rounds of trivia questions, ranging from very Drupal specific ("Name the date when Drupal 8.0.0 was released. NO, you do NOT get extra points for giving the exact UTC timestamp or its git SHA1, you nerds!") all the way to nuanced browser questions ("What is the maximum number of stylesheets Internet Explorer 10 allows? Is it A, 1023; B, 4095; C, 8190.") or needing to identify a sponsor company's name by only its logo.

Trivia was a very fun and lively atmosphere, and reminded me of Jeremy Mikola's PHP Jeopardy events at other PHP conferences. More conferences should do this because we're all geeks—we love sharing the small tidbits we pick up about our favorite languages, frameworks and technology. Trivia night gives us a chance to be rewarded for this useless knowledge all while growing our camaraderie of dissenters.

Conclusion

Most conferences I've attended put most of their emphasis on the talks. What's different about DrupalCon is their focus on community and events. Yes the talks are good, but it's all the supplemental activities packed into the schedule that opened my eyes to what's possible during a conference:

The Drupal community has blown me away. I'm astounded at their inclusiveness and openness across personalities and technical abilities. It's no wonder this conference and its community are one of the most diverse tech communities still going strong.

I've long felt Drupal 8 could take the Drupal ecosystem to the next level. The momentum of the Drupal ecosystem over the years has now met with more widely adopted technical practices of the greater software community. It has matured into a rich platform ready to move into the enterprise professional development market. After this conference all of those feelings were confirmed.

Professionally I'm in a fantastic spot to benefit from developing on top of Drupal 8. I've been using the Symfony components that power Drupal since their inception 5 years ago, and since then have been building web applications using all the principles and tools Drupal has only recently adopted. There is tremendous immediate opportunity in the Drupal ecosystem for experienced PHP developers to find high-demand, well-paid work. It's in my best professional interest to learn more about exactly how people are using Drupal today, and begin consulting with teams wanting to adopt Drupal 8.

Attending and speaking at this DrupalCon solidified for me that the Drupal ecosystem is one of PHP's biggest assets and the Drupal platform is a very viable solution for certain types of software.

It's not only the technology that will continue to keep Drupal relevant for the coming years but its tirelessly passionate community of diverse technical talent. Having embraced a more modern and technically sound infrastructure in the last few years Drupal is now at the perfect cross-section of technical potential and bolstering community to foster huge growth opportunities in the coming years.

Thank you DrupalCon organizers, volunteers, speakers, sponsors and attendees for making my first DrupalCon truly memorable. I look forward to seeing you again soon!

comments powered by Disqus