
R is hot [pdf] - sonabinu
http://www.revolutionanalytics.com/why-revolution-r/whitepapers/R-is-Hot.pdf
======
crayola
R has some spectacular libraries and a huge userbase among statisticians, so
it is definitely a big actor. On the downside, the core team who manage it
appear to be somewhat averse to making the language progress in meaningful
ways. R is very slow, has difficulty handling large data, and is a source of
many "wtf" moments (e.g. see "the R inferno"), even for advanced users. I
think the best thing that could happen would be a mass migration of R users
towards Clojure, Julia or (more realistically) Python, and an attempt to
reproduce in that language the key packages that are R's main appeal at the
moment (ggplot2 mostly).

~~~
hadley
I think the best thing that could happen would be the development of a
competing R implementation. In my mind this would include the definition of a
minimal R language implemented in something like Riposte
([http://www.justintalbot.com/wp-
content/uploads/2012/10/pact0...](http://www.justintalbot.com/wp-
content/uploads/2012/10/pact080talbot.pdf)), and the majority of base code
written either in R, or the sort of C++ that Rcpp makes very natural.

~~~
chuckbone
The best thing that can happen to R would be to rewrite the parser in Haskell
and make R a domain specific language. Leave the stats/R language to
statisticians who originally designed R, and bring in the Comp Sci crowd to
actually make a meaningful speedup.

~~~
hadley
That's an unusual suggestion - I haven't heard anyone complain about R's
parser before. It's also hard to argue that R is a DSL (at least in the spirit
of <http://en.wikipedia.org/wiki/Domain-specific_language>). There are many
features of R, features that make it particularly well suited to statistics
and data analysis, that would be very difficult to reproduce in an embedded
DSL (missing values are one particularly important example)

------
11001
I like R, it's more fun to write in than, say, Matlab. But it is unbelievably
slow and has very little support for web-based projects. I'm reading "Python
for Data Analysis" right now, and I'm pretty sure the book is converting me.
Pandas' DataFrame includes R's data.frame's functionality as a strict subset,
and that's enough for me to switch. I still might need to use rpy2 for awhile
for certain packages though.

~~~
minimax
I started using data.table [1] as a replacement for data.frame recently and
it's hugely improved my productivity in R. On the web front, the Shiny [2]
project has a emerged as a possibility for quickly building web frontends for
analysis projects in R.

1\. <http://datatable.r-forge.r-project.org/>

2\. <http://www.rstudio.com/shiny/>

~~~
dagw
If you like data.table, but use python, take a look a pytables.

------
mblake
Ugh, should've put a [pdf] warning in the title. Other than that, R can indeed
be hot, but maybe just in the special 'flavor' Revolution Analytics developed,
otherwise it's one of those languages you dread using but are forced to
because so much scientific code/packages etc has been written on it, some with
no equivalent in other languages.

~~~
sonabinu
just did put in pdf to the title

~~~
j_s
however you managed to skip past the auto-scribd-autodetection,
congratulations! scribd is a mistake.

~~~
mynegation
It looks like URL parameters after .pdf extension confused the parser that
probably expects URL to _end_ with '.pdf'

------
sagacityhappens
Expect R is dominate as the SAS legacy begins to die. R is spreading across a
lot on analytics departments in Universities, from Stats to Finance. The
holdouts are the CS departments, who have rebranded much of statistics into
data mining/machine learning and, smartly, use python.

~~~
chuckbone
Another important metric is the use of R in clinical studies. The FDA now
accepts much research in R whereas before they did not. That is a slow moving
change, and shows R will be around, at least in use by Pharma, for a while.

