Blogs

Little Go 1.7.1 released

The Little Go release 1.7.1 has just been published (September 23 2022) on the App Store. It contains fixes for two bugs, each of which caused the app to crash. Here’s the usual link to the GitHub release page.

Little Go 1.7.0 released

Little Go 1.7.0 has been published on September 18 2022 on the App Store. Another 1½ years have passed since the last release, which again is longer than I would have wished, but such is life… The new version continues the work started in 1.6.0, which has as its final goal the support of as many features of the SGF file format as possible. The release notes are available in the App Store update notes or on the GitHub release page.

Added software projects libsgfc++ and SgfcKit

With a delay of two months after their first official release I have now added my newest projects, libsgfc++ and SgfcKit, to the list of software projects.

libsgfc++ (GitHub project page) is a cross-platform C++ wrapper library around SGFC, the SGF Syntax Checker & Converter. SGFC is a command line utility written in C that reads and writes SGF (Smart Game Format) files. By wrapping SGFC’s functionality, libsgfc++ transforms the command line utility into a reusable software library that makes the functionality available in the form of an object-oriented API.

SgfcKit (GitHub project page) is an Objective-C wrapper library around libsgfc++, making the combined libsgfc++ / SGFC functionality available to Objective-C clients.

Amazing substring behaviour

In a recent code review at my workplace I found a piece of C# code that contained something along this line:

string foo = "bar";
string substring = foo.Substring(3);

Clearly index position 3 is beyond the end of the string, so I thought I had found a bug and was about to flag the code. Then it occurred to me: Why had the unit tests not failed during the gated checkin build?

Little Go statistics update

I took the opportunity of the 1.6.0 release to have another look at Little Go’s App Store statistics. The last time I published these statistics was in September 2013, for version 0.12.0. In the 7½ years since then I have done nothing to promote the app, except listing it on Sensei’s Library. I’m therefore quite pleased to see that the app’s reach has increased substantially. Updates The total number of updates in the 11 days since the 1.

Little Go 1.6.0 released

Little Go 1.6.0 has been published on February 27 2021 on the App Store. This is the first release in almost 2 years, and it’s packed with improvements. You can read the release notes in the App Store update notes or on the GitHub release page. 1.6.0 is a landmark in the version history of Little Go because the app now incorporates its own SGF parser instead of relying on Fuego to read and write SGF data.

Goodbye Drupal, welcome Hugo!

15 years ago I migrated this website to the popular CMS Drupal. At first I loved Drupal, it was a nice and shiny tool for managing my content without having to deal with designing the appearance of the site. Over the years, however, I realized that running a dynamic website also has a cost, and that cost is keeping the software that drives the site up-to-date. With Drupal that cost is substantial: Security updates are constantly pouring in, and upgrading Drupal to a major new version invariably also means a major amount of work to be done.

Little Go 1.5.1 released

Always two there are, no more no less. A master release and a bugfix release.

Alas, it seems to have become almost a rule that, shortly after I publish a master release of Little Go on the App Store, some issue is found and I have to follow up with a bugfix release. So here I present to you version 1.5.1 of Little Go which was published on the App Store last Sunday night and which contains the fix for a bug that affected users on older devices with iOS 9.x and below.

The annoying thing is that this time the problem was a piece of code that I had added in 1.5.0 to make UI testing work. In other words, my effort to increase the software quality had exactly the reverse effect. At least the bug was easy to find and fix, just a property (accessibilityFrameInContainerSpace) that was introduced in iOS 10 and which I had forgotten to protect with an appropriate @available guard.

Here's the usual link to the GitHub release page.

Little Go 1.5.0 released

Little Go 1.5.0 has been published earlier today on the App Store. Version 1.5.0 is the first feature release since 1.2.0, almost 4 years ago.

The new version contains only a single feature: A new board setup mode in which you can place black or white stones in any order and combination to set up the initial board before you begin to play moves. This feature is a continuation of the work begun in version 1.4.0, where I added support for loading and saving .sgf files that contain stone and/or player setup nodes.

Also important in this version: I started to write automated UI tests. The main work was finding out how the UI testing API works and laying the groundwork for future tests (e.g. how to test the three different layouts, how to interact with the board to place a stone, etc.). Originally I had intended to automate all tests described in the manual testing script (file TESTING), but then I realized how much work this meant and I became completely paralyzed. Several weeks of stasis finally convinced me that the task of fully automating all UI tests would have to be broken down and completed with "baby steps" if the project ever was to see another release. So that's why in this version of Little Go there is less-than-might-be-expected UI testing.

That's all, folks. If you want you can finish by reading the App Store update notes or the GitHub release page.