R ecosystem provides amazing reproducible research ecosystem, even for statistical physics.
Qem•3h ago
I wonder how close R was to also take over the scientific computing/machine learning space, instead of Python's numpy/scipy ecosystem.
mhog_hn•1h ago
One general purpose web framework away
rjdj377dhabsn•1h ago
I disagree. R is just not a very nice language.
It has some really great statistical and data science packages that were well ahead of the competition 10-15 years ago. The web frameworks were good enough for dashboards and what most people were using R for.
But if you wanted to write fast and elegant nom-vectorized code, R is really lacking. I left it for Julia for that reason.
mvieira38•8m ago
How is Julia in terms of data science dev experience? Nothing ever felt as good as the R+tidyverse combo to me, at least in Python.
larrydag•1h ago
Very close. In fact you could still say that it still is competing with Python for users. There is still an active community of developers.
teruakohatu•1h ago
I love and use R, but it never became the dominant ML in part because it has three (or more) different object systems and many libraries sort of use their own style.
This makes it seem a bit disjointed, in a way that other languages don’t.
The R community should have anointed one object system and made tidyverse a core part of R.
All that said, R is fantastic and the depth of libraries is extensive. Libs are often written by the original researchers that develop the method. At some academic institutions an R package is counted as a paper.
mvieira38•15m ago
Agree 100% on tidyverse becoming part of the standard library. Some of the language's greatest libraries (like Hyndman's forecasting stuff) basically assume you're using tidyverse already
3abiton•1h ago
R is really not for production deployment. It lacks a lot of what made python popular, and its target users were radically different.
shoo•20m ago
R was developed for and by statisticians, for better and worse. I used R a little bit 15-20 years ago, what I remember was that quite a few libraries and function interfaces seemed to be designed to be convenient for interactive use, but if you tried to use them in an automated script, e.g. some analysis you wanted to scale up and repeat 10,000 times while bootstrap sampling or hyperparameter sweeping or what have you, those same library and interface design choices involved bizarre edge cases where functions would sometimes do something completely different (perhaps changing the return type) when invoked with slightly different arguments. All these automation hostile edge causes were annoying to discover and then work around.
None of this was forced by R the language, it was purely a library design thing by the folks writing the libraries. Whereas in contrast, you simply wouldn't and didn't get such library design in mainstream general purpose programming languages (e.g. in C++, java some of this stuff wouldn't even type check) and similarly in python, even though python being dynamic was fertile ground for people to develop completely bonkers and unautomatable numeric and scientific libraries, the customs for how libraries should work were different
dkga•9m ago
Completely disagree. I work at a central bank, helping people make some of the most important economic decisions in my country and plenty of analyses are done purely with R.
esafak•4m ago
Were they run in production as nightly jobs or something?
shiandow•59m ago
In statistical physics they still use C a lot, as far as I know.
mamami•58m ago
It was never close. Its synthax is unintuitive and painful to learn as a science undergrad. If it hadn't been python it would have been another language.
northlondoner•3h ago
Qem•3h ago
mhog_hn•1h ago
rjdj377dhabsn•1h ago
It has some really great statistical and data science packages that were well ahead of the competition 10-15 years ago. The web frameworks were good enough for dashboards and what most people were using R for.
But if you wanted to write fast and elegant nom-vectorized code, R is really lacking. I left it for Julia for that reason.
mvieira38•8m ago
larrydag•1h ago
teruakohatu•1h ago
This makes it seem a bit disjointed, in a way that other languages don’t.
The R community should have anointed one object system and made tidyverse a core part of R.
All that said, R is fantastic and the depth of libraries is extensive. Libs are often written by the original researchers that develop the method. At some academic institutions an R package is counted as a paper.
mvieira38•15m ago
3abiton•1h ago
shoo•20m ago
None of this was forced by R the language, it was purely a library design thing by the folks writing the libraries. Whereas in contrast, you simply wouldn't and didn't get such library design in mainstream general purpose programming languages (e.g. in C++, java some of this stuff wouldn't even type check) and similarly in python, even though python being dynamic was fertile ground for people to develop completely bonkers and unautomatable numeric and scientific libraries, the customs for how libraries should work were different
dkga•9m ago
esafak•4m ago
shiandow•59m ago
mamami•58m ago