About two weeks ago, there was this year’s awesome WordCamp London. Overall, it was my thirteenth WordCamp, the tenth time speaking, and the second time leading a contributor day table. Also, WordCamp London was station two of my ongoing four WordCamps in four consecutive months thing. 🙂
I really enjoyed going there, because of the WordCamp itself, but also (and actually even more) because I was able to meet some of my new co-workers for the first time in real life since having joined Human Made earlier this year.
Friday: Contributor Day
The WordCamp weekend started with a contributor day where people could join one out of eleven Make teams.
Right now @GaryJ is kicking off the #WCLDN Contributor Day. We’re looking forward to contribute to the #WordPress Community, Core and @wpcli teams today! pic.twitter.com/cImOFgMVHb
— Plesk (@Plesk) April 13, 2018
I had been asked beforehand if I wanted to lead the table for something special and brand-new: WordPress Coding Standards (WPCS). And I did! 🙂
Introductions and Groupings
After the initial welcome by Gary Jones, all table leads gave a quick introduction to their individual team and what the plan for the day could look like.
Our @felixarntz leads the #WordPressCore team today, at @WordCampLondon! #TeamYoast #WCLDN pic.twitter.com/obTiw7m0fV
— Yoast (@yoast) April 13, 2018
The best intro was Alain Schlesser stating that the number one reason for joining the WP-CLI table is using GitHub, and not Trac. 😀
WPCS Table (Session 1)
I started the first session at the WPCS table with a quick round of introductions. After that, we had a look at the WPCS Composer package, and how to use it.
Learning loads of #WPCLI stuff at #WCLDN contributor day, thanks to @schlessera pic.twitter.com/IY8CFK3Fgm
— Michael Burridge (@michaelburridge) April 13, 2018
We then started tackling coding standards violations in WordPress itself, which was the plan for the whole day.
An Introduction to the WordPress Coding Standards
Initially, I wanted to start the day with a short presentation about coding standards in general, and in the WordPress context. When I showed my slides to Gary, he liked the idea of having a proper intro that much that he talked me into doing this as a regular talk for everyone interested in this topic; this was not even 36 hours before contributor day. 😉
To be honest, I was a bit overwhelmed by the interest in this. In front of about 30 people, I explained the What and Why in terms of coding standards, and showed how to actually make use of them.
Learning best #WordPress Coding Standards with @thorstenfrommen at #ContributorDay #WCLDN #WordCamp pic.twitter.com/V3AXEAzSpP
— Angel Zinsel (@AngelZinsel) April 13, 2018
As always, my slides are available online.
Lunch
During lunch break, I ended up at a nice sofa group, together with Simon Dickson and some friends from Yoast. Also, Remkus de Vries made me so mad for not having been to WordCamp Oslo, where they did a Fifteen. Minutes. Sleigh. Ride…! 😀
WPCS Table (Session 2)
After lunch and networking, we continued to fix coding standards violations in Core.
Closing Reviews
All in all, it was a very nice and successful contributor day.
Team leads are sharing activities and achievements with the community 🙌 #ContributorDay #wcldn pic.twitter.com/FFuCLi1RZM
— WordCamp London (@WordCampLondon) April 13, 2018
At the WPCS table, we ended up pretty good, I’d say. More than 60 violations fixed, two new contributors, and definitley having sparked quite a few peoples’ interest in coding standards in general.
A huge thank you to everyone at the #WordPress Coding Standards table at today's #WCLDN Contributor Day.
Stats:
– 7 Trac issues opened
– 8 files improved
– 54 errors fixed
– 9 warnings fixed
– 2 patches committe already!
– 2 new contributors!👏👏👏👏👏@WordCampLondon
— Thorsten Frommen (@thorstenfrommen) April 13, 2018
That’s not all too bad, right? 😉
Volunteers Social
In the evening, there was a social for all the volunteers—including organizers, speakers etc.—and it was great to catch up with some of the people I hadn’t seen at contributor day before.
Even though the two closest speakers—read: loud speakers 😉 —had been killed (as requested by us), the music was damn loud. Talking was possible, but pretty much tearing up one’s throat/voice.
Saturday: WordCamp Day 1
Now, WordCamp day—yay! 🙂
For three years, I wanted to go to WordCamp London, but it never worked out. This year, where I just joined UK-based Human Made, it did work out, and I am so happy about that.
Opening Remarks
Lead organizer, and colleague of mine, Ana Silva kicked off WordCamp London in a jam-packed great hall.
Opening remarks just started, @AnaFranciscaS welcoming everyone at #wcldn 🤗 pic.twitter.com/70DEnNEgcv
— WordCamp London (@WordCampLondon) April 14, 2018
I always and only heard good things about WordCamp London, and I cannot echo these enough. The whole event was so damn well organized! If not experienced beforehand already, you would learn about that during the informative and entertaining opening remarks.
This is awesome. This is a key part of @miss_jwo’s legacy and it’s so good that the #wcldn team have continued to make the event so accessible. 👌 pic.twitter.com/mVyP9aaHow
— Ross Wintle (@magicroundabout) April 14, 2018
The single-most awesome thing of WordCamp London was it being highly accessible and, in general, inclusive. Way to go!
How to Sustain Long-term Contributions to WordPress Core
The first talk that I attended was Felix Arntz sharing his journey from being a developing user of WordPress to being a Core Committer and maintainer of multiple components.
Mr. @felixarntz getting ready to talk about How To Sustain Long-Term Contributions to WordPress Core #WCLDN pic.twitter.com/p5L6aQbRDC
— Remkus de Vries (@remkusdevries) April 14, 2018
The gist of the talk was that everyone can (significantly) contribute to WordPress as a whole, and that it gets way easier and successful when people are aware of walking the tightrope of being both patient and persistent, and when they immerse in both the WordPress philosophies and all the happenings (e.g., regular meetings).
I found it rather interesting that most of the important stations in Felix’s journey were marked by WordCamps. Great to tell people something like that at (one of) their first WordCamp(s). 🙂
Accessible Design
The second talk was one that I was really looking forward to; and this was for several reasons. Maja Benke—a familiar face at several European WordCamps—talked about designing websites with accessibility in mind.
Now at #WCLDN: @WP1x1 with a bridge talk on Accessible Design.
// @WordCampLondon pic.twitter.com/pOrjy8cM0u— Thorsten Frommen (@thorstenfrommen) April 14, 2018
Having been Maja’s mentor for WordCamp London, I already had seen earlier versions of her slides, and, of course, we also talked about some of the things she wanted to share in her talk. Now enjoying the live version of the talk was fantastic. And Maja did a great, great job at that, as you can read in several posts all over the web. 🙂
Maja Benke presenting on Accessible Design at #WCLDN. Here she's showing how differently shaped points on a graph can help those with poor vision or colour blindness. #a11y pic.twitter.com/B8YWfgxGOt
— CoolfieldsConsulting (@coolfields) April 14, 2018
It was also nice to (over)hear people—a lot of people, actually—talking about how they liked the talk, and how it will or even did change the way they will approach website designs in the near future. Win!
Networking & Lunch
During lunchtime, the sun was shining, so happy folks were sitting in the courtyard, eating, talking, relaxing. Me too.
Lunchtime at #WCLDN. @moorscode is relaxing 😎. pic.twitter.com/tmHMuS4ShL
— Anton Timmermans (@atimmer10) April 14, 2018
Also, it was really great to talk with some of my new colleagues, including my boss, Tom Willmot. 🙂
Building Scalable Enterprise Applications with WordPress
For dessert, I treated myself to some MVC. 😀 No, that’s not Milk & Vodka Chocolate. It’s Model View Controller.
Elliot Taylor talked about moving away from all-procedural PHP code to enable an easier and at the same time better development and maintenance process, especially for enterprise-level projects.
Packed house for @raisonco talk – definitely bringing a bit of @WordCampBTN Brighton to London with that shirt mate 😎 #WCLDN pic.twitter.com/LWGA2fv5pu
— Tom Chute (@tomcchute) April 14, 2018
Now, I’m a big proponent of OOP—an advocate even. In case you are wondering, this stands for object-oriented programming, which the MVC design pattern is a part of. And yet I had mixed feelings about the talk. I mean, it was both entertaining and informative. However, I did not really resonate with the information shared.
First of all, MVC is not the silver bullet. There are a whole lot of other OOP design patterns that might be even more useful and/or applicable. Also, WordPress just does not allow for MVC all over. It does make sense here and there, yes, but with limitations still. And there are structures—for example, meta boxes or widgets, to only name a few—that you simply cannot really match with the MVC pattern/paradigm.
Then, I didn’t find the code examples (or rather: the real-world problem that the code tried to solve) good. I know, it is hard to find (or construct) code examples that are both easy to understand and still make sense. In this case, the inner workings of the code itself as well as how MVC was applied did not feel right.
Lastly, I like composition way better than inheritance (which is what was exercised in the examples). But yes, this is partly a matter of taste (or experience).
That said, when I have time, I will have a closer look at ProdPress, once it is open-sourced. I hope to get some more insights into what it will bring/allow, and maybe also provide better and potentially more valuable feedback…
😴 Sleep
After the talk, I went back to my Airbnb to offload all the swag and stuff that I had been carrying around all day long. That included two brand-new and awesome Human Made hoodies that my colleague Zoe gave to me! 😀
I had a pretty bad headache for most of the day, so I decided to rest a bit, and then go back for two more talks, and the social. Well, … resting turned into sleeping, and the bit turned into three hours, so … yeah, I really was rested and refreshed after that, and ready for the evening. 😉
Saturday Social
After the talks of the first WordCamp day, there was an evening get-together, often called after party. Spoiler: It was amazing!
The social was set out to be a no-screens-allowed board games evening. People were asked to bring their favorite multiplayer games, so there was lots of Jenga-ish ones, Backgammon, card games and more.
Live from #WCLDN: Jenga-Challenge with @IceableMedia and @javorszky pic.twitter.com/bTW0sufgwa
— Carole Olinger 🤘🇪🇺 at #WCAsia (@CaroleOlinger) April 14, 2018
Oh, and I learned pool. 🙂 OK, OK, it’s not really that different from billiards, which I used to play somewhat regularly. But I never played pool before, so it was nice having two colleagues of mine teach—and lose against—me. 😀
Out of all the things I thought I'd learn at #WCLDN backgammon wasn't on my radar @hanopcan @robgeorgeuk @HelenHvarley @Joffff pic.twitter.com/yoG6wzEuhW
— Lucy Sloss (@lucysloss) April 14, 2018
The party also had food that was quite OK, and there was the best after party music ever. Why? Because you almost didn’t notice, and thus were able to have nice conversations. For example, a pretty unexpected, but enjoyable, genuine and diverse one with Kerry Manning, who was a first-time WordCamper. When I was chatting with Felix Arntz (and Jonny Harris, who was just taking a call a few steps away from us), my colleague Jenny Wong approached us, dragging along Kerry. Jenny was like “Hey, hi, so this is Kerry, and this is her first WordCamp. You are nice people, so … Kerry—Thorsten—Felix. Have fun!”. Then she strolled away. I don’t know how that came to be, but I found it just great. 🙂
Sunday: WordCamp Day 2
The second and last WordCamp day didn’t go exactly as I thought it would, because, in the end, I did not even attend a single talk.
Stuff
The first slot didn’t really have anything for me, so I attended the hallway track. I had lots of conversations, and time flew by so fast that I actually missed Zac Gordon’s “workshop” talk by about fifteen minutes, and decided not to go anymore. I was relieved when he later told me that it was based on parts of his Gutenberg Development Course, which I already know pretty well.
I had also had some good discussions during the lunch break, when the next talks started, I decided to go to the green room to prepare the slides for my talk. I had them pretty much ready, but wanted to fine-tune a few slides, and also integrate two modern JavaScript code examples and according unit tests.
Then, I also wanted to prepare a repository with code examples and tests included in my talk, completely documented and set up for people to use and learn from. This took quite a bit of my time away, and I still don’t know if this was worth it. Stars (or forks) on GitHub don’t give any indication it was. 🙁
One large coffee down, pit stop at the toilet, and then I went to the stage for my talk.
An Introduction to Unit Testing (for WordPress)
I think I submitted three or four topics for WordCamp London, and the accepted one was an introduction to unit testing. I already gave a one-hour workshop last year at WordCamp Vienna, and I will be giving a three-hours workshop at this year’s WordCamp Europe—which I am absolutely excited about! Besides that, I am pretty much into testing in general.
Final talk @WordCampLondon 😩 @thorstenfrommen a certified PHP engineer, web development professional and tester presents https://t.co/fdGvwxWe4A #WCLDN #webdevelopment @HeX_Productions
— Zara Gemmell (@ZaraGeeUK) April 15, 2018
I started with a shallow introduction to software testing as well as possible reasons for doing it. Then, I stated that people referring to testable code most probably always do it in the context of unit testing—so it is actually unit testable code. This led to the main part of the talk: unit testing—where is it, what is it, and why is it…?
Last talk of the #WCLDN this year, Unit testing for WordPress by @thorstenfrommen pic.twitter.com/jOKVFdKGN3
— ᴍᴀᴛᴛ sᴇʏᴍᴏᴜʀ (@MWSeymour) April 15, 2018
After a high-level overview of unit testing in general, including its classification in terms of test level, and testing methods and techniques, I explored and explained different possible units. Then, I focused on one of the key principles of unit testing: testing in isolation. What is it? How can it be done? And what is this mocking that pops up here and there?
Now in Track A: @thorstenfrommen presenting an introduction on Unit Testing for #WordPress. #WCLDN pic.twitter.com/ge3JcKx6zy
— WordCamp London (@WordCampLondon) April 15, 2018
I showed quite a few code examples and possible according unit tests, which you can all find on GitHub. This included both PHP and JavaScript, and started from plain functions without any dependencies, over object methods, with and without injected depencies and/or global or external functions, climaxing in React code examples, which could be part of your Gutenberg-aware plugin.
Brain Monkey by @gmazzap getting some love by @thorstenfrommen at #WCLDN pic.twitter.com/8683yqTBs3
— Gary Jones (@GaryJ) April 15, 2018
I concluded my talk with a reference to Eric Elliott’s article about five questions that every unit test has to answer.
Thank you @thorstenfrommen for this great bilingual intro to unit testing in both PHP and JavaScript! #WCLDN pic.twitter.com/xbe7c4BFha
— Iceable 🇱🇺🇪🇺 (@IceableMedia) April 15, 2018
Please find my slides online.
Closing Remarks
So, that was WordCamp London! Oh, this was fun!
Oh NO! It’s over….. #WCLDN pic.twitter.com/njPHfWux1p
— Karin (@YoastKarin) April 15, 2018
I will definitely come back as soon as it’ll happen again—which may or may not be next year already.
https://twitter.com/anca/status/985540326218715136
Drinks
After leaving the venue, several people went for drinks and pizza at a tavern where people have been the last years. It also had a sign claiming they served good beer. So, what could go wrong!? 🙂
Very promising British Tavern 😉👌#WCLDN #Afterafterparty #whereiscarl? pic.twitter.com/QqdJxeOXjo
— Carole Olinger 🤘🇪🇺 at #WCAsia (@CaroleOlinger) April 15, 2018
It was a nice and casual get-together, concluding WordCamp London 2018.
Summary
I am so happy to finally have made it to WordCamp London! In case you, too, thought about going there, but just did not so far, do it the next time you can. The whole event is of such a high quality, it literally is the next-best thing after WordCamp Europe.
Have you been there too? How did you like it?
Leave a Reply