Talk

Fixing time zones for fun - twenty programming puzzles to master internationalization.

Saturday, May 30

15:35 - 16:20
RoomLasagna
LanguageEnglish
Audience levelIntermediate
Elevator pitch

Last year I published programming puzzles for a community of enthusiasts on Reddit and Discord, to better learn Unicode, time zones, etc. Then I gave a few talks at Java conferences, got lots of positive feedback and one complaint: too many Python examples! For PyCon, I’ll do even more of them!

Abstract

Encodings. Time Zones. Accented Characters. Daylight savings time. Do these words make you feel dread and anxiety? Among programmers, these topics are notorious for being the source of subtle, tricky bugs. Yet knowledge in this area is vital. To make this topic fresh & exciting, I created i18n-puzzles.com, inspired by the famous Advent of Code. After all, which programmer can resist a good puzzle?

I published daily puzzles during a period of 20 days in March 2025. Over 300 programmers from around the world competed. I’ll share stories from the community, which gathered to compete for the top spot on the leader board, culminating in a nail-biting finale.

Each puzzle comes with its own story, each puzzle teaches something new. Find a treasure with a UTF-8 validator, fix a banking scam by parsing right-to-left text, upgrade a time zone database in Antarctica to support science. I will pick a few of the puzzles, show solutions from the community (most of them in Python) and I will use these to illustrate common pitfalls related to Time Zones and Unicode.

TagsCommunity, Education, Applications and Libraries
Participant

Martijn van Iersel

Martijn takes an interest in computing, games, and education, and is always looking for ways to combine the three: using games for programmer education. Martijn started his career in research, and obtained a PhD in Bioinformatics at Maastricht University. Nowadays, he develops enterprise software at TOPdesk. In his spare time, Martijn hosts game jams, and develops an educational game for biology classrooms.