Category: SmartGo

SmartGo One: Features and User Interface

TL;DR SmartGo One is an all-new version of SmartGo for iPhone and iPad with improved user interface, more features, better integration, and stronger computer play. It’s your one app for learning, playing, and studying the game of go.

I just released SmartGo One, the all-new version of SmartGo. It’s a free app replacing both SmartGo Kifu and SmartGo Player, with the books from Go Books fully integrated – one app for all your go needs. Currently for iPhone and iPad; a Mac version of SmartGo One is in the works.

I’ve written a separate blog post on the business aspects of replacing two apps with a new app and a different business model. In this post, I will focus on user interface and features, highlighting the changes from SmartGo Kifu. For details and a full list of features, see the user manual in the app (Books > Tutorial & Help > SmartGo One User Manual).

Overall user interface

SmartGo One features a more modern visual look (thanks to designer Scott Jensen), including dark mode (swipe two fingers down/up on the board to turn on/off). Navigation is more standard, using a tab bar on iPhone and the familiar three-pane layout on iPad.

SmartGo One on iPad in dark mode

Other improvements:

  • Ability to use whole screen on iPad
  • Multiple windows on iPad
  • Continue where you left off on another device
  • Much smoother scrolling

Strong computer play

The old SmartGo apps used my own playing algorithm based on Monte Carlo Tree Search. This was fine pre-AlphaGo, but AlphaGo raised expectations. SmartGo One integrates KataGo, a very strong go engine. However, the current implementation only uses the CPU (no GPU or neural net), so it’s not yet as strong as e.g. ‘Master of Go’.

Playing against SmartGo

The current score and winning percentage can be shown while playing against the computer. End-of-game handling has been refined significantly.

File management

SmartGo One lets you manage SGF files locally on your device as well as sync between devices using iCloud Drive. Huge improvements in this area:

  • Organize files using folders
  • Create and manage SGF collections (one file containing multiple games)
  • Work with zipped collections (one zipped file containing multiple games): e.g. if you get a zipped game collection from the Go4Go game subscription service, you can directly open that whole collection
Game imported from Go4Go zipped collection
  • Convert between folders and collections
  • Reorder games in collections
  • Drag and drop games into folders, onto collections, or onto books
  • Handle files with go problems (PRB) and go books (GOBOOK)

Cloud syncing

iCloud is used to sync your state across devices, between your iPhone and iPad (and Mac in the future). Here’s what’s synced:

  • Preferences (the ones that make sense)
  • Games stored in iCloud Drive
  • Your progress in solving problems
  • Games, problems, and books marked as favorites
  • Game annotations of pro games
  • Current reading position in your books

Gobook files

The gobook format (smartgo.com/pdf/gobookformat.pdf) is used for the books in the Go Books app. In SmartGo One, you can convert annotated games into your own book.

Pro game collection

SmartGo One offers more games than ever before (currently 114,000). The pro game collection can now be updated without updating the app, so expect more frequent game collection updates (whenever GoGoD releases a new version).

Player names

The names dictionary (by John Fairbairn) is now a separate tab with more than 4,400 entries:

  • Better presentation of player info
  • Links between different players, making it easy to explore and navigate between players
  • Search in players finds that player as well as related players such as teacher, or mentions in go style or bio
Explore links between different players

Problem solving

The go problems (from goproblems.com) are better organized, and there are more problems available.

  • Improved flow to work through problems
  • Improved display of statistics
  • Your problem stats sync between devices
  • Additional problem collections available
  • Better mechanism for updating problems, allowing issues to be fixed more quickly

Game play and recording

SmartGo has always excelled at replaying, recording, and editing game records, but SmartGo One improves on it in several ways:

  • Improved New Game screen
  • Edit game info directly inline, not in separate popups
  • Easier to go to a particular move
  • Easier to correct a particular move
  • Improved feedback while inserting a move or move pair
  • Quick access to frequently used board display settings
Easy access to board display settings
  • More discoverable and reliable board rotation, with a panel adding related functions
Rotating the board is a snap

Books

All 150 books from the Go Books app are directly integrated into SmartGo One. (If you bought books in Go Books, you can read those in SmartGo One.) Compared to Go Books, there are a number of improvements:

  • Better organization of books, including currently reading, recent additions, most popular
  • Keeps track of up to three books you’re reading right now
  • Search in book list
  • All book purchases can be shared with Family Sharing

Pattern matching

Finding games that match a given joseki or fuseki works as before, but has been improved:

  • Faster matching
  • Clearer display
  • Easier to get to and return from the list of matching games

Still missing

A few features didn’t make it into the 1.0 release of SmartGo One:

  • Guess Move: This will be added in an upcoming version.
  • File formats: Reading go game files other than SGF is not supported yet.
  • Localizations: SmartGo One is English-only right now.

SmartGo Kifu and SmartGo One can happily coexist on your device, so just keep SmartGo Kifu around for these tasks.

Future

SmartGo One builds on decades of experience with computer go, and creates a new foundation for the next decade. By bringing games, problems, and books into a single app, it opens up lots of possibilities for the future – stay tuned.

SmartGo One: Business Model

TL;DR I’ve replaced SmartGo Kifu and SmartGo Player, two paid-up-front apps, by SmartGo One, a free app with extra features available through in-app purchases and subscription.

I’ve just released SmartGo One, which completely changes the business model for my apps. This all-new iOS app replaces both SmartGo Player ($3) and SmartGo Kifu ($20) with a free app.

Some history: I released SmartGo Pro for iPhone in September 2008 (first $10, then $13), followed by SmartGo Kifu for iPad ($20) in April 2010. The two were merged into a universal app in 2012. SmartGo Kifu has always been a premium paid-up-front app – if you bought it a decade ago, you have not paid a cent for it since. This is clearly not sustainable, especially for an app that appeals to a niche audience of dedicated go players.

In December 2015, I announced that I was moving my apps to Swift – with SmartGo One, that effort is finally bearing fruit. (Did it take longer than hoped for? Yes, it most certainly did.) I’ve written a separate blog post on user interface and feature changes, and plan to write one on the technical changes under the hood; in this post, I will focus on the business model.

Old apps

This is how the old apps were positioned:

  • SmartGo Player ($3) was aimed at people who wanted to learn the game and play against the computer.
  • SmartGo Kifu ($20) was aimed at existing go players who wanted to study the game, solve problems, and record their own games.
  • Go Books (free with in-app purchases) is aimed at anybody who wants to learn more about go, from beginner to expert. The books range in price from $3 to $20.

Over the last years, as most of my time has gone into the new app, sales of Player and Kifu have been slowly declining, while sales of books have remained stable. In terms of gross revenue, the three apps have been roughly even, but Kifu and Player account for more income due to Go Books having higher upfront costs (converting books to digital) as well as higher royalty payments.

New app

The new app is free to download, and is aimed at anybody who wants to do anything with the game of go, from beginner to expert. The free features include most of the features of SmartGo Player (except that computer play is limited to the smaller 9×9 and 13×13 boards), as well as the game-recording features of SmartGo Kifu.

There are three ways to pay in SmartGo One:

  • Subscription: For $12 per year, you get access to the full GoGoD collection of 114,000+ pro games as well as advanced features like joseki matching. You can also play the computer on the full 19×19 board.
  • Problem collections: SmartGo Kifu included 2,000 problems; SmartGo One gives you 200 problems for free, and then you can buy additional problem packs ($4 each) to get more problems at your level (up to currently 4,700 problems).
  • Books: All 150 books from Go Books are integrated in SmartGo One, and can be bought using in-app purchase. (The stand-alone Go Books app is still available, and books bought there can be read in SmartGo One.)

Will it work out?

With such a radical change in business model, it’s hard to predict how it will turn out. Here’s my (possibly wishful) thinking:

  • Many of the go players who were willing to pay $20 up-front for an app they couldn’t even try should be willing to pay $12 per year (after a 14-day free trial). These are the old Kifu customers.
  • As a free app, SmartGo One should see many more downloads than SmartGo Player did. Some of these downloads will lead to people buying a book to learn more about the game, or maybe they get into solving go problems and buy a problem collection. A few might even subscribe, but I think subscriptions are going to be mostly dedicated long-term go players.
  • The free Go Books app was not getting enough downloads. Anecdotally, there are many users of Kifu and Player who still don’t know about Go Books. Having the books directly integrated into the app should help people discover them.

Also, SmartGo One is better in pretty much every way than the old apps (in my humble, unbiased opinion). That should count for something.

So maybe it will work out? Interesting times ahead as I build up a whole new user base for this app. But regardless of the finances, SmartGo One is a win for users, as I discuss in this other blog post on user interface and features, and a win for me, putting future development on a much better path.

SmartGo: Mac $0, Windows $19

tl;dr SmartGo for Mac is now free; SmartGo for Windows reduced to $19 (was $39). All-new version of SmartGo for iOS in the works, will come to Mac later. No ETA.

Future of SmartGo Apps

The all-new version of SmartGo for iOS is taking shape. Still no ETA, but getting closer, and I’m excited for how it’s turning out. If you have an iPhone or iPad running iOS 14, and are interested in early testing, let me know.

The new iOS version will replace both SmartGo Player and SmartGo Kifu. It will be free to download, with a subscription for the GoGoD game collection and some functionality; additional problem collections will be available through in-app purchase.

SmartGo for Mac

I plan to bring that same iOS app to the Mac. Catalyst has become much more capable this year, making it easy to bring an iPad app to the Mac. Thus it’s now clear that the current Mac version (built on the old code base) is a dead end, and that it doesn’t make sense to update it any more. I’ve released what is likely the last iteration of that app. While it’s far from perfect, it can still be a useful tool for many until the new Mac app comes along, so I’ve made it a free download. Thanks to GoGoD and goproblems.com for letting me take that step while keeping their game and problem collection in the app; please support them in other ways (e.g. by buying books by John Fairbairn).

SmartGo for Windows

SmartGo for Windows has not been getting frequent updates over the last years, and that will likely not change. My focus is on the iOS and Mac versions of SmartGo. Given that reality, I’ve reduced the price from $39 to $19. The app is getting long in the tooth, but it’s still an indispensable tool for go players on Windows, with 108,000 pro games, 2,000 problems, joseki matching, and more. It may get some updates, but no promises; buy it for what it is and can do today.

Enjoy! And please stay safe until we can play go in person again.

The Right iPad for SmartGo

I often get asked about getting an iPad for SmartGo Kifu and Go Books – which iPad should you get? Here are my recommendations.

iPadOS: My main recommendation is to make sure the iPad you get can run the current version of iOS (now iPadOS). Yes, SmartGo can also run on some older versions of iOS, but it’s no secret that I’m working on an all-new version of SmartGo, and that one will require iOS 13 when it’s released. (No ETA yet.) iPads are long-lived, so you want to future-proof your purchase: at https://en.wikipedia.org/wiki/IPad#History, you can see which iPads support the latest iPadOS.

Cost: Ten years ago, the original iPad started at $499. The newest iPad is now available for only $249 at Amazon ($329 from Apple). The iPad Pro is pricier, starting at $799. Note that Apple also has refurbished iPads.

Size: The regular 9.7″ iPad was a great size, and the newest version features a 10.2″ screen. The 10.5″ iPad Air and the 11″ iPad Pro give you more screen without adding much size or weight. The screen on the 12.9″ iPad Pro is magnificent, but it’s not quite as portable as the smaller ones. With the 7.9″ iPad mini you pay more to get a smaller screen; I’d only recommend that one if portability is paramount.

Storage: 32 GB is fine for SmartGo, no need to get more. There are many other reasons to get more storage, e.g. for photos and videos, or movies for long flights, but go games and books are small and won’t impact your storage. (Can’t recommend old iPads with 16 GB, as a significant part of that is used by the system.)

Speed: For SmartGo Kifu and Go Books, speed is not currently a major factor, but I hope to take more advantage of processing power in future versions. There are apps that are based on Leela Zero or KataGo that will use all the processing power that you can give them. If that’s important to you, look at the processor: the 2018 iPad Pro with an A12X will be fastest, followed by the 2019 iPad Air (A12) and the regular 2018 iPad (A10). Note that the iPad Pro is likely due for a refresh this year.

Accessories: No accessories are needed for SmartGo. But if you want the iPad to take over more of the functions of your PC, you may want to add a keyboard cover. The newest iPad supports the Smart Keyboard, but that one requires you to perform origami each time you set it up, while the keyboard on the iPad Pro is a snap to set up. All the newest iPads support the Pencil, but the Pencil for the iPad Pro attaches and charges magnetically, which makes using it much more convenient. So if these are important, I’d recommend an iPad Pro, as it’s a significant improvement, but the difference in price is also very significant.

Hope this helps you decide on the right iPad for you. The newest iPad at $249 is a steal, and will easily pay for itself thanks to Go Books.

Using Strong Go Programs on Macintosh

SmartGo for Mac is not playing strongly, as computer play is using my own pre-AlphaGo engine. However, like SmartGo for Windows, you can use GTP (Go Text Protocol) to connect to strong engines to play against.

The most recent version of SmartGo for Macintosh (0.8.18) includes some improvements in how it handles GTP engines. It’s not perfect, there’s much more to be done, but hopefully it will tide you over while I keep my focus on the new SmartGo for iOS.

The first step is downloading and installing the computer go engines you want to connect to. Here are three I’ve tested with SmartGo for Mac, from easy to hard to install. All assume that you’re somewhat comfortable using the Terminal app; check out this iMore guide if you’re new to the command line.

Pachi

The easiest way to install Pachi on the Mac is using Homebrew (which you probably have to install first). Follow these instructions:

https://brewinstall.org/Install-pachi-on-Mac-with-Brew/

Leela Zero

Find Leela Zero on Github, scroll down to I just want to play with Leela Zero right now, and follow the Homebrew instructions. You’ll also have to download a file with network weights; the link is in that same section.

KataGo

Installing KataGo is more complicated, as you have to compile it yourself. Follow the instructions for Linux at https://github.com/lightvector/KataGo.

smartgo-mac-gtp-preferences

Setting Parameters

Once you’ve installed an engine, you need to add it to SmartGo. Choose SmartGo > Preferences in the menu and click on GTP. Then click on the + icon and navigate to the executable of the engine you want to add. SmartGo uses the engine name to guess reasonable parameters, then tries to run the engine to get its name and version. If you see a green checkmark with the name and version, you’re all set. Otherwise, edit the parameters sent to the GTP engine (the third column in the table). The following basic settings work for my setup:

Leela Zero: -g –playouts 1000 –noponder -w /usr/local/Cellar/leela-zero/0.17/best-network/40b_257a_64k_q

KataGo: gtp -model /Users/anders/work/katago/cpp/models/model.txt.gz -config /Users/anders/work/katago/cpp/configs/gtp_example.cfg

Leela Zero and KataGo take a while to initialize, so even just getting name and version initially can take a minute, and SmartGo may time out. If it does, just try starting a game against the engine anyway (File > New Game, specify the engine in the dropdown for Black or White), and see if it works.

I hope these instructions get you pointed in the right direction. I’m sorry none of this is as easy as it should be.