6 ms·
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 speci
by setheron 9y ago
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.
- tschellenbach 9y agoActually 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.
- trustfundbaby 9y agoI 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.
- d23 9y agoOh 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!
- VintageCool 9y agoDid the Go implementation of the ranked feed use the algorithm optimizations discovered while optimizing the Python implementation?
- tschellenbach 9y agoNo 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.
- BaronVonSteuben 9y agoI think in general people vote up stuff that glorifies their favorite language/smartphone vendor/operating system, even tho many of the comparisons are shallow.
- chicago_wade 9y agoPersonally 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.)
- lonk 9y agoBecause title starts with "Why". Psychological effect.
- pc86 9y agoWhat exactly is the psychological effect tying the word "why" to an article getting more attention?
- staticelf 9y agoBecause 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.
- wiz21c 9y agoI 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.
- SeanDav 9y agoAlthough, 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.
- viraptor 9y agoI'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.
- PythonicAlpha 9y agoThe 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).
- amelius 9y agoBut 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?
- baldfat 9y agoDid 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.
- lllr_finger 9y agoTo 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.