top | item 33560306

(no title)

james-skemp | 3 years ago

A number of applications I really enjoy are written in Go, so it's been on mind to learn enough to be dangerous.

Has anyone had good success with any particular resources?

discuss

order

rob74|3 years ago

If you're really new to Go, but familiar with other programming languages, I would recommend starting with the tour (https://go.dev/tour/welcome/1) - I think it explains some of the differences between Go and other languages pretty well and gets you up to speed on the basics fast, without having to install anything. Once you have done that, you can continue with the "official" documentation listed on https://go.dev/doc/ which includes "Effective Go" (some useful recommendations) and the FAQ.

bheadmaster|3 years ago

If you want a challenge, try "The Go Programming Language" by Alan A.A. Donovan and Brian W. Kernighan.

It's somewhat akin to what "The C Programming Language" (K&R) is to C. It's a fairly practical and on-point, and has a lot of (somewhat tricky) exercises, while still providing a complete overview of the language.

wcedmisten|3 years ago

A good place to start is their official "tour".

I found it a little bit redundant coming from already knowing common programming constructs and C, but it was still a good introduction to the syntax and especially for the more unique features like Goroutines.

https://go.dev/tour/list

jasonwatkinspdx|3 years ago

The Donovan book is fine. It may be slightly outdated in places but nothing that would trip up a developer with prior experience in some other language. One of Go's virtues is it's simple enough you can be comfortable and productive with just a weekend of learning.

criddell|3 years ago

What are some examples? I've always thought of Go as a server-side language.

masklinn|3 years ago

fzf, hub, syncthing. Possibly also scc if for some reason you're not running tokei or loc.

Maybe also frp and hugo.

james-skemp|3 years ago

Gitea and Hugo come to immediate mind. I thought there was a game framework that used Go as well (which I can't find at the moment).

As a .NET guy, I've actually started looking for tools built in Go since I know they'll be easy to run across the platforms I use, without extra dependencies.

rafaele|3 years ago

Caddy, Gotify, Photoprism