|οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£|
| SEIZE THE |
| MEANS OF |
| ART |
| PRODUCTION |
| οΌΏοΌΏοΌΏοΌΏοΌΏοΌΏοΌΏ|
(\__/) ||
(β’γ
β’) ||
/ γ γ₯
|οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£οΏ£|
| SEIZE THE |
| MEANS OF |
| ART |
| PRODUCTION |
| οΌΏοΌΏοΌΏοΌΏοΌΏοΌΏοΌΏ|
(\__/) ||
(β’γ
β’) ||
/ γ γ₯
I built a free tool that shows how night-time lights have changed anywhere on Earth.
Here's how it works and why it's useful for monitoring conflict, disasters, development and growth. π
Grumpy cat "Before I knew how to extend roxygen2". Happy cat "Once I got how to extend roxygen2".
On the right you see the steps of roxygenize(), on the left different files and objects. First roxygenize() loads packages. Then it parses R scripts, recognizing normal and custom tags. This creates blocks which are sorts of lists of tags. Then for any registered roclet: Rd roclet, collate roclet, NAMESPACE roclet, your custom roclet, roxygen2 will run the preprocess methods then the process methods then the output methods. The Rd roclet work will lead to the man/ folder, the NAMESPACE roclet work generates the NAMESPACE file, your custom roclet could have done anything like generating test files or a report on statistical software standards.
Meme "Doctors hate him!". plumber2 extends roxygen2 without roclets. With this one weird trick! Learn the truth now.
Table of uses and extensions of roxygen2 with these two dimensions: parsing code decorators, generating stuff when calling roxygenize(). The most populated cell has the two aspects, it contains every example we saw except plumber2. Plumber2 does use code decorator parsing but not through roxygenize(). If you do neither of those things youβre clearly not in roxygen2-land. Now thereβs a weird thing where you can use roxygenize() without using information from the code decorator parsing. Roxygen2 has an old roclet that is no longer recommended, the vignette roclet that would update the built versions of your vignettes using Make. Itβs no longer recommended to have those files in your package source. In any case, you could make roxygenize() run any code from a roclet: maybe formatting your code? Updating your changelog? I canβt think of actual good ideas but you can do it.
Yesterday I got to present what I painstakingly learnt about
β¨ extending roxygen2 β¨
masalmon.eu/talks/2026-0...
#RStats
Screens #521 (2022)
that's just too big, man... too big...
looking around a bit I'm not sure which current HP model I'd liken mine to
damn 33" is huge...
This is the model name back in the days: HP Z27 27-inch 4K UHD Display
It has the niceness of charging the MacBook through the same cable as the video. That is probably more standard these days but back then it was pretty premium
For reference I've had the same monitor for the totality of my Posit employment
I've been happy with the HP Z line of monitors
Upcoming CFP Deadlines
posit::conf(2026) call for talks may be over, but there are still many #RStats & #Python events where you can submit! Maybe we'll see you there:
π¬π Ghana R Conference (Jul 9-10, Virtual): Feb 25 ghana-rusers.org
π SciPy (Jul 13-19, Minneapolis, MN): Feb 25 pretalx.com/scipy-2026/cfp
I think it all started when our PM had the audacity to call Trumps idea of buying Greenland "absurd" during his first playdate with presidency
π rainbowR is next week!
β³ Registration closes this Sunday at 23:59 UTC.
If youβre planning to join us, nowβs the time to sign up π
π pretix.eu/rainbowr/con...
#RStats #LGBTQ #QueerInTech #DataScience
Storms 3118 (2020)
#rstats and #ggplot2
Here's a small portion of an animated bumper I made to promote a video game from @owlcatgames.bsky.social (Blind Descent). Seeing the latest advances in generative AI and how they've invaded space, I feel lucky to have at least produced this little piece from start to finish π₯².
We have all met a physicist who believe with great ferocity that all sciences are just varying degrees of applied physics
came here to compliment that analogy as well
Inprecision #26 (2022)
GLSL
I'm pretty sure confidence intervals show how confident you are in interpreting the interval
First they came for our virologist
and I did not speak out
because I'm not a virus
...
or however it goes
I started making this R package 6 years ago. I finally have it in a state I'm happy with, thanks to Claude Code #Rstats github.com/MattCowgill/...
igraph?
Wonder 152 (2024)
GLSL
plumber2 hex
Announcing plumber2 0.2.0 for APIs in #RStats π§
plumber2 0.2.0 brings essential observability and authentication features to your R workflows:
Native support for traces and metrics, streamlined request handling for higher throughput, and more!
Read more: tidyverse.org/blog/2026/01...
Phases 2423 (2019)
#rstats and #ggplot2
Constructive 72 (2021)
#rstats and #ggplot2
"You need to show it relative to 100%!" I yell, as the police officer takes me away for drunk driving
Entrance (2022)
GLSL and Budapest Symphonic Orchestra (sound on)
TSLAMP by MGMT would be the perfect soundtrack for this painting - beautiful