![]() |
![]() |
![]()
| ![]() |
File | New Directions / Commentary
The Case for Delphi
Just when you thought you could relax and enjoy programming with the best Windows development tool, the unthinkable has happened. Your boss, who possesses about five percent of your programming knowledge, is raising questions about the continued use of Delphi.
In the past year, I saw two threads on two different Internet lists dealing with this very scenario. One such thread began like this: "I have recently started developing with Delphi and now our IT department is questioning our choice of Delphi instead of the more mainstream MS products. They are concerned that by using Delphi we will not be able to integrate into new technologies like Office 2000, etc. unless we are using Visual Basic/VBA. I have tried to convey to them that everything that can be done in VB/VBA can also be done in Delphi faster with better end results. What they are looking for are reasons why Delphi is indeed better. If I can't provide a solid list of reasons, I may be forced to switch to Visual Basic, at which point I would just as soon use C++ since the learning curve is not that much greater than the mess in VB. It amazes me to have to write hundreds of lines of VB code to do something that could be done [with] drag and drop in Delphi."
Immediately jumping into the discussion, I pointed out that with this last statement, the gentleman had already begun to develop his rationale for continuing to use Delphi. The many answers that followed over the next week or so provided a wealth of additional arguments. It also helped me better understand some of the important differences between Delphi and VB. I must confess that I've never tried VB. I did try Basic for a few months in the early 1980s, but once I tried TurboPascal 2 I knew I had found the answer to all of my programming needs. I never looked back. Let's examine some of the pro-Delphi arguments that developers contributed to this thread.
Practical advice. One contributor suggested this very practical and powerful approach: "Ask them just what they think Delphi can't do, and show them they're wrong! Borland's Web site does a good job of pushing the various capabilities Delphi has, including dealing with each of MS's new fads." But, how can you really get that point across? A developer who programs in both Delphi and Visual Basic made this practical suggestion: "My advice to you would be to let a VB programmer in your IT Department have an honest go at trying Delphi for a couple of weeks and let him or her provide you and your management with their opinion. That is what I did when Delphi 1 came out - I tried it, I liked it and I have been working on it ever since."
If your manager thinks of himself or herself as a "hands-on engineer" and would prefer to see both tools in action, you might try this approach: "Just make two programs, one in VB, and one in Delphi. Program an intentional error in both, and look what happens. The Delphi app will stay after the error message appears. The VB app will disappear after the 'Run time error number XXXX' message." Now, exactly how do we define RAD?
Some would argue that there's no better way to demonstrate the power of a programming language than by showcasing applications written with the language. One individual provided some examples of programs he'd written in Delphi. These included: 1) a program to remap and unmap network drives in Windows while eliminating their letters; 2) a template extender for the Windows New command; 3) an anti-virus program for a network that can be automatically updated with every login; and 4) a replacement for Netscape's setup program that lets you enter all your configuration information, such as e-mail, homepage, and bookmark locations as part of the setup. I'm tempted to devote an entire column just to a survey of some of the great applications written with Delphi.
Some one-liners. If you're looking for a quick list of Delphi's strengths, here are some of the one-liners I encountered in these messages. Some deal with Delphi's underlying language, Object Pascal, some deal with Delphi's ability to work at a low level, others deal with the kinds of applications you can produce in Delphi, some relate to Delphi's component capabilities, and some of them highlight Delphi's powerful database and Web application capabilities. With minimal editing, I present them in the order encountered:
Arguments from the experts. Different arguments will work with different managers. Some managers will be moved by pure logical arguments; others by emotion and threats ("If you take away my favorite language, I'll leave, gosh darn it!"); still others by the words of established experts, particularly one who has switched from Visual Basic to Delphi. If you've been a regular Delphi Informant reader, you'll recall a comparison of Visual Basic to Delphi by Bruce McKinney in the April, 1998 issue. As I recall, it was very thorough, fair, and balanced. If you'd like to find out in more detail why this recognized VB Guru and author of Hardcore Visual Basic [Microsoft Press, 1997] decided to leave his "favorite language," surf on over to http://www.devx.com/upload/free/features/vbpj/1999/mckinney/mckinney1.asp. He spares none of the gory details. In the process, you'll find a plethora of strong, well-reasoned arguments for sticking with Delphi.
However, McKinney is hardly the only respected writer in the field who is a strong advocate for Delphi. The individual who contributed the URL above to the discussion also provided two quotes from Bill Machrone in PC Week: "Of the 12 major large-scale projects being developed by my company, four are Delphi, six are VB, one is C++ and one is a complete Internet project. Of the 12 projects, only the Delphi projects are on budget, on schedule, are meeting the performance requirements, and have the highest customer satisfaction." (Bill Machrone, PC Week, March 31, 1997.) This sounds almost like a Borland advertisement for Delphi. And yet it's an independent assessment by a respected writer. Here's another one: "I think it's the finest visual development environment available today. It's easy enough for a neophyte to produce simple, robust applications, and deep enough for an expert to create exciting, highly customized programs. The resulting code is faster and smaller than Visual Basic's. Delphi's Language Pack makes it the choice product for developing internationalized products." (Bill Machrone, PC Week, March 10, 1997.)
In addition to the Web site I just mentioned, there is another one that includes a link to McKinney's article and many others in a Web article entitled "Delphi vs. Others" at http://delphi.miningco.com/library/weekly/aa042799.htm. Most of the articles are comprehensive comparisons of various RAD environments, such as Delphi, Visual Basic, and PowerBuilder.
Conclusion. As with many threads, this one eventually expanded to related topics. One had to do with why we might face such a problem at all, and raised the issue of Borland/Inprise's marketing of Delphi. One individual put it in very strong terms: "Wake up Inprise ... You have the best tools under your eyes! I love Delphi, and I'd never give it up in all my life. This means that I want to see it survive well into the future. Get yourselves some new radical advertisers and shamelessly promote your wonderful [tools]. With proper marketing Delphi can once again become one of Inprise's most powerful and versatile languages used by a majority of the IT industry."
Many of us, including this writer, would certainly qualify as Delphi zealots. If we're honest, we must admit that there's a place for Visual Basic, and other development languages. Another contributor to the thread summed it up better than I could hope to with the following words: "Not a language point, but an argument point would be that an excellent VB programmer may or may not know something about the OS, the API, memory management, and the hardware architecture of the PC, and how to interact with it. An excellent Delphi programmer will likely know a good bit about all of these. The fact is, with Delphi, there's always an option, always a way to get it done. With VB, sometimes there's no way to do what you want to do."
Until next time, enjoy working with Delphi, the most powerful Windows development tool ever!
Alan Moore is a Professor of Music at Kentucky State University, specializing in music composition and music theory. He has been developing education-related applications with the Borland languages for more than 10 years. He has published a number of articles in various technical journals. Using Delphi, he specializes in writing custom components and implementing multimedia capabilities in applications, particularly sound and music. You can reach Alan on the Internet at mailto:acmdoc@aol.com.
|
![]() |
|