Dan Q found GC9MY4J IJtunnel

This checkin to GC9MY4J IJtunnel reflects a geocaching.com log entry. See more of Dan's cache logs.

My work team and I have been meeting in Amsterdam, but this is our “afternoon off” so we’re going to the maritime museum. I’m not convinced that the person I found was particularly beautiful, but I appreciated the hint anyway! Dragged one of my teammates along. Greetings from Oxfordshire, UK (and around the world!).

Five men in thick coats stand at the entrance to a museum.

Five men in thick coats stand at the entrance to a museum.×

Dan Q found GCA7Q4A Elephant Parade

This checkin to GCA7Q4A Elephant Parade reflects a geocaching.com log entry. See more of Dan's cache logs.

Big thanks to the cache owner for their note, letting me know that the cache location is still accessible. Somehow I’d not seen the obvious route. Followed a family of ducks and soon found the cache location. So excited I could jump for joy.

On a tree-lined canalside footpath, Dan leaps theatrically into the air as if in incredible excitement.
In fact, I did!

FP awarded in part for the lovely cache but mostly for the attentive CO who posted a note so promptly. TFTC!

On a tree-lined canalside footpath, Dan leaps theatrically into the air as if in incredible excitement.×

Dan Q found GCA1JJ5 Gemaal Mercatorstraat

This checkin to GCA1JJ5 Gemaal Mercatorstraat reflects a geocaching.com log entry. See more of Dan's cache logs.

My work colleagues from around the world have gathered for a meeting at a hotel near here. I woke a little early this morning and so I decided to come out and try to find a couple of geocaches before our team meeting starts.

After failing to find nearby GCA7Q4A “Elephant Parade” owing to construction work, I was hopeful of a find here. The coordinates put me exactly on top of a likely hiding place, and with a little exploration (and some pretending to tie my shoes!) I had the cache in my hand. SL, TFTC.

Dan, his hand cupped to his ear, listens closely at the green-painted door of a water pumping station.

Listened for water pumping but couldn’t hear any over the traffic noise, I’m afraid! Greetings from Oxfordshire, UK.

Dan, his hand cupped to his ear, listens closely at the green-painted door of a water pumping station.×

Icebreakers – Heraldry and Compairs

I’m in Amsterdam for a meetup for my new team at Automattic.

A group of people dressed as robbers (with masks covering their faces and automatic weapons in their hands) pose menacingly in the lobby of a vault.
As you can see, a lot of serious work has been taking place.

When we’ve not been out tackling escape rooms, finding geocaches, and eating curry, we’ve been doing a variety of activities to help solidify our new team’s goals, priorities, and expertise: y’know, the normal things you might expect on a company away week.

I volunteered to lead the initial session on our first day with a couple of icebreaker games, which went well enough that I’m inclined to share them here in case they’re of any use to you. The games we played are called Heraldry and Compairs. Let’s take a look:

Dan stands with four other men in front of a projector screen with a fifth man on it.
One of my teammates was unable to get his visa cleared and had to attend remotely1, which resulted in me making a late change to my planned icebreaker activities to ensure they were presence-agnostic.

Heraldry

I was looking at the coat of arms of Noord Holland, the province in which Amsterdam lies, and thinking about all the symbolism and propaganda that’s encoded into traditional heraldry, and how much effort it takes to decode it… unless you just, y’know, guess!

Coat of Arms of North Holland.
Per pale or and azure; I a lion rampant gules, armed and langued azure, II seme of horizontally placed billets or, two lions passant guardant in pale of the same. The shield is crested by a coronet of five leaves or. 2

I asked each participant to divide a shield into five quadrants and draw their own coats of arms, featuring aspects of (a) their work life, (b) their personal life, (c) something they value, (d) something they’re good at, and (e) something surprising or unusual. I really wanted to keep the time pressure on and not allow anybody to overthink things, so I set a 5-minute timer from the moment everybody had finished drawing their shield outline.

Then, everybody passed their drawing to the right, and each person in turn tried, as best they could, to introduce the person to their left by attempting to interpret their neighbour’s drawing. The known categories helped to make it easier by helping people latch onto something to start talking about, but also more-challenging as people second-guessed themselves (“no, wait, maybe it’s sailing you’re good at and guitar you play in your personal life?”).

