Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

For all these years, I fail to understand the appeal of Go. I think I have grown to be quite understanding to why one would favour one or the other programming language over time, can see why some favour Haskell, some Java, some C, some TCL, some Python.

For Go I guess I can comprehend the statements of praise by Go-users, but I have a hard time with really understanding it. I fail to see the appeal.

This comment is not meant as an offense to Go-lovers out there, to the contrary, pick the languages and stacks you like. Its more about myself; me wondering at my own lack of understanding.



I think it is easier to understand from a relative perspective. If you come from Haskell, you will probably not like Go at all.

But if you come from doing shell scripting or C, then Go will be much nicer. And then it also has some actual nice things and removes some obstacles that exist in other languages.

I think with more experience, people will start dislike Go more and more and switch to other languages. But for beginners it is easier to learn and you are less distracted by nuances like formatting or a difficult typesystem.


A bit of an update to my point above, it does feel a bit like Pascal to me, but kind of missing some of Pascal's nice stuff...

My pet theory to the popularity is that it feels satisfying to just churn out many lines of code and in Go it seems you do that instead of using abstractions or "magic" as in many other languages. So Yeah, I expect popularity to drop as more "legacy" code bases need to be picked up by devs ...


That's what I expect, too. In the end, the biggest problem is always to understand and change complex foreign code.


misread as

> But if you come from doing shell scripting in C

Sure I'd switch to Go in no time!


The appeal to me, when Go first appeared, it seemed that it would be what .NET 1.0 or Java 1.0 should have been all along, regarding AOT compilation support (.NET had it via NGEN but MS was never serious about evolving it), while at the same time having a modern language.

Sadly I was proven wrong about the second part, and it has followed the path of doubling down on Java 1.0, including the grow warts that Java has gotten in 25 years. Here Go has learned nothing from its predecessors.

With the success of the container ecosystem based on Go written tooling, means that at some point using it in some fashion becomes unavoidable, even if your main tools happen to be something else.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: