Live data from Hacker News

Why I Don't Like Golang (2016)

teamten.com

111–120 of 237 posts

Re: Why I Don't Like Golang (2016)

#111

I’d like to get into go but in the past I’ve always been burned by not being able to quickly refactor my code. If I want to change the contract of get_kittens so that it returns a set instead of a list, I found it quite tiresome to then go to all the call sites of get_kittens and change their types to match. What was I doing wrong?* Perhaps there’s a cleverer tool out there that can infer and implement these type cha…

This is true for all typed languages though..

Re: Why I Don't Like Golang (2016)

#112

Earlier quoted context omitted.

The use to pirate stuff all the time. Now it's actually more convenient for me to buy it. But the philosophy I always had was that as long as there were enough people like you paying for software, I wouldn't have to.

I think most people in the industry pirated software when they were students or just beginning. But now that we make money it’s easier to just buy it. Friend of mine pirated photoshop when he was studying and after he finished and started his own business he started paying for it.

Photoshop being easy to pirate was a feature for Apple: the uptake was absolutely insane across all possible levels and eventually nobody uses anything else. Same with Microsoft in 90s: when students asked Bill what he's planning to do with the whole China copying it, he replied that let them get used to it and we'll find a way to charge later.

Re: Why I Don't Like Golang (2016)

#113
post #5

They've fixed the import / modules situation to a point where it's usable and much improved, and generics have been added. However, the issue this brings up about structs / types not explicitly declaring which interfaces they implement is a real and unaddressed problem, especially in large codebases. The only tool that I'm aware of that finds implementations is GoLand, at steep JetBrains prices. Figuring out what typ…

The interface defines the behaviour required at the point of use - that’s the point of them. You should not need to know which types implement an interface and if you do things are deeply broken in your codebase.

I’ve developed large Go codebases and never had this problem so your last sentence is false. In addition this is not an issue other go developers I’ve spoken to have ever worried or talked about.

Re: Why I Don't Like Golang (2016)

#114
post #5

They've fixed the import / modules situation to a point where it's usable and much improved, and generics have been added. However, the issue this brings up about structs / types not explicitly declaring which interfaces they implement is a real and unaddressed problem, especially in large codebases. The only tool that I'm aware of that finds implementations is GoLand, at steep JetBrains prices. Figuring out what typ…

> However, the issue this brings up about structs / types not explicitly declaring which interfaces they implement is a real and unaddressed problem You can do this with a line of code below the struct definition, something like: var _ = & {} The compiler will also generate helpful errors if the struct doesn't implement the interface. Not requiring struct definition is a great feature in golang. I'm able to add an in…

It would be cool though to be able to optionally declare the interfaces implemented by your struct, for documentation and tooling purpose. Also to validate that the struct you’re writing actually implements the interface you have in mind. I know you can make an anonymous assignment to check that, but some sugar on that would be nice.

Re: Why I Don't Like Golang (2016)

#115
post #33

>The tried and true approach of providing a compare method works great and has none of these drawbacks. Agreed! https://pkg.go.dev/sort#Slice is wonderful. (Added a bit after this article was written, I think.)

Lets see what the Go doc example looks like:

  sort.Slice(people, func(i, j int) bool { return people[i].Name 
In Python one might write:

  people.sort(key=lambda person: person.name)
Or in Rust:

  people.sort_by_key(|person| person.name); // sort_by is also an option...
I think it's worth calling out exactly what is happening in the Go example:

- We create a closure that captures the people slice

- We pass the people slice and the closure to the Slice function

- The Slice function mutates the people slice, and because the closure captured the slice it sees these mutations too

I get why the Go team wrote sort.Slice like that, and it was perhaps the best they could have done with the language features...But I think we're going to have to agree to disagree on how wonderful it is compared to other languages ;).

Re: Why I Don't Like Golang (2016)

#116
post #7

Earlier quoted context omitted.

When developers who usually make 6 figures of money complain about $90/yr IDE price I just cannot help laugh. Actually it's even better... the price elevators down from $90 -> year2 90 - 20% -> year3 90 - 40%. Over three years that's like $150-$200 total and it will save you so many headaches. But that's a steep price? Are you kidding? Why do developers hate tools that cost money when they save them time and allow th…

Sorry, no. I have JetBrains and have since stopped using it for go development. It's too slow, too buggy, and lacks the ecosystem that VS code has. I still use it for Java because the rest are even worse A language that depends too much on IDE integration for usability is a real problem, because now you have tool fragmentation as everyone goes different routes with varying levels of success to fix the deficiencies in…

While I am getting your points, but IDE support is an incentive to use a language in my eyes.

Re: Why I Don't Like Golang (2016)

#117
post #7
post #5

They've fixed the import / modules situation to a point where it's usable and much improved, and generics have been added. However, the issue this brings up about structs / types not explicitly declaring which interfaces they implement is a real and unaddressed problem, especially in large codebases. The only tool that I'm aware of that finds implementations is GoLand, at steep JetBrains prices. Figuring out what typ…

When developers who usually make 6 figures of money complain about $90/yr IDE price I just cannot help laugh. Actually it's even better... the price elevators down from $90 -> year2 90 - 20% -> year3 90 - 40%. Over three years that's like $150-$200 total and it will save you so many headaches. But that's a steep price? Are you kidding? Why do developers hate tools that cost money when they save them time and allow th…

Regardless of the price jetbrains intellij based editors are so slow they are borderline unusable.

Re: Why I Don't Like Golang (2016)

#118

Earlier quoted context omitted.

This is an undue attack. We buy our computers and screens and keyboards, most of us are on commercial OS, we pay for SaaS at a non trivial price, and most of us also use additional personal apps that aren't free (including password managers, mail clients etc.). Those are actual tools for the trade. Arguing we should also buy every Jetbrains product is like arguing carpenters should buy line drawing AR goggles. Perhap…

“I’ll pay $1000’s to get all setup and running with everything I need, including a bunch of stuff I don’t need, but not the last $90 for some productive software to make more money” Yeah ok.

Some people really like these tools, and that is OK. But not everyone has the same workflow. I personally get a JetBrains license from the project I work on - but I refuse to use it, as I find their tools pedantic, slow, and eating my computer's resources. Ymmv.

Re: Why I Don't Like Golang (2016)

#119
I just leave this here: https://github.com/golang/go/issues/49383

After such public disregard to the communnity and contributors as a whole, the talk about good or bad has no meaning until they learn the basics. For example how to work with community, and the fact that you have to provide your phone number in order to fix urgent bug or implement some feature is a plain stupid(or rather malicious).

Just imagine you've spent your free time working on the fix or feature, and instead of getting appreciation or sometimes bounty or just nothing, you're being "charged" to contribute. Yeah, they really think it's normal that contributors have to give up PI to the advertisement company that were accused of violating privacy many times before. They basically treat contributors, tech-savvy users who provide free labor, like their usual consumers. Just think about it for a second, this is insane.

Re: Why I Don't Like Golang (2016)

#120
post #25
post #7

Earlier quoted context omitted.

When developers who usually make 6 figures of money complain about $90/yr IDE price I just cannot help laugh. Actually it's even better... the price elevators down from $90 -> year2 90 - 20% -> year3 90 - 40%. Over three years that's like $150-$200 total and it will save you so many headaches. But that's a steep price? Are you kidding? Why do developers hate tools that cost money when they save them time and allow th…

What's even worse is getting companies to pay for this stuff. Getting a company to buy software to help you do your job is like pulling teeth.

if a company wont pay for an IDE for there developers then I certainly won't be paying for it out of my pocket.

if they can't justify paying ~$100 for my ide of choice, then they are costing them selves far more in lost productivity, and that's not my problem.

Post reply on HN