Peter Coates
1 min readFeb 27, 2021

--

I was a scoffer at the idea that Go is a systems programming language, but as you define it more broadly, yes, I agree. One thing I'd add is that Golang is specialized in the types of programs it's suitable for but just as much in the type of team. Things like Docker, Kubernetes, etc. are usually built by small, tight teams of highly skilled developers. It's fantastic for that. Where it's an utter bust is in the much larger world of business programming. I worked for a premier investment bank that had more than 100,000 distinct classes in service across thousands of applications some with as many as 15 versions running concurrently because software had to be up all the time with trillions of dollars a day flowing through it all. Extreme, but qualitatively very, very common in many industries. You might say "don't build software that way you idiot!" but that bank probably had the highest average level of competence I've ever encountered in a big company--I doubt any organization could have don it any better. Point is, It is essentially impossible to do modern business programming without OO support and other features of more cumbersome languages like Java and C++. Moreover people in these complex environments flow in and then out of teams constantly. Virtually everything that makes Golang great for small, tight, highly focussed and skilled teams would make it a nightmare in the day to day java world.

--

--

Peter Coates
Peter Coates

Written by Peter Coates

I was an artist until my thirties when I discovered computers and jumped ship for a few decades. Now I'm back to it. You can probably find some on instagram.

Responses (1)