Little Go 2.0.0 released

Little Go 2.0.0 has been published on 10 May 2024 on the App Store, 18 months after the previous release 1.7.1. The release notes are available in the App Store update notes or on the GitHub release page.

The main user-facing changes in version 2.0.0 are two things:

  1. The app now supports game variations.
  2. An overhaul of the in-game user manual, plus the publication of an online version of the manual.

While these changes do not sound like much, they are effectively a huge step forward for the project, and accordingly I decided to increase the major version to indicate this milestone.

The remainder of this post are some of my memories of how v2 came to be and why I think a major version update was in order, so it’s perfectly safe to stop reading now ūüôā.

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.

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. The latest upgrade to Drupal 8 in 2018, for instance, took me about two weeks to complete!