Tidyverse developer day 2019 (tidy-dev-day)

The experience of participating in the Tidyverse Developer Day 2019.

R Packages

Beatriz Milz

Angélica Custódio

Data de Publicação

8 de julho de 2022

Notes from 8th July 2022

Hi! This post was written three years ago, in 2019. In this post, my friend Angélica and I share the experience of participating in the Tidyverse Developer Day 2019.

As rstudio::conf 2022 is coming up, I thought it would be nice to translate this post.

While translating it, I remembered more about that day and thought about how much I had learned since then. That event was essential for me, and I learned so much 💜. So, thanks to everyone involved, specially RStudio and the tidyverse team that organized this event.

This post was originally published on Curso-R’s blog.

In this post, Beatriz Milz and Angélica Custódio talk about the experience of participating in the Tidyverse Developer Day 2019.

What is tidy-dev-day?

Tidyverse Developer Day (tidy-dev-day) is a day-long event where attendees learn more about how to contribute to tidyverse. The first edition was at rstudio::conf2019.

This was the second edition of tidy-dev-day and was a part of the useR!2019 conference, which took place in Toulouse, France. The event happened the day before the start of the conference, bringing together several people who participated in it.

Something to note is that the useR!2019 organization offered diversity scholarships, providing financial assistance to members of underrepresented groups in the R to participate in the conference. The diversity scholarships were fundamental for the participation of several people from different parts of the world, including the authors of this post (Bea and Angelica).

How was tidy-dev-day?

The event had a code of conduct to provide a safe and friendly space for all participants.

In the event, participants had the opportunity to learn how to contribute to the tidyverse. Several developers and maintainers of the tidyverse were present and with a team of helpers. They helped participants, answered questions, reviewed the contributions, and so on.

The material used (instructions, presentations, suggested materials, etc.) is available in this Github repository.

On a wall of the room, several post-its indicated issues to be worked on, separated by packages and color. The color stated the type of issue (documentation, bug, feature).

Participants could choose an issue to work on during the event.

On another wall, post-its were separated into pull request post-its to be reviewed by Hadley Wickham and other maintainers, and post-its that had already been reviewed and accepted!

Another cool thing is that the space had several tables grouped, which helped to work with other people.

Caption: Photo of the Tidy-Dev-Day, by @Dale_Masch.

For those participating for the first time, they recommended issues related to documentation improvements, as they are more natural for those who have never made a package contribution before.

For those who were already more familiar with package development, they recommended bug or feature issues, as they require a greater knowledge of package development.

Bea’s experience

By the time of the event, I have not developed a package yet. So when I arrived at the event, I didn’t knew how packages were structured. In the issue I choseto work on, the goal was to improve an error message from the function dplyr::filter(), so that the message would conform to the tidyverse style guide.

Caption: Photo of the issue I was working on and the unique coin we received that day. Photo by @Bea_Milz.

Initially, I forked the dplyr repository, cloned it to my computer, and did not know what to do next.

I didn’t knew which directory the functions were in, and I was afraid of changing something and causing an error in other functions of the package… But I’m glad I had help!

Ildi Czeller showed me what directory the functions were in (by the way, it’s in /R), and then I was able to find the file I needed to change and what part of the code was corresponding to the filter() function. That was the first time I heard about tests, and I had to change the test referring to the error message I was working on.

After making the changes I felt were necessary, I made a pull request. Hadley replied that someone else was also working on this issue and indicated where the person was sitting. So I went there and asked Colin (who was working on this same issue) if we could work together.

He was super welcoming! He explained how he was developing the improvement, and I also showed him what I had done. Hadley asked to change some tests, and we worked on it together (in this case, I was mostly learning and asking Colin, because tests were new to me).

Legenda: The pull request was accepted!

It was a unique experience, and I learned a lot that day!

Angélica’s experience

During tidy-dev-day, I worked on issues from ggplot2. It was a new experience, and it was gratifying to feel that I learned and contributed to the package.

At the event, several people facilitated the activity. They helped the participants with activities like how to do a fork on GitHub, work on the issue in R, make a pull request, and so on. I had the help of Ildi Czeller, who was one of the helpers and helped me at every step, giving tips from git settings to teaching shortcuts in Rstudio that made life easier (they are documented here).

Caption: Creating a pull request in the ggplot2 package.

The activity promoted the engagement and contribution of everyone, from those who were new to package development, to those who already had a lot of experience.

It was a welcoming space to ask questions and ask for help.

At one point, I was able to talk to Hadley and ask questions about an issue I was working on. Understanding better ggplot2 with one of the authors of the package was an incredible learning experience.

Final remarks

According to Hadley, more than 40 pull requests were accepted, and almost 30 needed to be reviewed:

It was an excellent opportunity to meet new people too! And to meet many people from the community that we admire.

Caption: Angelica and Bea showing the issues that they were working on tidy-dev-day. Photo by AngCustodio.