Music As Medicine

[Estimated Reading Time: 2 minutes] As I alluded to a couple of posts ago, I have only recently regained something approaching good health.  To get me back on track among other things I have found music to be a great healer.  I’ve been playing electric bass and singing with a bunch of guys from work since Christmas and having a blast. Then a few weeks ago a friend in that group suggested I audition for a “proper” band that were looking for a lead vocalist. The long story short is that I took the plunge and I am now lead singer with “5th Quarter”, a covers band here on the North Shore of Auckland in New Zealand where I live.

The “Big Switch”

[Estimated Reading Time: 4 minutes] Much has been made in the past and again more recently, about the lack of a compiler switch in Delph 2009 to govern the behaviour of the String type. CodeGear have repeatedly said that it was not possible/practical to provide such a switch, but their advice to anyone concerned about a unilateral change from ANSI to Unicode string in their applications itself suggests that a switch was not only possible, but actually very simple to incorporate.  So much so that they could provide it even now without having to change anything already delivered in Delphi 2009 or committed to for Delphi 2010. Let me explain what I mean.

A Timely Poll?

[Estimated Reading Time: < 1 minutes] I’ve been thinking for some time about the direction that the Delphi variant of Pascal is heading, and have had this poll in my back pocket for a couple of weeks.  Just recently the topic has become rather prominent in the NGs, and I myself just logged a language change suggestion. So I thought now might be a good time to “Pop The Question”, hence this weeks poll: How should new language features be introduced to Delphi? You only get to choose one response this week. Choose wisely. 🙂

Proposal for Automated Variables

[Estimated Reading Time: 4 minutes] Or: “Environmentally Friendly Coding – Recycle Your Keywords” Yesterday I logged a Quality Central report proposing the addition of support for “automatic variables” to the Delphi language.  Not only is it an excellent idea (in my humble and utterly objective opinion :)), but there is already a keyword in the language that could be co-opted for this purpose, a keyword that has been at something of a loose-end since it was deprecated (rendered obsolete even) a long, long time ago…

Free Yourself

[Estimated Reading Time: 4 minutes] Barry Kelly recently posted an example of “smart” pointers (specifically the auto-pointer variant of a smart pointer) using generics in Delphi 2009.  It was an interesting use of generics but the end result was something that has – in part at least – been possible for some time in Delphi even without generics – reliable cleanup of objects. This was something that a colleague of mine, Geza Sabo, pointed out, based on some code I’d previously shared with him to robustly manage the hourglass cursor in a GUI application.

This Weeks Poll

[Estimated Reading Time: < 1 minutes] I’ve worked with a number of version/source control solutions over the years, and looked at or even evaluated  even more.  None has really been perfect, and very few even come close, each with their own strengths and weaknesses. But what do you use with Delphi? Recognising that people perhaps use one system at home and another in their “day job” (or even on different projects within the same organization), you can choose up to three responses for this poll.

Delphi 2009 – StringPerformance Redux

[Estimated Reading Time: 3 minutes] It looks like I may have jumped the gun with my conclusions from the previous exercise to benchmark string performance in Delphi 2009.  Following a useful exchange in the comments with Kryvich I corrected a small discrepancy in the tests and made some changes to the performance testing subsystem within the SmokeTest framework.  I then re-ran my string performance benchmarks with some significant – and more encouraging – differences in the results.