Top
Best
New

Posted by xngbuilds 2 days ago

Just Use Go(blainsmith.com)
215 points | 204 commentspage 7
SuperV1234 2 days ago|
[flagged]
ramon156 2 days ago||
[flagged]
shantnutiwari 2 days ago||
> Screams LLM.

This is getting really fucking irritating. Every 3rd comment on every HN post is "This is LLM", which has become a proxy for "I dont like it so it must be llm"

runarberg 2 days ago||
I think your blame is misplaced here. LLMs have poisoned the Web, any reasonable person is right to be extremely very of any content they come across on the web in 2026.

The LLM models (or rather the AI companies pushing LLMs) did this. The people who are complaining are reacting very predictably. Between the proliferation of AI generated content, and people complaining about (potentially) false accusations, personally the former annoys me way more.

thomascgalvin 2 days ago|||
Nothing about this screams LLM; it's very clearly a riff on Just fucking use HTML and Just Fucking Use Postgres

https://justfuckingusehtml.com/

https://www.justfuckingusepostgres.com/

orphea 2 days ago||
It was funny the first time. Maybe second. Third is just a bad taste, not original, not funny.
ramon156 2 days ago|||
I took the mistake of reading further and my speculation was confirmed. A lot of red flags

> "No X, no Y, just fucking Z".

runarberg 2 days ago||
I know this is nitpicky, but whenever I see Go code I see those capitalized function or variable names and know: “aha, these were imported from another file; or will be exported later” and I think to my self: “why? oh why is that relevant information for my at this point in the code?” and I just think about what kind of a weird ill thought out design decision that was, just to save authors from writing an “export” keyword, and further judge the rest of the language predicting it must have more weird design decisions in it.
doodoostew 2 days ago||
I've worked on large Go codebases on large teams at large orgs with large dreams. That garbage us straight up unmaintainable in the large and nobody can convince me otherwise. I have deep knowledge of the language, platform, used it for over a decade. It sucks.
sethammons 2 days ago||
My experience is directly counter. I've worked in half a dozen very large orgs and moving from interpreted languages to Go in each one made the system easier to reason about, more maintainable, and easier to onboard new team members. Go strikes a balance between all the competing priorities that has, in my personal experience, improved the engineering velocity across half a dozen companies comprised of hundreds of developers each. For two organizations, they made very coupled and hard to reason about code bases, but those were vastly easier to reason about than had they been written in, say, python or ruby.
za3faran 1 day ago||
Compared to a language like Python or Ruby, yes it's better for larger programs. Compared to the likes C# or Java? Not a chance.
sethammons 1 day ago||
Most former java devs I have worked with prefer Go after a year or so. Sample size is probably around 40 java devs leading to about 35ish Converts.

However, I have only worked with about 5 or so former C# and while they liked Go, they missed C#. Only one preferred Go.

C# is on my shortlist to pick up.

bdangubic 1 day ago||
I think this entirely depends on what kind of Java is being written. If you are Java developer on say Spring stack, moving to Go never ends up well in my experience. On several projects I worked on there was a push (strong word, more like investigation/POC) to start writing some services etc in Go and there was almost universal rejection at the end. So I think there is more to just language selection/preference but more like an entire ecosystem depending on what you are hacking
greenavocado 2 days ago||
It sucks because?
4ndrewl 2 days ago||
Account created one hour ago...
dadoum 2 days ago|
I would like someone to explain me Go. Really, I will use strong words but that's really what I feel.

The syntax changes a lot from the C one, and I can't see any reason for it. To me, it looks unstructured, with the lack of colons for example. It ignores memory safety, it feels like it ignored all of the typing system research since C, no discriminated union, and structures and types in general are heavy to write. It encourages bad patterns, errors out on mundane things like an unused variable, forces you to handle errors with a lot of code while not catching much more than C in terms of bug-prone practices. The package/module system is a nightmare for contributing to open source projects. Modifying a dependency to find a bug is very hard, even swapping a dependency (version) is annoying.

And what do you get from all of this compared to C? A garbage collector, tuples, and goroutines. No metaprogramming (aside from generics, and that was a whole story), interop with C is limited. To me, it looks like it does not focus on the algorithms, but on the code implementation, which is imo what leads us into poor programming and missing critical logic flaws, because the logic is buried. I may have forgotten other gripes I got while working with Go, but honestly, if I wanted all of that, I would pick D, at least it interops well with C and has metaprogramming (and has been made earlier, which excuses a little the lack of certain things).

But really, I am open to someone explaining me how they enjoy Go. Because I feel like I should be wrong as I see most people (which, for some of them, I know are clever) praise Go.

Edit: I added modal expressions to make it clear that it is my opinion.

lanstin 2 days ago|
I like it because I have more control over the size and layout of my memory structures than many GC languages, and the goroutine/channel data flow design model lets me use all the cores pretty evenly without having to worry about mutexes or subtleties. Pretty easy to get into the 100k request per second performance regime without special tweaking. I tend to either write long lived servers where the performance per container directly affects the cost, or analytics sort of Calais where I want my laptop to use 1/2 or 3/4 of its cores and get a faster answer from scraping 10M whatevers.