On Twenty Seventeen

As this blog runs on WordPress nightlies (and has been so for ages), I felt it was a good fit to run the upcoming default theme, Twenty Seventeen too.

It was fairly easy project to migrate to. My old theme, which was not much to look at, did contain some code that did not really belong to a theme. So I moved that code out to a plugin. After that, I found it very easy to customize Twenty Seventeen to my needs (which is hardly surprising as this site is just a simple blog).

I did like the typography of Twenty Seventeen, but I like speed more, so the Google Fonts had to go.

One thing irritated me though. The WordPress template system to be exact. One can easily replace any parent template file in a child theme by just introducing it with the same file name than the original. But to me, this is equally bad as pluggable functions are. You will lose all updatability of the whole template code if you do so, and often you need to do just a simple modification, not rewrite everything.

In my case, I wanted to modify something there should be a filter for: get_template_part. I could have loaded a different template part in one specific case instead of replacing the whole template that calls get_template_part. But turns out there is not. It’s one of those Trac tickets that are ancient and have a lot of discussion, but they never went anywhere. Oh well.

You should charge more

Tomaz Zaman had an inspiring talk today on why you should charge more. A lot of freelancers and small business owners undervalue themselves. This is especially true in WordPress business because the barrier of entry is very low. Almost anybody can start calling themselves WordPress developers. This leads to race to the bottom with prices because there are a lot of newcomers that don’t have much else to compete with.

When I started H1, I had agency level pricing from the beginning, even though it was just me then. That allowed me to hire others.

Even if you enjoy working alone and don’t want to hire other people, more money per hour will make you able to pursue other interests, educate yourself on new technologies and thus keep yourself competitive and charge more. If you have no such margin, you are stuck working long hours just to get by. Even if you love what you do (and you should), that does not carry you very far in the end.

Day 1 of the WordCamp Europe 2016

First day of talks at WordCamp Europe 2016 in Vienna has just ended and I feel tired but satisfied.

It’s 33°C in Vienna today but the conference venue does have working air conditioning and so has our Airbnb. Last year in Seville it was impossible to go outside and not die. At least for a Finn. So this is an improvement. Maybe next year WCEU will be held in some country that is not so hot?

The talks were very interesting and well executed in general. The only thing I did not like was the fact that there has not been enough time reserved to switch tracks between sessions. But that is a rather minor issue.

Brian Krogsgard interviewed Matt Mullenweg well and challenged him about the practical level leadership of the WordPress project.


Earlier, John Blackbourn expressed similar views. I hope this discussion is continued.

So far I’ve talked with a lot of nice people. I see a more and more familiar faces at each WordCamp I go to, but here it is just unbelievable amount of people I’ve never seen. Biggest WordCamp ever.

We’ll have a dinner among Finns (and people who live in Finland) next. I’m looking forward to day 2 tomorrow and especially the contributor day in Sunday.

(I’m writing this because Andrea Badgley’s talk inspired me to write.)

The Evolution of WordPress Software Development at WordCamp Europe 2015

Update: the video of the presentation is now available on WordPress.tv:

My WordCamp Europe 2015 talk on The Evolution of WordPress Software Development:

When you start to use WordPress as an application platform, one thing is very soon clear: WordPress defines very little base structure for your application code, where to put and how to write tests, how application is loaded, or for example how dependencies should be managed. Because of this, applications or just complex sites built on top of WordPress tend to get really messy.

There are application frameworks built on top of WordPress, but none of them seem to have wide enough use for to build any serious applications on top of. Until any of those gets wide-spread adoption, combining existing, non-WordPress specific PHP technologies as a custom solution probably is a more future-proof solution. We will be looking into one possible stack of technologies.

Here are the slides of the presentation:

You can read about our approach in more detail in a three part series of posts: