News for hackers. Stuff that matters.
Re:Python Is Easy. Go Is Simple. Simple != Easy by zimpenfish on Monday November 27, 2023 @12:10PM (#38434925)
> it doesn't have this overbloated concept of inheritance and polymorphism of let's say Java where you have to look through 6 files to understand what's even going on

Several Go codebases I've worked on would like a word. Some Go people really love their interfaces and abstractions and making sure every method is only 3 lines and pretty soon you're 20 files and three type hierarchies deep trying to figure out what a single HTTP handler actually does.

Re:Python Is Easy. Go Is Simple. Simple != Easy by mrweasel on Monday November 27, 2023 @12:16PM (#38435019)
A certain number of developers will be able to complicate any language or mechanism you provide them, it's how they feel important. I've notice the there is a group of people who has their entire identity tied up in being "smarter" than everyone else, except they aren't, so they build extremely complex systems, because they think that's what smart people do. They are interestingly often extremely well versed in their tool of choice.
Re:Python Is Easy. Go Is Simple. Simple != Easy by ingoaf on Monday November 27, 2023 @12:27PM (#38435169)
This is actually a real gem of a comment. Thank you for that!
Re:Python Is Easy. Go Is Simple. Simple != Easy by mostlylurks on Monday November 27, 2023 @12:50PM (#38435527)
You are mistaken if you think that the abundant use of interfaces etc. is motivated by anything along those lines. As someone who often puts basically everything behind an interface and abstracts everything in sight, it's not because it has anything to do with being smart, quite the opposite; it's the only way I can keep any meaningful portion of the code in my head. Give me a 5000-line straightforward / unabstracted implementation of something and I'll struggle, but give me thingDoer.doThing(), behind an interface so I don't even have to know how to construct one, and I'll be happy and able to focus on the task at hand. This applies even if I'm the one who wrote the ThingDoer interface and its implementation(s), and even if it was only 30 minutes ago.
Re:Python Is Easy. Go Is Simple. Simple != Easy by ssd532 on Monday November 27, 2023 @01:17PM (#38435934)
This is me as well.

Another reason for me for having interfaces is simple mocking in tests.

Re:Python Is Easy. Go Is Simple. Simple != Easy by chrsig on Monday November 27, 2023 @12:56PM (#38435617)
> They are interestingly often extremely well versed in their tool of choice.

This has become a red flag to me; over attachment to a tool or paradigm means that they're driven by and making decisions using feelings, not through actual analysis.

Re:Python Is Easy. Go Is Simple. Simple != Easy by thruway516 on Monday November 27, 2023 @12:59PM (#38435667)
Very well put. "They are interestingly often extremely well versed in their tool of choice." People who are, shall I say unwise, but very good at what they do is one of the most annoying things wrong with the world.
Re:Python Is Easy. Go Is Simple. Simple != Easy by munificent on Monday November 27, 2023 @05:04PM (#38439070)
> I've notice the there is a group of people who has their entire identity tied up in being "smarter" than everyone else

I've also seen the opposite where people revolve their entire identity around not being the person and they swing too far the other direction and end up being a masochist and doing things the dumb way because they're too afraid of coming across like a snob.

Re:Python Is Easy. Go Is Simple. Simple != Easy by theshrike79 on Monday November 27, 2023 @12:21PM (#38435101)
You can instantly see when the codebase is Java Coder Go or Python Coder Go, they bring their baggage to the language and it shows.
Re:Python Is Easy. Go Is Simple. Simple != Easy by baby on Monday November 27, 2023 @12:15PM (#38435011)
I’ve seen one Golang codebase like this and it was made by Java people
Re:Python Is Easy. Go Is Simple. Simple != Easy by otabdeveloper4 on Monday November 27, 2023 @12:44PM (#38435440)
Yeah, you just described every Go project. Reading Go code is a nightmare of frustrations.
Re:Python Is Easy. Go Is Simple. Simple != Easy by zimpenfish on Monday November 27, 2023 @04:44PM (#38438844)
I disagree because I've seen some readable Go codebases but I wholly agree that bad Go codebases are a nightmare.

Try comparing the Honk source (clear, direct, modulo the unangst wacky names for everything) with GotoSocial (unreadable, interfaces and abstractions out the wazoo).

(Yes, I know GTS supports the MastoAPI but that doesn't force the hellish onion-layer abomination they've created.)

Re:Python Is Easy. Go Is Simple. Simple != Easy by lokar on Monday November 27, 2023 @01:08PM (#38435795)
There is this odd thing where the actual syntax and features of a language are (at least partly) independent of how it ends up being used. A culture forms around the language (that the authors have limited influence over). Java does not have to be used the way most people tend to (factoryfactoryimplfactory!). And some go projects (notably at least early k8s are go in Java style).

A lot of what people comment on is less the language and more the dominant culture.

Re:Python Is Easy. Go Is Simple. Simple != Easy by saturn_vk on Monday November 27, 2023 @01:16PM (#38435924)
No one is safe from bad developers. I've seen go SDKs for paid products that were clearly written by people with only a vague idea what the target language offers. I have to assume such libraries were hammered until the compiler just accepted what was given