26 comments

[ 123 ms ] story [ 589 ms ] thread
I've been writing a web app with Go for the past weeks, and for what I can say is that yes, Go has less magic in it, and if you don't do it right, you'll get a lot of duplicated code. It's not designed from the ground up as a web language so it might not be as suitable to write web apps using Go as other languages, but it's a real pleasure to write in Go.
> It's not designed from the ground up as a web language so it might not be as suitable to write web apps using Go as other languages

By that logic, Ruby shouldn't be suitable to write web apps either.

His basic point seems to be "use the right tool for the right job", which I think we all can agree with. I've been programming stuff in Go for about half a year now and I'd have to agree with the author - building a website in Go doesn't make much sense, for many of the same reasons building a website in c or java (for me the java process is too slow) doesn't make much sense. On the other hand, the concurrency model is excellent and for services, background processing, doing all kinds of intensive serverside lifting - i.e. traditional java application areas - Go, in my opinion, beats out java and is an excellent tool for the job.
My experience is the opposite. I build websites in Go. I find it about as easy as building in Python. Web programming is mostly about filling html templates with data and Go's built-in html template is excellent (on par with Django templates).

Comparing Go to C for web dev is ridiculous - no sane person would write the whole thing in C.

Even compared to Java Go wins by a huge margin when it comes to speed of development and conciseness of resulting code.

I haven't used use Ruby but writing web services in Go I'm as productive as I was in Python (using App Engine or Tornado).

I'd be interested reading further on this. Can I encourage you to post a blog about it.
What frameworks do you use for this?
His meme-based blogging style is annoying, like reading the article of a 12 year old. Although the subject sounds interesting I didn't finish reading the article.
what?

If you didn't read the article, ffs, why are you commenting on it?

Because I think it can be done better next time.
Same here. I found it distracting and tiring, and just not very funny.
Meme-based blogging style != in a well written, multi-page article he added 2 meme pictures for fun.
It's 3 three meme pictures. And "hater" or "motherfucker" are words that I expect from children, but not from a grown-up writing a blog post.
Since it says "thanks to PoTe for fixing my terrible english" it sounds like English might not be the author's first language. Perhaps the impact of those words isn't as negative for the author.

I think the article would have been better without them, but that didn't get in the way of my appreciation for its technical content.

Those words only have negative impact because of the power we decide to give them.

Hack your mind, free yourself from being constantly offended and instead absorb the knowledge and experience that these motherfuckers have to offer.

As a rule of thumb, I just assume I'm reading the English writings of a Russian when I see vocabulary like that :)
I beg your pardon? This kind of language is prevalent in the writing of US/English teens and young people. Absolutely nothing "Russian" specific about it.
Russian language speakers tend to use strong language more frequently and with even less intent than US teens.

http://www.itar-tass.com/en/c39/176798.html

I'm not trying to be derogatory in any way; that's just how language is used there.

>It's 3 three meme pictures. And "hater" or "motherfucker" are words that I expect from children, but not from a grown-up writing a blog post.

If you are over 60 or new to this Information Superhighway, maybe...

Why accuse all the MVC frameworks in go of copying rails? Rails and django came out at about the same time and since then a similar frameworks for languages like java, php, perl, C#, and groovy have come out.
There are a number of frameworks that have come out since then that have said "Basically, we're Rails for <X language>" when that might not be the best option for the constraints of the language.
And there were web MVC frameworks before Rails, for e.g. Struts (Java) & Maypole (Perl).
So, in nutshell: Build your web apps in something hyper productive like rails to proof of concept them, then find the high load bits and replace them with a go service.

Seems like reasonable, if generic advice: prototype quickly, then go back and rebuild in something performant if its successful. Iterate quickly, etc. etc.

This has been the practice in Ruby for quite a long time (albeit without Go). Usually high load/slow areas are rewritten as a C module.

So yeah, sound advice but nothing revolutionary. Go looks nice though.

Now that is one amazing domain.
> I stubbornly believe that efforts to clone Rails in any other programming language (Go included) are just ridiculous.

Why? There are other languages that are just as powerful. From a social/community standpoint, Rails does have a big advantage of a large established community with very good dynamics and practices. Neither Ruby nor Ruby on Rails is the be-all or end-all of computation, however. Maybe cloning Rails is ridiculous. What people should strive to do is surpass it.