Is go worth learning?

Post your opinion on it.

Other urls found in this thread:

benchmarksgame.alioth.debian.org/u64q/compare.php?lang=go&lang2=node
benchmarksgame.alioth.debian.org/u64q/compare.php?lang=node&lang2=yarv
tour.golang.org/welcome/1
talks.golang.org/2012/10things.slide#2
twitter.com/AnonBabble

Every language is worth learning.

However I believe D is a somewhat better language

it's too easy to learn and pays off really good.
it has too many virtues but you have to be open minded, just don't try to write your favorite programming language with Go syntax.

forcing a formatting standard on your code is autistic as hell

D is literally one of the most worthless languages there is.
It's completely dead.
You may as well learn COBOL. At least you can still get a job that way.

It's autistic, but the best language for building webapps

There is no worthless language. If that was the case no one would learn LOO-ah

Good programmers don't limit their knowledge by selecting "worth learning" languages. If anything, it shows that you are not really interested in programming, you are here to look cool

> best
> even better than Javascript

Error handling from the stone age kills it.

>writing server-side code in javascript

It's shitty language but it has a great standard library, a good compiler that is improving constantly, a decent implementation of channels, is supported on all major operating system and it compiles to static binaries. If you can look past the deficiencies of the language it's a great tool.

yeah because it's the best available option, don't kid yourself, if Golang was written by some autist or a small company, no one would have cared to use this shitty lang

Even though I spend a lot of time following developments in PL design and go is really dull and intentionally backward I always end up coming back to it and use it the most.

Most people with very strong opinions on it one way or the other tend not to understand its design goals or where its intended advantages are supposed to lie.

Ok, enjoy needing 24GB of RAM and an 18 core Xeon processor to run your shitty webapp when it gets more than 50 users

I just got a full time gig as a go developer. So in terms of financials - there are jobs out there.

I think go has some serious potential to overtake the web. It succeeds in the area where everything else has failed (except maybe erlang) which is:

Unit testing is simple and built in.
Almost 100% cross compatible by default, no VM needed.
Forced formatting so no proliferation of 100 different styles.
Enhances readability without sacrificing type checking.
Runs sync by default but can be run async when you need it.
Highly scalable.
Everything needed to build an API works right out of the box without using some dumbass framework.
Backed and supported by one of the top tech companies in the world, and they are eating their own dogfood this time unlike the Angular fiasco.

There's not a huge user base yet so it can be hard to find starter tutorials and shit like that. Roughly six months ago I was able to build an API in a few days with no prior experience using just the docs. Authentication, unit tests, everything.

My money is on go replacing C# and Java for enterprise web dev. There's just way less bullshit to deal with. I suggest you get on the go train before the pajeets figure it out, because by then all the good jobs will have been taken.

>My money is on go replacing C# and Java for enterprise web dev

oh god please no

A startup in my area recently started hiring Go programmers.
They haven't found any yet.

I've thought about applying and leveling with them that I've never touched Go before, but I'm willing to learn.

I got my current gig has a C# developer despite having never touched C# prior and it wasn't too much of a struggle.

Good. It prevents GNU style.

As if GNU would ever touch it. Google developed it so it's automatically the ULTIMATE EVIL

d-delet this

It's 2017 user - take your stupid stereotypes back to /r/technology

Sure thing. By the way, would you happen to have any file of the WebM format on your computer?

I would never write a node application back end but you obviously have no idea what the hell youre talking about.

He's obviously exaggerating but node does use a ton of memory. Java and Ruby are far worse in this respect. It's basically impossible for a dynamically typed language, or simply one without value types, to be memory efficient.

>nodejs shitware is efficient because hipsters on hackernews said so
benchmarksgame.alioth.debian.org/u64q/compare.php?lang=go&lang2=node
Node gets absolutely btfo in every category

It takes all of an afternoon or so to learn and none of it will surprise or challenge anyone who has used another mainstream languasge. They might accept that you could be brought up to speed on the job, but on the other hand there's really no excuse for not at least familiarizing yourself before you see them. Just go write something in it.

???

Node wins in the regex benchmark. Hardly shocking though that a very simple statically typed language is faster than a complex dynamically typed language.