------
hablahaha
I dunno if R is that hot, but I think RStudio's Shiny
(<http://www.rstudio.com/shiny/>) is on its way to making it hot. Best thing
to come out in the R world in a long time. Besides being a great visualization
tool for people who already use R, it might be something that makes
programming easier to learn for kiddos (they can even learn some HTML + JS at
the same time...) This almost brings R to a level where all the material
taught in a freshman COMP101 class could be implemented in R (... as long as
you don't even mention OOP)

------
Maro
I think R is just as terrible as Matlab. Personally I prefer Mathematica, but
I even stopped using that, it's just so painful to use with everything being
lists.

~~~
linhat
Could you elaborate your dislike for mathematica and matlab? In my university
departement a lot of people are using matlab while I somehow prefer C/C++ as I
still cannot get my head around it.

~~~
Maro
My use of Mathematica is usually reading some data (generated from a
simulation, say) from a CSV file and then doing something with it and plotting
it. What I dislike is that simple things like aggregation, slicing and dicing
the data is kind of pain when everything is a list and using Table[], Map[]
etc. It often occurs to me that it'd be much quicker to express what I want
with an SQL query. Also, with Mathematica's lists header information is lost,
so I always have to remember which column in the list of lists is what. It's
kind of a pain. Basically, whereas in SQL I can tell it what I want
(declarative), in Mathematica I actually have to implement it (functional).

Then, in the plotting phase I'm constantly looking up Mathematica's plot
options because I don't use it often enough to remember them. By default
almost everything looks like crap in Mathematica, and you have to put in 10+
options to try to make it look good, but even so I'm usually dissatisfied with
the result. Often I want something and then I find someone on a message board
saying that it doesn't support that, and then he shares his 100 line program
which gets Mathematica to do that. Then I usually give up. Getting programs
from the Internet to work with Mathematica is a pain because Wolfram pushes
out a new version every year and they keep changing small things which break
backwards compatibility. Compare to the (much less powerful) Google Charts
library, where everything looks much better and easier to comprehend by
default.

One of my startup ideas is to write something like Mathematica, much simpler,
runs on the web as a service, you can program it in Javascript, has embedded
SQL, and it uses something like Google Chart for simple plotting, or you can
pull in your favorite plotting library. Let's you share your work by sending
around a link.

PS: I played around with R, but it seemed even more cryptic than Mathematica.
Admittedly I didn't spend much time in it.

~~~
maxerickson
Have you seen Afterquery?

<http://afterquery.appspot.com/help>

~~~
Maro
Thanks, this looks interesting.

Actually I'm developing/maintaining something like this at my job, as part of
the Data Services team. Similar to this, it uses Google Charts and is a
node.js app. It will be open-sources in a couple of months. The goal is to
avoid using Gooddata for as much stuff as possible, GD is too sluggish.

------
vickytnz
"How Did a Statistical Programming Language Invented in New Zealand Become a
Global Sensation?". Hmm, slightly condescending title—though I had no idea
that it was invented by two academics at the University of Auckland (not
"Aukland"!)

~~~
dagw
Is "invented" really the correct word, given that R started its life as a
straight up Open Source re-implementation of the S language.

------
TomMasz
So, let's say you're interested in playing with R, where's the best place to
start? I've got basic statistics background and some datasets I could play
with.

~~~
sonabinu
A great place to start learning the basics of R - coursera has a couple of
classes using R - Computing for data analysis
<https://www.coursera.org/course/compdata> and Data analysis
<https://www.coursera.org/course/dataanalysis>

go to the R website - <http://cran.r-project.org/>

------
michaelfeathers
Has anyone explored the possibility of making a nice clean language that
compiles to R?

~~~
jre
Python has some nice tools to interface with R when needed (rpy2 for example).
On top of that, scipy/numpy/matplotlib provides a lot of scientific routines.

~~~
dbecker
Personally, pandas was the library that converted me from R to python for
general data work.

------
piqufoh
This would suggest that "R is not" <http://lang-index.sourceforge.net/#grid>

~~~
minimax
The article is suggesting R has become popular for data analysis projects, not
as a general purpose programming language.

~~~
sonabinu
R is essentially for statistics, it is not a general purpose programming
language

------
shared4you
Please add a [pdf] tag in the title!

~~~
sonabinu
just did, didn't realize the confusion it was causing

