ePubs at gobooks.com

Go books are now available as ePub. I wrote about the plan in November; it took a while to get all the details sorted out.

You’ll see that gobooks.com sports an all-new design, courtesy of Scott Jensen. The previous site was focused on the app; the new design puts the books front and center. You can now also list the books by series and by author. Tap on a book to get details, to download an ePub sample, and to buy it.

Available books: Currently, 81 of the 134 books are available as ePub. Books from Hinoki Press and Good Move Press may not be available as ePub for a while. As for Kiseido and Board N’Stones, I have agreement in principle, but am waiting for their signatures. All the other publishers are on board, and their books are all available as ePub. The button for buying a book will be labeled either EPUB+GOBOOK or GOBOOK ONLY, depending on whether that book is available as ePub.

Issues with ePub: The iOS and Mac apps still offers the best reading experience; ePub readers have a ways to go. Please check out the page on issues and recommended ePub readers. For example, to solve problems, you’ll want to read in single-page (portrait) mode to hide the answer on the next page, as ePub doesn’t support page breaks well. On that page you’ll also find instructions on how to download ePubs of books you’ve already bought.

The Go Books app was released April 11, 2011, almost 8 years ago. It started out with 8 books by 4 publishers, and was limited to iOS. The Mac app was added in January 2015, along with the ability to buy books directly at gobooks.com. Time for the next chapter.

Multi-Cursor Editing in Xcode 10

Multiple selection support in Xcode 10 is amazing. In previous versions, you could hold down the Option key to select a column of text, but you couldn’t do much with it. In Xcode 10, typing in such a multi-selection finally does the right thing: your text goes into each selection, so you can update multiple places at once. This alone really speeds up editing. But until recently, I had missed that multi-selection support goes far deeper:

  • Shift-Control to add selection: Hold down Shift and Control while clicking or dragging to add a new selection. So if you need to make the same edit in multiple places, just select each one, then start typing and make all the edits at the same time.
  • Option-Command-E to add the next occurrence of the current selection: If you already have something selected that you were going to type over, use Option-Command-E as needed to add selections at other places where this occurs, and edit just once.
  • Move multiple selections: As you’re editing, use the arrow keys to move multiple selections in unison; use Option to move by words, use Control to move by subWordsLikeThis (you may need to turn off System Preferences > Keyboard > Shortcuts > Mission Control > Move left/right a space).
  • Copy/paste: Create multiple selections, Copy, set multiple insertion points, Paste. Works like magic.
  • Use Find to create selections: Look in the Find menu for more tools. For example, Select All Find Matches and Select Find Matches in Selection let you set up multiple selections based on your search text.

This can all be accomplished by other means, but multiple selections fit naturally with the way I work, and don’t require extra mental effort or a context shift. This feature has been invaluable in moving some code from C++ to Swift. Thanks to the Xcode team for getting this right.

Happy editing!

Go Books as ePub

Go Books has been a solid success: 134 books by a dozen publishers and over 40 authors, containing over 70,000 diagrams and 8,000 problems, all about the game of Go. However, so far the books have been limited to the Apple ecosystem: iPad, iPhone, and Mac. I’ve gotten requests from many of you on Android and Windows, and I’m sorry I didn’t have a solution for you. For a while, I explored the possibility of creating separate apps for those platforms, but that turned out to be too hard and expensive to create and maintain.

I finally have some good news: I’ve been working on converting Go books to ePub, the standard for digital books, supported on all popular platforms. I’ve been able to bring the main dynamic elements from the Go Books app to ePub format: interactive replay of diagrams as well as interactive solving of problems. ePub reading apps differ in how well they support this; reading apps not supporting JavaScript will simply display diagrams as static images.

While ePub can’t offer all the features of the Go Books app, it has other advantages:

  • Platform-agnostic: You can move to different platforms without losing your investment in books.
  • Future-proof: ePubs will continue to work even if the Go Books app and gobooks.com were to wither away at some point. Future devices are very likely to support ePub.
  • User-friendly: You can choose ePub readers that already support your favorite features, instead of begging me to add those to the app.

That said, to implement interactive books, I’m using parts of ePub that not all readers support, and even those that do support JavaScript and SVG are often buggy. Please let the authors of these ePub reading apps know about any issues you run into.

The following are the apps that have been working best for me; please let me know about other apps that can handle these ePubs.

Here are three Go book samples converted to ePub:

Epub covers

Questions? Some answers below; let me know what else you’re wondering about.

Will all books be available as ePub?

My goal is to get all the publishers onboard. Most books for sure; can’t promise every book at this point.

How will this work?

You’ll buy the book directly on the gobooks.com website (as you can already do now), and in addition to reading the book in the Go Books app, you’ll have the option of downloading an ePub file of the book. You can then read that in your ePub reader of choice.

Will the ePubs include DRM?

No, the ePubs won’t be encumbered by DRM (Digital Rights Management). DRM would reduce your choice of ePub reader and add unnecessary complications. We trust you to respect that the ePub file is for your personal use only.

What about books I’ve already bought?

You’ll be able to download ePub files for the books you’ve previously bought (assuming you’ve associated them with your email), so you can enjoy those books again on a different device.

Will the Go Books app go away?

No, the Go Books app will still be able to deliver better layout, better features, and better integration than an ePub. The Go Books app will still remain the best way to read about Go, and the iPad is still the device I’d recommend for anyone who wants to study Go — not just for Go Books, but also for SmartGo Kifu.

Will the ePubs be updated over time?

Yes, as I find ways to support new features or improve existing features, or simply fix typos, the ePub files will be updated. I plan to provide an email notification when your books get a significant update, so you can download the newest version. For example, inline diagrams won’t be supported in the initial version, but I hope to add that in the future.

