Stirring the Pot

Visual Studio 2005 is still a hot topic.

For whatever reason, one of my blog postings from a year ago, Microsoft Visual Studio 2005, has recently received two more comments (not counting the typo) supporting my general position that Visual Studio / Visual C++ 6.0 is still a better development environment under Windows. My feelings have not softened since then, except that using XCode 2.4 under OS X really does make one appreciate some of the features present in MSVC.

Today, I had to do some support for a project that was originally built (by a major company) under MSVC++ 6.0, and which I had upgraded to add new features. Most significantly, I added language support for Spanish, Japanese, German, French, and Italian, in addition to the original English. The new programmer has been tasked, apparently, with rebuilding the project under VC++ 2005 Express as his first experience with the product, and it is a chore. Having described certain steps under the former environment, and then having to “translate” the procedures for the newer compiler showed me, again, the unnecessary complexity of the interface. On the [not] other hand, though, this complexity is much slower as well.

Within the last couple of months, I also read an article at Dr. Dobb’s entitled, Microsoft Cautions Developers About Visual Studio/Vista Conflicts. The gist of the article is in the first paragraph, “that Visual Studio 2005 won’t be fully compatible with Vista and that older versions of Visual Studio won’t be supported at all on Vista.” Brilliant. Of course, I have not been able to get Vista to install on a test system yet, so perhaps it makes no real difference.

Despite a few shining counterexamples, most of Microsoft seems to have lost focus on the reasons that Windows is the most prominent operating system: developers and users. Between the bloat and churn, there is also an arrogance, as though Microsoft no longer needs to even pretend that they are trying to do anything other than take our money. They still control the platform that provides most of my income, but things do change.

Once upon a time there was an invincible industry giant called IBM…

Happier Curmudgeon Day

An oxymoron, you say? Definitely.

Today is Curmudgeon Day, the most important and least meaningful holiday here in our household. All of my time is recorded as Out Of Office and I do whatever I choose to do, whether that be programming, playing games, sleeping, or posting on this blog.

Here is what I have written about this holiday over the past two years:

Traditionally, one aspect of Curmudgeon Day is deliberately not leaving the house for any reason. Alas, this year that cannot be observed religiously, but of course, that is exactly in keeping with the spirit of the day. Our Thanksgiving celebration ended with board games and lasted beyond midnight, passing from one major holiday into the next, and I had… no… chose to drive a friend home. We are also expecting a check at our post office box, and receiving money, rather than spending it, is also an honorable pursuit on this day.

Whatever you choose to do on this holiday Friday, please enjoy yourself. Play a game for me.

Happy Thanksgiving!

We wish for everybody to have a great Thanksgiving and/or Thursday.

Today is the most travelled holiday in the United States, traditionally for family gatherings. This year, we have opted to stay home with immediate family and a friend or two for Turkey Day, serving a large, and fairly common, meal of turkey and stuffing, ham, potatoes and gravy, green beans, and of course, cranberry sauce, with a raspberry pie for dessert. (In truth, baking that last item from frozen will be all I am allowed to do.)

Our tradition is for each person to briefly talk about what has made us thankful over the previous year, so here goes:

On the business end of things, I am thankful that our company is successful, with several projects in development, and especially thankful for these major game releases:

For the personal side, I am thankful that, despite a death and another serious illness in our extended family, my wife and children are all healthy and thriving, and very thankful that our family is strong and close in this last year together before our older son departs for college.

Now, we get to enjoy some good food (and listen to Alice’s Restaurant) at the start of the holiday season, before we wrap up our 2006 development and head into our end of year break.

Interesting tidbit: I am a direct descendant of William Bradford, Governor of Plymouth Colony, who arrived on the Mayflower and is credited with being responsible for the first Thanksgiving years ago. According to Wikipedia, I share that lineage with Hugh Hefner (as well as hundreds, if not thousands, of other Americans, I suspect).

Pretty Good MahJongg 2.3

The latest update for this excellent game is now available.

On Monday, Goodsol Development released version 2.3 of Pretty Good MahJongg, a unique solitaire game based on traditional Chinese MahJongg tiles. Of course, it includes tile matching layouts, as one would expect, but it also contains 55 other games. Many of these games are Solitaire variants played with tiles instead of playing cards, and all of these games were invented specifically for our title. There are also different types of puzzle games to play.

One can get more information from the web site,, or better yet, directly download the evaluation version.

Pretty Good MahJongg was programmed entirely by us, SophSoft, Incorporated, for Goodsol Development. More specifically, I am the only person who has written code for this game, with the obvious exception of libraries used. However, the primary library utilized is a private framework known internally as the Goodlib library, which we also wrote. This library is used in all of our work for Goodsol and it contains common code for handling tasks such as memory management, interface control, and image manipulation.

