[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 0_YISbBYJg5hkJGcQd.png (22 KB, 500x500)
22 KB
22 KB PNG
I see a lot of people here saying Go is bad and I'm curious why?

I use Go sometimes and it seems fine. Idk of any huge drawbacks (maybe I'm missing them though) compared to other languages. It really seems like any other language, it does some things well and others not so well. It's up to the dev to choose the right tool for the job.

Is there something I'm missing?
>>
File: go superiority.png (6 KB, 764x762)
6 KB
6 KB PNG
people are saying bad things about every languge here, retard
Go is actually a white men's language. C for web. if you don't like Go you are a jeet simple as
>>
Never heard anyone say anything negative, aside from it being too retard proof.
>>
>>106686804
>Why is Go considered bad?
it isn't
>I see a lot of people here saying Go is bad and I'm curious why?
You mean the rust trannies? Ignore those people.
>>
>yet another spam Go bot thread
GET
A
FUCKING
LIFE
JEET
>>
>>106686825
>go is white man's language, sir!
>my whole village uses go to scam westerners, sir!
>we are aryan - aryan is white, sir!
>not like those dalits still using JAVA, sir!
>>
>>106686804
>I see a lot of people here saying Go is bad and I'm curious why?

It is intentionally crippled and stuck in the 1970s for the most part.

However there is only one GOOD thing about Golang: It is easy to learn and has no true OOP so you can take your shit-quality java developers, retrain them in Go and force them to stop doing the horrible OOP shit they have been doing for years.

Quite a good punishment, I say.
>>
>>106686825
>Go is actually a white men's language.
it was created for the H1bs at Google, so, NO, quite the opposite
>>
File: durga 1757089747605295.jpg (139 KB, 1280x720)
139 KB
139 KB JPG
>>106687073
>>go is white man's language, saar!
kek
>>
>>106686804
it's either Rustroons mad their language flopped or pajeets seething Java is getting deprecated
>>
File: go_1.png (3 KB, 496x403)
3 KB
3 KB PNG
>>106687058
>>106687126
>>106687073
Okay so what language do (You) use then?
>>
>>106686804
no enums, instead you get awful generics that ruin everything for everyone
>>
>>106688617
Barely usable generics, they force you to use dynamic dispatch.
>>
>>106687126
>weapon of durgasoft
jeets would be almost endearing if it weren't for half their economy scamming grandma
>>
Go is fine, I don't know why people hate on it. I've ony dabbled, though, so maybe I'm just too inexperienced to understand. I'm building my business with Rails in the CUURENT_YEAR so what do I know?
>>
>>106688823
go is fine, it's just not as trendy as rust so trannies who never coded anything outside of code of conduct don't like it
>rails in current_year
neat, I liked rails when I played with it. pry was amazing
>>
>>106686804
>No sets
>Wierd naming
>Unbound interfaces
>caps for private variables
>No syntax highlighting in docs
>Garbage collection
>Errors on unused variables
>We make shit up as we go along
>>
>>106688606
>Okay so what language do (You) use then?
Erlang
>>
File: golang9.jpg (159 KB, 1117x1017)
159 KB
159 KB JPG
>>106689609
Alraight so after 2 hours, I got 1 reply and it's some meme language with no real world use case.

I conclude from this that anyone calling Go a jeet lang are just throwing stones from a glass house, most likely projecting.
Go was made by the whitest of men, that's a fact.
>>
>>106689571
Using the a capital letter to determine if a symbol is exported or not is garbage. Imagine if your symbol starts with L or I vs l (what is this an L or a I?)
>>
>>106686804
>I see a lot of people here saying Go is bad and I'm curious why?
rustroons are very bitter and engry people, don't pay them too much attention
>>
>>106686804
Literally it's cause people can't write contracts and do type autism that they can in a million other languages. The language is so dead simple that you have to actually solve real problems if you want to flex your brain, the language stays out of your way but doesn't let you create brittle extensions that "solve" your problem.
>>
File: CuisenaireRods.01.jpg (1.21 MB, 4288x2848)
1.21 MB
1.21 MB JPG
>>106689571
>syntax highlighting
Grow up.
>>
>>106689814
I refuse.

Also no enums.

It's a fucked lang through and through.
>>
>>106686804
Lack of useful features in the name of "simplicity" leads to code that is tedious to write. I'd have a higher opinion of Go if it used Erlang's error handling model.
>>
>>106686804
>Why is Go considered bad?
Because it isn't blessed by Richard Stallman's toecheese worshippers.
>>
File: 1729319491602.jpg (79 KB, 1024x706)
79 KB
79 KB JPG
>>106686804
I code mainly rust now just to troll, sometimes I hide little anti-trans nuggets in my code. It's a simple life but it's mine.
>>
>>106689814
Without syntax highlighting my epic color theme will go to waste :(
>>
>>106689992
Seriously as someone who never used syntax highlighting I really don't understand what people like about it. How is it even useful in a langauge like go? maybe something like yaml that is a clusterfuck and you don't know what anything is and you only use it once every couple years. In general if you need syntax highlighting to parse wtf you are looking at it's probably a shitty language.
>>
>>106689713
use a better font
>>
>>106690688
The problem is not the font, chud.
>>
>>106690293
You have never written production code in your life if you don't understand the need for syntax highlighting.

It works well in your shitty undocumented code but once autodoc requirements and QA kicks in no syntax highlighting quickly becomes a nightmare.

It's all about context.
>>
>>106686804
The biggest problem is not having support for sum types, resulting in issues like poor error management and lack of self documenting code.
let's take the signature func foo() (string, error)
the problem is you HAVE to build a string even when you are returnning a non nil error, the problem is even worse when you return (*FooStruct, error), what should you return on error, a nil FooStruct pointer, create a default FooStruct and return a pointer to it? both have problems if you forget your if err != nil.
>>
>>106691466
Erlang tends to be a quite dense language
also, how do you feel about `gb_sets` and `gb_trees` being represented by tuples, resulting in equality comparisons failing if both sets/maps are not balanced?
>>
>>106689609
Based.
>>
>>106691466
also regarding Erlang (although my concern extends to any language that primarily utilizes immutable/persistent data structures): what do you think about the bloating of memory that occurs during a serialization/deserialization cycle, where shared state metadata is lost?
>>
>>106691674
>if you forget your if err != nil.
which nobody does and compiler enforces that
>>
>>106689713
I know because I can read the rest of the word
>>
>>106686804
People don't like making money
They love tech to do tech, they are midwits that don't understand that tech must be done for humans, to help them so we can continue to improve our civilization
Continue to make tech to do tech fucking fuckwits, that's why you will be replaced by an fucking LLM
>>
>>106688744
I remember posting a long explanation to that fuckwit poster, but i won't do it again
purely dishonest post you just do
>>
>>106686804
on the surface, the proposition of go when it was released was okay. better languages existed (literally for decades), but they didn't have the "marketing budget" or "forced onboarding" advantages.

* not being python =>good (vs. interpreted non-statically typed messy to package competitor)
* not being java => good (vs. jvm languages not suitable for e.g. lightweight short-lived processes)
* not being c++ (non-system use-cases) => good (vs. the biggest "un-designed" shit language with oop, exceptions, and a poor incoherent subtly broken implementation of everything imaginable)

but beyond the surface, "a GC-ed C with multiple returns and less boilerplate language we can teach code monkeys quickly" didn't offer a valued proposition for the era. this became clearer when rust burst into the scene shortly after. go's type system (starting with lol-no-generics) is shit. the concurrency model is shit. the primitives are shit. solid safety promises are few (despite having a GC). not even simpler things like getting [unicode] strings right was achieved.

the "marketing" and "forced onboarding" stuck however.. to an extent. if you look for the biggest go projects around, they all started in the first 1-3 years of go. the peak of the hype didn't really last that long.
>>
Go treated me, then my whole family are to be executed, then raped me, then flew over my house, then released mustard gas
>>
>>106691804
You posted a cope not an explanation, then your explanation was refuted by other anon.
>>
>>106692310
which is false, it was reused multiple times and is truthful, stop being a dishonest faggot
>>
>>106689699
>Alraight so after 2 hours, I got 1 reply and it's some meme language with no real world use case.
Whatsapp supports millions of concurrent users thanks to Erlang. Have you heard about "Whatsapp" you Durgeet?
Maybe you can stop being an ignorant retard today.
>>
>>106692447
Chances are high WhatsApp is run inside a kubernets cluster
>>
>>106693122
I'mma keep it real with you chief, Erlang's virtual machine, Russst's borrow checker, and refined types are the most innovative technologies today.
Erlang STILL stands as the only introspective VM with soft realtime characteristics via its share-nothing methodology and reduction counting processes.
time for you to code mode, little faggot
>>
I heard that I can't put brackets where I want, if that's true then I refuse to use it.
>>
>>106686804
Go is just light weight Java. Its NOT a systems language. Its just slightly more efficient than Java. The fact that you can fuck up so easily using slices in Go means its just like Java trying to be like C and failing.
>>
It's not bad, it's mediocre and boring which is even worse than truly bad.
>>
File: C_programmer.png (87 KB, 799x799)
87 KB
87 KB PNG
>>106693350
All of this sounds like utter gibberish to me.
Real world problems are solved procedually.
>>
>>106693122
>Chances are high WhatsApp is run inside a kubernets cluster
And, even if this was true, how the fuck does it invalidate the point about Erlang being industry-proven and reliable?
>>
>>106695235
>i learnt programming in Durgasoft thus I only know how to solve things procedurally
kek
>>
>>106696373
>java is procedural now
okay
>>
>>106689814
This. Syntax highlighting (and lsps) is just a "really fast compiler". Code should be human readable on it's own and the compiler should tell you what you need to know and should't be naive about it.
>>
>>106686825
Go was literally made for jeets.
>>
>>106687112
It was created by 3 white men at Google. Two of which were part of Bell labs in the 70s, retard.
>>
>>106689814
>>106690293
why is this board filled with 15 year old retards?
>>
>>106686804
Overly opinionated in nerd shit trying to solve problems that never existed.
>Oh we're null safe
Bitch maybe I want a null. Did you ever think of that?
>We make sure you don't have unused variables
Fuck of. You don't know my use case.
>>
>>106699051
where is nil insufficient for you that you want null?
>>
>>106686804
It's a fine language, but the developers of the language lie a lot and have made some really dumb decisions.
>Our gc is the fastest and best.
It's crap compared to java and c#, to the fact that a completely new GC was written that is up to 40% faster.
>Our language is forward compatible.
It's not. I've had shit break multiple times.
Hell only recently have they started exposing file/process handles to the user. Previously you had to do type punning or reflection to access it cause the other ways introduced race conditions.
>>
File: free-pascal (2).jpg (14 KB, 616x166)
14 KB
14 KB JPG
Free Pascal is better.
>>
>>106700918
Every “advancement” in the language goes against the design principles of the language. This is why it’s a shit language. What they tried to accomplish can be accomplished in most other languages with adequate code reviews and tools to enforce the desired coding practices.
>>
>>106698214
Created BY white men, because they were acknowledging the growing problem that the new employees at Google were too retarded to be trusted with existing programming languages.
They literally designed Go from the ground up to be used by retards.
>>
>>106702630
What's wrong with giving retards a tool they can use to build cool shit? Don't be an elitist fag retards need some love too
>t. proud retard
>>
>>106703926
Fair rebuttal.
>>
>>106702630
Most humans are stupid though.
>>
>>106689699
Go was made for idiots to minimize
>what devs need to know and understand
>compile times so retards can recompile quickly after each error they encounter from their retard code
The creators are on record saying their goal was a dumbed down environment that “googlers” could easily learn and use as opposed to actually smart computer science educated people, i.e., poojes and the like.

Every competent dev I’ve talk to irl as to why they chose Go for their project(s) gave me surprisingly dumb answers usually dealing with progra,,ing concepts that I then demonstrate can be achieved in several other languages that have much larger ecosystems and labor pools. They just stop talking about it after that
>>
File: 1715105265340.jpg (37 KB, 800x444)
37 KB
37 KB JPG
>>106705643
>go is bad because it's well designed
>>
>>106705643
>go that is pretty basic and you have to actually think on how to implement stuff, really close in philosophy to C
vs
>java/C#/C++ with 10000000000 methods for everything you can possibly do half baked so it meets the average use case not specific on to the problem
gee I wonder which one is for retards
>>
>>106705643
I don't think many languages offer what goroutines do ootb
>>
>>106705643
Most people are stupid and smart people also make more mistakes when things get more complicated. Go being simple (yet still performant) isn't a bad thing.
>>
>>106686804
Because it's inferior Java. There's nothing else to it.
>>
>>106705643
basically this. I went with Go for one project only because the compiler is easy to distribute and my more retarded teammates could learn it well enough.
>>
as far as I can tell it's an archaic shitty language that is chosen only because it's easy to learn
>>
>>106696453
>>java is procedural now
>okay
most java code is for the most part imperative and procedural, don't kid yourself. Objects are used only for encapsulation, this is not real OOP (contrary to what Smalltalk or CLOS is)
>>
>>106705771
>I don't think many languages offer what goroutines do ootb
It's called "coroutines" and you have them in other languages, for example Scheme. But you have something far better in Erlang and Elixir: Lightweight processes,
>>
>>106686804
It's the best language made in decades
>>
>>106706744
Elixir/Erlang is not necessarily "better"
Goroutines share memory, which obviously leads to some useful applications that Erlang cannot achieve without resorting to NIFs
because there is a pause the world GC in Go, total throughput ought to be higher, because that is what is being optimized for, rather than latency minimization
the world is not black/white, Anon. Erlang's runtime is unique because of its lack of shared memory for easy crashing/localized GC and reduction counting for guaranteeing fair distribution of compute time. these features are not required in many problem domains.
>>
>>106707323
All this nonsense with goroutines and lightweight processes and whatever and they're just green threads with a different name. Several programming languages already had green threads before Go. Heck Java invented green threads and then reinvented green threads but called it virtual threads and tried to BS everyone saying it's different when conceptually it's the same thing. Point being there's nothing special about goroutines. Erlang, Haskell, Python, Lua, Perl, Ruby, Java, etc. all have green threads but call it something else.
>>
is go a good language for writing a game that can run in a browser? i want to make a simple client-server multiplayer game using ebiten and websockets
>>
>>106707514
Unless you mean backend, no. If you mean backend, yes. Backend would do the server part. For frontend your only optiona for a browser game is JavaScript or Typescript. I would use a framework like PixiJS for frontend.
>>
>>106707514
>>106707535
Go is kind of awful to do any kind of math in, as in it's syntactically cumbersome due to all the explicit casting rules. If you expect your game to have any math at all, Go is not that great purely ergonomically speaking.
>>
File: Fag Pike.png (199 KB, 500x335)
199 KB
199 KB PNG
>>106698214
It was created by 3 allegedly white allegedly men that had a business use case of tardwrangling all the cheap retard labor force they hired into something half decent. Go is a tardwrangling tool, it was purpose-built from the ground up to be used by brown retards.
>>
>>106708622
Games don't need to do precise math and explicit casting isn't a problem. I don't know what you're on about, it's totally acceptable to do a server in go.
>>
File: plan9.jpg (874 KB, 1890x1704)
874 KB
874 KB JPG
List of Certified Hyperborean languages

Erlang
LFE
C
Golang
Chez Lisp
Zig
C++
GNU Guile
>>
>>106702630
>Created BY white men for Indians
ftfy
>>
File: bjarne-stroustrup.png (411 KB, 712x642)
411 KB
411 KB PNG
>>106702630
This.
>>
File: 1707657184462005.jpg (84 KB, 1125x1020)
84 KB
84 KB JPG
>>106709762
Cope.
>>
>>106705643
>simple and fast is le bad
/g/ - the post
>>106709801
hah, women, hahahaha
"I NEED different pairs of shoes for going out with my girl friends and for going out with my gal friends"
>>
>>106705643
>The creators are on record saying their goal was a dumbed down environment
Isn't C also like that?
Yeah you can add assembly, but it lacks so much features they had to go and make C++
>>
>>106687099
> force them to stop doing the horrible OOP shit
Most of the oo code in java on projects that I have worked on or taken over was really to the point of even stretching the abuse of oo features to levels I didn’t think were possible.
Hundreds of getters sand setters for unused member variables
Elaborate multi level factories and generics for an object that is only used once and discarded.
Entire object inheritance hierarchies and interfaces with replaceable dynamic class-loaders fir wgat turned out to be a hard-coded instance of the stdout handle. Thus was in some Apache code.
>>
>>106710522
Erm actushualy, direct field access is an anti pattern and what it u need come in ur getters (doesn't happen like ever)
I only like go because all the other decent langs have some cult like Mindvirus forcing the most retard shit onto the code with negative thought behind any of them
>>
>>106710559
> direct field access is an anti pattern
Says who?
It’s impossible to add an accessor or mutator if I need one?
> some kid on the internet said…
Uh huh.
> but what if…
Java will hopefully be gone in the near future and it’s replacement can prevent accessing any variables directly.
Right now it’s used by oracle to sell or rent hardware 100 times more than you would need otherwise.
>>
Just is bad for the low iq retards who dont know it.
Go is great. It's fast, it's readable, it's comfy.
But there are plenty of cool kids in the block who were already doing their thing: python has hit critical mass in libraries, there's one for fucking everything, and the low iq devs juse use javascript on the backend (lol).
>>
>>106710764
I can't think of anything more brown than JavaScript. The amount of RAM that node js uses with a meme framework is abhorrent.
>>
>>106710798
I just use django for everything
cant go wrong with that
>>
>>106710687
it's bad since it's not a consistent interface.
if the class needs to private the member and use a getter in the future it any dependencies will have to change their code to work with it.
>>
>>106686804
Popular = bad
Easy = bad
Good = bad
Welcome to 4chan
>>
>>106711871
>Popular = bad
usually true. to get popular requires dumbing shit down to cater to the average man, or in go's case, to the below-average young adult (that was explicitly declared as a design goal).
>Easy = bad
contextual.
generally speaking:
automation => good
reliable abstractions and primitives => good
magic => bad
paternalism => bad
the dumbing down process ironically requires magic and paternalism, leading to producing an objectively worse tool for anyone half-competent.
>Good = bad
that's how contrarians roll indeed.
>>
>>106707323
>these features are not required in many problem domains
What problem domains is Erlang suited for?
>>
Go brought nothing new to programming languages, it's archaic and a step back.
>>
It just works, and tinker trannies hate that.
>>
>>106686804
Isn't it supposed to be nerfed for people who can't handle C? I thought that's basically what it was all about. Doesn't seem like the worst thing ever, at least it's not infested with troons like Rust.

OTOH it does come from Jewgle who can't be trusted. Maybe I'll stick to C, lol.
>>
File: 1590171351134-3.jpg (24 KB, 225x225)
24 KB
24 KB JPG
>a lot of people here saying Go is bad
Then you can just ignore them. It's been over two decades, and you still don't understand that you shouldn't take anyone's opinion here seriously? Tell me, how many great programmers have you seen claim to frequently visit /g/? Just look at the catalog with dozens of no-coders and unemployed niggers to get an idea of the kind of anon who says "Golang is bad." /g/ is a very fun place, but you need to understand that you can't take anyone's opinion here seriously.
>>
>>106705771
Java has the same with virtual threads, it doesn't even introduce language constructs to use them, they have literally the same api as regular threads
>>
>>106707513
>Java invented green threads and then reinvented green threads but called it virtual threads and tried to BS everyone saying it's different when conceptually it's the same thing.
i believe green threads were n:1 whereas virtual threads are n:m and there were a lot of other limitations with green threads. they are conceptually similar, but to say they are the same is like saying a bike is the same as a motorcycle because you sit on it and go places
>>
>>106707535
>If you mean backend, yes.
a garbage collector that can only optimize for throughput might not be great for an application that optimizes for latency
>>
>>106710687
>It’s impossible to add an accessor or mutator if I need one?
it is if you publish a component for other teams to use. if you don't have monorepo tech like google, it's a good idea to take every indirection you can get so you can reduce future api breaks. but if you control all consumers of your code, you can just leave out the getters / setters. method reference syntax doesn't work for fields though
>>
>>106712975
We can't have this kind of sane discourse here, you need to go back
>>
>>106711577
>Rename button in any idea
Fixed
>>
>>106713226
U don't expose ur internals anyway, just a data class that sits only at the API boundary, so theirs almost no case for getters and setters because u already have the needed abstraction
>>
Go should be a perfect language for malware development, it's easily self-contained, fairly new so antiviruses don't have much clue, able to work at lower level
>>
>>106714478
Quite a few Go-based malware yeah
>>
>>106711577
>>106713226
he's an arrogant midwit. unteachable. don't even bother.
>>
>>106686804
it's a pragmatic language, so its language design is retarded so it can be useful without many preludes, which isn't bad, but people here hate it because they are the perfect example of the dunning-kruger effect
>>
>>106708728
Haskell is also Hyperborean
>>
>>106717176
That's a great picture. Thanks for sharing it.
>>
>>106688744
business logic doesn't require generics
I work for a neocloud that has a go backend
>>
>>106686804
>I see a lot of people here saying Go is bad and I'm curious why?
if err != nil
>>
>>106717557
handling errors scares the typical nu /g/ user



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.