Archive for the ‘Delphi’ Category.

Generic TObjectList layout has changed

I ran across a really strange bug at work yesterday: Access Violation when performing a certain operation in the program.

These are usually really simple.  Easy to reproduce, and the debugger takes you right to the problem, and there you are, confronted by a nil that someone forgot to initialize properly.  Usually. Continue reading ‘Generic TObjectList layout has changed’ »

I am officially sick of DVCS

We use Mercurial at work.  It’s nothing particularly new to me; I’ve been working with it ever since SDL, a major open-source graphics library that I’ve been using and contributing to for a long time now, changed over to a HG repository several years ago.  You’d think that I’d be used to its quirks and glitches, all the little things it manages to somehow not get right, by now.  But it keeps finding new and innovative ways to suck. Continue reading ‘I am officially sick of DVCS’ »

Dear Idera, please Don’t Clutter Up our build process anymore

I was compiling a new branch at work today, which used a different version of Delphi than the one I had been working on, and along the way I ran into tons of spurious File Not Found errors from the compiler.  The file was, in fact, right there where it should have been able to find it easily, but it kept erroring out.  After speaking with another developer, I managed to track down what was really going wrong: for some reason, it was finding outdated DCUs from the old build and choking on it, giving an incorrect error.  After deleting the rogue DCUs, everything built smoothly. Continue reading ‘Dear Idera, please Don’t Clutter Up our build process anymore’ »

Beware of Format Injection

So, first things first, I’ve moved on again.  And it was quite a move, all the way across the country to the Philadelphia area, home of the Liberty Bell, the cheesesteak, and the baseball team with possibly the least imaginative name in the history of professional sports.  (Original names don’t seem to be Pennsylvania’s strong suit. We’ve got a Pottstown, Pottsgrove and Pottsville all within about 30 miles of each other, for example.  On the other hand, there’s also this place, also nearby, so… yeah.)

I’m at Gateway Ticketing Systems now, the place where Nick Hodges was working when he made that “rock-star developer” video. (Which appears to no longer be available, unfortunately.)  It’s a nice place to work, even if they do use Mercurial. 🙁 Continue reading ‘Beware of Format Injection’ »

Introducing DFMJSON, the DFM parser and scriptable bulk editor

Yesterday at work, while tracking down a graphical glitch, I found that TPanel objects on many, many dialog boxes in our system (over 300 of them) had a certain property set incorrectly.  There are basically three ways to fix something like that: Continue reading ‘Introducing DFMJSON, the DFM parser and scriptable bulk editor’ »

First look at XE7

So XE7 came out today.  I downloaded it and installed it, curious about some of the stuff I’d heard. Continue reading ‘First look at XE7’ »

Dear everyone: Please stop using $IFDEF VERXXX

I just checked out the source to a new project.  Not going to name names because what I’m discussing is a pretty universal problem.  This project had dependencies on several common Delphi open-source libraries, and it had a well-designed DPROJ file that got all the paths right and everything.  I opened it in XE6 and went to build… and promptly tripped over some stupid compiler error involving ANSI vs Unicode chars… and by this point, anyone who’s ever done this probably knows exactly where this is going. Continue reading ‘Dear everyone: Please stop using $IFDEF VERXXX’ »

Finally some language-level improvements?

It would not be unfair to characterize the last few Delphi releases as All Mobile, All The Time.  And as cool as that is for mobile developers, those of us still working in VCL land have sort of felt like we’re getting the short end of the stick.  The last time anything significant was added to the core language itself was extended RTTI in Delphi 2010 (plus extended RTTI support for array properties XE2.)  So I have to admit, I was excited when my boss sent this Google+ post around to the developers this morning. Continue reading ‘Finally some language-level improvements?’ »

So what was up with the forums?

Looks like the Embarcadero forums are back up now.  I know they’ve been down for a while, but has it really been more than a month?forum

Static Typing Still Matters

I ran across a very interesting story yesterday.  Apparently genetic researchers are having some real trouble with their spreadsheets: important data is being wrongly interpreted by Excel as specific data formats and ends up getting mangled irreversibly, leading to data corruption.  For example, the gene identifier “2310009E13” got converted to the floating point value “2.31E+13,” and the tumor suppressor DEC1 [Deleted in Esophageal Cancer 1] was being converted to ‘1-DEC.’ Continue reading ‘Static Typing Still Matters’ »