Category: Go

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.

Spain in February

Spain in February

My mom likes to go to Spain in February to escape the Norwegian winter. I was lucky to be able to visit her there and time it perfectly to include a Go tournament in Barcelona. Little did I know that this would be my last trip for a while. And while Europe is now far along the road to recovery, the US has grossly mismanaged the epidemic to the point where we’re now (rightly so) banned from entering Europe.

It may seem frivolous to write about travel in these times, and this blog post was sitting half-finished for months. However, I’m confident that we’ll be traveling again someday; for now, please join me from home. I hope you’re safe and healthy wherever you are, and that looking forward to travel may help you get through this.

I’ll start with the Go tournament; stick with me if you’re interested in some of the architecture Spain has to offer.

Barcelona Go Tournament

It was fun to meet tournament organizer Julio Martinez in person after only knowing him as @liopic on Twitter, and I even got paired against him in the first round. I ended up winning three games and losing two, bringing my European rating back up to 1 dan. The game against the eventual winner of the tournament, Rita Pocsai 4 dan, was a foregone conclusion, but every other game could have ended differently.

In the game against Marco Meyenschein 4 dan, I misplayed the top right corner, but at least got some outside influence while giving him 40 solid points. I was close to resigning; if it had not been the last game, I might have done so and saved my energy for the next game. Playing on, I managed to stake out a moyo large enough that he was forced to invade to reduce it:

game-5-pos1

As he was running away, I built up territory, but not enough. He just had to connect out, but after misreading a connection, his stones got trapped and eventually died.

game-5-pos2

Not sure what the lesson is: Don’t give up too soon? Beware an opponent who has nothing to lose? Or resign earlier so you don’t have to win this way?

Alicante

The area around L’Albir is really picturesque, with mountains going all the way down to the sea, and narrow streets in the old town of Altea. And a climate that attracts a lot of Norwegians.

Valencia

As a fan of Calatrava (see my trip to his train station in Liège-Guillemins), I stopped in his home town of Valencia to see the City of Arts and Sciences. What a sight! Season 3 of Westworld features many scenes at these futuristic-looking buildings. I only had a few hours, and couldn’t explore the insides, but what an experience to just walk around and take it all in.

Sagrada Família

Barcelona is home to Gaudi, and especially the Sagrada Família. My last trip to Barcelona was in 1992, playing in the Othello World Championship. Since then, the Sagrada Família has made a lot of progress. The outside is still weird:

But the inside is even more magnificent:

Unfortunately, access to the towers is more restricted than it was in 1992, but still well worth it for the spiral stairs, and views into the church from above.

It’s still a construction zone; I’m looking forward to visiting Barcelona again when it’s completed in 2026 (not software, so maybe they’ll even finish on time).

Casa Milà

Another Gaudi building with a lot of controversy. While it’s been derisively nicknamed La Pedrera (the stone quarry), the construction as well as the inside is amazing: lots of light thanks to the dual courtyards, the first underground car garage in Barcelona, arched attic (used for laundry), rooftop with chimneys and ventilation as sculptures.

As with the Sagrada Família, Gaudi figured out the load-bearing structure using hanging chain models, resulting in optimal arches when turned upside down.

Memories and pictures of my trip help keep my spirits up as I remain at home. I’m looking forward to my next trip to Spain – it may be a while, but I’ll definitely be back. Meanwhile, please stay safe.

IMG_4011

 

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.

EGC 2019 in Brussels

A family reunion put me in Ireland right during the US Go Congress; luckily, the European Go Congress lined up perfectly. I arrived in Brussels without jet lag, and definitely did better than two years ago in Oberhof.

I entered as 2 dan instead of 3 dan, knowing that European ranks are tougher than US ranks. However, 1 dan might have been the right rank, as that’s where I ended up (see my EGF ranking). I won half my games in the main tournament, but I was 1-4 in the first week and 4-1 in the second week, a clear sign of being overrated.

The weekend tournament didn’t go as well: I lost all five games. Each game was winnable, but somehow I managed to mess up. I regrouped and analyzed the games, and paid more attention to taking care of my weak groups instead of going for big points, and won the next four games.

A few other observations:

  • I got to practice my Norwegian hanging out with a dozen players from Norway. And it was great to get to know players I’ve long known through Twitter, such as Marcel Gruenauer.
  • I really enjoyed the longer time limits: with two hours per player, games are often four hours long; definitely valuable to spend that much time thinking intensely about the game.
  • Many players stayed only for the first week and the weekend tournament, so that’s certainly an option if you can’t stay for two weeks. Looking at the registered participants, there were 571 players for the first week, 702 for the weekend tournament, and 397 for the second week.
  • Brussels was a great place to have the tournament, with lots of places to eat and explore (more on that below). They had go boards in nearby pubs; maybe playing rengo until 1 am was not conducive to optimal play the next day?
  • The playing space was okay, except for lack of air conditioning – temperatures in Brussels reached 40° C (100° F) during the first week.

Next year, I plan to be at the US Go Congress in Estes Park, Colorado – hope some of the European players will be able to make it.

Side trips

At the US Go Congress, there’s usually a group of us touring the nearest Frank Lloyd Wright buildings. Brussels has a lot of beautiful old buildings, but I found some nearby places that were more to my liking.

The Atomium

I had seen the Atomium before, so I just went to take pictures of this fun structure this time.

Reading Between the Lines

Reading Between the Lines (Doorkijkkerk) is an artwork out in the green, well worth the train, bus, and hike from Brussels.

Liège-Guillemins

I love the Stadelhofen station in Zürich designed by Santiago Calatrava, so when I found out his train station in Liège is only an hour from Brussels, I knew I had to check it out. I was blown away by the size and openness of that space, and the light coming in.

DSC00985.jpgIMG_1336.jpegIMG_1360.jpeg

Port House

The Port House in Antwerp was designed by Zaha Hadid: Not to everyone’s liking, I’m sure, but it just put a smile on my face as I walked around it.

DSC01177DSC01179DSC01182DSC01191

Maybe one of these will inspire you to visit beautiful Belgium. If not, there’s always chocolate.