Six hand-drawn sketches of heraldic coats of arms by six different Automatticians. Ballpoint pen on paper.
This wasn’t about artistic skills; it was about getting people to talk to one another. Which is for the best, given my (lack of) artistic skills.

After each introduction is made, the person being introduced gets to explain their heraldry for themselves, congratulating their introducer on the things they got right and their close-guesses along the way.

It’s sort-of halfway between “introduce your neighbour” and “pictionary”. And it worked well to get us warmed-up, feeling a little silly, knowing one another slightly better, and in a space in which everybody had been expected to have spoken and to have made a harmless mistake (everybody managed to partially-interpret a shield correctly). A useful place to be at the end of an icebreaker exercise is left with the reminder that we are, after all, only human.

Compairs

Next up, we played a game only slightly inspired by witnessing a game of Mr and Mrs the other week3. I threw together a Perchance (which, in the nature of such things, is entirely open-source and you’re welcome to adapt it for your own use) that generated a series of randomly-selected pairs of teammates and asked a question to differentiate the two of them.

Screenshot of the game asking: "Gareth vs Dan (Travel category): Who's taken the longest boat ride?"
Some of the questions were gentle, but solicited a reasonable amount of guesswork alongside a modest amount of deduction.

Participants other than the two shown on the screen were challenged to guess the answer to the question. Sometimes the questions would have a definitive answer, and sometimes not: the joy was in the speculation! “Hmm, I know that Dan’s done quite a bit of globetrotting… but could he actually have travelled further East than a colleague who lives much further East than him?”

After a few seconds to a minute, once their colleagues had settled on an answer, the people listed on the question were encouraged to make their own guesses. Usually they’ll have a better idea as they are one of the data points, but that’s not always true!

Screenshot of the game asking: "Michal vs Raja (Code category): I can't remember whether I need aria-label or aria-labelledby. Who can tell me?"
A handful of questions were even tangentially work-related. Who is the accessibility Web expert in our team, anyway?

There’s no points, and you can play for as long as you like so long as it’s long enough that everybody gets at least one turn, so it’s a good “fill the rest of the time slot” game. It follows Heraldry moderately well as an icebreaker double-feature because the former is firstly about learning things about one another (and to a lesser extent guessing), and the latter is about the opposite.

I came out of both games knowing more about the humans behind the screens in my new team, and it seemed to open up the room for some good discussions afterwards, so the social lubricant effect was clearly effective too. If you give them a go or adapt them into anything else, let me know!

Footnotes

1 Our absent colleague instead had to tower over us on an enormous projector screen.

2 The red (“gules”) upright (“rampant”) lion in the coat of arms possibly comes from the heraldry of the city of Gelderen in Germany, but once part of the Dutch Republic. The lions striding (“passant”) to the left (“to dexter”) but turning to face you (“guardant”) come from the arms of Fryslân (Friesland), and its rectangles represent the districts of Fryslân. Aren’t you glad you asked.

3 Also known as The Newlyweds Game after the US game show of that name and basically the same format, Mr and Mrs is a game in which a (typically newly) married couple are asked questions about one another and their lives together which they answer separately and then those answers are compared. This induces a reaction of compersion when they’re “right” and in-sync and when the couple disagree it results in amusement. Or possibly divorce.

A group of people dressed as robbers (with masks covering their faces and automatic weapons in their hands) pose menacingly in the lobby of a vault.× Dan stands with four other men in front of a projector screen with a fifth man on it.× Six hand-drawn sketches of heraldic coats of arms by six different Automatticians. Ballpoint pen on paper.×

Dan Q found GCADMXH Rembrandt park #3

This checkin to GCADMXH Rembrandt park #3 reflects a geocaching.com log entry. See more of Dan's cache logs.

I’ve recently changed team at work, so my new team and I have gotten together – from the UK, France, Poland, India and South Africa – here in Amsterdam to meet up in person and do some work “together” for a change: normally we work entirely distributed. After our day of work we did an escape room together, then on our way to dinner I dragged them out of their way a bit to find this geocache.

Quick easy find, TFTC! Greetings from Oxfordshire, UK (and from many other corners of the world, courtesy of Team Desire from Automattic!).

