A closer look at Leapfroglets’ Spider Solitaire

In an earlier post I described the Spider Solitaire server written by someone else, namely “leapfroglets”. According to the website this is apparently a playground for junior leapfroggers to hone their programming skills. However, it is beyond the scope of this blog post to discuss this startup company in detail.

As you may have guessed, I have no interest whatsoever in creating YASS program that contributes less than two thirds of nada to what other programmers have already done, given the other programmers possess many skills that I lack. But I’m perfectly happy to stick my sans-rot13(haqb) AI in the wild when I am blissfully unaware of anyone else doing the same.

I did not include any screenshots of the game, which is probably a bit remiss of me. Here is a small sample:

Finally, here is the victory screen. I am assuming the programmer can’t beat the Four-Suit level half the time, otherwise the screen-shot would have looked slightly different 😉

Features

Transparency

Since this is GitHub, I am able to examine the source code (examining source code is “free” even for those without an account – you only need an account for downloading files and editing them). Here is the code snippet for shuffling cards. Assuming the reader has basic understanding of math and programming languages, it should be reasonably straightforward to work out what’s going on. Admittedly it’s not the most sophisticated shuffling algorithm but at least it’s transparent. If Joe Bloggs accused Leapfroglets of rigging the number generator than it is the software developer who is justified in complaining about his or her bad luck.

No rot13(haqb), rot13(erfgneg)

There is no rot13(haqb) button. The rot13(erfgneg) button means you deal an entirely new hand, which may be worse than T-2-2-0-8-T-5-4-9-2. We all know this is a Good Thing, as it forces the player to learn good habits. Of course, I’m not exactly sure why the player needs over six minutes to find a decent opening play at the one-suit level 😊

That Other Feature

As alluded in a previous post, I made a minor bug fix and made a pull request. This bug was that the move counter was not updated whenever one or more cards was moved to an empty column. I’ve submitted a pull request and am yet to hear back. Ditto for the proposed lyrics for the victory music. Admittedly this was a trivial nit-pick but at least it gave me the opportunity to practice the ritual of downloading code, editing and submitting a pull request. Unfortunately, judging from the activity profile for 2021, I’m not expecting to hear back soon ☹

All things considered, this is actually a pretty decent piece of software and if the company wants young programmers to hone their skills, then they have succeeded in their objective. Well done to Leapfroglets!

Thank-you email from a friend

Apologies for the long break, but it’s been rather busy both onside and outside the workplace.

Today I got an email from a fan, and (no surprise) this means a lot to me particularly in what’s been a difficult year for all of us. This fan is clearly keen to improve his game, and I already like his engaging writing style.

A thank you email from a friend

He mentions “Version 1607” of Windows 10 Spider Solitaire. I am not aware of this version. I always thought Windows 10 SS meant the game that is part of the Microsoft Solitaire Collection and unfortunately, I am not computer-literate enough to work out what version number this is. All I can do is post a screen-dump and ask if someone else can verify if this is indeed Version 1607 (and if not, then where do I get it?)

What I do know is I have another reason to revive this blog, so readers can expect to see regular updates – and there might be an odd video or two on Youtube as well 😊

If you are keen to improve your game, don’t be afraid to drop a comment in one of my posts.