Product Systems
Building a London Weekend Guide
London is full of things to do. That is not the same as making a good weekend plan. The problem I wanted to work on was narrower: how do you create a guide that feels considered, quick to use, and easy to update without building another noisy discovery platform?
Reading note
A clearer write-up of the product thinking, system choices, and tradeoffs behind the build.
In this post
The product is not a database of everything happening in London. It is a point of view about what is worth making time for this weekend.
Start With A Point Of View
The first decision was to treat the guide as an editorial product rather than a search interface. A reader should be able to open the current edition, understand the shape of the weekend, and leave with three or four ideas that fit their time and mood. That makes the content model more important than a layer of filters.
Each issue has a date range, a short introduction, a featured shortlist, and ordered sections for exhibitions, food and drink, live music and comedy, markets, outdoors, and family-friendly plans. Travel context and weather guidance are written by the editor. They are useful precisely because they are judgement calls, not false precision from an API.
Make The Weekly Update Boring
The template is intentionally stable. A new weekend is a new typed content file, registered as the current issue. Event IDs give sections and featured picks stable references, while build-time validation catches duplicate IDs and broken references before anything ships.
- One content file per weekend issue.
- One registry entry that selects the current issue.
- No scraping or external API dependency for the public page.
- A static build that produces the homepage and direct issue URLs.
What I Want To Learn
The useful test is whether a reader can use the guide quickly and whether the editor can keep it current without friction. The email adds a second test: does the shortlist earn a place in someone's week when it arrives in their inbox? Those are product questions, not infrastructure questions, which is why the implementation should stay modest until the behaviour is understood.