Dan waves to the camera; several other geeky folks walk along behind him in a leafy green city space.

Dan waves to the camera; several other geeky folks walk along behind him in a leafy green city space.×

Dan Q found GC7B9CP Platform 9 3/4

This checkin to GC7B9CP Platform 9 3/4 reflects a geocaching.com log entry. See more of Dan's cache logs.

Even on a Monday morning the muggles are lining up to hold the trolley. Not me. As an actual magician, I’ve no need for such frivolities. Instead, as I’m passing anyway on my way to a train to an entirely different magical land (The Netherlands), I just snapped a selfie with the sign visible in the background. Easy peasy. TFTC.

Dan, a queue of tourists behind him, points over his shoulder beyond them to a sign on a brick wall, "Platform 9¾".

Dan, a queue of tourists behind him, points over his shoulder beyond them to a sign on a brick wall, "Platform 9¾".×

Dan Q found GC1TK6P Narrow Minded

This checkin to GC1TK6P Narrow Minded reflects a geocaching.com log entry. See more of Dan's cache logs.

QEF while out hunting for some breakfast this morning between trains on my journey from Oxford to Amsterdam for a work meetup. Lovely thematic cache container in a great spot. FP awarded. TFTC.

Early morning sun reflects in the water of a peaceful wide canal in central London.

Hey, this is my 100th post of 2024!1

Footnotes

1 This being my 100th post relies on you using non-pedant counting, that is: allowing “checkins” like this to count as fully-fledged blog posts. There’s more thought given to this question in my blog post about Kev Quirk’s #100DaysToOffload challenge, but the short answer seems to be that the challenge’s creator would count this as my 100th post of the year, so perhaps you should too. If you don’t, though, then I’ve so-far published 74 posts this year and – thanks to Bloganuary and a general renewed focus on blogging I’m probably still on-track to make 100. And if I remember to do so I’ll post a footnote for you pedants when I do.

Early morning sun reflects in the water of a peaceful wide canal in central London.×

Freedom of the Mountain

During a family holiday last week to the Three Valleys region of the French Alps for some skiing1, I came to see that I enjoy a privilege I call the freedom of the mountain.

In black skiwear, Dan looks into the camera from a bench in the snow, his skis upright behind him.
“Mornin’. Let’s go skiing.”

The Freedom

The freedom of the mountain is a privilege that comes from having the level of experience necessary to take on virtually any run a resort has to offer. It provides a handful of benefits denied to less-confident skiers:

  • I usually don’t feed to look at a map to plan my next route; whichever way I go will be fine!
  • When I reach one or more lifts, I can choose which to take based on the length of their queue, rather than considering their destinations.
  • When faced with a choice of pistes (or an off-piste route), my choice can be based on my mood, how crowded they are, etc., rather than their rated difficulty.
A snow-covered Alpine glacier sandwiched into a gully of exposed rocks.
Let’s tear this up, yo.

The downside is that I’m less well-equipped to consider the needs of others! Out skiing with Ruth one morning I suggested a route back into town that “felt easy” based on my previous runs, only to have her tell me that – according to the map – it probably wasn’t!

Approaching the Peak

The kids spent the week in lessons. It’s paying off: they’re both improving fast, and the eldest has got all the essentials down and it’s working on improving her parallel turns and on “reading the mountain”. It’s absolutely possible that the eldest, and perhaps both of them, will be a better skier than me someday2.

I’m not perfect, mind. While skiing backwards and filming, I misjudged the height of an arch and hit the back of the head with it… despite the child shouting to warn me! 😅

Maybe, as part of my effort to do what I’m bad at, I should have another go at learning to snowboard. I always found snowboarding frustrating because everything I needed to re-learn was something that I could already do much better and easier on skis. But perhaps if I can reframe that frustration through the lens of learning itself as the destination, I might be in a better place. One to consider for next time I hit the piste.

Footnotes

1 Also a little geocaching and some mountainside Where’s Wally?

2 Assuming snow is still a thing in ten years time.

In black skiwear, Dan looks into the camera from a bench in the snow, his skis upright behind him.× A snow-covered Alpine glacier sandwiched into a gully of exposed rocks.×

Dan Q found GCADXC6 Tour de France

This checkin to GCADXC6 Tour de France reflects a geocaching.com log entry. See more of Dan's cache logs.

