Reflections from the Posit Conference – R or Python?

by Sarah Stevens

At last year’s RStudio conference, RStudio made the big announcement that they would be renaming the organization Posit. This change reflects the organization’s interest in branching out from “just R” to include additional projects: for example, the various Python and Quarto projects they were already supporting. This change was welcome, from my perspective. It helped differentiate RStudio, the integrated development environment, from RStudio, the organization. And it helped my colleagues hosting services formerly called Rstudio Connect and RStudio Workbench better share the Python capabilities of these services.

Yet, on my first day at Posit Conference 2023, my breakfast group was discussing R vs Python. This group was staunchly pro-R and didn’t enjoy Python, though several said they wanted to work on their Python skills so they could use some of the Python machine learning packages. I find myself falling somewhere in the middle of these arguments. Python was my 2nd programming language and most adored. Then I came to grad school and nearly all of my colleagues were learning and using R. As the go-to “tech person” of my lab, I found myself picking up R to help my colleagues when they ran into issues. I wasn’t sold for the first year or two until I fell in love with the tidyverse, in particular plotting with ggplot2 and manipulating data with dplyr. Now, I help lots of researchers with R and some with Python too, and I continue to love them both.

To further my expertise with both open source languages, on the first day of posit::conf I attended a workshop on Shiny for Python, and on the 2nd day I attended a workshop on developing your own packages in R. Since I host and teach many workshops, I often worry that the corollary to the adage “doctors make the worst patients” is that I make the worst workshop attendee. However, both of the workshops I attended at posit::conf were very well organized and taught. They even used some of the teaching practices my teaching community uses–sticky notes, live coding, challenge exercises, and collecting feedback. While I enjoyed the latter half of the conference, I think the workshops might have been my favorite part. I rarely get the opportunity to focus on learning new technical skills. I’m now looking to come up with projects that allow me to make Shiny dashboards and create R packages. I’m also hoping to turn some of what I’ve learned into new workshops here at UW–Madison and to share what I learned informally in the R and Python study groups hosted through the ComBEE community of practice.

The next couple days of the conference were a whirlwind. It seemed nearly every other session I attended was about R or Python. There were many wonderful examples of individuals and groups creating open source software, using open data in analyses they are doing, and trying to improve the world around us with coding. I also attended several talks showcasing Quarto’s ability to combine code and text together for reporting, which can improve documentation and allow for better information sharing.

One of the last talks I attended came back to this same question, “R or Python?”. The talk was a story of how a team of developers at the Belgian Justice Department were trying to decide to create their data analysis pipeline in R or Python. The presenter covered several debates back and forth about the various pros and cons of the two coding languages and their related support platforms. Ultimately, they came to much the same conclusion that Posit and I have, R and Python. These two powerful tools don’t have to be seen in opposition to each other but instead as complementary tools, both representing vital open source projects that make coding more available and more accessible.