« The domed drome | Main | New free wallpaper changer »

Delphi 6 vs. Visual C# Express 2005 (Beta 1)

I remember fondly the pleasant days of churning out Windows utility after Windows utility in the RAD world of Borland Delphi 2 and 3. The Object Pascal language was a cohesive delight, and the IDE with "Code Insight" made finding the write variables a breeze. I used Delphi 3 until 2000, when my work took me in other directions.

Seeing the free downloads of the first beta of Visual C# Express, a lightweight version of Visual Studio for C# programming picqued my interest, so I grabbed and installed the hefty download. As well as the program itself, it also wanted to install the MS SQL client, Server Desktop engine, MS XML 6 and the .Net 2 framework beta (if I recall correctly). Anyway, you'd want broadband to get it.

Now, this is hardly a fair or comprehensive comparison. Delphi 6 is three years old, and Visual C# Express is only in its first beta.

Delphi 6 was good because:
  • The IDE was much smaller and lighter, and thus faster to load and exit
  • The IDE did not crash
  • Delphi programs do not require the .Net framework to run
  • Delphi has been popular for such a long time that any problems developer come up against are already documented on the web
Delphi 6 was bad because:
  • The IDE seemed hardly to have been updated since Delphi 3, and so felt old
  • "Code Insight" only worked occasionaly. Usually it didn't pop up any help.
  • The debugger was always a few lines out when flagging errors in my code
  • After a lot of programming in Javascript, C#, Perl and Python, the Pascal language seems overly verbose
  • Lots of work with elements integral to Windows, such as popping up a dialog to select a folder, and working with shortcut files, are reliant on finding and installing third-party components
Visual C# Express was good because:
  • The "Intellisense" was informative and worked perfectly
  • The .Net framework is comprehensive
  • C# is much less verbose than Pascal
  • Modern standards are fully supported and easy to use, such as retrieving and manipulating XML and SOAP
Visual C# Express was bad because:
  • It was a resource hog
  • It produced the biggest crashes I've ever seen, taking down my whole (Windows 2000) machine regularly
  • Developed software requires the .Net framework to be installed