David Vacanti is a long time Delphi developer for over 26 years. He submitted a showcase entry (PROLINES 8: An Incredible Marine Vessel Design Software Powered By Delphi) into the Delphi 26th Showcase Challenge and we interviewed him to find out more about his journey with Delphi. You can find out more about his PROLINES 8 software and other software he has built in Delphi over on the product page of his website.
Table of Contents
When did you start using RAD Studio/Delphi and have long have you been using it?
I have been developing my software since the days of Turbo Pascal. I converted all of my software (I have multiple programs named PROLINES, WINGS, LOFT, FOIL) to Delphi when the first version came out for WIN 3.1. So I have been using Delphi since the beginning 26 years ago.
What was it like building software before you had RAD Studio/Delphi?
I initially began by creating my own pull down windows software using a set of tools called Metagraphics and Turbo Pascal. I had to create my own pull downs, detect clicks on window items, create dialog windows etc. I was thrilled when I discovered Delphi and immediately began to learn OOP and Windows programming with Delphi. The Metagraghics package provided drivers for the best known graphics cards of the time but inevitably they failed to keep up with the constantly changing world of graphics cards. As a result some users of my software were forced to use it in very low resolution (Old VGA and EGA) default drivers. Printing the screen was a mess etc. With the advent of Delphi for Windows – I was able to massively improve my product offerings and have continued to update and improve them over the last 20 years. Most recently I have been using the latest versions of Delphi to provide more access to WINDOWS 10 features and especially provide superb graphics resolution for my heavily graphics oriented software with the new DPI features. I had all but given up being able to do really fast 3D rendering of the Hull, Keel and Rudder designs created by my users until Firemonkey. I have chosen to keep my Windows 10 programs (I have over 150,000 lines of code invested in the 4 programs PROLINES, WINGS, FOIL and LOFT) and will add 3D rendering (TMesh with NURB Surfaces) by making a separate FIREMONKEY program to be called by my existing VCL based programs when 3D rendering is desired. Previously I had used DLL access to OpenGL but this DLL became outdated and was no longer supported by the original author. One of the key values of the most recent version of Delphi is providing enduring support for legacy programs that are now all over 25 years old.
How did RAD Studio/Delphi help you create your showcase application?
Delphi has been critical to me for over 25 years as I developed 4 major programs for Boat Design and Analysis Software (PROLINES, WINGS, LOFT and FOIL). Because of the success of Delphi as a RAD system I have been able to find complementary products for software copy protection and advanced 3D Graphics before the advent of Firemonkey. The ability to quickly generate beautiful dialog boxes for data entry and presentation of analysis results. The inclusion of TCHART has been superb for my very technical engineering software that frequently generates data as a function of speed, angle etc.
What made RAD Studio/Delphi stand out from other options?
The very fast learning curve, relative ease of learning the Delphi IDE and built in support for graphics (2D/ 3D Computer Aided Design). OOP language is excellent for my engineering software as it provides excellent means of variable typing and computational accuracy. Generating complex calculations / formulas in Delphi is critical to my success. Because I use NURB Surfaces (Non-Uniform Rational B-Splines) my calculations are recursive as the formulas are not closed form but use U / V parametric terms. Therefore generating planar cuts through a NURB surface requires special algorithms that use iterative solutions. Therefore computational speed of the compiled software is critical to have a useful experience for users. I could not choose to use any interpreted language for my applications as the computational load would result in dramatic usability issues with large lags and delays in screen updates etc. Computational speed of Delphi allows real time editing and updating of the entire NURB surface regardless of complexity of the shape.
What made you happiest about working with RAD Studio/Delphi?
Rapid product development, support of 3D CAD type drawings for rendering, high speed calculations by my software, support for High DPI monitors that are critical to fine design details in CAD applications. I am also very pleased with debugging facilities that have helped resolve complex issues in programs that run nearly 50,000 lines of code.
What have you been able to achieve through using RAD Studio/Delphi to create your showcase application?
I created a long lived business in CAD tools for boat and yacht design that has now been in use for over 30 years (before Delphi – I used Turbo Pascal). That business allowed me to save for two college educations, cash savings, two weddings for our children and stability for us over the last 3 decades. Delphi was a huge leap in the ease of creating WINDOWS based software for me. I had no hope of moving my TP products to Windows and was very concerned that I would lose my business, until Delphi appeared and saved my future! At one point I was associated with 3 different America’s Cup challenge teams and wrote many articles in national (USA) magazines on Boat and Yacht Design for speed and efficiency. I did all this while working full time as an Electrical Engineer developing state of the art low power RADAR systems first for Boeing Aerospace and later for Honeywell Aerospace in Advanced Technology. I have 48 patents to my name in the US and several more overseas in the EU. Having a fast, fun, easy to debug development system has been a God send to me as a developer.
What are some future plans for your showcase application?
I plan to continue to add new computational features to all of my programs, starting with PROLINES 8, but extending to WINGS, LOFT and FOIL. I also plan to re-create 2 other programs that have not worked on new PC’s since WIN 3. I will use all of the RAD features of Delphi and look forward to adding to my software offerings. I also plan to add excellent rendering features to all of my software by creating a master Firemonkey based rendering program that can be called by all of my existing software and that will eventually allow my clients to create fully rendered versions of their designs that will include keels (sailboat), rudders, deck structures and more.
Thanks David! You can check out his software’s showcase entry below.