July 18, 2026
You're Already Surrounded by JSON — Here's What It Actually Is
Open your editor right now and think about the last thing you built that talked to the outside world. A REST call to a payment provider. A config file your app reads on startup. A webhook from GitHub. The response from a weather service, a…
July 17, 2026
List a Folder in One Call: The IOUtils Cookbook (2/2)
In Part 1 we met System.IOUtils and its central surprise — that TFile, TDirectory, and TPath are records, not classes, so you call them through the type name and never Create or Free a thing. We put TFile through its paces: reading a whole…
July 16, 2026
Read a Whole File in One Line: The IOUtils Cookbook (1/2)
Here's a line of Delphi almost every one of us has typed: It works. It has worked since the last century. There is nothing wrong with it. But somewhere along the way — quietly, without a fanfare that reached most of us — the RTL grew a…
July 14, 2026
Web Services Are Just Endpoints: REST and JSON in Delphi (5/5)
Part 4 ended on a quiet little bombshell. We built a web server with WebBroker, watched a browser send GET / down a TCP connection, and sent back HTML — and then I pointed out that nothing in HTTP says the response has to be HTML. A…
July 13, 2026
How a Web Server Actually Works: HTTP for Delphi Developers (4/5)
At the end of Part 3 we did something slightly ridiculous: we opened a raw TCP connection to a web server and typed GET / HTTP/1.1 into it by hand — and the server answered us with a page. No browser, no framework, no components. Just text…
July 12, 2026
TCP Connections and Sockets in Delphi: Networking for Devs (3/5)
In Part 1 we learned how to name a machine and a door on it — IP addresses and ports. In Part 2 we learned how names become addresses — DNS, the hosts file, and DHCP. So you can now say, precisely, "the service at 192.168.1.20, port 8080."…
July 11, 2026
DNS, the hosts File, and DHCP: Networking for Delphi Devs (2/5)
In Part 1 we established the numbers: every machine on a network has an IP address, 127.0.0.1 is always this machine, and a port picks the specific program behind that address. Numbers all the way down. But here's the thing — you almost…
July 10, 2026
IP Addresses, Ports, and localhost: Networking for Delphi Devs (1/5)
There's a moment that finds every Delphi desktop developer eventually. You've built serious software for years — forms, grids, business rules, a database humming along through FireDAC or, back in the day, the BDE. Then the requirement…
July 9, 2026
Interfaces in Delphi: The Feature Many of Us Skipped
Here's something I've learned from years of working with Delphi teams: you can write excellent, shipping, money-making software for twenty years and never once declare an interface. Many of my customers have done exactly that. Classes,…
July 8, 2026
Delphi to Next.js: The Complete Series, and the Proof It Works
In late 2025 I published a five-part series arguing that a Delphi developer — someone with decades of Object Pascal muscle memory — could pick up TypeScript, React, and Next.js faster than they feared, and that doing so was a sound…
July 7, 2026
Collections in Delphi and Spring4D
Open almost any serious Delphi project and you'll find the same two friends everywhere: TList and TDictionary. They're good. They've earned their place. For a huge amount of everyday work, they are genuinely all you need. But every so…
July 6, 2026
Give Your Delphi App a Brain — Without Sending a Single Byte to the Cloud
Your Delphi application already works. It has fifteen years of business logic baked in, forms your users know in their sleep, and a database schema that has survived three Windows versions. The last thing you want to hear is "rewrite it."…
July 5, 2026
A Virtual Machine Is Not Version Control — And Here's What to Do Instead
If you speak at developer conferences often enough, the same conversation keeps coming back around. There are plenty of talented developers out there — often Delphi developers, often people who have shipped serious software for twenty…
July 2, 2026
Four Hours to Migrate a 6-Year-Old Delphi Multi-Tier App
I want to be very precise about the claim in that title, because it sounds like the kind of thing people say to sell a course.
June 20, 2026
A Recommendation Is Not a Verdict
Let me be blunt: when I share a Delphi component on this blog, I am not handing down a judgment from the mountain. I am not declaring everything else obsolete. I am not saying I have never heard of your favorite alternative. I am a…
June 18, 2026
Free Barcode & QR Code Generation for Delphi VCL
Barcodes and QR codes are everywhere. Product labels, warehouse management systems, invoices, event tickets, asset tracking, mobile deep links — if you're building business software, sooner or later someone will ask for them. My friends at…
June 15, 2026
The One Who Got Away: Anders Hejlsberg, Decades Later
A lot of long-time Delphi developers carry a small, fond nostalgia. We don't talk about it much, but it's there. It's the feeling you get when you read about Anders Hejlsberg shipping yet another world-changing thing — and you remember…
May 26, 2026
TMS Data Modeler is now on GitHub — and that's a bigger deal than it sounds
If you've been writing Delphi for any length of time, you know TMS Data Modeler. It's the visual ER-diagram tool that quietly sits on a lot of our machines — the one you reach for when you'd rather draw a schema than hand-write CREATE…
May 9, 2026
No Developer Should Be Without Version Control: Set up your own private GitHub with Gitea in 10 minutes
At a recent conference where I had the pleasure of speaking to a room full of talented Delphi developers, I once again — as I do at every event — asked the audience to raise their hand if they used version control in their daily work. The…
April 2, 2026
Spec Coding with Delphi: How I Built a Native Game Save Backup Tool in One Afternoon with Claude Code
This is not an April Fools joke. This is a real project I built in an afternoon using Claude Code and Delphi. It is a command-line tool that scans my PC for installed games, identifies their save file locations, and creates backups with…
February 23, 2026
Adapt or Disappear: How AI Turned a 2-Year Project Into a 1-Week Sprint
The Delphi community has strong opinions about AI — and I get it. Privacy concerns, code quality worries, the instinct that real developers should not need a machine to help them write code. I have heard every argument in the book, and…
February 21, 2026
AI Won't Replace Delphi Developers. But...
The other day I saw a post on a Delphi developer forum. A fellow developer had been struggling for days trying to convert a bitmap to grayscale. Days. He had tried multiple third-party components, downloaded libraries, read through…
February 10, 2026
TMS Training Days 2026 in Rotterdam – April 23-24!
I'm thrilled to announce that I'll be speaking at TMS Training Days 2026 in Rotterdam, and I hope to see you there! After successful events in Lille and Bruges, the TMS team is bringing this incredible two-day developer conference to the…
January 5, 2026
RAD Is Not No-Code: Why Delphi Still Dominates Windows Desktop Development After 30 Years
The no-code movement is having its moment. Articles proclaim its death, its rebirth, its transformation. But amid all this noise, there's a critical distinction being lost: Rapid Application Development (RAD) is not no-code, and the…
January 2, 2026
From 30 Years of Delphi to the Modern Web: My Journey Into 2026
A personal reflection on three decades of desktop development, and what comes next --- I started with Delphi before most developers today wrote their first line of code. Over 30 years, I watched Borland rise, worked inside the company, and…
December 30, 2025
GitHub Is Not a Backup (And Why That Matters)
I came across something this morning that made me pause: a developer celebrating their move from daily ZIP files to GitHub, calling it their "backup solution." While I'm genuinely happy they've discovered version control, this statement…
December 29, 2025
Random Numbers in Delphi: When the RTL is Good Enough (And When It Isn't)
I recently came across several Delphi implementations in which developers used their own random number generators, apparently unaware of—or unconvinced by—the built-in Randomize and Random functions that have been part of the RTL since…
December 27, 2025
TStringList: The Swiss Army Knife You're Probably Underusing
If you've been writing Delphi code for any length of time, you've used TStringList. It's the go-to container for managing lists of strings. But here's the thing: most developers only scratch the surface of what this versatile class can do.…
December 21, 2025
🎅 Santa's Sleigh: A Festive Delphi VCL Experiment 🎄
As the holiday season wraps us in its magical embrace, I wanted to share a fun little project that perfectly captures the Christmas spirit while showcasing the power of AI-assisted Delphi development. Meet Santa's Sleigh - a delightful VCL…
December 17, 2025
**A Christmas Carol for Delphi Developers: “AI Humbug!” … or Maybe Not? 🎄**
Every December, you can hear it echo across developer forums: “AI? Bah, humbug! It doesn’t help with real Delphi code!” If you’ve spent decades refining your Delphi craft — from Turbo Pascal to today’s VCL and FireMonkey projects — you…
December 11, 2025
Looking Forward to Speaking at TMS Training Days 2026 in Rotterdam!
I’m very excited to share some great news — TMS Software has announced the next edition of TMS Training Days, which will take place in Rotterdam, the Netherlands, on April 23–24, 2026! This isn’t my first time being part of a TMS event,…
November 21, 2025
Why IBExpert Remains My Go-To Tool for Firebird Database Management
After 30 years in software development, I've learned that specialized tools almost always outperform generalist solutions. Nowhere is this more evident than in database management, where IBExpert stands as the undisputed champion for…
November 12, 2025
Why TMS XData Is My Go-To Choice for Building Web Services in Delphi
After years of working with various frameworks and tools for building web services, I've come to a clear conclusion: TMS XData is the best tool for the job—if you're a Delphi developer. Now, I'll be upfront—I've been doing extensive work…
September 30, 2025
Why You Need to Switch to Delphi 13 and its 64-bit IDE Yesterday
For most Delphi developers, the switch to 64-bit isn’t obvious at first glance. After all, for decades since Delphi 2, we’ve been working quite happily in a 32‑bit IDE, building applications, connecting to databases, and delivering…
September 11, 2025
RAD Studio 13 Florence has been released
Exciting times being a Delphi developer! Embarcadero has just released RAD Studio 13 Florence, bringing a host of new features and improvements to the Delphi and C++Builder development environments. This release focuses on enhancing…
August 25, 2025
How to configure Linux for Delphi development
Delphi has long been a powerful tool for Windows application development, but with the introduction of Linux support in recent versions, developers can now leverage Delphi's capabilities to create applications for Linux environments. This…
May 17, 2024
Cherish the Past, Embrace the Future: Web development with Delphi and TMS WEB Core
This week, I watched several technical sessions from Google I/O and React Conf 2024. Two conferences that contain a plethora of information about the latest trends in web development. It's fascinating to see how the web platform has…
May 12, 2024
Bridging Worlds: Delphi, TMS WEB Core, and the Evolution of Hybrid Desktop Applications
In the ever-evolving landscape of software development, the boundaries between different platforms and technologies continue to blur. One such convergence is the fusion of web and desktop applications, facilitated by powerful tools like…
March 31, 2024
Coming soon! Image gallery from conception to deployment
In this upcoming video series, I will show you how to create a modern, responsive image gallery with TMS WEB Core. In addition, you will learn how to integrate the Pexels API. Starting with basic principles of web development using…
February 13, 2024
Results of the poll: HIW LIVE
I just wanted to give brief feedback on the results of the poll from the beginning of this month. It has become very much clear looking at the results that there is little interest in LIVE HIW seminars with the opportunity to ask questions.
February 12, 2024
Delphi turns 29! Join us for the celebration!
To the Delphi community, February 14 is not only known as Valentine's Day (you're welcome for the reminder 😁), it is also Delphi's birthday. This year, it will turn 29 and Embarcadero -- Ian Barker to be more precise -- will be hosting a…
February 10, 2024
Support my projects with GitHub Sponsors
In the ever-evolving landscape of technology, community-driven support plays a crucial role in fostering innovation and growth. Today, I'm thrilled to share a significant step in my journey as a Delphi enthusiast and content creator – I…
January 27, 2024
POLL: LIVE seminar about Web development ?
In recent weeks, I have gotten inquiries about a live seminar to build a full stack project with Delphi. With regard to scope, something like my latest video series with the ability for you to interact and ask questions. The seminar would…
January 25, 2024
FREE video series published
Here's just a heads up that my latest video series named "Modern Delphi Web Development" has been completely published by TMS Software on YouTube. It consists of 8 episodes with a run-time of over 3 hours! A full table of contents with…
January 3, 2024
NEW 'How it works with Holger' soon
Happy New Year! 🎉 I hope you had a peaceful and quiet Christmas break and arrived healthy and sound in 2024! We're jumping right into some Delphi fun with a new video series.
December 26, 2023
Upcoming content in 2024
I hope you all had a wonderful Christmas break! After releasing my latest book "Modern Software Development with Delphi" (see below) just in time for the holiday and relaxing a bit, I also used the time to consider my upcoming video and…
December 19, 2023
New Book: Modern Software Development with Delphi
As announced yesterday, my new book for Delphi developers has been published. Once again, I decided to write a hands-on book. The difference to all previous books: It will present how to develop a complete application with Delphi from…
December 18, 2023
Christmas 🎄 surprise!
I admit this blog has been a bit quiet lately, but there has been a good reason for it. I just uploaded my next Delphi book to Amazon for publication!
September 15, 2023
Delphi Coding Bootcamp 2023 Session Replay
It was my pleasure presenting the power of TMS WEB Core in this year's Delphi Coding Bootcamp. In particular, I show how easy it is to create applications for the Web if you are a Delphi developer already used to writing desktop…
July 2, 2023
Delphi: Convert any string to date - even "no date"
Converting strings to dates never seemed to be straightforward. First, specifying the source for all the different date component was difficult. Second, if the conversion is unsuccessful and "no date" has been defined, it could not be…
June 29, 2023
TMS Training Days 2023 Session Replays
For the first time in years, TMS was able to celebrate Training Days in-person again! This year, TMS introduced us to the city of Bruges in Belgium. It was a wonderful event with a lot of opportunities for Delphi developers to mingle and…
June 24, 2023
Hello Holger's Code, goodbye Wordpress!
Welcome to my new blog! Once again, it is time for an update. In the last 20 years, we have come a long way. It seems like yesterday I started blogging, but as this post will show, there is quite some history involved.