Hacker News new | past | comments | ask | show | jobs | submit login

How do these shallow articles get upvoted so much ? they don't have much specific information except very generic "developer productivity".

Let me give a specific example where moving to Go really helped our tooling:

Go has some great interfaces, specifically their net & ssh client. In order to perform operations against some machines, we have to tunnel through bastions, however we'd also like the tool to work when an operator has already ssh'd within the region (the tool is installed on hosts as well -- so that long running tasks can be performed).

It was easy to create HTTP clients that easily tunnel through an SSH connection via Go's Dialer interface (present in the net & ssh package) or just directly if no tunnel was needed.




I think in general people vote up stuff that glorifies their favorite language/smartphone vendor/operating system, even tho many of the comparisons are shallow.


Personally I often upvote based on subjects that I'd like to see more discussion about.

(In this particular case I did not vote on the OP.)


Actually moving to Go was a very thorough and long process. We did small example projects and tried out many of the libraries we needed. The blogpost is more of a high level summary of why Go is such a great language.


Oh hey, it's you. I weirdly recognize your name from many many years ago. I have vague memories of dealing with you in submitting an open source patch for Django Facebook. Or maybe it was just a documentation change. Either way I remember you being very polite and professional. Just wanted to say that stuck with me and please keep it up, as I can see you're doing here!


I thought it was very thoughtful, detailed, well written and touched on all the points I would need to make a similar decision if it ever came down to it. Thanks for writing it.


Did the Go implementation of the ranked feed use the algorithm optimizations discovered while optimizing the Python implementation?


No most of the optimization were Python specific. But of course development time was a bit faster due to it being the 2nd time solving the same problem.


But that is some very specific plumbing, and may not be relevant for 99% of usecases.

If, later in your project, you'd have to add GPU computations to your software, would Go still be a better choice than Python?


Because it's interesting to read others stories and thoughts.

I don't use Go nor Python but still thought the article was interesting.

> they don't have much specific information except very generic "developer productivity"

They give you a lot of reasons but in reality choosing a language is seldom about arriving at a scientific conclusion and much more about what feels best. Just like choosing a dish at a restaurant.


I think the article is not that bad. I specially like the comparison of : well python was a bit faster to develop with, but much longer to optimize. Note they actually used Python long enough to actually spend quite some time to consider the move to go; this means that performance of Python were ranging from good enough to barely enough for a (hopefully) long period of time. Also note the scale of operations of that company, if Python hold for say 10% of that scale, then it's certainly good enough for me !

That basically confirms the strength and weakness of python : it's very good for prototyping and if performance issues arise (and that can be later than one think), it's tough to optimize.


I'm a bit sceptical about the comparison of optimisation. Specifically when the AST was mentioned (did they parse the expression as Python code?) and Python came out that much slower even after fixes. As long as they were interpreting that, rather than compiling the expression into native code, I don't see a good reason for Go to be faster. Interpreting expressions like that in Go would be almost as dynamic / lookup heavy as in Python.

I'd like to see both apps for comparison / more context.


Although, if I spent over 2 weeks developing and optimizing a solution in Language A, I would fully expect to develop and optimize it an awful lot quicker in Language B.

Additionally, a lot of performance issues can depend very much on what libraries are used.


The reasons in the article might be valid for this particular company, but in my experience, the performance aspect is less valid in 90% of applications.

Either, the database is the limiting factor (and thus, languages like Python are fast enough, anyway) or the really performance demanding parts are located in <5% of the coding.

In my case, I enjoy the productivity that Python gives me and if I encounter such cases, that demand very high performance, I implement them in C or with Cython (or both).


Because title starts with "Why". Psychological effect.


What exactly is the psychological effect tying the word "why" to an article getting more attention?


Did you read the article? It certainly wasn't shallow nor was it negative.

You are right in 90% of these post they are shallow this one was really a good read.


To each their own - I tend to agree with OP. My takeaway was rather close to "goroutines and gofmt are good" which are about two of the most obvious talking points when looking at Golang. Shallow has a bit of a negative connotation, but I was personally left feeling hungry for a deeper analysis after reading that.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: