I highly recommend Go. It is the most fun I've had learning a new language since Java.
(I don't enjoy Java programming nearly as much these days as I think the language has mostly languished and I'm not too fond of the FactoryOfFactoryFactories culture that has grown around it).
Even if you don't end up using Go a lot, it will make you question a lot of the complexity that is taken for granted in other languages you use and probably also make your code better in other languages (not in the sense that you will do things exactly the way you do them in Go, that would be foolish to attempt, but in the way you may begin to approach things with a fresh set of eyes in terms of how much flexibility you can maintain while also starting from a small set of simple concepts).
Like others have pointed out, the latest daily version is at the bottom of the list. But I dont know enough of Go to know if the book content is up to date with the latest changes.
I was expecting a book on learning Go, the game. I was disappointed.
I hate it when people name new things with a name that obviously conflicts with something else that's likely to be known and discussed in the same community.
I think someone said this the last time someone posted something about the Go language. Considering that we talk about the Go language here a lot more than the game, it shouldn't be a surprise.
I'm gonna tag this message so I can point it out the next time someone expresses their disappointment. Not so easy to search for the word go. :-)
Mostly it's an annoyance at trying to find relevant web pages on the topic. In that regard the more prolific the software the more it can get away with a common word as a name.
"Go" is the worst of the bunch by far. "Dart" is pretty bad, "Java", "Chrome" and "Python" would be just as bad but they have swarmed the search results so much that it doesn't bug me.
I find that using the search terms "go language" (without the quotes) works a lot better--at least for any conflationary n-gram based search engine, like Google. Just think of it as a type annotation :)
This is a great resource, especially for being free and the source being available, but in case miek is reading... what is with the left margin on even numbered pages?
On first glance this looks excellent, but I have to question producing a book on a language so steeped in unicode with a markup language that makes it so unwieldy.
If you \usepackage[utf8x]{inputenc}, a lot of UTF-8 input will just work.
Greek is an exception though; it would always interpret e.g. α as \textalpha, which doesn't exist, instead of \alpha, which does. The only solution I could find was to write a simple package defining each of the \textgreek as \greek.
There are a few other exceptions (⨂ and ↦ come to mind), and I haven't worked out how to add support for a character (instead of just redefining it like I did with the greek). But the situation is mostly okay. I currently have this line in a LaTeX document for example, and it works fine:
Given $R$-modules $M,N$, their tensor product is an $R$-module $M ⊗_R N$ together with an $R$-bilinear map $b: M × N → M ⊗_R N$ satisfying: whenever $φ:M×N→P$ is bilinear, $∃!g:M⊗N→P$ linear such that $φ = g∘b$.
Sure, if you manage to enter the character XeTeX will be happy to typeset it. It's not a LaTeX issue, it's an editor/desktop issue. I don't really know about maths, but I'm guessing keyboard input for many special symbols is hard. I use (Xe)LaTeX to input phonetic symbols, and I hung onto tipa (the LaTeX package that gives you IPA from ASCII) for a long time, until I discovered C-x RET C-\ ipa-x-sampa.
You can also use TeX mode so that typing \phi will give you φ :).
Also, the very first time you use an input mode, you can just type C-\ to choose it. After you choose one C-\ toggles between that and the standard one, which is why you need C-x RET C-\ to choose another one instead.
I don't know--entering \Phi isn't that bad. You don't need the {} bit, which would be annoying to type. With a clever editor (Emacs) you can even automatically complete it most of the time, so it isn't a real issue.
It's also certainly easier than learning a new keyboard layout (KDE actually offers a keyboard for APL, for example) as long as you're not going to be using too many special characters.
Also, leanpub is awesome (I'm not affiliated with them, but I'm a very happy user).