↓ Skip to main content

Martin Maechler Invited Talk at useR! 2014 - Good Practices in R Programming

Martin Maechler is a member of R-Core. This distinction puts him in the very apex of understanding of the R programming language and environment. He is a professor of statistics with wide and varied interests and a leading expert in statistical computing environments. He is also a prolific programmer, evidenced by his maintenance of the officially recommended cluster package for unsupervised clustering and analytics, the lead developer of Emacs Speaks Statistics, and co-maintainer of the Matrix package… plus too many other contributions to list them all here.

At useR! 2014 at UCLA, Martin gave an updated version of his useR! 2004 talk in Vienna, focusing on good programming “rules.” In his invited talk (video below), “Good Practices in R programming”, Martin showcases a synthesis of his many years of experience and expertise, from gotchas which may trip you up unexpectedly to fundamentals of good engineering and communication practices. DataScience.LA is fortunate to have been able to record his presentation and provide it to the community at large - watch to find out why!

Martin focuses on a number of critical facets of programming, both in R and in general. He focuses on the nature of namespaces, and the ‘function’ as the fundamental building block of good idiomatic R code. He then takes a tour through analytics and reproducible research, discussing the modern tools available and how they affect project and code layout and organization. He also provides highlights of what every statistical/mathematical programmer should know about computer arithmetic.

Whether you are an novice R user or expert R programmer, an analyst or a programmer, there is something for you in this talk… and heeding this advice will help make you a better programmer, statistician, scientist, and member of the R community!

Martin Mächler's Keynote Speech from useR 2014 "Good Practices in R Programming"
▶ Martin Mächler's Keynote Speech from useR 2014 "Good Practices in R Programming"

Related

Hadley Wickham presents dplyr at useR! 2014

Hadley Wickham is hard at work, releasing packages which leverage the expressive power of R to keep easy things intuitive, and to make hard things possible. Having already developed a number of packages which address other steps in the data processing and analysis pipeline, he chose to address the process by which R developers ingest, manipulate, and transform data. This package, dplyr, is a narrowly focused library, designed to provide 90% of the functionality required in most data munging tasks. It may not solve every possible problem in data munging, but dplyr’s built in primitives will reduce your need to drop to “base R” for most common tasks. It does so by leveraging the magritr package’s “pipe” operator, and is inspired by dataflow programming constructs. It is fast, it is powerful, and it has been the single largest productivity boost that many of us here at DataScience.LA have adopted in 2014. In this video, Hadley provides a very quick introduction to the dplyr package, describing his philosophy behind the package’s design while providing a number of illustrative examples as to the flexibility, expressiveness, and power of this tool.

Packrat presentation at useR! 2014

There comes a time in a software toolchain’s lifecycle where the focus shifts from developer productivity and preference to the ability to deploy solutions in production which coexist gracefully in the enterprise. Configuration management and dependency management are two of the first points of friction in this transition, as the free-wheeling methods preferred by developers are at odds with the structured methods and isolation desired by administrators, who serve as gatekeepers to enterprise deployment. R is currently at this very point in the transition, in the midst of transformation from a language and environment used primarily in academic research to its growing place in the enterprise. At useR! 2014 there were a series of presentations on how dependency management can be addressed within the R ecosystem, ranging from “provider” side options (e.g. freezing CRAN and private repositories) to the client side options, where a project maintains its own dependencies as part of its codebase.

Interactive Visualizations from R using rCharts

At useR! 2014 Ramnath Vaidyanathan gave a tutorial and a presentation on one of his current project, rCharts. This R package allows you to create, customize and share interactive visualizations straight from R. rCharts leverages several existing javascript visualization libraries such as polychart, MorrisJS, NVD3, xCharts, HighCharts, leaflet, and Rickshaw, providing R users a fantastic array of new features and visualization styles.