September 26th, 2024

Golang – when programmers had smaller egos

The article contrasts the utilitarian ethos of Go, created by Google, with modern programmers' focus on personal branding, advocating for a balance between ambition and practicality in software development.

Read original articleLink Icon
Golang – when programmers had smaller egos

The article discusses the programming language Go, created by Google, and contrasts its ethos with the current attitudes of many software engineers. It suggests that today's programmers often view themselves as artists, focusing on personal branding and creativity, while Go's creators came from a time when programming was more utilitarian and less ego-driven. Go, introduced in 2009, was designed to address the limitations of existing languages like C++ and Java, particularly in cloud computing. Despite its practical advantages, such as speed and efficiency, Go has faced criticism for its code aesthetics and strict style requirements. The author reflects on the need for a more grounded approach in programming, suggesting that the simplicity and effectiveness of Go could serve as a model for contemporary engineers. The piece concludes with a hopeful note that the current generation of programmers might learn to balance their ambitions with humility and practicality.

- Go programming language was created by Google to address limitations in existing languages.

- The language emphasizes practicality and efficiency over aesthetics.

- Many modern software engineers prioritize personal branding and creativity.

- Go's strict coding style has drawn criticism, but it offers significant performance benefits.

- The author advocates for a more grounded approach to programming, inspired by Go's ethos.

Link Icon 8 comments
By @bagful - 7 months
False humility is a form of egotism; every stated upside of Go can be equally construed as a paternalistic concession to our general failure to produce capable programmers, let alone at a sufficient volume to fulfill Google’s commercial ambitions that require the production of Lots Of Code.
By @disintegrator - 7 months
I’ve always associated Go as something that swooped in on Python, Ruby and Node.js to offer an alternative that is much faster out of the gate and far more approachable as C/C++/Java. This continues to be true from my experience and I think Go succeeds at this even with some of its well documented rough edges.
By @asmor - 7 months
That's maybe a bit... thick. Fewer commercial ambitions?

The entire point of Go is to be the Java of Google, the language you don't need several weeks of training for to be productive in and start reading and writing code.

Java's problem is that it doesn't do this well for anything but heavy business logic applications, and the more clever the programmer, the more they can build up complex structures. Go counters this by not having complex structures and forcing you to consider every failure case (at least until writing "if err != nil" becomes second nature) while also having a better (but not perfect) API surface for writing the kinds of applications important at Google (network heavy, distributed systems, performance focused).

By @bitsandboots - 7 months
Didn't expect to get insulted for not using golang despite it not having a compelling use case for my needs. But here we are.
By @xracy - 7 months
Every golang programmer I've worked with doesn't fit the bill of "small ego".
By @erik_seaberg - 7 months
By @nathants - 7 months
there’s two types of programmers:

- those who’ve worked with go fulltime for a few months

- those who haven’t

looking back at the go i wrote in my first weeks after dropping python, it is very different from the code i write now.

go is imperfect, but fantastic. hard to hold any other view without being in the latter category.