TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The homogenization of scientific computing (2013)

71 pointsby stickhandleabout 11 years ago

14 comments

the_frenchabout 11 years ago
I heard a saying at work: "Python is the second best language for anything." Scientific computing is a perfect example. By being close to the best, Python ends up taking over each sub-section of the SC world.
评论 #7729266 未加载
评论 #7729473 未加载
评论 #7729279 未加载
评论 #7729263 未加载
jdonaldsonabout 11 years ago
If python is good enough to replace R or Matlab for you, then you are using a negligible fraction of what those platforms have to offer.<p>R is a lot like vim or javascript. It has a lot of warts, but it&#x27;s an incredibly expressive toolkit for its task. I usually buy into a language once I find a few extremely gifted developers working with it (and who seem to do so voluntarily). For instance: for vim it&#x27;s Tim Pope, for R, it&#x27;s Hadley Wickham, for javascript it&#x27;s Mike Bostock.<p>Python, despite its many good decisions, is likewise full of warts. So, who are good developers to follow in the python&#x2F;numpy community?
评论 #7731223 未加载
yasonabout 11 years ago
That&#x27;s how idiomatic one-way-to-do-it generic languages slowly win. They raise the bar for the specialty languages so that, for example, after R the next statistical language really, really needs to shine in what it does in order to justify the trouble of learning another language over using a Python with a statistics library.
评论 #7732199 未加载
vezzy-fnordabout 11 years ago
Previous discussions of the same article:<p><a href="https://news.ycombinator.com/item?id=7030097" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=7030097</a><p><a href="https://news.ycombinator.com/item?id=6756430" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=6756430</a>
评论 #7729470 未加载
ggchappellabout 11 years ago
I&#x27;m seeing this phenomenon in my own work. I do a fair amount of computational stuff (in the old sense of <i>computing something</i>, as opposed to just using a computer), and I find myself gravitating more &amp; more to Python.<p>Performance is, of course, an issue. But in one case I noted that the week or so it took me to write <i>and execute</i> some Python code was almost certainly less time than it would have taken just to write the code in C&#x2F;C++. I concluded that -- for this problem at least -- the extra performance I might have gotten out of C++ simply did not matter.<p>However, these days I do not do much with large scientific models or anything resembling big data. Performance is not the issue for me that it would be for others. And with articles having titles like &quot;Why Python is Slow: Looking under the Hood&quot;[1] out there, I find it difficult to see how Python can displace Fortran (or maybe C) in the realm of traditional supercomputing.<p>[1] <a href="https://jakevdp.github.io/blog/2014/05/09/why-python-is-slow/" rel="nofollow">https:&#x2F;&#x2F;jakevdp.github.io&#x2F;blog&#x2F;2014&#x2F;05&#x2F;09&#x2F;why-python-is-slow...</a>
评论 #7729521 未加载
Malarkey73about 11 years ago
I think the author really needs to define scientific computing. Some people would think of that as simulations, clusters, astronomy, epidemiology and fluid dynamics. That maybe typified by a scripting language wrapper(inc Python) to C, C++ or even Fortran programs.<p>He himself seems to be talking more about standard stats and data analysis or prediction. In this field R is growing at least as fast as Python. R is the no1 Kaggle language and the no1 academic stats language, Python 2nd and stable there. The software carpentry movement to train scientitsts concentrates on both R and Python.<p>Then the biggest scientific programming field is bioinformatics - which really is a mish mash of Python, Perl, Java, C++ whatever piped CLI and a lot of R again. Here Python is growing mostly at the expense of Perl (there is a big Perl legacy) but as most software is designed for piping together in Bash scripts the diversity is not too big a deal. My own perusal of Job adverts on this area sees employers asking for &quot;R Perl or Python&quot; which are viewed as interchangeable.
评论 #7729481 未加载
scytheabout 11 years ago
The easy objection is that none of what he&#x27;s doing actually depends on Python; those libraries could have been as easily linked to Javascript, Ruby, Lua, Clojure, etc, the critical point: NumPy does not really take advantage of any specific feature of <i>Python</i> other than its popularity. Python isn&#x27;t really taking over when most of the actual code that runs was written in C, but it&#x27;s the best glue right now.<p>But really, just this second part is the point. Why wasn&#x27;t this post written five years ago, when Python had already become a popular and established language? Well, if you look at it a little differently, it took roughly five years from the time Python took over undergrad CS courses to the time it became the lingua franca of scientific computing -- see a connection?
kenjacksonabout 11 years ago
This is a partial example of worse-is-better. No one wants to have 10 languages in their toolbelt.<p>I personally find I use C# for almost everything. You can find good libraries for virtually everything you need. And it has the best tooling I&#x27;ve found. Is it actually the best language for everything? Absolutely not, but its close enough that I&#x27;m probably the most productive in virtually everything with it.
ZanyProgrammerabout 11 years ago
Python is such a ubiquitous language, even outside of scientific computing. It seems like mobile dev is the only area where its not present.
评论 #7729503 未加载
评论 #7729433 未加载
评论 #7729376 未加载
评论 #7729343 未加载
评论 #7729377 未加载
Peakerabout 11 years ago
If I analyzed the toolset I used years ago vs. now, I&#x27;d conclude the world is moving from Python to Haskell :)
cjbprimeabout 11 years ago
I wonder what it&#x27;ll take for JavaScript to start taking over Python&#x27;s niches. Is there a numeric library (like Scipy&#x2F;pandas) hooked up to asm.js yet? I can imagine that being faster than Python.
评论 #7729359 未加载
评论 #7729555 未加载
评论 #7729464 未加载
alcoabout 11 years ago
Python is good for scientific computing. But this is one person&#x27;s experience. Users of other languages may sleep calm.
VeejayRampayabout 11 years ago
Isn&#x27;t Golang slowly eating Python&#x27;s stolen lunch though?
评论 #7729412 未加载
评论 #7729492 未加载
评论 #7729432 未加载
tmikaeldabout 11 years ago
What about Zope&#x2F;Plone?<p>Not good enough, or any other reason?<p>I&#x27;m curious.
评论 #7729673 未加载