Tim Anderson’s ITWriting

Tech writing blog

August 13th, 2008

What’s new in Delphi 2009

Today I viewed David Intersimone’s Live Webinar on what’s new in Delphi 2009, code-named Tiburon.

This is a Win32-only release. I think you will want it (if you use Delphi), if only for the new language-level features: generics, anonymous methods, and unicode strings. I grabbed a few screens from the presentation. Generics:

Unicode – here’s the TEncoding class:

and Unicode in action:

There are also some new components, such as a neat collapsible panel called TCategoryPanelGroup, TBalloonHints, and Office-2007 style ribbon controls.

The ribbon controls interested me because I am wary of Microsoft’s Office ribbon patent. CodeGear/Embarcadero seems to be wrapping Microsoft’s controls*, as used by the CMFCRibbon* classes, which as I understand it are not the actual controls used in Office 2007 but share their look and feel. You therefore have to agree to Microsoft’s license for the Fluent UI in order to use the controls.

There are also major changes to the DataSnap middleware but DavidI didn’t go into this much in the presentation.

During the Q&A at the end there were the inevitable questions: what about 64-bit (coming in a later version); what about Mac/Linux (nothing to announce); what about the dreadful online help (errrmmm we’re working on it); what about .NET (coming in a later version). Some of the language changes seem to be making ready for .NET 2.0 compatibility.

No announced release date; but the roadmap shows this as a 2008 release; and if it’s being webinared now that suggests it won’t be too long a wait.

Delphi is still absolutely my favourite Win32 development tool and this should be a strong release. At the same time, it is all rather old-school: win32, native code, fat client. You can do web applications in Delphi, and there is an updated “VCL for the Web” in this release, but why would you?

Nevertheless, if there are any Delphi developers still hanging on to Delphi 7 (the last version with the old IDE), perhaps these important language changes along with what is now a mature new-generation IDE will be sufficient to persuade them to migrate.

*Update: Although DavidI said that Delphi’s ribbon controls wrap Microsoft controls, Nick Hodges says here that this is not the case. He is probably right as I’m not sure what controls Delphi could wrap. If the MFC team could not use the actual Office controls, but had to create its own implementation, then I should think a third party would be in the same position. I wondered if the VCL was actually using the MFC code but I doubt that would be straightforward either. This may be a confusion caused by the licensing requirement.

May 7th, 2008

Codegear sold to Embarcadero

CodeGear, Borland’s developer tools business, is to be acquired by Embarcadero; though to be more precise, CodeGear is being acquired by the owner of Embarcedero, a private equity company called Thoma Cressey Bravo.

Embarcadero has a range of database and data modeling products, including ER/Studio, EA/Studio, RapidSQL, PowerSQL and DBArtisan.

This is the end of a long road - CodeGear was put up for sale in 2006.

Good news? Insofar as it ends a long period of uncertainty, yes. On the other hand, I sense that many of CodeGear’s customers have valued its renewed focus on software development, as opposed to application lifecycle management, modeling, change management and all those other enterprisey things. Embarcadero just might take it back in that direction. From the press release:

Customers and partners will benefit from Embarcadero’s ability to help fully integrate their application development lifecycle, automate error-prone tasks and dramatically increase their productivity.

Talk of “dramatically increased productivity” is bound to strike fear into the hearts of those who like their dev tools mean and lean.

The problem from a business perspective is that enterprise sales are where the money is, and plain old IDEs and compilers are thoroughly commodotized. Eclipse, NetBeans, Visual Studio Express…

That said, CodeGear still has some interesting products, and increased resources for things like quality control and documentation would do them no harm at all.

 

April 24th, 2008

Generics, anonymous methods, Unicode coming to Delphi

Codegear has posted an updated roadmap for Delphi and C++ Builder, its native code development tools for Windows. There is also a .NET Delphi but it is not covered here.

The RAD Studio product includes both Delphi (Object Pascal) and C++ “personalities”. A release code-named Tiburon, set for later this year, will update Delphi to be “completely Unicode-based”, including the runtime library and Visual Component Library (VCL). There is also support for generics and anonymous methods.

What about 64-bit, another obvious shortcoming of the current Delphi product? It’s promised for the release after that, code-named “Commodore”, and set for mid-2009.

All of this is a bit late in the day, but probably soon enough to keep Delphi developers happy. The IDE is stable now and if you want RAD features Delphi is the best choice for native code apps on Windows.

April 3rd, 2008

JBuilder 2008 and Vista’s Program Compatibility Assistant

One of Vista’s annoyances is this dialog, which you may see shortly after installing an application:

As you can see, I got this after installing CodeGear’s new JBuilder. The reason it annoys me is that it doesn’t tell you what “compatibility settings” it has applied. In this case, even if you go to JBuilder.exe in Explorer and view its properties, you will find all the compatibility options unchecked. So what has it done?

