Skip to content

R and Statistical Computing

Abstract

For most of computing history, doing statistics meant buying a program. From the late 1960s, social scientists ran their numbers through SPSS and SAS, commercial packages on mainframes that read punched cards and printed tables. Then two lines crossed. At Bell Labs, John Chambers built S, a language that treated data analysis as programming rather than menu-picking. In New Zealand, two professors named Ross and Robert wrote a free clone of S to teach a class, called it R, and gave it away. R grew into the standard language of academic statistics, carried by a public archive of user-written packages and, later, by Hadley Wickham’s tidyverse. The commercial S that started it all was quietly discontinued; its free reimplementation is used by millions.

The Batch Era

Before there was a language, there were packages. Statistics on a computer in the 1960s meant handing your data to a fixed program that knew a menu of procedures, and the two that defined the field both came out of universities solving somebody else’s problem.

SAS, the Statistical Analysis System, began at North Carolina State University in 1966 when Anthony Barr and a graduate student named James Goodnight built software to analyze agricultural field data, funded by the National Institutes of Health. When the NIH grant ended in 1972 because the agency wanted medical projects, a consortium of southern university statistics programs, the University Statisticians of the Southern Experiment Stations, paid to keep the work going. In 1976 Barr, Goodnight, John Sall, and Jane Helwig incorporated SAS Institute, which grew into one of the largest privately held software companies in the world, all of it built on a statistics package that never went public on the stock market.

SPSS, the Statistical Package for the Social Sciences, appeared in 1968 from Norman Nie, Dale Bent, and Hadlai Hull, written in Fortran for mainframe batch jobs fed by punched cards. Its 1970 manual was later called one of sociology’s most influential books, because it put regression and cross-tabulation in the hands of researchers who could not program. SPSS Inc. incorporated in 1975; IBM bought it in 2009 for $1.2 billion.

Both were closed, expensive, and menu-shaped. You chose from the procedures the vendor had written. If the analysis you wanted was not on the menu, you were stuck.

S: Programming Comes to Statistics

The escape came from Bell Labs (see Bell Labs: The Idea Factory), where in 1976 John Chambers, with Rick Becker and Allan Wilks, started building S. The premise was different from SPSS and SAS: instead of a fixed set of procedures, S was a language, an interactive layer over the Fortran routines statisticians already had, so that a researcher could turn a new idea into working code the same afternoon. Chambers described the goal as turning ideas into software quickly and faithfully.

S ran first on the GCOS operating system, then moved to Unix in 1979, which is where it spread. Through the 1980s it grew from a macro system into a real programming language with functions and objects, documented in a series of books known by the color of their covers: the “blue book” of 1988 for the New S, the “white book” of 1991 that added a notation for statistical models. In 1988 the commercial version, S-PLUS, was released by Statistical Sciences, Inc. and became the tool of choice in statistics departments and pharmaceutical companies.

In 1998 Chambers won the ACM Software System Award for S, the same prize given to Unix and TeX, cited for changing how people analyze and visualize data. He donated the $10,000 to the American Statistical Association to endow a software award in his name. The recognition was real, but the paid product it honored was about to be undercut by something free.

Two Rs in Auckland

In the early 1990s Ross Ihaka and Robert Gentleman, both at the University of Auckland, wanted a language to teach introductory statistics and found S-PLUS too expensive to put on every student’s machine. So they wrote their own, borrowing S’s syntax closely enough that S code often ran unchanged, and named it R, both for the letter before S and for the shared first initial of Ross and Robert.

In August 1993 they announced it on the s-news mailing list and posted the first binary. The turn that mattered came in 1995, when they released R under the GNU General Public License, making it free software that anyone could read, change, and redistribute. A volunteer R Core Team formed to maintain it, R became an official GNU project in December 1997, and on 29 February 2000, a leap day, they shipped R 1.0.0, the version they judged stable enough for production. A free reimplementation, written to teach a class, had caught up to the commercial language it copied.

CRAN and the Package Explosion

R’s real engine was not the language but the archive. The Comprehensive R Archive Network let any statistician package up a new method, submit it, and have it installed by anyone else with one command. A researcher who published a new technique could publish the R package alongside the paper, and it became the reference implementation the same week.

This inverted the old model completely. SAS and SPSS added procedures when the vendor decided to; R gained thousands of them because its users wrote them. By the 2010s CRAN held well over ten thousand packages covering nearly every corner of applied statistics, from genomics to econometrics, most of them contributed by academics whose day job was the method, not the software. The menu was now written by everyone.

The Tidyverse

R’s second wind came from one person’s opinion about how the language should feel. Hadley Wickham, a New Zealand statistician like its founders, argued that base R was inconsistent and hard to read, and he wrote a family of packages to replace large parts of it: ggplot2 for graphics, built on a formal grammar of how data maps to visual marks, and dplyr for reshaping and summarizing tables in readable steps. Together with related packages they became the tidyverse, a coherent dialect that many users learned before they learned base R at all.

Wickham did this from inside RStudio, a company that built the integrated environment most R users worked in and gave the tidyverse packages away free while selling supporting tools and servers. In 2022 RStudio renamed itself Posit, signaling that it meant to serve data science beyond R. The pattern echoed R’s own origin: a free, opinionated layer that reshaped how the whole community worked.

R Against Python

R was never the only language reaching for data analysis. Python (see Guido van Rossum and Python) grew its own numerical and data stack, and when machine learning became the dominant use of statistics in industry, Python’s pandas and scikit-learn, and then the deep-learning frameworks behind the ImageNet moment (see ImageNet and the Deep Learning Revolution), pulled most of that work into Python. R kept the ground it started on: academic statistics, biostatistics, clinical trials, official government numbers, and any field where the exact statistical method matters more than deploying a model in a web service. The two coexist, often in the same project, and the choice between them is now more about the surrounding ecosystem than the statistics.

Dead End: S-PLUS

The clearest casualty of R’s rise was the product it was cloned from. S-PLUS, the polished commercial S, passed from Statistical Sciences to Insightful Corporation, and in 2008 to TIBCO, which folded it into its analytics line and eventually stopped selling it. The paid language that Chambers had won an ACM award for, the tool that ran the statistics departments of the 1990s, was discontinued while its free imitation grew to millions of users.

The reason is the same one that killed commercial Macsyma against Maxima (see Computer Algebra Systems): once a free implementation matches the paid one closely enough, an academic field with no budget and every incentive to share code will move as one and not look back. Chambers himself became a member of the R Core Team, the creator of the original helping to steer the copy that outlived it. S-PLUS is the dead end; S is not, because its ideas simply moved into R and kept going.

📚 Sources