My very first “ski-o-cache” was 9 years ago, down in La Tania: this was my second! Found the host easily at the coordinates and found the cache in the third hiding place I tried. It’s quite stiff and hard to extract right now! Needed to wait to return it while some other skiers took pictures of one another at the GZ, but got there in the end. Salutations d’Oxford, en Angleterre. MPLC!

Dan, in a wintery mountainous landscape, poses for a selfie by a sculpture of a bicycle marking part of the route of the Tour de France.

Dan, in a wintery mountainous landscape, poses for a selfie by a sculpture of a bicycle marking part of the route of the Tour de France. ×

[Bloganuary] Road Trip!

This post1 is part of my attempt at Bloganuary 2024.2Today’s prompt is:

Think back on your most memorable road trip.

Runners-up

It didn’t take me long to choose a most-memorable road trip, but first: here’s a trio of runners-up that I considered3:

  1. A midwinter ascent
    On the last day of 2018, Ruth‘s brother Robin and I made a winter ascent of Ben Nevis, the highest mountain in the British Isles. But amazing as the experience was, it perhaps wasn’t as memorable as the endless car journey up there, especially for Robin who was sandwiched between our two children in the back of the car and spent the entire 12-hour journey listening to Little Baby Bum songs on loop.4 Surely a quick route to insanity.
Dan and Robin atop Ben Nevis
Probably should have wiped the snow off the lens.
  1. A childhood move
    Shortly after starting primary school my family and I moved from Aberdeen, Scotland to the North-West of England. At my young age, long car journeys – such as those we’d had to make to view prospective new houses – always seemed interminably boring, but this one was unusually full of excitement and anticipation. The car was filled to the brim with everything we needed most-imminently to start our new lives5, while the removals lorry followed a full day behind us with everything less-essential6. I’m sure that to my parents it was incredibly stressful, but for me it was the beginning of an amazing voyage into the unknown.
A partially-pebbledashed house, number 7, with an old white Ford Escort parked in the driveway.
To this house. In this car.
  1. Live on Earth
    Back in 1999 I bought tickets for myself and two friends for Craig Charles’ appearance in Aberystwyth as part of his Live on Earth tour. My two friends shared a birthday at around the date of the show and had expressed an interest in visiting me, so this seemed like a perfect opportunity. Unfortunately I hadn’t realised that at that very moment one of them was preparing to have their birthday party… 240 miles away in London. In the end all three of us (plus a fourth friend who volunteered to be and overnight/early morning post-nightclub driver) attended both events back to back! A particular highlight came at around 4am we returned from a London nightclub to the suburb where we’d left the car to discover it was boxed in by some inconsiderate parking: we were stuck! So we gathered some strong-looking fellow partygoers… and carried the culprit’s car out of the way7. By that point we decided to go one step further and get back at its owner by moving their car around the corner from where they’d parked it. I reflected on parts of this anecdote back in 2010.

The winner

At somewhere between 500 and 600 road miles each way, perhaps the single longest road journey I’ve ever made without an overnight break was to attend a wedding.

A white couple, bride and groom; she's wearing a white dress and flowers in her hair; he's in a suit with a grey waistcoat and a thistle buttonhole.
The wedding of this lovely couple, whose courtship I expressed joy over the previous year.

The wedding was of my friends Kit and Fi, and took place a long, long way up into Scotland. At the time I (and a few other wedding guests) lived on the West coast of Wales. The journey options between the two might be characterised as follows:

  • the fastest option: a train, followed by a ludicrously expensive plane, followed by a taxi
  • the public transport option: about 16 hours of travel via a variety of circuitous train routes, but at least you get to sleep some of the way
  • drive along a hundred miles of picturesque narrow roads, then three hundred of boring motorways, then another hundred and fifty of picturesque narrow roads

Guess which approach this idiot went for?

Despite having just graduated, I was still living very-much on a student-grade budget. I wasn’t confident that we could afford both the travel to and from the wedding and more than a single night’s accommodation at the other end.

But there were four of us who wanted to attend: me, my partner Claire, and our friends Bryn and Paul. Two of the four were qualified to drive and could be insured on Claire’s car8. This provided an opportunity: we’d make the entire 11-or-so-hour journey by car, with a pair of people sleeping in the back while the other pair drove or navigated!