Of course I clicked “What settings are applied”. Here’s what it says:

As you can see, this still does not tell you what settings are applied. By the way, Group Policy enables you to disable the Program Compatibility Assistant completely, but does not show the settings for individual applications.

I ran the registry editor, and found this entry:

It looks like the Persisted key tells Vista which applications have already had settings applied, while the Layers key tells Vista what settings to apply. ELEVATECREATEPROCESS lets the application create child processes which require admin rights, though they still raise a UAC prompt.

I also found this Microsoft article which does a good job of explaining how the Compatibility Assistant works. It appears that JBuilder 2008 tries to run something which requires administrator permissions, but does not use the  correct Vista technique for doing so. I soon found out what it is:

It’s running regedit, and exporting some keys that appear to relate to Mozilla’s Gecko Runtime project, for embedding a browser in an application. Unfortunately it does this (twice) every time it runs, which is unlikely to be necessary. You would have thought there would be a better way to use these registry entries, than exporting a temporary file.

Conclusions? None really; I just wanted to know what this annoying wizard does. A couple of observations though. First, it’s careless of CodeGear to let JBuilder 2008 out like this. It just looks bad, to have your app identified as an old one that needs compatibility help.

Second, if you read Microsoft’s article you’ll notice that among other things Vista “instruments” the CreateProcess API call in order to make this work. There must be a performance impact. I guess Microsoft will say it is a small one; but I guess it also makes its little contribution to Vista’s overall performance issues.

December 3rd, 2007

CodeRage sessions available for download

You can now download the content from last week’s CodeRage, the virtual developer conference laid on by CodeGear. The downloads use Camtasia and Flash and work well.

A few that I recommend are Ravi Kumar’s session on JBuilder Application Factories from Day 5, and Joe McGlynn on 3rd Rail, an IDE for Ruby on Rails, from Day 3. For Delphi futures (64-bit, generics, concurrent programming, hints about cross-compilation to other operating systems) check out Nick Hodges’ session on Day 1. I’ve not viewed everything, so there are no doubt other excellent sessions.

Nevertheless, I have mixed feelings about this CodeRage. The keynotes were weak, with too much high level waffle about how CodeGear is committed to developers etc etc. The conferencing software was no more than adequate, did not work properly for me on Vista, and did not support Mac or Linux. That may explain why attendee numbers in some sessions were embarrassingly small.

I am struggling to make sense of this. CodeGear claims to have 7.5 million registered users; yet only 2100 registered to attend the free CodeRage, and some of those no doubt never turned up. If that is representative of the level of interest in new CodeGear products, as opposed to legacy users, then that is a worrying sign.

November 27th, 2007

CodeRage II: Windows only, login problems

I was surprised to learn that CodeGear’s online conference is apparently closed to Mac users, or anyone not on Windows:

coderage_mac

That’s odd, since the company has Java and Ruby development products that run cross-platform.

Further, even Windows users have had problems logging in. The conferencing software CodeGear is using is limited to 1500 attendees per session, but thanks to a glitch sessions were reported full even when they were not. A message posted to the borland newgroup explains:

It turns out the problem was that only the first 1500 people who registered for CodeRage were successfully registered to attend all of the InterWise events because of a 1500 person limitation for iSeminar events. Unfortunately, this meant that 1500 attendance spots were reserved for those 1500 email addresses even though less than that we’re actually attending. Long story short, I’ve removed all IW registrations from individual events so anyone should be able to get in.  You shouldn’t see anymore “Exceeded max number of participants” error messages unless we really hit 1500 people for any given session.

I had problems myself - I am not sure if it was this limitation, or just the Interwise conferencing software which, like so much out there, appears to be uncomfortable with Windows Vista/UAC and presented a variety of error messages. I didn’t record all the details, but I was constantly being told I had cancelled the setup when I had done no such thing.

Hmmm, I seem to recall technical problems with previous Borland/CodeGear online events as well. Surely it’s time the company got these things right?

Technorati tags: , ,
November 20th, 2007

Is CodeRage the future of tech conferences?

CodeRage 2007 starts next week. It’s a technical conference covering CodeGear’s products, including Dephi, JBuilder, C++ Builder and 3rdRail, the new Ruby on Rails IDE.

The conference is both free and virtual.

A virtual conference is no substitute for human contact. I’ve learnt this paradox over many years: even if the same content is freely available on the Web, there is substantial benefit in physical attendance. You are more focused, you learn more, you can easily ask questions, and you pick up all those indefinable signals from others who are attending.

Equally, the global fuel crisis and concern about the environmental cost of travel surely means that virtual conferencing is an idea whose time has come. Another benefit is that it includes an array of people for whom a typical tech conference is just not feasible, for financial or other reasons.

I’d like to see more of these.

Technorati tags: , , , ,
|