Live data from Hacker News

Google App Engine for Go

code.google.com

31–40 of 73 posts

Re: Google App Engine for Go

#31

It's going to be a tough sale for Google to convince people to adopt Go for their web apps when Node.js is taking over that scene. With Node I get the best of two worlds: high concurrency and speed -- presumably the top two selling points for using Go with web apps -- without having to teach myself yet another programming paradigm. Everyone and their mother knows some Javascript; good luck hiring help for your Go-bas…

While I agree that go on appengine might not take off, in no way is node.js "taking over that scene". If by scene you mean the "web app" scene. Just because node.js articles are constantly blowing up hn, reddit does not necessarily correspond to real world deployments of node.js apps.

An admittedly hastily prepared google trends graph: http://www.google.com/trends?q=node.js%2C+python+django%2C+r...

I am a node fan, I subscribe to the node-dev list and have worked on a few applications my self. However I am in no way delusional about the current blog popularity vs actual projects deploying with it.

Also you state that you are able to gain the same concurrency and speed with node that you are with Go. May I ask how you achieve this? Go usually comparable to C code in terms of performance [1]. Go also has amazing concurrency tools for efficient communication between two concurrent goroutines, for example the channel interface[2]. To my knowledge their is no way to run concurrent node processes. You can launch multiple instances of the same program but their is no way to let them communicate without sending data over a socket. You can of course use a reverse proxy to present a single entry point in which multiple node backends can take requests. However you can not claim this as concurrency in the same sense that is available with go.

[1] http://golang.org/doc/go_faq.html#Performance

[2] http://golang.org/doc/effective_go.html#concurrency

Re: Google App Engine for Go

#32

It's going to be a tough sale for Google to convince people to adopt Go for their web apps when Node.js is taking over that scene. With Node I get the best of two worlds: high concurrency and speed -- presumably the top two selling points for using Go with web apps -- without having to teach myself yet another programming paradigm. Everyone and their mother knows some Javascript; good luck hiring help for your Go-bas…

With Node I get the best of two worlds: high concurrency and speed

With Node you still need to write in an event-based style, which is something devs often complain about working with Node.js.

"With goroutines and channels, you can say 'I'm going to send a message to another goroutine or wait for a message from another goroutine', but you don't have to actually leave the function you're in to do that," Gerrand says. "That lets you write asynchronous code in a synchronous style. As people, we're much better suited to writing about things in a synchronous style."

from http://www.theregister.co.uk/2011/05/05/google_go/page4.html

Re: Google App Engine for Go

#33
post #31

It's going to be a tough sale for Google to convince people to adopt Go for their web apps when Node.js is taking over that scene. With Node I get the best of two worlds: high concurrency and speed -- presumably the top two selling points for using Go with web apps -- without having to teach myself yet another programming paradigm. Everyone and their mother knows some Javascript; good luck hiring help for your Go-bas…

While I agree that go on appengine might not take off, in no way is node.js "taking over that scene". If by scene you mean the "web app" scene. Just because node.js articles are constantly blowing up hn, reddit does not necessarily correspond to real world deployments of node.js apps. An admittedly hastily prepared google trends graph: http://www.google.com/trends?q=node.js%2C+python+django%2C+r... I am a node fan, I…

But with Go can you write your client code and your server code in the same language?

Re: Google App Engine for Go

#34
post #33
post #31

Earlier quoted context omitted.

While I agree that go on appengine might not take off, in no way is node.js "taking over that scene". If by scene you mean the "web app" scene. Just because node.js articles are constantly blowing up hn, reddit does not necessarily correspond to real world deployments of node.js apps. An admittedly hastily prepared google trends graph: http://www.google.com/trends?q=node.js%2C+python+django%2C+r... I am a node fan, I…

But with Go can you write your client code and your server code in the same language?

I'd like to see more server-side XLST.

Re: Google App Engine for Go

#35
post #9
post #6

Any advantage (performance? memory use?) for using Go vs. Python? Or is just programming language preference?

My general feeling is that Go is kind of like a lighter Java. Go is compiled, but also optimized for fast compile times, and it should be faster than python. However, from wikipedia: "Of features found in C++ or Java, Go does not include type inheritance, generic programming, assertions, method overloading, or pointer arithmetic." Ken Thompson is a co-creator, and the language came from Google. I think Google is just…

> However, from wikipedia: "Of features found in C++ or Java, Go does not include type inheritance, generic programming, assertions, method overloading, or pointer arithmetic."

For many people (including me) the lack of all this "features" is a feature in itself. I certainly have not missed any of them.

Re: Google App Engine for Go

#36
Go's a System language. Doesn't that mean it's more suitable for writing a web server, database, driver or OS than as a web site scripting language?

I mean, no one would write System code in PHP, and it's rare to see web sites written in C, so why write a website in Go?

Re: Google App Engine for Go

#37
post #9
post #6

Any advantage (performance? memory use?) for using Go vs. Python? Or is just programming language preference?

My general feeling is that Go is kind of like a lighter Java. Go is compiled, but also optimized for fast compile times, and it should be faster than python. However, from wikipedia: "Of features found in C++ or Java, Go does not include type inheritance, generic programming, assertions, method overloading, or pointer arithmetic." Ken Thompson is a co-creator, and the language came from Google. I think Google is just…

"Although, I don't know too many web apps that need better performance than python."

Web apps aren't just CRUD anymore.

http://shootout.alioth.debian.org/u32/benchmark.php?test=all...

If your server in Go is 10x faster than your Python server, which is not necessarily unreasonable, that's 10x less hardware expense you have, if your website is actually "doing something". That can add up.

Re: Google App Engine for Go

#38
post #32

It's going to be a tough sale for Google to convince people to adopt Go for their web apps when Node.js is taking over that scene. With Node I get the best of two worlds: high concurrency and speed -- presumably the top two selling points for using Go with web apps -- without having to teach myself yet another programming paradigm. Everyone and their mother knows some Javascript; good luck hiring help for your Go-bas…

With Node I get the best of two worlds: high concurrency and speed With Node you still need to write in an event-based style, which is something devs often complain about working with Node.js. "With goroutines and channels, you can say 'I'm going to send a message to another goroutine or wait for a message from another goroutine', but you don't have to actually leave the function you're in to do that," Gerrand says.…

It's going beyond cute and getting into downright tedious that the Node.js crew think they have some sort of unique lock on concurrency and speed, when instead they are late to the party with an inferior implementation. This meme needs to die. I'd take Go in a heartbeat over Node.js for anything remotely non-trivial.

Re: Google App Engine for Go

#39
post #33
post #31

Earlier quoted context omitted.

While I agree that go on appengine might not take off, in no way is node.js "taking over that scene". If by scene you mean the "web app" scene. Just because node.js articles are constantly blowing up hn, reddit does not necessarily correspond to real world deployments of node.js apps. An admittedly hastily prepared google trends graph: http://www.google.com/trends?q=node.js%2C+python+django%2C+r... I am a node fan, I…

But with Go can you write your client code and your server code in the same language?

People keep touting this, but the actual number of cases where you really want this is actually pretty limited.

Re: Google App Engine for Go

#40
post #33

Earlier quoted context omitted.

But with Go can you write your client code and your server code in the same language?

People keep touting this, but the actual number of cases where you really want this is actually pretty limited.

With robust server-side javascript... its not hard to see the application of this. It is easier to generate executable javascript for the client on the server in javascript itself. Certainly in Web2+ you want this for increasingly dynamic behavior?
Post reply on HN