It was long, and it was arduous, but we chatted and we sang and we saw a frankly ludicrous amount of the A9 trunk road and we made it to and from what was a wonderful wedding on our shoestring budget. It’s almost a shame that the party was so good that the memories of the road trip itself pale, or else this might be a better anecdote! But altogether, entirely a worthwhile, if crazy, exercise.

Footnotes

1 Participating in Bloganuary has now put me into my fifth-longest “daily streak” of blog posts! C-c-c-combo continues!

2 Also, wow: thanks to staying up late with my friend John drinking and mucking about with the baby grand piano in the lobby of the hotel we’re staying at, I might be first to publish a post for today’s Bloganuary!

3 Strangely, all three of the four journeys I’ve considered seem to involve Scotland. Which I suppose shouldn’t be too much of a surprise, given its distance from many of the other places I’ve lived and of course its size (and sometimes-sparse road network).

4 Okay, probably not for the entire journey, but I’m certain it must’ve felt like it.

5 Our cargo included several cats who almost-immediately escaped from their cardboard enclosures and vomited throughout the vehicle.

6 This included, for example, our beds: we spent our first night in our new house camped together in sleeping bags on the floor of what would later become my bedroom, which only added to the sense of adventure in the whole enterprise.

7 It was, fortunately, only a light vehicle, plus our designated driver was at this point so pumped-up on energy drinks he might have been able to lift it by himself!

8 It wasn’t a big car, and in hindsight cramming four people into it for such a long journey might not have been the most-comfortable choice!

Dan and Robin atop Ben Nevis× A partially-pebbledashed house, number 7, with an old white Ford Escort parked in the driveway.× A white couple, bride and groom; she's wearing a white dress and flowers in her hair; he's in a suit with a grey waistcoat and a thistle buttonhole.×

Wonder Boy

There are video games that I’ve spent many years playing (sometimes on-and-off) before finally beating them for the first time. I spent three years playing Dune II before I finally beat it as every house. It took twice that to reach the end of Ultima Underworld II. But today, I can add a new contender1 to that list.

Today, over thirty-five years after I first played it, I finally completed Wonder Boy.

Entryway to "West View Leisure Centre", decorated in a bright, abstract, 80s style.
I first played Wonder Boy in 1988 at West View Leisure Centre, pictured here mostly as-I-remember-it in a photo by Keith Wright (used under CC BY-SA 2.0 license).

My first experience of the game, in the 1980s, was on a coin-op machine where I’d discovered I could get away with trading the 20p piece I’d been given by my parents to use as a deposit on a locker that week for two games on the machine. I wasn’t very good at it, but something about the cutesy graphics and catchy chip-tune music grabbed my attention and it became my favourite arcade game.

Of all the video games about skateboarding cavemen I’ve ever played, it’s my favourite.

I played it once or twice more when I found it in arcades, as an older child. I played various console ports of it and found them disappointing. I tried it a couple of times in MAME. But I didn’t really put any effort into it until a hotel we stayed at during a family holiday to Paris in October had a bank of free-to-play arcade machines rigged with Pandora’s Box clones so they could be used to play a few thousand different arcade classics. Including Wonder Boy.

A young girl in a pink leopard-print top plays Wonder Boy on an arcade cabinet.
Our eldest was particularly taken with Wonder Boy, and by the time we set off for home at the end of our holiday she’d gotten further than I ever had at it (all without spending a single tenpence).

Off the back of all the fun the kids had, it’s perhaps no surprise that I arranged for a similar machine to be delivered to us as a gift “to the family”2 this Christmas.

A large, arcade-cabinet-shaped present, wrapped in black paper and a red ribbon, stands alongside a Christmas tree.
If you look carefully, you can work out which present it it, despite the wrapping.

And so my interest in the game was awakened and I threw easily a hundred pounds worth of free-play games of Wonder Boy3 over the last few days. Until…

…today, I finally defeated the seventh ogre4, saved the kingdom, etc. It was a hell of a battle. I can’t count how many times I pressed the “insert coin” button on that final section, how many little axes I’d throw into the beast’s head while dodging his fireballs, etc.