What's more surprising to me is how well node does compared to all of the other dynamically typed languages which basically all use the FFI to "cheat." It's actually pretty impressive how fast node is given that it's not using the FFI in most cases.

>What's more surprising to me is how well node does compared to all of the other dynamically typed languages which basically all use the FFI to "cheat."

What tests are you seeing this in?

Shut your fucking mouth, lua is fine.

I liked Go.

Someone hired me to make a website.

I am now sitting on 50k lines of Go.

Here is all I have to say to you, Mr. Pike:
* Exceptions were a solution to the problem you re-introduced by making errors simply return values. Do you know how many times I've had to wrap my errors because they have no stacks?
* Having no macros, nor generics, makes programming an insane chore when you're dealing with something even as trivial as request structures. If I want to define the parameters to an HTTP request, I need to create a structure every time, and write the goddamn name of my field at least three times, in different notations, to account for JSON marshaling and unmarshaling (which, for the record, is fucking 'encoding' or 'decoding' you pretentious pricks)
* for gods sake if I want a method to accept "any slice type" I shouldn't need to resort to fucking reflection for something that trivial.

otherwise, quite a fan.

What the fuck are you even talking about?

lua is the worst of the worse skid shit language ever made

Look at the source code for a lot of the tests on the Debian Benchmarks Game. A lot of the languages are just using the FFI to call into heavily optimized C libraries to make it seem like they're faster than they really are. Haskell is probably the worst offender.

Surprisingly, whoever implemented the node tests didn't do that.

I skimmed through a couple but I'm not really willing to dig through all the tests for each dynamic langauge. Which one was it?

benchmarksgame.alioth.debian.org/u64q/compare.php?lang=node&lang2=yarv

LMAO Ruby is so bad.

...

>lua worse than python.

Literally incorrect.

Python index dont start from float 1.0

the documentation made by the project itself is pretty fucking good though.
tour.golang.org/welcome/1

Of course you should probably know another language before jumping into that though or you'll be lost.

>I need to create a structure every time, and write the goddamn name of my field at least three times, in different notations, to account for JSON marshaling and unmarshaling

I'm not totally sure what your code looks like, but were you using anonymous structures? If you're just sending something off to be encoded and never be seen again you can define the struct on the fly.

talks.golang.org/2012/10things.slide#2

I actually need to use the structures as parameters to functions, like 99% of the time, because I have my router setup to accept arbitrary function signatures and decode the JSON body of the request to the structure in the parameters of the handler function.

>reasoning for a language being bad is what number indexing begins on

Skiddie as fuck.

It's also a float you fucking brainlet moron

>Wahhh floats are too hard

Git gud

Floats should never be used for array indexes or hash table keys for very obvious reasons.

Typical skid, gentlemen

quite the contrary, worrying about retarded, useless things as code formatting is

I've been studying Go for the last 2 months, here are my 2 cents:

Pros:

>*Go is tiny, like insanely, tiny, the language has like 12 keywords, the syntax is really easy to learn and easy to read because of that
>*It's imperative, so it's easy to write Go code.
>*Great concurrency system

Cons:

>*Go is tiny, so tiny that you don't get common things like exceptions or generics.
>*It's imperative, really imperative. So understanding somebody's else Go code is pretty hard.
>*The concurrency model is built in the language syntax, so forget about doing systems that require concurrency model's different to Go's (this is a non issue for most people, but still)

because these JS engines are used by web browsers... and they need to be really performant
AFAIU (I'm probably talking BS), lots of performance stuff actually came from Adobe Flash

If you can't use floats as an index, you need to neck yourself.

Docker is written in Go/Golang. For that one simple reason, no matter how bad or good it may be, Go is here to stay.

float arithmatic is not precise you uneducated skiddie

I'm learning it and it's nice but I feel more stable writing my production apps in Django . Even though go code and infrastructure is way better.


Go is good thoigh

Better than Rust but worse than D.
People may say that D is pointless, but it is such a nice language.

D just hurts.

D is nothing but a few good ideas that should have been in C++.

The amount of companies which are actually doing this, make me sick.

Google support FSF.