Max Duval
banner
mxdvl.com
Max Duval
@mxdvl.com
Web + Data + Tools + Design

I lead UK property data exploration & visualisation at Hometrack on data.hometrack.com

(parfois j’écris en Français…)
“Make the change easy, then make the easy change” and all that: taro.codes/posts/2019-1...
Make the Change Easy, Then Make the Easy Change · Taro
taro.codes
February 17, 2026 at 7:36 PM
This is positively awful, but here’s one way you can turn it back on them and ask that each atomic change be extracted into its own PR that can be explained, tested and reviewed in isolation. The work of turning code into something meaningful is what good engineering is about!
February 17, 2026 at 7:31 PM
I thought it was impossible to break them in half and it would always produce at least one extra small part… how did he manage it?
February 13, 2026 at 1:42 PM
but if there are less than 40k benches total… that’s well within the 50k allowed by the £80 one-time purchase fee?
February 12, 2026 at 8:39 PM
Regarding affordable alternatives and thinking back to my PHP days, I’ve found opencagedata.com to be great for reverse geocoding and bunny.net a powerful CDN with great caching controls.
OpenCage - Easy, Open, Worldwide, Affordable Geocoding and Geosearch
An easy-to-use forward and reverse geocoding API. Worldwide coverage. Affordable, predictable pricing. Open data.
opencagedata.com
February 12, 2026 at 6:50 PM
Can’t say it’s too didactic though… you still need to understand how to lay out the elements that are actually being scrolled past and ensure they are tall enough so it’s unambiguous which one is actually in view, etc.
February 11, 2026 at 1:28 PM
If React’s a requirement, I’d get inspiration from a custom hook that identifies when an element is in view, and use that to drive which div to show: github.com/guardian/dot...
github.com
February 11, 2026 at 1:25 PM
alphabets are fascinating bsky.app/profile/qntm...
In The Library of Babel (1941), the books are written using an alphabet of just 22 letters. Does anybody know why this is? And which specific letters they could be?
Oh time thy pyramids
February 8, 2026 at 11:58 PM
Sadly they were missing a very important test so I’ve offered my services free of charge: github.com/qntm/abcdefg...
Test Character Repetition by mxdvl · Pull Request #56 · qntm/abcdefghijklmnopqrstuvwxyz
Why? Best to guarantee that each character is unique!
github.com
February 8, 2026 at 10:43 PM
It’s great that they’ve kept on top of the last two breaking changes in the modern English alphabet.
February 8, 2026 at 10:36 PM
on macOS or iOS you can just hold the key for a few seconds… on Windows 🤷
January 28, 2026 at 9:06 PM
You don’t use Canadian Multilingual Standard where the accented letters are always present? Hands down best keyboard layout for Western European languages, don’t sleep on it 😉
January 28, 2026 at 6:49 PM
🙋
January 25, 2026 at 10:07 PM
Sort of weirded out by how fast I found it. Must be luck…

I FOUND TORMENT!!!

🧸 Cruel Toys #11
⏱️ 0:17

cruel.toys?date=2026-01...
Cruel Toys - Daily Word Hunt
A daily word-finding puzzle with a cruel twist: the grid only contains letters from the target word. Can you find the hidden pattern?
cruel.toys
January 12, 2026 at 6:06 PM
Yeh I think the shadows are off…
January 11, 2026 at 9:41 PM
function transform(state: Readonly<State>): State {
// do something/nothing
}
December 20, 2025 at 1:13 AM
I think this is especially true if your state is immutable — otherwise one might argue the cleaner code is to conditionally mutate the current state if and only if there’s a matching key in the transformer.
December 20, 2025 at 1:12 AM
That is to say: “there once was”
December 17, 2025 at 10:20 PM
I Am Rich - Wikipedia
en.wikipedia.org
December 17, 2025 at 10:19 PM
Oh they also have a doc outlining their costs, v cool!

docs.google.com/spreadsheets...
lichess costs.xlsx
lichess costs.xlsx
docs.google.com
December 17, 2025 at 1:41 PM