So yeah, that’s done, now. I guess I can get back to finishing Wonder Boy: The Dragon’s Trap, the 2017 remake of a 1989 game I adored!5 It’s aged amazingly well!

Footnotes

1 This may be the final record for time spent playing a video game before beating it, unless someday I ever achieve a (non-cheating) NetHack ascension.

2 The kids have had plenty of enjoyment out of it so far, but their time on the machine is somewhat eclipsed by Owen playing Street Fighter II Turbo and Streets of Rage on it and, of course, by my rediscovered obsession with Wonder Boy.

3 The arcade cabinet still hasn’t quite paid for itself in tenpences-saved, despite my grinding of Wonder Boy. Yet.

4 I took to calling the end-of-world bosses “ogres” when my friends and I swapped tips for the game back in the late 80s, and I refuse to learn any different name for them.[footnote], saved Tina[footnote]Apparently the love interest has a name. Who knew?

5 I completed the original Wonder Boy III: The Dragon’s Trap on a Sega Master System borrowed from my friend Daniel back in around 1990, so it’s not a contender for the list either.

A young girl in a pink leopard-print top plays Wonder Boy on an arcade cabinet.× A large, arcade-cabinet-shaped present, wrapped in black paper and a red ribbon, stands alongside a Christmas tree.×

WCEU23 – Day 2

My second day of the main conference part of WordCamp Europe 2023 was hampered slightly by a late start on my part.

Dan, sweating, with an actively-used dancefloor in the background.
I can’t say for certain why I woke up mildly hungover and with sore knees, but I make an educated guess that it might be related to the Pride party I found myself at last night.

Still, I managed to get to all the things I’d earmarked for my attention, including:


Gutenberg collaborative editing experience

I’m sure I can’t be the only person who’s been asked “why can’t the (or ‘shouldn’t the’) WordPress post editor let multiple people edit post at the same time”. Often, people will compare it to e.g. Google Docs.

A man in a blue shirt stands on a large stage.
I can’t begin to speculate how often people must ask this supposedly-trivial question of Dawid Urbański, possibly the world’s expert on this very question.

Dawid summarised the challenging issues in any effort to implement this much-desired feature. Some of them are examples of those unsolved problems that keep rearing their heads in computer science, like the two generals’ problem, but even the solvable problems are difficult: How does one handle asynchronous (non-idempotent) commutative operations? How is the order of disparate actions determined? Which node is the source of truth? If a server is used, where is that server (with a nod to quite how awful the experience of implementing a Websockets server in PHP can be…)? And so on…

Slide showing a timeline in which two participants A and B send an update to one another, but neither can be sure whose update was made first.
Slides showing simplified timelines of parties communicating with one another in ambigous ways

I really appreciated Dawid’s reference to the various bits of academic literature that’s appeared over the last four decades (!) about how these problems might be solved. It’s a strong reminder that these things we take for granted in live-updating multi-user web applications are not trivial and every question you can answer raises more questions.

There’s some great early proof-of-concepts, so we’re “getting there”, and it’s an exciting time. Personally, I love the idea of the benefits this could provide for offline editing (perhaps just because I’m still a huge fan of a well-made PWA!).


The future of work is open

James Giroux’s goal: that we all become more curious about and more invested in our team’s experiences, from a humanistic standpoint. His experience of companies with organic growth of software companies is very, very familiar: you make a thing and give it away, then you need more people, then you’ve somehow got a company and it’s all because you just had an idea once. Sounds like Three Rings!

A man in a white t-shirt and dark jacket stands on a stage in front of a screen; the bottom line of the words on the screen can be seen to read "Work is Open".
Financial success is not team success, as Twitter shows, with their current unsustainable and unhappy developer culture, James reminds us.

James was particularly keen to share with us the results of his Team Experience Index research, and I agree that some of the result are especially exciting, in particularly the willingness of underrepresented groups, especially women, to enagage with the survey: this provides hugely valuable data about the health of teams working in the WordPress space.

A slide showing demographic details: 28% say that they represent a historically underrepresented group, 55% are in North America, 67% provided a gender that was not "male".
The statistician in me immediately wanted to know how the non-response rate to these (optional) questions varied relative to one another (if they’re very different, putting these pie charts alongside one another could be disingenuous!), but I’m tentatively excited by the diversity represented anyway.

