Just wrote something small with Go Language. Simple CRUD/webservice with MySQL using gorilla mux and sqlx, but it is almost plain golang. If anything wrong about it, tell me 😉
https://github.com/kgoralski/go-crud-template
Here are my impressions about it:
- it feels pragmatic from the beginning
- probably you don’t need any frameworks at all to use it
- simpler = better, simplicity as a feature
- quite easy to write REST application
- the build in package manager ‘go get’ is cool thing
- compilation & running time of go server is much faster than java
- it doesn’t eat much of resources
- you can use many text editors or IDEs for it (IntelliJ has Go Plugin)
- gofmt – one and the only code formatter
- designed for special needs, not for everything
- it is easy to find examples by googling it, good enough community
- return multiple values from Go functions – nice feature
- syntax not beautiful like Python but still good
- the build in ‘testing’ package – ok, but too simple (testify looks better)
- concurrency – believe that it is nice, but didn’t tried it yet
- it is much different than Scala – complexity vs simplicity
- I think that I could be very productive with Go if i will get used to it
- Docker, Kubernetes, CoreOs, Consul, Flynn, Lime, Google, Dropbox…
- heard that golang is good for ‘real time apps’ – want to try it soon
- it seems to be good for building command-line tools
- it is different than Java, little bit tricky at beginning, but easy to start 😉
- ‘good when you need to write something yourself instead of using library’
- need to find idea for real project, because I kinda like Go
Links:
- What Golang Is and Is Not
- Moving a team from Scala to Golang
- Handling 1 Million Requests per Minute with Go
- Sourcegraph, a large-scale code search & cross-reference engine in Go
- Farewell Node.js – Leaving node.js land for Go
- Websocket Shootout: Clojure, C++, Elixir, Go, NodeJS, and Ruby
- Go at Dropbox and here
- Here’s Why Docker Was Written in Go
- Write microservice in golang
- Go and Package Versioning
- allegro.tech – Writing a cache service with millions of entries in Go
- Uber & Go
- What is the purpose of Go project?
- GoUsers
- Go UK Jobs Watch
- indeed job trends
- What is the future of the Go programming language?
- Why is the programming language GO getting so popular lately?
- Performance and memory analysis of Golang programs
- Web Frameworks Benchmarks
- From Java to Go, and Back Again and community reaction