News, articles, and notes
Writing on Delphi, the web, and the seam between them.
Deep dives, opinions, project notes, and conference reports. Updated whenever something is worth saying.
Regular Expressions in Delphi, Part 1: Reading the Squiggles
Every developer has met a regular expression in the wild and quietly flinched. Something like this: It looks less like code and more like the cat walked across the keyboard. And for a long time in the Delphi world you could get away with never learning it —…
- Delphi
- Regular Expressions
- RTL
- Strings
- Object Pascal
Read article
Free to read, not free to make. Everything here is published without ads or paywalls, funded by readers.
How to support01 — More recent
See all 89 →JSON to Delphi Classes: The Popular Version Isn't the Live One
A few days ago a message came in through the contact form on this site. Jens Borrisholt had been reading the JSON and RTTI posts and thought one of his open-source projects might be a fit: a tool that takes an arbitrary JSON document and…
- Delphi
- JSON
- RTTI
- Open Source
- GitHub

RTTI Part 3: Invoking Methods — and a Real Tool
We've come a long way. Part 1 explained what RTTI is — reflection, code that inspects types it didn't know at compile time — and introduced TRttiContext and TValue. Part 2 read an object's properties, fields, and attributes, and wrote…
- Delphi
- RTTI
- Reflection
- RTL
- Object Pascal

RTTI Part 2: Reading Types, Properties, and Attributes
In Part 1 we established the idea: RTTI is reflection — code that inspects and manipulates types it didn't know at compile time — and it all starts from two records, TRttiContext (your session with the reflection system) and TValue (a box…
- Delphi
- RTTI
- Reflection
- Object Pascal

What Is RTTI? Delphi's Reflection, Part 1
Here's a question that sounds impossible at first: can a program inspect its own code while it's running? Can it look at an object it's never seen before, ask "what properties do you have, what are they called, what types are they," and…
- Delphi
- RTTI
- Reflection
- RTL
- Object Pascal

DateUtils, Part 2: Time Zones, UTC, and ISO 8601
There's a category of bug that's almost a rite of passage. The app works perfectly on your machine. It works in testing. Then it ships, and a customer three time zones away reports that appointments are an hour off, or a report shows…
- Delphi
- DateUtils
- Time Zones
- UTC
- ISO 8601

DateUtils, Part 1: Modern Date and Time in Delphi
Date and time code has a way of quietly humbling even experienced developers. You need "the first day of next month," or "how many days until the deadline," or "the same time yesterday," and you find yourself reaching for DecodeDate, doing…
- Delphi
- DateUtils
- Date and Time
- RTL
- Object Pascal

02 — The archive
82 more articles, back to 2023.
Every article ever published, grouped by year and month.