Thursday, September 1, 2011

Brainstorming: Delphi Setup Alternative

Correspondent from New York who is relaxing in a huge castle surrounded by moats
(hint: hotel in flooded area).


Corel, Borland, CodeGear, DevCo and Company
Almost every year since 1996, Corel would release a new version of Corel Office. Before Novell brought over WordPerfect Corporation, (Borland brought the rights for Novell Office and divested that right to Corel) WordPerfect was the best DOS-based and Windows-based word-processing editors in the market. WordPerfect was a bit better than Microsoft Word. Your correspondent would use WordPerfect to edit letters.


Corel Quality
Ever since Corel brought over WordPerfect, the quality went downhill. Refering to Corel Office XE5 X5, Corel did not fix the RTF, DOC and DOCX parser, so anything that WordPerfect imports and exports to and from Microsoft Word is garbage (the WordPerfect parser in Microsoft Word 2010 can import corrupted WordPerfect document). Quattro-Pro looks like they did very minor improvements since Borland Office was released. Corel Paradox and Corel InfoCentral still uses the older Delphi 5 files (vcl50.bpl)  and older BDE. The setup for Corel Office was so torturous one wonders who would install this on their computer?


Borland Pascal 7.0 for DOS and Windows setup
A decade ago, your correspondent brought boxes from Borland. The older version of Borland Pascal came with decent documentation, anti-fungal diskettes and quality labeling. The setup package had a script which you could edit and examine. The Windows part had a huge registry file (Win32-subset) which you could double-click in Win3.1 File Manager, import into registry and everything would work. You could run the setup at anytime and re-setup Borland Pascal as you wanted. 


Anatomy of a Delphi setup - how difficult is it to setup?

Assuming that Delphi follows conventional programming practices, stand-alone EXEs and DLLs would be easy to install. Just copy the files into your target computer and run it. That's what Delphi Apps are famous for.



Delphi Directory Anatomy
- Since source code files, text files and demo files would not affect the Compiler Core wherever they are situated, that leaves COM, TLB and NET components to be handled correctly.


- How difficult is it to register a directory full of COM DLLs, COM servers and TLB files? Many installers (including Innosetup) would have no problems with it.


- How difficult is it to re-register or install into GAC NET components and NET DLLs?


- If there is an error, at least put a meaningful error message such as "Your Delphi installation is corrupted and a file is not correctly registered or corrupted. Please see http://(something)/ for a list of files which are needed to be correctly registered. You can run the Delphi Diagnostics utility to check overall installation status."


There does not seem to be so many issues that make the installer so complicated...


Delphi Alternate Setup Idea
How long would it take to write a diagnostics utility that would correctly report the status of each DLL registration status with MD5 checksum, license status, whether or not the files were correctly installed in clear manner? At this moment, you need to go to various Help|About dialogs, look at license manager, run the setup again and hope that everything works.


That diagnostics utility should also activate the MSI setup to re-setup parts or bits and pieces of the setup which were not properly installed or re-activate the license.


Embarcadero should make it easier to re-install RAD studio if the 1GB temporary installer cache is removed or if someone installs trial first and cannot install the full version later.


Embarcadero should use commercial download client in similar idea to the IBM Java download client to deliver their downloads.


Slow downloads can be resolved by putting the RAD studio setup package on the cloud. There are plenty of cloud delivery services which offer fast download times and low-latency.


That would prevent all the hair-pulling, mysterious Delphi install errors and insane download times.


The diagnostics utility should have an option to remove all registry keys, nuke or wipe out Delphi for a fresh install. Currently, if RAD Studio install fails, you are left with one choice: re-install Windows all over again just to install RAD Studio.


Whatever you do, don't name the Delphi Install and Diagnostics utility - the DelphiHaters' Duke Nukem.

0 comments: