by exch on 5/14/13, 11:11 AM with 139 comments
by kenkam on 5/14/13, 12:23 PM
The second paragraph reads like: replacing a relational DB with a (in memory?) key value store resulted in more throughput. He implemented it in Go, but he could have implemented it in any other language.
What I want to know is how he convinced management to use Go? Where did he find the programmers? I work in a similar environment and I don't see my firm adopting Go any time soon, although I wished they had as I'm a big fan of Go and believe it has a place especially server side processes (e.g. algo trading, market data feeds) where concurrent connections are prevalent.
by waterside81 on 5/14/13, 2:52 PM
Folks - Go ain't a fad, it's a great language if your problem domain benefits from concurrency AND if you need to deploy to multiple locations and love being able to just drop a single binary and walk away.
by 16s on 5/14/13, 1:55 PM
All of these compilers or JIT interpreters are implemented in C or C++ (which are open languages with ISO standards).
It bothers me to no end to see corporations taking control of the fundamental building blocks (programming languages) of technology and then to see technologists and developers go on and on about how wonderful and better these corporate languages are.
With C and C++ and Python and Ruby and Perl we have freedom. With Go, .Net and Java, etc. we do not.
Google already control your search, your browser, your phone, your email and in some cases your OS (Chrome) why would you want them to control you programming language as well? The idea boggles my mind.
I wish others felt as strongly about this as I do. If you want to control your future, then use C or C++ or some other ISO standardized language with lot's of free compilers available, do not use a corporate controlled programming language.
There is a reason go compilers are C and C++.
by raverbashing on 5/14/13, 12:51 PM
So yes, if you have control over your environment it may be a better choice
But the biggest issue with 'less than mainstream' languages are libraries. Things like DB connectors, protocol libraries (SOAP for example - yes, unfortunately this is necessary for some 3rd part services), etc
Heck, even for Python 2 (not to mention P3) this is an issue sometimes
by tezza on 5/14/13, 12:56 PM
Thanks for the data point (Yes, fine for production AFAYCT).
What does Go do when it segfaults ? Simply saying it has not-yet-segfaulted is but one factor of production-readiness.
Does Go leave just a coredump ?
One thing I like about java in a production sense is that if the JVM exits unexpectedly it writes an hs_err_pid file that has a dump of what the threads are doing at the point of failure.
by reinhardt on 5/14/13, 1:24 PM
by sergiotapia on 5/14/13, 12:36 PM
What does he mean? I've searched the Go websites but it seems all Google gives you is the Go compiler and a tour.
by koraytaylan on 5/15/13, 7:21 AM
by moshberm on 5/14/13, 6:28 PM