Which is the best way to learn Go?
from MortySmith@programming.dev to golang@programming.dev on 14 Jul 14:00
https://programming.dev/post/33892877

Any particular up to date course out there? Or another useful source out there to learn it from?

#golang

threaded - newest

ijhoo@lemmy.ml on 14 Jul 14:56 next collapse

Alex Edwards has a good book for web development

lets-go.alexedwards.net

DichotoDeezNutz@lemmy.world on 14 Jul 17:24 next collapse

This is how I learned, I stopped doing the TDD after a while but still a good resource.

quii.gitbook.io/learn-go-with-tests

who@feddit.org on 14 Jul 19:07 collapse

If you already know at least one programming language, you might start with the official Tour of Go. I appreciate its succinct simplicity. Along with a few official blog posts and the standard library docs, it was enough to get me writing useful code.

go.dev/tour/

go.dev/blog/slices
go.dev/blog/strings

pkg.go.dev/std

(To be fair, I’ve been programming for quite a while. Someone unfamiliar with the concepts that Go uses might need a more substantial tutorial.)

donio@lemmy.world on 16 Jul 14:56 collapse

I’d add the language specification. It is well written and Go is a relatively small language so the spec is not difficult to digest:

go.dev/ref/spec

And pretty much everything from the official documentation page is a good read:

go.dev/doc/

who@feddit.org on 16 Jul 18:26 collapse

Fair enough. I didn’t recommend those because:

The spec is far more detailed than necessary to get started with the language. Having to slog through it just to get the basics would have put me off, so I was relieved to find the Tour.

While the documentation page’s articles might be useful, I was disappointed with their writing. As an experienced programmer, I found the ones I read immensely boring and disrespectful of my time, because they have a lot of plodding verbiage explaining already-familiar concepts and often restating sentences from just one or two lines earlier. Meanwhile, other ideas are illustrated using (for example) C pointer syntax instead of explaining, which is clear to me, but would likely frustrate someone unfamiliar with that syntax. The authors seem unable to decide who their target audience is.