Sentence of the Day

Where you find software success stories, you invariably find people who are good at saying no.

That’s from Scott Rosenberg’s Dreaming in Code, an outstanding fly-on-the-wall account of a software project-cum-train wreck. I felt like throwing the book across the room in frustration once every ten pages or so as the project team made common mistake after common mistake.

Poker Copilot: Worst Day Ever. Best Day Ever.

Worst Poker Copilot Day Ever
Full Tilt’s update two days ago resulted in me getting the most Poker Copilot support e-mails ever. Whenever I check the support inbox, it’s overflowing with new e-mails asking why Poker Copilot stopped working. It’s been hectic trying to answer them timely while also fixing the problems the Full Tilt update introduced. I’m almost “on tilt” myself! However I’ve managed to answer all e-mails within 24 hours, and most within a few hours.

Best Poker Copilot Day Ever
The copious quantities of support e-mails have revealed that many people are actively using Poker Copilot. And relying on it. That gives me a warm fuzzy feeling! I also had the highest number of sales yesterday in the almost-year that Poker Copilot has been on the market. That gives my bank account a warm fuzzy feeling.

Worst Day Ever + Best Day Ever: Is there a correlation or is it coincidence? Were some potential customers pushed onto my “Buy Now” page by seeing me respond quickly to the problem? Did it give me a chance to demonstrate that Poker Copilot is the work of a real person and not a faceless organisation? I don’t like drawing conclusions from one data point so I’ll leave the questions open.

Adobe. Fireworks. Activation System. Sigh.

I try hard to keep this blog a gripe-free zone but Adobe has pushed me to the limits. They have a “product activation” system that allows one to use Fireworks on two computers: a main work computer and a laptop or home computer.

My work computer was faulty. I needed to send it back to Apple for a replacement. First I reformatted the hard drive to remove my personal stuff. But Fireworks doesn’t recognise this arrangement. It won’t activate on the replacement computer that Apple sent me. All I get is advice that I should have deactivated Fireworks before reformatting the hard drive. Can you see the difficulty this poses for mortals without time machines? If only I hadn’t sold my flux capacitor to pay for my new iMac.

So I can’t use my fully purchased, legitimate, licensed Fireworks to work on the artwork for the new Poker Copilot Hand Replayer. This is a product licensing system that is too clever by half. It’s hurt me, an honest, paying customer. The help files and FAQ are circular, resulting in no clear solution.

There’s a moral here for us small software companies. Make the licensing system just enough to keep the typical customers honest. Don’t work from an assumption that all your customers are thieving scoundrels. And if the occasional customer installs the product on one computer too many, assume that the reasons are legitimate. If a poor student with lots of time and little money works out how to bypass your licensing system, accept it and move on.

Yet Another Poker Copilot Update for Full Tilt

The fix released yesterday didn’t work for everybody. Therefore I’ve released another update, version 1.71. You can download from here: You only need to download this update if Poker Copilot is not working with Full Tilt Poker for you.

[And now the technical info: yesterday’s Full Tilt update introduced hand histories in UTF-16 encoding. For most users, that’s UTF-16 with little-endian byte order. For some users, however big-endian byte order is used. Which means that every pair of bytes in the hand history are switched. Including the mysterious zero-width no-break spaces at the beginning of each line of text in the hand history file.

Why? I’m not sure. It could be an error from Full Tilt’s Mac programmers. However there could be a dang good reason for it that I’m not wise enough to ascertain. On days like today I wish I could have a casual chat with Full Tilt’s programmers and find out!]

Poker Copilot 1.70 Now Available and Highly Recommended

Problem solved!

You can download Poker Copilot 1.70 direct from the Poker Copilot home page. This fixes the problem caused by today’s Full Tilt update.

From the home page, simply click on the big “Download Now” button.

[For the technically curious]: It appears Full Tilt switched the hand history files from UTF-8 encoding to UTF-16 encoding. For a mysterious reason each line in the hand history file now starts with an invisible, zero-width character. Precisely, it’s the unicode Byte-order Mark character, or BOM. In my understanding this character should only be at the beginning of the file.

Today’s Full Tilt Update breaks Poker Copilot

It seems that the latest Full Tilt update has some subtle changes to the hand history file. This confuses Poker Copilot.

I’m working on an update for Poker Copilot and hoping to release within 24 hours.

Coming in Version 2: Improved Players Summary

Here’s a preview of the improved Players Summary in Poker Copilot 2:

You can view add any available statistic to the table:

You can quickly search for a particular player:
Or even for a select two or three players:

A Pair of Aces Twice in a Row?

There’s been a discussion on 2+2 of the odds of getting dealt a pair of aces in Texas Hold’em twice in a row.

My immediate thinking was: the odds of getting dealt aces in (4*3) in (52*51) = 1 in 221. The odds of this twice in a row in 1 in (221 * 221) = 1 in 48841.

I was wrong. On further reflection I realised that there is no correct answer, because there is insufficient info. The question should be “what’s the odds of getting pocket aces twice in a row given….

For example, what’s the odds of getting aces twice in a row in the next two hands is 1 in 48841.

But the odds of getting aces twice in a row given that you got aces in the first hand is only 1 in 221. Not so remarkable after all.

And the odds of getting dealt pocket aces twice in a row during a session of 100 hands? Pretty high I guess!