Hi, bridge pals.
Those of you who have not read Portnoy’s Complaint may see the title above and exclaim, “Begin?!? You’ve been yammering about this deal generator for years now!”
Yes, indeed I have. Quite often, I would proudly announce some new feature, after which I would embark on my effort to create a full suite of deal recipes. Shortly into that effort, I would run into some glaring deficiency that would require such a laborious workaround that I could never hope to attract and keep users. So then it was back to the drawing board, trying to improve usability one pain-point at a time.
Then, days or weeks later, I would announce Happy Days Are Here Again (again), only to quickly stumble into the quicksand again.
Well, today I dare to invoke the end of Portnoy because, while I will never call it perfect, I think the deal generator is ready for serious use in recipe development. I will therefore focus more attention on bridge topics and recipes, and much less on generator development.
It would not serve other users if I developed my recipes in darkness with no organized way to share them, so this blog post is mostly about a few organizational things I have done to make sharing much easier.
Blog Reorganization
The blog sections are nely organized as shown here:
The User Guide Directory section will always contain exactly one post—the directory to the user guide—which I will update as I add or remove guide posts.
The Deal Generator User Guides section will contain all the individual guide posts. This being a blog, they will be in reverse chronological order by publication date—which is why we will always have the single directory post to make it easier to find things. Of course, many features of the deal generator have a hyperlink that will take you directly to the post you want.
The Recipe Index section is new, and is currently empty. It will eventually have exactly one post that I will update as I add or remove deal recipes.
The Recipes section will contain posts about specific recipes—how to build them, where to find them, etc.
The Computation Corner section will contain technical things about generator development. Those are rare anymore since I try not to speak Programmerese to Bridge People, but I can’t always help it. You can avoid posts in that Corner if the topic doesn’t interest you.
The other sections are for more literary writings, though I have no immediate plans in that area.
Main Web Page Reorganization
The main web page used to include links to some half-baked deal recipe cookbooks, with no real organization. I now intend to develop two types of cookbook: one cookbook that will contain recipe fragments that could be standalone, but which are more likely to be components of other recipes; and other cookbooks (possibly many others) consisting of full recipes. All cookbooks will appear on that main page above—some will be announced, others will just show up, so check back often.
Recipe fragments will have names that tend to describe their settings, without reference to a bidding scenario. For instance, the North Ingredients cookbook currently has these that I developed today:
And the South Ingredients cookbook has these:
From those two cookbooks you might surmise—correctly—that I’m working on recipes related to 1NT opening bids, so I need suitable opening hands and suitable responder hands. But, these being intended as ingredients for other recipes, I don’t put any restrictive bridge knowledge into their names. You wouldn’t call a live cow standing next to an unharvested field of potatoes a pot roast, would you? That’s getting just a little bit ahead of the game, plus which the cows don’t like it.
Now here’s the 1NT Openers cookbook I created from those ingredients. It will eventually feature many more 1NT scenarios, but for now it just has some where responder has a 6+ card suit. Because these are not fragments, I give them names that finally, happily include some bridge knowledge—the hoped-for bidding scenarios:
Wait a Minute—How Do You Turn Fragments into Full Recipes?
I’m so glad you asked.
Those of you with engineering backgrounds know about yak-shaving. That’s where you delay completing the main effort so as to focus on a senseless exercise (though no one thinks to ask the yak whether shaving is senseless—the one pictured above seems to be enjoying it).
Another name for yak-shaving is bikeshedding. I believe it came up during the design of a nuclear facility, during which effort someone got seriously sidetracked by excessive focus on the bike shed that wasn’t even in the original plan. Har de har har, what a silly person, obsessing over bicycle storage and yak coiffeur. Really, we ought to just leave our bikes all a-jumble in the doorway and let our yaks be unkempt, or so say all the cool people.
Where was I? Oh yes, describing some new and very, very necessary (you will agree) features, with no anticipation of blow-back from anyone.
The deal generator now has a brand new feature: the Merge Recipe button. It sits high atop the Deal Recipe panel, right next to the Load Recipe button:
When you use the Load Recipe button to load a recipe from a file, the generator first resets the entire recipe area (all shapers, and the Cards panel) to blank or default values. Then it loads in the settings from the selected recipe file.
The Merge Recipe button also loads recipe settings from the selected recipe file, but it does not reset the recipe panels. Also, it only loads non-default settings from the recipe file. So for instance, if the N/S pair HCP range is 0 to 40 in the recipe file, that will NOT overlay the current N/S pair HCP range. This allows you to load one recipe with Load Recipe to start with a clean slate and then the first recipe, after which you can merge in additional recipes’ non-default settings.
If this sounds confusing, just look at my recipe ingredients cookbooks shown above. When I wanted to make a 1NT opener recipe with a 6+ card suit in responder’s hand, I first did Load Recipe of the noncommittally named “Dealer Balanced 15-17 HCP” recipe fragment from the North Ingredients, followed by a Merge Recipe of one of the 6-card suit response fragments from the South Ingredients. Dooby dooby doo, no bridge knowledge here (yet), just move along. I did it first with the 6-clubs fragment, and saved the resulting complete recipe to a new file—suddenly, there was bridge knowledge in the 1NT recipe file name; I then Merged in the fragment with 6 diamonds in Souths’s hand, and saved that complete recipe as a new file; and so on with the hearts and spades fragments. That’s how I wound up with my four (so far) fully-formed recipes in the 1NT Openers cookbook.
The Merge Recipe feature, like many others, is just there for convenience. You can get the same effect by always developing only complete recipes. I, obviously, plan to go the recipe fragment route wherever possible. I’m sure we all have noticed that one scenario’s opening points and card distribution can be another scenario’s responder or overcaller or advancer. Sure, you can build those things on the fly if you must, but I aim to eventually have quite a large set of fragments.
If the organizing principles I describe here seem like overkill (come on, it’s just a few 1NT scenarios…), then dig if you will the main menu of my online cookbook:
If you visit that menu and click each link in turn, and then click every link on the pages that those links bring up, you will see that I plan to make quite a few types of recipe covering as much of bridge as I can, and it would not do to simply present you with a huge, unordered list of recipes. The cupboard is rather bare at the moment, but at least we have a cupboard. Now to fill it up.
One More New Feature
Also live online is a new Copy Shaper button on every shaper tab numbered 2 through 11. This button lets you copy the settings from the previous shaper tab to the current tab (1 to 2, 2 to 3, and so on). This is explained in more detail in the Shaper user guide.
Basically, if you don’t use multiple shaper tabs, this feature will not excite you; if you do use multiple shaper tabs, you might like it a lot.
OK, NOW vee can begin…
I really look forward to serving up more recipes over the coming months. While I am taking the steps outlined above to make it easier for me to share my work, I hope many of you are also developing your recipes to suit your needs. Whether you develop your own from scratch, or use mine as a starting point, let me hear from you!
Happy dealing!