“We have this project that we work with and contribute to, that we love,” says James, in an attempt to explain the highly-positive feedback that his survey respondents gave when asked questions about the authenticity of their purpose and satisfaction in their role.

A man on a stage stands in front of a slide listing strengths and opportunities resulting from the survey.
Again, my inner statistician wants to chirp up about the lack of a control group. The data from the survey may well help companies working within the WordPress ecosystem to identify things we’re doing well and opportunities for growth, but it’d also be cool to compare these metrics to those in companies outside of the WordPress world!

So, what do we do with these findings? How do WordPress-ey companies improve? James recommends that we:

  • Get better are showing what recognition, celebration, and career growth looks like,
  • Improve support and training for team leaders to provide them with the tools to succeed and inspire, and
  • Bridge the gap between leadership and team members with transparent, open dialogue.

Good tips, there.


The Big Photo

A WordCamp tradition is to try to squeeze every willing participant into a photo. Clearly with the size that these events are, nowadays, this requires some wrangling (and, in this case, the photographers standing atop the roof of a nearby building to get everybody into frame).

An enormous crowd shuffles tightly into a courtyard. A trio of blue-shirted photographers stands atop a building opposite them.
Like herding cats, trying to get several hundred people to line up where you want them for a photograph is an exercise in patience.

I’ll have to keep an eye out for the final picture and see if I can find myself in it.


What is new in CSS?

I always find that learning about bleeding edge CSS techniques makes me feel excited and optimistic, perhaps because CSS lends itself so well towards a progressive enhancement approach to development: often, you can start using a new technique today and it’ll only benefit, say, people using a beta version of a particular browser (and perhaps only if they opt-in to the applicable feature flag). But if you’ve designed your site right then the lack of this feature won’t impact anybody else, and eventually the feature will (hopefully) trickle-down into almost everybody’s Web experience.

Anyway, that’s what Fellyph Cintra says too, but he adds that possibly we’ve still not grown out of thinking that browsers take a long time between versions. 5 years passed between the release of Internet Explorer 6 and Internet Explorer 7, for example! But nowadays most browsers are evergreen with releases each month! (Assuming we quietly ignore that Apple don’t sent new versions of Safari to old verisons of MacOS, continuing to exacerbate a problem that we used to see with Internet Explorer on Windows, ahem.)

A man on a stage with his arm out in greeting to the crowd in front of him.
Fellyph told us about how he introduced <dialog> to his team and they responded with skepticism that they’d be able to use it within the next 5 years. But in fact it’s already stable in every major browser.

An important new development may come from Baseline, a project to establish a metric of what you can reliably use on the Web today. So a bit like Can I Use, I guess, but taken from the opposite direction: starting from the browsers and listing the features, rather than the other way around.

Anyway, Fellyph went on to share some exciting new ideas that we should be using, like:

  • object-fit and object-position, which can make the contents of any container “act like” a background
  • aspect-ratio, which I’m already using and I love, but I enjoyed how Fellyph suggested combining the two to crop images to a fluid container on the client side
  • scroll-behavior: smooth, which I’ve used before; it’s pretty good
  • clamp, which I use… but I’m still not sure I fully grok it: I always have to load some documentation with examples when I use it
  • @container queries, which can apply e.g. (max-width: ...) rules to things other than the viewport, which I’ve not found a need for yet but I can see the value of it
  • @layers, which grant an additional level of importance in the cascade: for example, you might load a framework into a layer (with @import url(...) layer(framework)) which is defined as a lower-priority than your override layer, meaning you won’t have to start slapping !important all over the shop
  • @media (400px <= width <= 600px)-style media queries, which are much easier to understand than min-width: if you’re used to thinking in a more-procedural programming language (I assume they work in container queries too!)
Fellyph Cintra stands in front of a large screen showing a slide that introduces himself to his audience: "Front-end Lead at Digitale Methode & Google Developer Expert @fellyph"

