"In our tests, Go's performance blew away most of the competition."
Since it didn't blow away "all" of the competition, this reader is curious about which other stacks held their ground.
This reader is also curious as to why Erlang wasn't in the competition, since Erlang meets all of the stated requirements (same programming language for backend and frontend systems, fast HTML templating system, fast start-up, modular recompilation, lots of connections on one machine, language tools for handling application-level concurrency, good performance, robust RPC layer to talk between tiers, lots of libraries, and open source). I'm guessing there was an unstated requirement along the lines of "syntax is not weird".
It's not only syntax, I think Erlang although a very good language, puts you in a different mode of thinking. This might be a good thing, but it also makes it harder to find developers to work on your project as they are less abundant.
How's the deployment story for Erlang? One attractive feature of Go is that it produces self-contained* binaries that can be easily deployed to your production hardware. No other setup required.
(*Go's net package links against libc to get around domain resolution issues on various broken systems. This can be disabled if you want a truly standalone binary.)
deployment story for Erlang is not as simplistic as in Go, but it allows much more, including deploying and running several versions simultaneously, hot patching or live profiling. The philosophy of Erlang/OTP is drastically different from Go/Google production, so it's not easy to have a direct comparison.
Since it didn't blow away "all" of the competition, this reader is curious about which other stacks held their ground.
This reader is also curious as to why Erlang wasn't in the competition, since Erlang meets all of the stated requirements (same programming language for backend and frontend systems, fast HTML templating system, fast start-up, modular recompilation, lots of connections on one machine, language tools for handling application-level concurrency, good performance, robust RPC layer to talk between tiers, lots of libraries, and open source). I'm guessing there was an unstated requirement along the lines of "syntax is not weird".