Dealer

Dealer, as the name suggests, deals cards.

However while most programs try to produce random deals, this program allows the user to steer the dealing process and specify certain hands. This makes the program a great training tool. For example, if you want to practice bidding after a 1NT opening, simply specify that west holds 15-17 and a balanced hand, and east any 13 cards, and start bidding.

Dealer was developed in the 1990’s by Hans van Staveren and put in the public domain. Somewhere in in the late 1990’s, I took over and maintained it for a couple of years. After that, development stopped, basically because the program did everything people wanted it to do and no bugs were found. Today (2016, or some 25(!) years after the code was written), the program stil compiles and runs on machines with a unix-based O/S like my Macbook Pro (OSX 10.10) and the Linux boxes I have at home. Over the years, people have compiled the program on various Microsoft windows boxes as well.

I had a repository with code and pre-compiled binaries. Therepository is now here. In the repository, you find the latest version of the source code that runs and compiles on my Mac and Linux boxes (dealer_20161012.tar.gz, or any later date). Download, then do from the command prompt:

  • gzip -dc dealer.tar.gz | tar xvf -

and you have a directory dealer. Go there, go to the Manual folder, open index.html and there you have your instructions.

Over the years, people have provided me with pre-compiled binaries for various platforms. I have no idea if these still run, but latest reports are that there are issues on Windows 10. Now I don’t have a Windows 10 machine (and I like to keep it that way) but if you and can provide me with a binary, I’m happy to put it in the repository.

MD5sums for the various binaries are:

  • f5bd04b64f4cebafa3587ea6e06daea3 dealer_osx_20161012.exe
  • ae0626e84f376cc25a93f84f5c56f9d0 dealer_w10_20161012.exe

NOTE: I have received reports that the current version crashes on (at least) Ubuntu version 16 and later. The problem appears to be in the libgnurand installed on those machines, causing negative array indices in the “shuffle()” function. I currently don’t have time or access to the right machine, to investigate this myself.

Theo G: I have received your bug report but as you left an invalid email address, I cannot contact you about this.

WARNING: Dealer is intended to generate practice hands, it is NOT,and never was, intended to generate hands for serious events. There are a few major flaws for that. First, it only used 32 bits of randomness, which means that it will only generate 232 different hands out of the 296 possible hands. Second issue is that it is easily possible to manipulate the hands (say, by throwing out all pass-outs). Finally, the seed parameter allows users to recreate the hands. If you know which seed the organizers use, you can generate the hands for the next session. For practice purposes all this doesn’t matter, 232 different hands is far more than anybody will ever play.


Henk Uijterwaal 2017