thoughts on software development and everything else

Learning quick with Anki


If you haven’t heard of it before, Anki is an amazing flashcard program. The great thing about it is how effortlessly it implements spaced repetition. When you flip over a flashcard, you tell Anki how difficult it was, which affects whether you see the card again in the same session, or tomorrow, next week or next month. This lets you easily focus on the things you find more difficult and helps you remember more effectively.

I’ve used Anki before for learning languages. But the format lends itself really well to learning syntax - bash commands, Go CLI flags, library functions, you name it.

I’m not the first to realise this, obviously. Maybe Anki will become more and more popular?

Learning syntax with Anki inspired me to start a little project in Go: godoc2anki!

The intent is to make it easy to create Anki decks from Go library documentation. Two things help me out here:

  1. godoc ensures that all documentation for Go packages is laid out in a pretty standard way
  2. Anki allows you to import decks from a very simple CSV or TSV format: Question, Answer

To begin with I’m parsing online godoc pages from https://golang.org/pkg and https://godoc.org/ . This may not be the cleanest or most efficient way to do it, but it’s good practice for using the net/http and x/net/html libraries.

Future opportunities for change/improvement:

  • Get docs from godoc CLI directly rather than HTTP calls
  • Generate a complete Anki deck .apkg file for simpler import