Ryan McShane
@ryanmcshane.bsky.social
50 followers 72 following 29 posts
Statistics professor at The University of Chicago * Researching intransitivity in paired comparisons, pedagogy in sports analytics courses. * Data viz enthusiast. * #RStats * #GSG 🏀🇩🇪🇺🇸 ryanmcshane.com
Posts Media Videos Starter Packs
ryanmcshane.bsky.social
Ahhh! I've been looking for something like this for my blog!

(Wait... it's in Distill... is Distill still .Rmd-only?)
ryanmcshane.bsky.social
Yeah, I got a swag bag from #PositConf2025 and the Posit-branded S-Gel pen is in heavy rotation at the moment. I have dozens of other S-Gel pens, but this one has a special place in my heart. Will disassemble others for a refill.

I still use a MIT Sloan Sports Analytics Conf water bottle from 2017!
ryanmcshane.bsky.social
I wrote a wrapper around {knitr} kable and {kableExtra} kable_styling that I put at the top of every HW assignment I give to students (output is always PDF). I also have it in all of my Beamer slides 😬

It makes kable tables nice by default.

You can still call, e.g. knitr::kable, too!
ryanmcshane.bsky.social
abba, abc, xyz, xx, yy, and temp are my most commonly used placeholders/temporary names

Are there even rules against this, though?
"Thou shalt not have draft code!"?
ryanmcshane.bsky.social
I came here to make this comment. Beat me to it!

= forever
ryanmcshane.bsky.social
CHI - United Center is ~2 mi away
MIL - 1.5 hr drive
MIN - staying in IA with s/o's bro (7hr drive)
DEN - staying in CO with s/o's other bro (flight)
CLE - 5.5 hr drive (hotel req)
IND - 3 hr drive

(All on days that work nicely with academic calendar)
ryanmcshane.bsky.social
It's rough being away from home and a Spurs fan! NBA Team Pass has been helpful for the past decade, and I've been catching road games for the past couple of years, too! (This season: CHI, MIL, MIN, DEN, CLE, IND) #gsg
ryanmcshane.bsky.social
I might need to do this to keep up with my collection.

I have space for maybe two more, but I could fit even more if I moved some around; I'm scared to death of doing that!

I know I've seen guides around the internet on how to convert these hex stickers to magnets, but I've lost track of them 🙈
Laptop cover featuring 15 hex stickers and three Spurs basketball stickers
ryanmcshane.bsky.social
Did my neighbor and I immediately check to see if our coins stuck together like magnets? Yes.

But also, the backside is a relief rendering of the {tidyverse} hex logo, so it feels trying to put a magnet on would undo one of the sides 🙃🫠
The backside of the coin from another post that features the front side of the tidydevday 2025 coin.
ryanmcshane.bsky.social
I also fixed the 2nd PR this morning.

Both of my PRs were about transitioning from the {magrittr} pipe to the Base R pipe — one to clean up {forcats} examples/vignette, and one to deprecate a {usethis} function that makes it easy to add %>% to a package.

github.com/r-lib/usethis/pull/2183
Deprecate `use_pipe()`. Fixes #2124 by math-mcshane · Pull Request #2183 · r-lib/usethis
Completed: Added a short deprecation message when using use_pipe(), Added a longer bit of advice in the package documentation for common substitutions, including the 2023 blog post on the base pip...
github.com
ryanmcshane.bsky.social
Just finished my first #rstats #TidyDevDay! It might have been a net negative on open issues, because I:

* opened an issue each in {pak}, {roxygen2}, and {gitcreds}
* submitted a PR to {forcats}
* submitted a PR to {usethis} (needs corrected test)

But at least I got this selfie with @hadley.nz 🫠😆
Hadley Wickham, me, and all of the post-it notes of completed PRs.
ryanmcshane.bsky.social
In the "super rare" section at the bottom next to flair!
ryanmcshane.bsky.social
OK #PositConf2025 -- I acquired most of the stickers I heard were available; here's my final score! (Thanks for the assists @ivelasq3.bsky.social ({dtplyr}!!!) @kellybodwin.com and @emilhvitfeldt.bsky.social ). I'll be re-distributing many of these to my students as leaderboard prizes 👩‍🎓👨‍🎓 #rstats
Sticker haul from posit::conf(2025) (and a couple from USCOTS 2025)
ryanmcshane.bsky.social
Why not both? I use Quarto *and* modify the theme with a .sty file (for mathy courses with less code where Beamer makes a little more sense). And my regular reveal.js slides attempt to mimic that Beamer style with css/scss 😬
ryanmcshane.bsky.social
@grrrck.xyz I finally implemented {ggcheck} in my early {ggplot2} assignment autograders (in past 2 weeks, even!)

Do you/a colleague know how this will impact {ggcheck}? Seems like there's some backwards compatibility currently built in, but Teun noted in post that will eventually be phased out.
ryanmcshane.bsky.social
Woah! It seems that this release unraveled some of the more perplexing mysteries in {ggplot2}.

I'm teaching my "Practical R Programming" course again this Fall (finishing a September term iteration tomorrow)... I can't wait to write up an updated set of notes!
thomasp85.com
I am beyond excited to announce that ggplot2 4.0.0 has just landed on CRAN.

It's not every day we have a new major #ggplot2 release but it is a fitting 18 year birthday present for the package.

Get an overview of the release in this blog post and be on the lookout for more in-depth posts #rstats
ggplot2 4.0.0
A new major version of ggplot2 has been released on CRAN. Find out what is new here.
www.tidyverse.org
ryanmcshane.bsky.social
Interview trip to Amherst College (2019):

I checked out a record store in Northampton. I asked the shopkeeper why they had so many KSE posters in the bathroom and he reported that they were from around there.

Impressed me more than Frost, Webster['s], and Dickinson all being from there 😅
ryanmcshane.bsky.social
I'm talking about reproducibility in class today, and was inspired to make this last night after reviewing some of @brodriguesco.bsky.social 's book, raps-with-r.dev

(I'm operating on about 3 or 4 layers of reproducibility)
Four panel meme which is an exploited version of a classic meme. This one says,
1. How many layers of reproducibility are you on
2. Like, maybe 5, or 6 right now, my dude
3. You are like a little baby. // watch this
4. (Bruno Rodrigues' reproducibility iceberg meme saying "NIX"

The original iceberg meme is from his book, Building Reproducible Analytical Pipelines (2023). Since then, Bruno has recommended Nix. 

I haven't started working at that level of reproducibility, so I couldn't compare old vs new, but I know there's some overlap.
ryanmcshane.bsky.social
Fun: I'm currently listening to Julia on Libby.

(Feminist retelling of 1984 from Julia's perspective)

@libbyheeren.bsky.social
Screenshot of the audiobook of "Julia" I am currently listening to on the library audiobook app called "Libby"
ryanmcshane.bsky.social
My favorite part is the default LaTeX font making it into a ggplot. Who needs tikz when you can use ggdiagram?

If it can output to .svg well, you even get vectorized graphics.
w-joel-schneider.bsky.social
Now on CRAN, ggdiagram is a #ggplot2 extension that draws diagrams programmatically in #Rstats. Allows for precise control in how objects, labels, and equations are placed in relation to each other.
wjschne.github.io/ggdiagram/ar...
An arrow with a LaTeX equation Trigonometric functions and a unit circle A bivariate change model with structured residuals A hierarchical model of cognitive abilities
ryanmcshane.bsky.social
I do like that you're using the "old ways" instead of AI.

FWIW, I don't know what the original image was or what it was supposed to represent. A wave? A sea snail coming out of a conch shell? IDK.
ryanmcshane.bsky.social
No argument here (except my examples are apolitical)

Firing one of your leading economists/statisticians because they gave the "wrong" numbers is something I thought I'd never see in the US.

On a former Amherst colleague of mine (worse: his work was criminalized):

www.amstat.org/news-listing...
News Listing
The American Statistical Association is the world’s largest community of statisticians, the “Big Tent for Statistics.
www.amstat.org