Pyromaniac simians and what this has to do with TableMaster for the Mac

One of the significant things for TableMaster II is the OS X version. Formerly, I believed this was going to be a very simple thing — just buy the Delphi upgrade, select the proper target platform, and compile. Well … it’s not.

The basic issue is that there are two Delphi frameworks — VCL (Visual Component Library), the original, and FireMonkey, the new one. It was not apparent to me when I started TableMaster II development that only one of those, namely FireMonkey, was cross-platform; since I’d always used VCL, I just kept right on using it.

…and came a cropper.

So, my next step was to buy a conversion program — there’s one called Mida that’s highly recommended. Bought Mida, ran same … and found my next problem.

And that problem is that certain critical components have no FireMonkey equivalents. Like … the FileListBox that lists all of the table files. The hell? No file list box? (or drive, or directory) I’m looking around now for a pack of add-on components that will include a direct replacement. Failing that, I’m going to have to rebuild it from scratch. That’s not all that difficult, but it is annoying, and somewhat time-consuming. So much for a simple, straightforward cross-platform development system.

As things stand, it’s looking like I’m going to have to completely reconstruct significant parts of the TableMaster UI for FireMonkey. I’m not sure what the time is even going to look like on this. Because I’ve already bought a table, reserved my motel room, etc., for MegaMooseCon, I’m committed. I really can’t show up there without a product. And it’s in three weeks.

I’m unquestionably transitioning TableMaster to FireMonkey for the cross-platform compatibility. It needs to be done; the critical question is when. Because of the need for some significant interface reconstruction, there is no way it’s going to be possible to get that finished, and all the table packs finished as well, by July 23. If it was just the interface there wouldn’t be so much of an issue, but remember that the table engine itself still contains bugs that need to be addressed.

What this means is that I either miss the release date for the Mac version, or I miss it for all versions, trying to do both debugging the table engine and rebuilding the UI. The principle of the least harm to the most people dictates that it’s the Mac version that gets postponed so I can get the table engine fully debugged and something out the door. Since I currently have a working Windows user interface, it’s going to have to be the Windows version. (I may be imagining it, but I think my Mac is looking at me disapprovingly)

The good news is this has nothing to do with the table engine, which is the real guts of TableMaster. Once that’s completely debugged (along with my office floor, for which the debuggers are due tomorrow) I can get back to work on the interface, and conversion thereof. It’s a setback, a significant one, but not a catastrophe.

So at this point, the timeline looks like this:

  1. Finish the table engine debugging
  2. Test FireMonkey elements in the interstices
  3. Launch Windows version at MegaMooseCon 7/23
  4. Convert TableMaster UI from VCL to FireMonkey
  5. Launch Mac version, probably mid-August

It’s not the schedule I wanted (yeah, it’s definitely looking at me disapprovingly) but it’s the best option at this point; the alternative would replace #3 with “miss launch” and add “launch Windows version to #5” which would not really benefit anyone.

The tl;dr version: development/launch is still on schedule for Windows, probably delayed 2 weeks to a month for Mac.

It’s not the outcome I wanted, but I can’t see any alternatives. The scheduling thing is an issue because there’s just the one of me, and caffeine can do only so much. Mac folks, I’m sorry about the delay (yep, it’s definitely scowling with its CD slot) but hopefully it won’t be much of a delay. I’m trying to under-promise and over-deliver here. My original estimate for TableMaster completion, when I started the project, was actually Labor Day weekend … even with the FireMonkey issues, I’m still going to make that. And hopefully a lot sooner.