This weekend, WordCamp Nijmegen happened. While having been my eleventh WordCamp in total, and my eighth time as a speaker, it was the first ever city-based WordCamp in the Netherlands. And it was awesome!

Thursday: The Day Before

WordCamps usually start quite early in the morning. Since not all attendees of a WordCamp live in the according city, a lot of them—me included—oftentimes schedule their arrival on the day before the first WordCamp day. These days before are a good opportunity to grab dinner and a beer together, and start boost your community adrenaline.

This time, however, I could leave only pretty late in the day. When I finally made it to my hotel, I was too tired—and I nevertheless had to work on my slides anyway. 😀 So no pre-event for me this time.

Luckily, this was not the case for everyone, so there did happen some inofficial get-togethers. 🙂

Friday: Contributor Day

WordCamp Nijmegen started with a contributor day, and also with a great amount of first-time contributors.

Core Team

As every so often, I started contributing by looking through my open tickets on Trac. There was one ticket catching my attention that also has a patch since day one—which was about 16 months ago—but nothing really happened with it. Interestingly, I couldn’t reproduce and thus confirm the existence of the issue anymore, even though nothing related to it was changed since the last time the issue occured (not just for me).

After about one and a half hours of trying with different WordPress versions and both single site and multisite, I just gave up on that error that somehow disappeared. So, if you happen to find my bug, please tell me. 😀

I then helped other people with their issues, where I was a little more successful. 😉


After lunch, I asked Konstantin to have a look at a massive patch of mine, for Meta. After a little bit of talking and reasoning, he merged it—which felt good, because it was at least some result, for both of us. While merging the change, however, Konstantin apparently … broke—for about 8 minutes. 😀 Well, well… Such things happen.


I finished contributor day by looking through various accessibility tickets scheduled for WordPress 4.9, for example, one about Youtube embeds. Finally, I helped someone with an issue with Trac itself.

Volunteers, Speakers and Sponsors Dinner

After the contributor day, I did a short stop back at the hotel, and then was off to the dinner—through lots of rain, yay. Luckily, there was Mario, our funny party bus taxi driver. 😉

Despite the fact that the evening started quite wet, I had very interesting and also fun conversations with lots of (semi-)new people. This was just awesome.

Saturday: WordCamp

Next day, WordCamp day.

Taco Verdonschot opened up WordCamp Nijmegen, with sooo many first-time attendees (which we learned in the closing remarks). So good.

5 for the Future Present

In his keynote speech, Joost de Valk explained what it means to contribute (back) to WordPress. And what’s important here is that WordPress is a lot more than just the software. You can contribute on so many different levels and in so many different ways, and sometimes people even contribute to WordPress without knowing.

Being more than just a really good example, Yoast are investing not five, but about twenty percent back into WordPress. They sponsor people to invest their time and knowledge, they are working themselves on code and documentation, and they participate in a lot of discussions, chats, Trac tickets, GitHub issues etc. And, the latest coup is about to start within the next weeks: every six weeks, Yoast will be hosting contributing afternoons, open for anyone interested. Awesome!

OOP Plugin Development Basics

The first regular talk I attended was about something very normal and, at the same time, important to me: object-oriented programming, or OOP.

Coming from Java and C++, object-oriented programming is part of my developer DNA. That’s why I have been developing almost anything in PHP, and thus WordPress context, in an OOP fashion right from the start of my WordPress life. Still, I was very interested in the talk, and in what information and knowledge would be included in the presentation.

Alain Schlesser, a developer friend of mine, did a very good job here! First, he explained some of the concepts behind and also the motivation for doing OOP. By means of a simple and yet real-world plugin that he developed for this talk, Alain then illustrated various paradigms and also design patterns, always answering the question why do this exactly.

If you are interested in that-and even more if you never did anything OOP, but always thought about reading into it-please have a look at the slides. You can also read through the plugin code, which is freely available on Github, or just use it, of course, if you want to manage your conference talks. 🙂

