UseR! is the highest profile and, I believe, most popular annual meeting for R enthusiasts, known affectionately as ‘UseRs’ for the purposes of the event. For those who have been living under a stone for the past decade ;) R is an open source statistical programming language that has seen explosive growth since ‘data science’ became a buzzword. Although I’ve been using R for around a decade, and heavily for around five years, UseR! 2019 was the first UseR! I attended. I went with some preconceptions: I thought it would be like previous R events that I had attended, including the European R Users Meeting (ERUM) and SatRdays, but bigger. That was true, but it was bigger and better, exceeding my expectations in many ways.
Despite only seeing part of it (I missed the tutorials on the Tuesday and the latter part of the final day on Friday), I learned many things from it. Inspired by the ‘useR aftRglow’, I wrote some of these down on the train journey back home. The result is this article.
The organising committee of User! 2019 (hats off to you for an amazing event) has lessons for anyone thinking of putting on a successful event for research, software development, or anything aiming to encourage a friendly symposium vibe. Here are the top six things that made User! 2019 great from my perspective.
1. Diverse formats
Sometimes going to events, and especially academic conferences (mentioning no names
*cough* take note organisers of AAAG/RGS-IBG and other events with many presentation sessions), can feel undergoing death by PowerPoint. A very slow, boring death.
UseR! was different. Aside from the fact that many of presenters wouldn’t be seen dead in front of PowerPoint slides, preferring instead more reproducible and flexible formats enabled by packages such as
ioslides, the diversity of formats and quality of the talks kept me on my toes in every session I attended.
The organisers had clearly given some thought to tackle this issue. Instead of having only a couple of talk types (e.g. 15 minute presentation, 1 hour keynote) a range of formats were supported, including:
- Morning/afternoon tutorials, which took place on the Tuesday, allowing people to learn in depth about new methods/packages/approaches.
- A ‘tidyverse development’ day, which apparently involved physically taking issues and working on them in parallel, with a gong struck for every Pull Request accepted (this makes me wonder if the same technique can be used in other software ecosystems).
- Poster sessions, perhaps not an innovative thing in its own right, but at UseR! the poster showing session was preceded by Lightning Talks of ~1 minute each, so participants could identify which posters they would most like to visit.
- Lightning talk sessions, where participants had 5 minutes to convey the core message of their research. These sessions were organised in themes and I chaired ‘Applications and Methods’ session, which contained some fascinating work.
There were still plenty of standard presentation sessions, but even in those sessions, the diversity kept things engaging. Colin Gillespie went into stand-up comedy mode to deliver a vital message: that simple changes can improve the security of computer systems using R. Mine Çetinkaya-Rundel used the metaphor of cooking to highlight the importance of digital learning environments for effective classrooms: would you rather cook in a unfinished kitchen or a complete one? Use of a stable, in browser interface, as shown in the Data Science in a Box project, can overcome the barrier of software installation to research, with clear implications for organisations: get a working instance of RStudio Server.
Even the Keynotes were diverse, as can be seen from the UseR website. There wasn’t just one central ‘keynote speaker’ at the event but 6, half of whom were women, and with representatives from commercial, academic and non-profit organsiations. The diversity of topics they covered was also impressive. They ranged from Bettina Grün’s highly technical yet accessible keynote on new models and packages for clustering data to Joe Cheng’s talk on shinymeta. It was roller coaster ride to the publication of this just open-sourced package, which enables shiny apps to generate scripts underlying the dynamic results. This could enable step change in the level of reproducibility of interactive web applications (vested interest: I’m the lead developer of the large shiny application, the Propensity to Cycle Tool that would benefit from being more reproducible).
All of the keynote speeches are available on YouTube, as disseminated in the Tweet below:
All the keynote lectures were available live on @RConsortium #YouTube channel here:https://t.co/otDzmY2UND— useR! 2019 (@UseR2019_Conf) July 13, 2019
Very soon, you'll find the edited version (with video). keep posted!#rstats #useR2019 pic.twitter.com/q6FsqsDI61
2. Worldwide dissemination
Not everyone has the time, energy or money to go to UseR!. Some ‘no fly pioneers’ have given up flying to support global efforts to tackle the climate crisis. I was very impressed to see acknowledgement of the conference’s climate impacts, with a form used to help calculate its carbon impact:
Whatever the reason, it is certain that the contents of UseR! will be of great interest to many more people than the ~2000 people who attended in person. By recording and (eventually) releasing the videos of the talk, a much larger audience, into the millions, can be reached, as highlighted on the website:
All talks will be recorded and all keynote sessions will be live streamed. Everything will be made available on R Consortium YouTube channel. Thanks to R Consortium for supporting that initiative.
Also, UseRs are excellent communicators, as can be seen from a quick glance at the buzzing #UseR2019 hashtag, three of which are shown below.
MASSIVE thank you 🙏🌟💜🌍 to @HeathrTurnr for her AMAZING and continued championing of making the #rstats community so diverse and welcoming, for all from work on #useR, #RLadies , #LatinR and more. We owe a lot to Heather’s hard work & dedication 🏆 (#useR2019) pic.twitter.com/Aisw11SKjc— Alice Data (@alice_data) July 12, 2019
The increasing proportion of content now available online, nearing 100% notwithstanding socials, raises the prospect of making future conferences more environmentally sustainable by encouraging remote participation. This could model the 2019 Stay Grounded conference in Barcelona, which was a “flight free conference”. I discussed the idea of having a single host location with Martin Maechler on the train journey home. This could involve the local organisers and people living nearby attending in person, and then allowing others to attend remotely via live streaming, perhaps in national ‘conference hubs’.
3. Relaxed atmosphere
Another great thing about UseR! 2019 was less objective but equally important: the social atmosphere. The most reason why it had such a good vibe, I guess, was the attendees: in my experience R users, and people involved in the open source community in general, tend to friendly, humble and team-orientated. Of course, this is how conferences should be. Many are, but I couldn’t help notice a contrast between the humility of the ‘big names’ in the R community and the sense of self importance that some high profile academics have in some disciplines.
UseRs seem to have a great sense of humour and don’t take themselves too seriously, which contributed to a friendly, inviting and non-hierarchical atmosphere. This friendliness is self organising, but is also built into the constitution of UseR! in its Code of Conduct. Take note future conference organisers: it’s easy to add a CoC and +s of doing so could be great.
The final reason for the relaxed atmosphere I noticed was more objective: all the equipment worked well, session chairs were well briefed on what they needed to and when, there were floating mics to allow clear questions from the audience, and the rooms were large enough such that at no point did I feel crammed into a session. Furthermore, the arrangement and audio system of the rooms made it feel easy to change session, in case there were two talks in parallel sessions you really wanted to see. Again, hats off to the organisers: it was VERY well organised.
4. The host city of Toulouse
I liked the host city but, due to recent University of Leeds regulations blocking AirBnB, I had to change accommodation plans at late notice. This involved a ~3km trek out to the West of the city. Instead of spending 2 hours each day walking there and back, I decided to hire a bike. To my surprise, the system just worked: I typed in some details in the nearest bike hire station I could find and had my own wheels for the week (which looked like those in the photo below). All for the bargain price of €5 for the week!
I managed to find time to go running on two of the mornings, making me realise how car-dominated Toulouse, like many other cities, is. The car dominated nature of the city is shown in the images below, which show my running route that dodged giant roads, and a photo of one of the main roads, which was not particularly friendly to people walking and cycling to say the least!
Despite the car traffic, the cycleways in Toulouse were great. I recommend anyone visiting a city for a few days to get a bike, a great way to see the city close up, and get from A to B efficiently, avoiding traffic congestion and with the freedom to get off the beaten (road) track. For fun, I recorded some of my routes in Toulouse and uploaded them to OSM, the free and open access community made global mapping database (which I fully endorse over Google Maps ;), allowing reproducible code to show my everyday trip to the conference and back:
download.file("https://www.openstreetmap.org/trace/3046619/data", "track1.gpx") sf::st_layers("track1.gpx")
## Driver: GPX ## Available layers: ## layer_name geometry_type features fields ## 1 waypoints Point 0 23 ## 2 routes Line String 0 12 ## 3 tracks Multi Line String 1 12 ## 4 route_points Point 0 25 ## 5 track_points Point 152 27
track = sf::read_sf("track1.gpx", layer = "tracks") mapview::mapview(track)
Doing this route each day was a great way to clear my head and prepare for my talk on Wednesday morning.
6. Meeting collaborators and online acquaintances
The event was a great opportunity to catch up with R collaborators. Jakub Nowosad and I did some important thinking on our Geocomputation with R open source book (see the slides from Jakub’s talk here), and a photo taken just before the talk below.
I finally managed to persuade Colin Gillespie that we need to update our open source book Efficient R Programming. Watch this space…
I met many people whose work I’ve seen online but never had the pleasure of meeting in person, including Timothée Giraud (author of osrm and many other excellent geo* packages), Enrico Spinielli (who is pushing the boundaries of 3d trajectory analysis in R with packages such as trjjj) and Angela Li (who is pushing #rspatial to new levels on the other side of the Atlantic).
And of course there was much serendipity. I had the honour of meeting many of my R heroes, who were all fun and friendly, demonstrating that it is possible to be high flying while humble. On the train back I sat next R Core Team member Martin Meachler, and learned about the messages emitted every time packages such as
stplanr, which depend on packages that use
R.oo, are loaded:
## Registered S3 method overwritten by 'R.oo': ## method from ## throw.default R.methodsS3
We got on so well we decided to walk through part of Paris where we both had to change trains as shown below:
My talk was part of a session entitled ‘Movement & transport’, that contained the following talks:
I won’t go into the details of my talk because you can see the slides for yourself at the URL. However, it raised many questions and makes me wonder if it’s worth creating an ‘r-transport’ type organisation. Another question, that I didn’t get to answer, is where should reproducible transport questions go, now that my attempts to create a ‘Transport Planning’ StackExchange site seemed to have failed, as shown in the slide below : ( Any ideas on that, welcome : )
Overall, UseR! 2019 was a fun, enlightening and inspiring event, and I hope to attend future UseRs, in person or remotely. I wish more conferences were like this. This small write up is designed as a reminder to my future self, and anyone else reading, to remember how good conferences can be. The example set by this outstanding conference provides some pointers in that direction.