It’s also worth remembering:

  • @supports, which is badass and I love and use it already (it was especially useful as display: grid began to roll out and I wanted to start using it but needed to use a fallback method for browsers that didn’t support it yet
  • :has(), which I’ve long thought is game-changing: styling something based on what it contains is magical; not really suitable for mainstream use yet without Firefox support, though (it’s still behind a feature flag)! Fellyph sold me on the benefit of :not(:has(...)), though!
  • Nesting, which again doesn’t have Firefox support yet but provides SCSS-like nesting in CSS, which is awesome
  • Scroll-driven animations, which can e.g. do parallax effects without JavaScript (right now it’s Canary only, mind…), using e.g. animation-timeline: and animation-range: to specify that it’s the scroll position within the document that provides the timeline for the animation

And keeping an eye on upcoming things like text-balanced (which I’m already excited by), popover, selectmenu, view transitions (which I’ve been experimenting with because they’re cool), and scoped style.

Fellyph was at least as inspiring as I’d hoped.


Stop blocking my thread

For my second workshop, I joined Google’s Adam Silverstein to watch him dissect a few participants’ websites performance using Core Web Vitals as a metric. I think I already know the basics of Core Web Vitals, but when it comes to improving my score (especially on work-related sites with unpleasant reliance on heavyweight frameworks like React, in my experience).

A man stands at a podium.
In an early joke, Adam pointed out that you can reduce JavaScript thread blocking by removing JavaScript from your site. A lot of people laughed, but frankly I think it’s a great idea.

We talked a lot about render blocking (thanks to JS and CSS in the <head>), thread blocking (by scripts, especially those reacting to user input), TTFB (relating to actual network and server performance, or at least server-side processing), TBT (the time between FCP and TTI), and the upcoming change to measure INP rather than FID. That’s a lot of acronyms.

The short of it is that there are three pillars to Core Web Vitals: loading (how long until the page renders), interactivity (how long until the page responds to user interaction), and stability (how long it takes for the page to cease layout shifts as a result of post-load scripts and stylesheets). I was pleased that Adam acknowledged the major limitation of lab testing resulting from developers often using superior hardware and Internet connections to typical users, and how if you’re serious about performance metrics you’ll want to collect RUM data.

Adam explaining Render-Blocking CSS.
The fastest way to improve rendering performance is to put fewer obstacles in the way of rendering.

I came away with a few personalised tips, but they’re not much use for your site: I paid attention to the things that’ll be helpful for the sites I look after. But I’ll be taking note of his test pages so I can play with some of the tools he demonstrated later on.


Variations on a theme: 20 years of WordPress

I couldn’t liveblog this because I spent too much of the session applauding. A few highlights from memory:

  • Phase 2 (of 4) of Gutenberg is basically complete, which is cool. Some back-and-forth about the importance of phase 4 (bringing better multilingual support to WordPress) and how it feels like it’s a long way away.
  • Lots of plugging for Five for the Future, which I can get behind.
  • In the same vein as his 2016 statement that WordPress developers should “learn JavaScript deeply”, Matt leant somewhat into the idea that from today they should “watch AI carefully”; I’m not 100% convinced, but it’s not been stopping me from getting involved with a diversity of AI experiments (including some WordPress-related ones) anyway.
  • Musings about our community being a major part of why WordPress succeeded (and continues to thrive) unlike some other open source projects of its era. I agree that’s a factor, but I suspect that being in the right place at the right time was also important. Perhaps more on that another time.
  • Announcement of the next WordCamp Europe location.

Here’s looking forward to WordCamp Europe 2024 in Turin!

Dan, sweating, with an actively-used dancefloor in the background.× A man in a blue shirt stands on a large stage.× Slide showing a timeline in which two participants A and B send an update to one another, but neither can be sure whose update was made first.× A man in a white t-shirt and dark jacket stands on a stage in front of a screen; the bottom line of the words on the screen can be seen to read "Work is Open".× A slide showing demographic details: 28% say that they represent a historically underrepresented group, 55% are in North America, 67% provided a gender that was not "male".× A man on a stage stands in front of a slide listing strengths and opportunities resulting from the survey.× An enormous crowd shuffles tightly into a courtyard. A trio of blue-shirted photographers stands atop a building opposite them.× A man on a stage with his arm out in greeting to the crowd in front of him.× Fellyph Cintra stands in front of a large screen showing a slide that introduces himself to his audience: "Front-end Lead at Digitale Methode & Google Developer Expert @fellyph"× A man stands at a podium.× Adam explaining Render-Blocking CSS.×