The Biggest WordPress Core Patch Ever

Juliette Reinders Folmer spoke in the first lightning talk at WordCamp Nijmegen about something completely … crazy: using the WordPress coding standards for WordPress. 😀

While the official WordPress coding standards exist for more than a dozen years already, not much of WordPress itself is following them. By means of PHP_CodeSniffer, the coding standards are applied, and lots of the found violations (can) get automatically fixed right away.

Because of the size and complexity of the change, it has been broken down into several smaller patches. And all of them need to get reviewed thoroughly. Want to help with that? That’d be great! Just follow the according Trac ticket and let people know you would like to get involved. Thanks in advance to anyone doing this.


After three talks in a row, I went out to enjoy the sun—there was rain coming in the afternoon anyway. I had nice discussions with Alain and Juliette about their talks and related things.


More Networking

After lunch, I got caught up in one conversation after the other. I made a sponsors round and talked to a few of the people standing at the booths, I ran into people I know, but hadn’t seen in Nijmegen so far, and I got to know new people.

In the end, I didn’t make it to a single talk in the afternoon. But I will definitely watch a couple of them once they are available on

Using PSR-7 Middleware in Your RESTful WordPress Projects

Last but not least, it was time for my talk.

In the PHP world in general, there is a standard (recommendation) when it comes to HTTP messages: PSR-7. Despite things like Calypso, Gutenberg and the growing JavaScript codebase in general, WordPress is written in PHP. Thus, wouldn’t it be nice to do what the rest of the PHP world is doing?

In my talk, I gave an overview of the PSR-7 HTTP message interfaces, compared these with the structures of WordPress, and analyzed whether or not they match with the PSR-7 interfaces. Spoiler: they don’t. At all.

Then, I provided a closer look into one example implementation of PSR-7-compliant WordPress REST requests and responses: WP REST Starter, a composer package that also allows you to properly follow OOP best practices when developing with the WordPress REST API.

Finally, I explained the inner workings of the PSR-7-compliant structures, and showed how to use them in a real-world example using a stack of existing PSR-7 middlewares.

In case you are interested, my slides are available online.

Closing Remarks

Then, the first ever city-based WordCamp in the Netherlands was already over.

Thanks to everyone who made this event possible.


After wrapping up the first ever city-based WordCamp in the Netherlands, we had about two hours of drinking Grolsch, eating bitterballen, and chatting about WordPress, WordCamps and completely unrelated things.


With a group of about 20 people or so, we went to a nice burger restaurant, and had further conversations, about almost everything you can think of.

For a large part of the evening, my neighbors and I were talking about languages—which was funny, because I had a similar conversation at WordCamp Europe this year. We analyzed Dutch, German, Frisian, Flemish, Platt (as in Plattdeutsch, but also platt in Dutch), and other dialects. We also talked about all the differents ways and contexts of saying “thank you”. And, with eleven different languages present in our group—we were only five people, by the way—we discussed specialties of various languages, like shortening sentences to a collection of words that just don’t make any sense to non-native speakers, or even to native speakers when they don’t know the context. It was a fun fun evening!


WordCamp Nijmegen was a great event, and I am looking forward to attending another edition, next year or whenever it may be. Personally, I don’t care whether it had been named WordCamp Nijmegen or WordCamp Netherlands, although I really didn’t like the narrow-minded and sort of ivory-tower discussion around that. I’m glad there can and will be another WordCamp Netherlands in 2018, so all is good.

I would have liked to make it to a dozen, but with my eleventh WordCamp in total now, I will retire from the WordCamp scene for quite a while. With a baby coming in November, there are other things I can, want to and will spend my time on. 🙂

But don’t panic, we’ll see each other again in 2018. I will have to see to what WordCamps I will actually make it, but on my wish list are Antwerp, London, Netherlands, Europe (i.e., Belgrade), Vienna, Miami, Brighton, and, of course, WordCamp Retreat Soltau! 😀


Leave a Reply

Your email address will not be published. Required fields are marked *