What about multi-lingual books?

In the Go Books app, you can switch the language of a multi-lingual book on the fly. I have not found a good way to support that in ePub; instead, you’ll download a separate ePub for each language.

When will this be available?

It will be available when it’s ready. (Sorry, I’ve been burned too often by giving even vague dates.) There are still corner-cases to work out, server code to write, websites to update, and agreements to ink, so definitely not 2018.

Meanwhile, please try out the ePubs above with different reading apps on your devices, and provide feedback to me and to the app authors.

Go Congress 2018, Williamsburg

I enjoyed a fun week at the US Go Congress in Williamsburg, Virginia: a great success in terms of playing go, learning go, meeting old friends and making new ones; a mixed bag in terms of winning tournament games. I definitely did better with a longer time limit:

  • 3 – 3 in the main tournament. Time limit: 1h 30m per player.
  • 1 – 4 in the 55-and-over tournament (40 minutes per player).
  • 1 – 3 in the Die Hard tournament (30 minutes per player).

Clearly a better result than at the European Go Congress last year, where I lost the first seven games. No jet lag certainly helped. My rating before this tournament was 3.07, just barely 3 dan, might drop to 2 dan once the ratings are updated.

I talked to many SmartGo Kifu and Go Books users, and got to answer support questions in person. It’s really valuable to see where people stumble and what they don’t know about – I’ve written a separate blog post on that.

As previously announced, I’m in the process of rewriting SmartGo Kifu in Swift. I demoed a preview of the new version, and got good feedback on design and features. It won’t be ready until 2019 at the earliest, though.

Unfortunately, a family commitment will likely keep me from attending next year’s Go Congress in Madison, Wisconsin. I hope to be at the European Go Congress in Brussels instead.

Atomium

Unknown Kifu Features

It’s rewarding to see many go players at the Go Congress use SmartGo Kifu, and invaluable to be able to provide support in person. Most questions are due to users not being aware of existing features. I will keep improving the user interface to make features easier to find and use; meanwhile, here are answers to questions that came up several times during the week.

Edit Game Info

If you misspelled your opponent’s name, or started recording a game without entering the player names, tap on the title of the game above the board (with the little orange i) to see the game info, then tap on Edit to add or change any of the game info attributes.

Edit game info

Joseki Matching

Many players know about joseki matching, but may not be aware they can match a whole side of the board. To see a list of the games that match, tap on the little orange > in the joseki result (bottom left below the board).

Joseki matching

Rotate to Opponent’s View

If you get a game record from your opponent, it’s probably upside down. You can rotate a game in My Games by rotating two fingers around the center of the board. It rotates by 90 degrees only, so you have to rotate twice, and it’s a bit fiddly, but at least it’s possible. (This will be much improved in a future version, showing the following panel of rotation options.)

Rotation panel

Guess Next Move

Pick a game by a pro you like, turn on Guess Move, then try to figure out where the pro played. SmartGo Kifu gives you clues: right area but wrong move, right move but wrong timing, or the wrong area entirely. This also turns out to be great bar entertainment for several people, as we proved at the Green Leafe last night.

Guess next move

More Privacy

Tired of all those privacy updates? I bet you are.

I’ve made it as simple as I could: https://smartgo.com/privacy.html. I was already collecting very little personal data, but I’ve been able to trim it some more:

  • I’ve removed third-party analytics (Fabric/Crashlytics) from all my apps. I was close to doing that when Fabric was bought by Google; the upcoming GDPR (General Data Protection Regulation) gave me the final push. There’s no reason for Google to have any information about how you’re using my apps.
  • I’ve also removed Google Analytics from my websites. The small benefit of knowing the number of visitors and where they came from was not worth the hassle of having to tell you about this and getting your permission to collect that information. Again, it’s data about you that I don’t want to share with Google. Feels good to be tracker-free.

Zero trackers

I have two favors to ask you:

  • When Apple asks you to share anonymous usage data and crash reports with developers, please agree. Those crash reports really help developers improve their apps.
  • For the mailing lists, I will need your affirmative consent to continue to send you email. No consent, no more Go Books Newsletter for you. So please agree to update your settings when that mail comes.

I know very little about you and how you’re using my apps, and that’s perfect. But that also means that I rely on you to tell me when the apps are less than perfect. And of course, if you’re happy with the apps, please tell your friends. Thank you in advance – I’ll never know that they heard it from you.

Dictionary of Basic Tesuji

The fourth and final volume of Dictionary of Basic Tesuji by Fujisawa Shuko is now available in Go Books on iPad, iPhone, and Macintosh. The project started mid 2016, and the first three volumes were published October 2016, February 2017, and July 2017. William Cobb of Slate & Shell did all the hard work of converting the books to digital format.

Four volumes of Basic Tesuji

The four volumes contain 714 problems and 3070 diagrams. But the real story is the 3743 inline diagrams: instead of deciphering text that describes alternate move sequences, just tap to see a diagram with the move sequence. This makes the digital version much easier to learn from.

Page showing inline diagram

Tesuji are moves that make the most effective use of stones; knowledge of tesuji will improve your fighting skills. This series brings together the full range of tesuji, categorized by the purpose for which they are used: invading, reducing liberties, securing eye shape, taking sente, linking up, taking away the base, and much more.

While many of the problems are hard, single-digit kyu players (and stronger) should benefit from this series. For weaker players, I’d recommend first working through the Graded Go Problems for Beginners or Black to Play! series, then read e.g. Tesuji by James Davies or Five Hundred and One Tesuji Problems by Richard Bozulich.