4 ms·
If you worked with Go quite a bit 3-4 years ago, but have been out of scene since then... what is the best resource(s) for getting back up to speed with its cur
by StevePerkins 8y ago
If you worked with Go quite a bit 3-4 years ago, but have been out of scene since then... what is the best resource(s) for getting back up to speed with its current state?
I presume that the language spec itself hasn't change DRAMATICALLY over the past few years. But so much is unfamiliar in the project structure / build process area (e.g. "vendor directories", modules, dependency managament, etc).
All the tours and tutorials focus on the language syntax and standard library. Looking for a refresher or intro to the "how do you actually get work done in the best manner?" plumbing aspects.
- swah 8y agoI'd say: assume nothing has changed. Take a look at the active projects in your area of interest. A few ones: https://echo.labstack.com https://echo.labstack.com https://github.com/go-kit/kit https://github.com/go-kit/kit Web glue frequently recommended around here: https://github.com/go-chi/chi https://github.com/go-chi/chi Github pages like https://github.com/avelino/awesome-go https://github.com/avelino/awesome-go have become a good starting point for finding interesting projects.
- carbocation 8y agoI use go as my daily driver... and I would also like to see this. Especially now that there is a blessed module system. (I suspect that since this is just in pre-release, we won’t get any battle-tested advice for a few months, though.)
- divan 8y agoYou only need to pick up the whole `vendor/` thing (you can "vendor" deps by copying it manually if it works for you), get familiar with `dep` probably (as a lot of project use it nowadays by default), and that's basically it. Nothing that affects usual daily work has changed and that's what I insanely love in Go. Recently I had to pick up and work on project I did back in 2013, and it was so damn cool to see that it just works, compiles and there is almost zero problems with dependencies (the only one I had was due to removal of `code.google.com` and moving projects to github, so it was a matter of renaming import path and introducing vendoring).
- akavel 8y agoPersonally, I try to review the release notes for subsequent versions of Go. The notable changes are generally highlighted upfront there (including the vendor directory semantics IIRC), see: https://golang.org/project/#go1 https://golang.org/project/#go1 As to the recommendations to learn dep, personally I didn't (currently we use an inhouse tool at my workplace, and I expect we'll transition to the new go modules when they will be released as part of Go 1.11). The "modules" are actually not there yet, will officially land as a prototype feature in 1.11, feature-gated and with the old GOPATH way still working.