

Real Go Projects: SmartTwitter and web.go - pufuwozu
http://blog.golang.org/2010/10/real-go-projects-smarttwitter-and-webgo.html

======
ed
I've been thoroughly impressed watching web.go come together. It's now the top
Go project on Github in every category they track:
<http://github.com/languages/Go>

Personally I'm of the opinion that language expressiveness matters more than
real world performance, but only to a limit. Go is definitely carving out a
nice niche for performant systems-related apps.

And the fact that Smart Twitter serves 90k concurrent users from a VPS without
breaking a sweat is freaking amazing. I suspect this is the reason the service
can remain free.

(edit: err, for the "watched" categories)

~~~
SkyMarshal
I imagine at some point Google will make Go their fourth official language,
when they perceive it is mature enough. I do hope they'll add a Go version of
App Engine, as well.

~~~
syllogism
It's Go on Android that I want...

~~~
kaib
It's getting there. Ken and Russ have been fixing a lot of the bugs I left
behind in the arm compiler and it is passing most of the tests now. There is
still work needed to get the API ported/linked but at least there is should be
closure on the compiler front.

~~~
enneff
There's also quite a bit of interest from some of the Android guys internally,
so I'm optimistic it'll continue to grow in that direction.

------
swannodette
What do people find interesting about Go? It's barely faster than the best
dynamic languages -
[http://shootout.alioth.debian.org/u32/benchmark.php?test=all...](http://shootout.alioth.debian.org/u32/benchmark.php?test=all&lang=go&lang2=racket),
and it offers few conceptual innovations (in comparison to say Racket, Scala,
Haskell, hell, even JavaScript).

So it seems too slow for systems programming and too "blind-folders on" about
where CS is going. I'm honestly curious, what are people actually excited
about?

The only scenario I could see people using it is in the situation where speed
is not of the essence but memory consumption is. Perhaps I'm naive and this is
a bigger category of software than I'm aware of.

~~~
Raphael_Amiard
The thing is you are actually comparing mature dynamic languages
implementation to a very new static language implementation. In the long term,
if any of the previous events in the matter are of any importance, Go is very
likely to climb that list without much effort. That's just the reality of
compiler optimization : It's much more easier to do for a static language.

On a related note, you sound very "dynamic language" centric. Some people
actually like static typing, and i won't relaunch the debate here but both
sides have pretty good argument, especially when you throw type inference into
the mix.

In the static camp, here is a few advantages i can see to go (i'm not actually
an user of the language) :

\- Easier to get your head around than Ocaml/Haskell \- Arguably better than
java (pros: actually has proper closures, and a sane system for polymorphism.
cons: no generics) \- Compiles to machine code rather than byte-code, so
doesn't depend on a VM. Can be important for some tasks.

I actually think Go has quite a lot going on for it. It just doesn't have any
'wow' factor. But that's not necessarily a bad thing

~~~
acqq
> so doesn't depend on a VM

But "dependence" on VM is nothing tragic if the GC is not in the game. If
you'd imagine a VM without GC then what remains is just the potential for run-
time JIT and optimization which can actually be a good thing! There's a long
history of p-code interpreters which provided the more compact code, see
<http://en.wikipedia.org/wiki/UCSD_Pascal> and
<http://en.wikipedia.org/wiki/Microsoft_P-Code> At that time tracing and JIT
would have been too heavy thing to do but today it could maybe be interesting
to have something like that.

And as far as I know, Go doesn't "depend" on VM but does on GC, but D also
generates the native code but doesn't have to use GC and I think that is an
important advantage for such a kind of the language.

------
aditya
Nice, this made it to TechCrunch via HN:
<http://news.ycombinator.com/item?id=1816945>

------
qhoxie
Well done marketer. Glad to see this getting some more publicity.

------
enneff
Gotta thank Hoisie for writing this. Nice shout out to HN. :-)

~~~
marketer
Thanks for the post :)

------
kuber
awesome!

