Java Long versus long in Spring Boot

Recently I’ve had to jump onboard a Java Spring Boot project. Not having used Java for a long time, I was surprised that my code was throwing null pointer exceptions (NPEs). In C#, I rarely encountered an NPE. Indeed, I thought the new compiler work on null-reference types was a waste of focus. The only […]

Deleaker – Delphi Leak Profiler

Introduction In computer science, a memory leak is a type of resource leak that occurs when a computer program incorrectly manages memory allocations. One of the more challenging aspects of developing in a language without automatic memory management (i.e. a garbage collector or a referencing counting mechanism) is ensuring that your application does not leak […]

Turkey Embraces Delphi

Many people are not aware that in 2017 Delphi was selected as a primary development tool for all South African high schools: “Delphi is a great language that helps our students not only learn programming, but also extend their analytical skills for many other subjects. For us, the ability to standardise on a consistent, compatible […]

WMI in Delphi and VBScript

Purpose The purpose of this article is to provide a very basic introduction to WMI for Delphi developers who are unfamiliar with it. It contains example code to query WMI using Delphi. What is WMI? WMI (Windows Management Instrumentation) is a technological invention of Microsoft, whose purpose is to take care of the different operational […]

Gif Animation in Delphi FMX

Recently my wife asked me to help with an urgent request: a simple animation for a family dinner presentation. It was to be the last slide of the night, to cheer everyone up. She had two animated gifs, the first from Quentin Tarantino’s famous Pulp Fiction dance scene, and another of an unknown origin. The plan […]

Delphi RTTI and the Linker

Introduction Like C# and Java, Delphi makes rich runtime type information available to developers, facilitating the use of reflection. Reflection is just another paradigm, but incredibly useful for performing certain tasks. For example, one of the tasks I use reflection for is to discover classes decorated with a SystemInitializer attribute on application startup. Instead of […]

One Ring to Rule Them All

One of the reasons I am such a big fan of Delphi is you can build 80% of your application on Windows, then for the last 20% you work with devices. Sure it’s not hot reload, but arguably it’s just as efficient, especially with 3 second compile speeds in a RAD environment. When you’re ready […]

Delphi the Solution

Delphi Microservices: This is a nice webinar explaining how Delphi was leveraged to build a great company. But then management started listening to Java and SAP consultants to move away from Delphi. After two failed attempts, and a lot of wasted money, they gave the Delphi team a chance: