BeyondCodeBootcamp / BeyondCodeBootcamp/beyondcodebootcamp
Resources for learning Go (golang)
- Lingua principale
- JavaScript
- Stelle
- 63
- Fork
- 3
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
> We did what we always do when there’s a problem without a clear solution: we waited.
> Waiting gives us more time to add experience and understanding of the problem and also more time to find a good solution. - Russ Cox
Learn the philosophy, earn the language.
1. [How to Think in Go ("Go Programming")](https://www.youtube.com/watch?v=jgVhBThJdXc) (the original 2010 talk)
2. [Effective Go](https://go.dev/doc/effective_go) (short, 55 page book)
3. [Go by Example](https://gobyexample.com/) (for all your copy pasta needs)
4. [Introduction to Go Generics](https://ganhua.wang/introduction-to-go-generics#heading-type-parameters)
Go Proverbs: [Talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) | [Printable Poster](https://github.com/BeyondCodeBootcamp/go-proverbs/) | [Website](https://go-proverbs.github.io)
# Install Go
- https://webinstall.dev/golang
Uses the official Go tar package from golang.org, but also sets GOBIN, and doesn't change any system directories or permissions. TL;DR: Better than `brew` or the hacky `pkg`.
# Cheat Sheets & Books
- Go by Example: https://gobyexample.com/
- YourBasic Go: https://yourbasic.org/golang/
- Tour of Go: https://tour.golang.org/
- Learn Go with Tests: https://github.com/quii/learn-go-with-tests
- Effective Go: https://go.dev/doc/effective_go
# Selected Articles & Talks
How to Think in Go ("Go Programming"): https://www.youtube.com/watch?v=jgVhBThJdXc \
(the original 2010 talk)
- The Go Book ("Effective Go"): https://golang.org/doc/effective_go
- `go mod` ("Go with Versions"): https://youtu.be/F8nrpe0XWRg
> "Engineering is Programming across Time and Teams"
- Go Proverbs: [Talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) | [Printable Poster](https://github.com/BeyondCodeBootcamp/go-proverbs/) | [Website](https://go-proverbs.github.io)
- Things in Go I never Use: https://www.youtube.com/watch?v=5DVV36uqQ4E
- Practical Go Programming: https://www.youtube.com/watch?v=2-pPAvqyluI
- How I write Web Services after 8 years of Go: https://www.youtube.com/watch?v=rWBSMsLG8po
- Go Workshop with Dave Cheney: https://www.youtube.com/watch?v=gi7t6Pl9rxE
- More than you ever wanted to know about errors: https://www.youtube.com/watch?v=H1gwKI2V7YA
# Selected Articles:
- Toward Go 2 (great talk on engineering in general): https://blog.golang.org/toward-go2
# Google I/O
- Google I/O 2014 talks: https://go.dev/blog/io2014
- Google I/O 2013 talks: https://go.dev/blog/io2013-chat
- Google I/O 2012 talks: https://go.dev/blog/io2012-videos
- Google I/O 2011 talks: https://go.dev/blog/io2011
- Google I/O 2010 talks: https://go.dev/blog/io2010
# More on Software Engineering
- [CreedsOfCraftsmanship.com](https://CreedsOfCraftsmanship.com)
# Rob Pike Talks
| Title | Venue | Link |
| --- | --- | --- |
| Go Programming (2011) | Google I/O | https://www.youtube.com/watch?v=jgVhBThJdXc |
| Concurrency is not Parallelism (2015) | Heroku | https://www.youtube.com/watch?v=oV9rvDllKEg |
| Simplicity is Complicated (2015) | dotGo | https://www.youtube.com/watch?v=rFejpH_tAHM |
> And if you're going to write a [JavaScript] program, you wouldn't start with a C++ [or Rust] program and translate it line-by-line and expect to end up with a very well-written [JavaScript] program.
>
> And concepts and the idiom in those languages are different enough that you just end up with a badly-written, non-idiomatic [JavaScript] program.
>
> And the same is true of Go and other languages. If you start with the concepts and idioms from C++ or [Rust] or Python and you try to translate those line-by-line into [JavaScript], you'll just be frustrated with the experience. - Russ Cox, Go Programming, Google I/O
# Really Good Extras
- Fyne (Cross-Device Toolkit): https://fyne.io
- GoReleaser (Cross-Platform Release Publisher): https://webinstall.dev/goreleaser
- vim-essentials: https://webinstall.dev/vim-essentials
- vim-go: https://webinstall.dev/vim-go
- Versioning your tools.go: https://stackoverflow.com/a/60383471/151312
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Valutazione
Questa issue non è ancora stata valutata.