I’ve now been through three approaches to load testing for the site, and I think I’ve settled on a solution for the medium term at least. This post explains what I’m trying to achieve, along with the pros and cons of what I’ve tried. Requirements For this particular site, I have four requirements: If the … Continue reading Election 2029:…
#election 2029
12 posts
18 Jan
17 Jan
On January 15th 2026, Robert Jenrick broke my election site. Okay, that’s slightly hyperbolic. The site continued to operate, and it would be fairer to say that the actions of Kemi Badenoch and Robert Jenrick exposed a flaw in the data modelling in my site. For those readers who don’t follow UK politics, two events … Continue reading Election 2029:…
31 Dec 2025
As I’ve written before, I’m leaning heavily into immutability in the election site code. Until September 2025 (it’s taken a long time to get round to writing this blog post) that meant a combination of records, ImmutableList<T> and ImmutableDictionary<TKey, TValue>. In an ECMA C# standards meeting, however, Joseph Musser passed on some really valuable feedback … Continue reading Changing Immutable…
29 Jul 2025
In my previous blog post I described some behaviour of C# record types which was unexpected to me, though entirely correct according to the documentation. This is a follow-up post to that one, so if you haven’t read that one yet, please do so – I won’t go over all the same ground. Is this … Continue reading Records and…
13 Apr 2025
Postcodes After a pretty practical previous post about records and collections, this post is less likely to give anyone ideas about how they might tackle a problem in their own project, and doesn’t have any feature requests for Microsoft either. It’s an area I’ve found really fun though. An introduction to postcodes in the UK … Continue reading Election 2029:…
27 Mar 2025
Records and Collections This post is to some extent a grab-bag of points of friction I’ve encountered when using records and collections within the election site. Records recap This may end up being the most generally useful blog post in this series. Although records have been in C# since version 10, I haven’t used them … Continue reading Records and…
Storage Since my last post about the data models, I’ve simplified things very slightly – basically the improvements that I thought about while writing the post have now been implemented. I won’t go into the details of the changes, as they’re not really important, but that’s just to explain why some examples might look like … Continue reading Election 2029:…
16 Mar 2025
Data models (and view-models) and how they’re used I was considering using the term “architecture” somewhere in the title of this post, but it feels too pompous for the scale of site. I could probably justify it, but it would give me the ick every time I used the term. But this post will basically … Continue reading Election 2029:…
10 Mar 2025
Technical overview This post is mostly for scene-setting purposes. There’s nothing particularly remarkable here, but it’s useful to get the plain facts out of the way before we get into genuinely interesting design aspects. Just as a reminder, go to https://election2029.uk if you want to see what any of this looks like at the moment. … Continue reading Election 2029:…
Introduction It’s been over 8 months since I started my UK Election 2029 site, and high time that I actually wrote an introduction post so that I can get into more detailed topics later. In 2024, shortly after the UK general election was announced, I created a small site at https://jonskeet.uk/election2024, initially to keep track … Continue reading Election 2029:…
8 Feb 2025
Shortly after writing my previous post, a colleague pinged me to say she’d figured out what was wrong – at least at the most immediate level, i.e. the exception itself. Nothing is wrong with the ordering code – it’s just that the exception message is too easy to misread. She’s absolutely right, and I’m kicking … Continue reading Election 2029:…
7 Feb 2025
I really thought I’d already written a first blog post about my Election 2029 site (https://election2029.uk) but I appear to be further behind on my blogging than I’d thought. This is therefore a little odd first post in the series, but never mind. To some extent it isn’t particularly related to the election site, except … Continue reading Election 2029:…