Week Notes: Feb 18th-ish, 2022

Half a week late this time, due to the onslaught of a nasty cold. Never-the-less, let’s review what happened in the past week…


Revisiting the tests into performance optimisations from the previous week, I’m left to conclude that Cloudflare Workers and Cloudflare Page Rules are mutually exclusive, which is a shame, and further effort in that area gets deprioritised.

Cloudflare Workers

With that settled for now, it’s still all about Cloudflare Workers. Specifically this week as an individual contributor refining plans for future architecture and code management, and writing, testing, reviewing and refining code.

As it currently stands we have some existing workers active across a few different paths, the source code for them is stored in a few different places, and the build and deployment processes for them are varied. It’s a little disorganised and there are risks that if we attempt to ‘democratise’ the ability to create more workers within the organisation we’ll have all kinds of problems in production. That’s the stuff I’m trying to ‘architect’ our way out of, whilst at the same time supporting by refactoring and testing our existing solutions. It’s fun, but also time consuming. That’s a common theme I find — actually doing the work is often a more complex and lengthy process than just planning, discussing or documenting the work to be done.

^ The secret to being a 10x Engineer — or even just a >1x Engineer — lies in delegation. 😀

Data governance, tagging and testing

Other conversations this week were all around tags — most commonly the ones that the marketing and ‘business people’ want us to include — and who ‘owns’ them and who is responsible for verifying that they work as intended. Part of that is having the discussion, part of it is defining and battle-testing the processes we come up with to guide us.

Going into the office

Coronavirus restrictions are over. That meant our cancelled ‘Christmas’ team lunches are finally back on, and if there’s anything I can be persuaded to visit the office for, it’s free food.

Mixed emotions on this one. Going back into the office significantly reduced my hours of productive work time for the day I was there, and I was 20 mins late to an hour long meeting as a result of ‘just chatting’ to people I met. Oops. Socialising +300%, Productivity -50% I suppose. More opportunities to cross-pollinate ideas, less time to actually get shit done.

Worst of all, I got unwell 2 days after being in the office. Probably unrelated, but I’m not sure I want to test the theory by revisiting it and seeing if there’s a connection.

Q4 planning time

Time to look ahead. Part of the Staff Engineer role is in watching the 3–6 month horizon for the engineering teams. So getting together with the other Staff, Principle and Engineering Managers to review our 4th Quarter plans was interesting.

Looking ahead

If all goes well next week, I’ll have a review-ready version of the future architecture plans for our Cloudflare Worker setup, complete with diagrams and incremental rollout suggestions to begin aligning with the availability of engineering teams.

An idea I’d really like to get around to trying out is using Cloudflare Workers to test some more complex optimisations — merging two subdomains into a new third one, or dynamically replacing amp-img tags with picture tags, or inlining Adobe Target-based MVT tests. Unlikely at this point, but a lot of the refactoring and planning I’ve been doing up to this point has been in pursuit of this, so I’m endlessly optimistic.

Custom Error Pages. It’s been highlighted to me that there’s a whole load of error pages in our domain that use the Cloudflare default UI — rate limiting, security challenges, that kind of thing — which really should be branded experiences. Error pages in general — the 4xx, 5xx variety at least — are a thing that’s currently in my architecture diagrams as needing more attention, so I’m going to try and fold the two topics together and see if we can’t get branded error pages up and running in the next couple of weeks.