There are known knowns; there are things we know we know. We also know there are known unknowns; that is to say we know there are some things we do not know. But there are also unknown unknowns – the ones we don’t know we don’t know. — Donald Rumsfeld Trust, but verify. — Ronald…
Author: admin
Delphi and AI
I confess that I have been slow on the uptake with respect to using AI in my coding. It has not been a lack of interest, but other concerns: At the beginning of August, I retired, so whether to use AI at all is a matter of my own judgment now. During my employment, and…
Delphi 13 Florence has shipped!
The latest version of Delphi is now shipping, and is an exciting release. A full list of changes and new features would be far too much for this post, but I will be posting about particular items of interest. Ternary Operator For years, many users have expressed the desire for Delphi to support a ternary…
The Problem of Analytics
Analytics are all but essential to software development if you wish to be responsive to your users. But in commercial apps, the problem of analytics, is trust concerns in your customer base. Famously, Microsoft introduced them years ago, and triggered a firestorm of complaints — it seemed that analytics were about as popular as Clippy….
The Joy of Sets
One of the great features of Object Pascal is the inclusion of sets in the language.Other languages have added libraries in support of sets, but Pascal remains unique in having always supported them. Sets are often useful in combination with enumerations. Used together, they provide a very readable approach to handling things such as user…
Times Change; We Must, Too
It is odd that as we look forward to new tools, like the just released RAD Studio 12.2 Athens, we may overlook our own practices which hobble the tools. The case at hand is configuring a VM for Athens, and for that matter, for Alexandria. I am embarrassed to say that my VM configuration for…
RAD Studio 12.2 is Released!
This week saw the release of RAD Studio Athens 12.2. It is a big update, with many great features, as well as having received many bug fixes. My focus continues to be Windows desktop applications, so I will not do more than mention that there is much in the new release for those who work…
The Simple Things…
I recently opened up an interesting piece of software from a github repository. I will leave it unnamed, as it serves as the trigger for this article, and demonstrates some poor practices I have often seen in legacy projects. You might think that the assignment of types to variables and parameters would be a simple…
Programming to an Interface
Nick Hodges has made “program to the interface, not the implementation” a mantra for good practice. And I completely agree. My focus continues to be on legacy projects, as most of my work lies in that area. As much as I love Delphi 12 Athens, I spend the majority of my time in Delphi 2007,…
Strategy for Global Variables
Global variables are generally considered to be bad. This is especially the case where state variables are concerned. However, as my focus has been, and continues to be, on legacy projects, global variables are a reality to be managed. Maintaining a project which has many global variables is a challenge. Depending on the names which…