As I have written previously, Pretty Good MahJongg is the game of ours that I most enjoy playing for fun (as opposed to testing). Often when one finishes developing a game, there is an element of burn out, and the game is put aside for a while, if not forever. In the case of PGMJ, though, I never felt the desire to take a break from the game, and I still play it regularly for relaxation. The only other game on my quick launch menu is Most Popular Solitaire, in which I am simply playing, and winning, all of the FreeCell games in order. (As I write this, I am currently on game #3205.)

In my opinion, the sleeper category of PGMJ is the ‘Wall’ games group, which includes the flagship game, Great Wall, where one removes colored tiles by clicking on a group of two or more of the same color, as well as related games such as Cumberland, using the same gameplay mechanic but applying it in a deeper way. My personal favorite from this category is Wall Pairs, where one removes pairs of adjacent tiles of the same color. Because the player gets to select the two tiles, rather than just removing an entire group, this provides more opportunity for strategy. Almost every game of Wall Pairs can be won, and I have personally been able to beat the first 500 games (so far).

The other two games on my ‘Favorites’ list are Free Klondike and Short Spider. Free Klondike is a variant of MahJongg Klondike, which in turn is a tile version of the traditional (playing card) Solitaire game Klondike. In this variant, the player only gets one pass through the stock, but any tile can be played in an empty pile. Most games are winnable, and I have only found one game (#48) in the first 546 (and counting) that I could not win. Short Spider is a variant of MahJongg Spider which only uses 108 tiles, making it easy and relaxing. I have won all of the first 126 games of this variant (and the first 245 games of the standard 132 tile version).

Oh yeah… For those who just want a nice tile matching game with a good interface and plenty of features to make gameplay enjoyable, we have added many more layouts, including 10 that I created myself, to bring the total up to 280. Should this not be enough, the full version includes a layout editor that makes it very simple to create custom layouts as desired.

This is just one of several projects on which we have been working recently, so expect more announcements of releases, including some from the past, after the imminent (US) holiday and throughout the next few months.

Family Update

Things change fast around here.

After 11 years of adult leadership in (first) Cub Scouts and (later) Boy Scouts, my wife and business partner, Sherry, has decided to reduce her active role. She decided that it was time to resign from her position as Scoutmaster for Boy Scout Troop 2, and also to transition from her role as Charter Organization Representative for Cub Scout Pack 224/Marble Elementary School. She will remain an adult leader, working with Venture Crew 22, which involves boys and girls ages 14 through 21 but requires a smaller time commitment. This allows her to spend more time just with our family.

As it turns out, this change comes just in time. Tomorrow, James has another taping of QuizBusters, where East Lansing meets Eaton Rapids in the first round of the tournament. (East Lansing was in the last qualifying match and then ended up in the first tournament game.) At almost the same time, William has his first read-through for his role as Ralphie in a stage production of A Christmas Story. (Unfortunately, the script has not yet arrived, so a viewing of the movie will have to suffice for familiarization until tomorrow.) Thankfully, we both have the time to get them where they need to be, though we can each only watch one event.

This reminds me of an amusing idea told me by a parent who experienced the shock of going directly from one child to four by virtue of triplets. He said that parenting was like playing defense: with one or two, you can play man-to-man, but once you have three or more, you need to switch to zone.

MVP Backgammon Professional Lives

A game product is resuscitated.

Back on April 16, I wrote a memorial to MVP Backgammon Professional on the fifth anniversary of the final beta build of the game. At that time, the project was presumed dead. The publisher, MVP Software, had not released a product nor significantly updated its web page in about four years.

Lo and Behold! In late July, MVP Software finally released MVP Backgammon Professional, much to my surprise and delight. Of course, I found out about the release by accidentally, first by coincidentally seeing its listing on a download site, followed a week or two later by an email from a fan of the game. Thankfully, they made up for that oversight by providing me (upon my request) with a copy of the full game, and I have finally been able to take a few minutes to tell everybody about it.

This is not a normal game review, because I am in no way unbiased. We, SophSoft, wrote the bulk of the game, meaning every last bit of it through the aforementioned beta release, and did most of the artwork for the game as well. One could certainly assume that I would be inclined to praise our portion and may be disposed to criticize the rest, so read this commentary with that in mind.

First of all, let us start with some of The Good. Most of the primary functionality is unchanged from the beta version of five years ago, yet it still holds up well. The program plays a strong game of Backgammon, especially the Copernicus personality (an expert neural network). We had suggested a windowed mode in addition to full screen (and wrote the code to easily support it), and they apparently decided that this was a good idea and added it. Some of the dialog boxes were changed from our last version, and for the most part, the changes were beneficial. Best of all, for us, is that MVP showed real class and left all of the original credits intact, merely adding more of their own.

Now, here is a little bit of The Bad, with regard to the program itself. The pubeval personality, which was a very simple (classic) neural network evaluator, was removed, leaving a large strength gap among evaluators; Gerry Tesauro, who wrote the original pubeval, is still thanked in the credits, though. In five years, we probably could have improved Copernicus, but I suspect that its strength is now somewhat less than GNU Backgammon, which has continued to be improved in the interim. Had I been given a chance, I would have added antialiasing to make the checkers look better on the board (given the faster machines of today), and I would have altered the right mouse button interface. Also, the grafting of the ‘5’ (over a ‘1’) to update the splash screen copyright date looks poor. Why was it not 2006, anyway?

The biggest disappointment with program operation, for me, was that MVP removed all of the direct peer-to-peer networking and replaced it with their Classic Entertainment Online service. The beta version allowed users to connect via Internet, LAN, modem, or serial cable, as well as via the (unfinished) CEO. In the release version, only the latter option is available, albeit complete now. My opinion has not changed in the half year since the previous post that MVP Backgammon Pro should have been released five years ago without CEO, and then an update could be released later (with sales in the meantime). This argument is bolstered by the fact that I have checked CEO many times over the last couple of months and there has never been another backgammon player online (and that is the only game currently supported).

That last part was, of course, a marketing problem rather than any issue with the game itself. Marketing is not a science, so I may be wrong, but I feel that there are several errors in this area, specifically with the limitations of the trial version. The trial omits the Copernicus evaluator, which is the strongest one available, so there is no way to know how strong the program really is without buying it. Actually, it not clear during the trial period that this is the case, so many (if not most) players will probably assume that the AI is weak, because they can only see the deliberately crippled evaluator. Likewise, there are three different board sets, plus three checker sets, with only one each available in the trial, but this is not obvious either.

Ironically, I did not see any way to print an order form from within the program, though that was ostensibly the reason for us parting ways. MVP Software did not like our cost estimate for adding the ability to print an order form (instead of just opening a form in NotePad and letting the user print from there). They demanded that we add the feature for free, claiming that they had three “experts” who said that it would take them no more than 15 minutes to add printing capability. I responded: “In that case, why are you still talking to me?” (Clearly, there was some deeper problem there, but we never found out what it was.)

The bottom line is that MVP Backgammon Professional is a good backgammon program that is fun to play. Even though there was nowhere near five years worth of improvement since we last worked on the game, it still stands up today and is better than most backgammon software on the market. The drawbacks are not severe, and perhaps will give MVP Software something to improve in the future.

Family Matters

It is about time for me to brag about my family a bit.

One of the great things about being ones own boss and working from a home office is that it is possible to keep ones priorities straight and stay involved with family activities. Ironically, with my priorities, the more eventful my personal life becomes and the more development to be done, the less I am able to post about it here. Nevertheless, there is a lot of news, so I start with my family.

My younger son, William, recently auditioned for Sunsets with Shakespeare, a local theatre company, for their upcoming stage production of the classic, A Christmas Story. Despite trying out on a whim, and having the desire but no acting experience beyond school plays, he apparently nailed the audition. William was offered (and accepted) the lead child role, Ralphie. We are very proud of him. The most common response of congratulations: “You’ll shoot your eye out, kid!”

My older son, James, has been participating in Quiz Bowl, and last night he (and the rest of his team) participated in a taping of QuizBusters, a local tournament/television program. This was the first match for the East Lansing Trojans this season, and the first time that James started on the team of four. They are the defending Grand Champions from last year, and James was the only new player. Their competition was the Hastings Saxons (ironically, his mother’s high school). The show will not air until January 28, 2007, so skip the next paragraph if you do not want a spoiler.

James definitely performed well, having the best overall record on the “pop quiz” segments. East Lansing won the game over Hastings easily, not only qualifying for the tournament, but doing so as the top seed (of 64 schools).

I cannot forgot my lovely wife, Sherry, who is the Scoutmaster for Boy Scout Troop 2, which recently (on Halloween) celebrated its 85th anniversary. Troop 2 is the oldest Boy Scout troop in the area, almost as old as scouting in the United States, and is actually older than the Chief Okemos Council, to which it belongs. Sherry received her Wood Badge, the highest training an adult leader (and any woman in Boy Scouts) can earn. Earlier this year, she was honored with the District Award of Merit for “outstanding service to youth of this community through idealism and citizenship.”

Me? I work hard in order to provide opportunities for my family, support them in their endeavors as much as possible, and feel a great deal of pride for such accomplishments. I certainly could have had much more money taking a different tack, but I seriously doubt that I could have been any richer.


Today is Election Day in the United States.

In the event that you are reading this on Tuesday, November 7, and you have not yet voted, stop reading blogs and do something truly important. Get informed about the candidates and issues, and then GO VOTE!