Go and JavaScript: Love at First Byte

What has attracted me to JavaScript and now Go are the vibrant communities and the wide variety of software they enable one to create.

Today I head back to Seattle after a great GopherCon. I rank it up there with CascadiaJS and JSConf which I had religiously attended in the past.

I also enjoy learning from the contrasts between the languages. JavaScript is weakly-typed, while Go is strongly-typed. Node.js tends to rely more on third-party libraries, where Go has a very solid standard library. Package management with NPM is mature, Go package management is maturing. Deployments of Node.js applications require installing many modules, where Go builds a static binary. Both handle concurrency, but in different ways.

Two areas where Go excels is containerization and distributed computing. Systems like Docker, Kubernetes, Consul, NATS, and etcd are developed in Go.

Go is also picking up speed in the data science world, which traditionally has been supported by Python.

JavaScript and Go are at the center of the software that I want to be writing for the foreseeable future.