Thomas Lin Pedersen
@thomasp85.com
Visualisation and graphics @posit.co
Classic Generative Art Weirdo using 🖤 and R: http://thomaslinpedersen.art and http://deca.art/thomasp85
he/him
Classic Generative Art Weirdo using 🖤 and R: http://thomaslinpedersen.art and http://deca.art/thomasp85
he/him
Pinned
Thomas Lin Pedersen
@thomasp85.com
· Oct 3
Becoming #1 and #2
A new series that is exploring childlike naive patterns, juxtaposed with a stark geometric scaffold
A new series that is exploring childlike naive patterns, juxtaposed with a stark geometric scaffold
The danger of spending a large amount of time with text rendering is that you either go insane or come out on the other side with an unrealistic expectation that you can understand and solve anything...
In slightly related news the next version of plumber2 will have support for authentication
In slightly related news the next version of plumber2 will have support for authentication
November 6, 2025 at 1:35 PM
The danger of spending a large amount of time with text rendering is that you either go insane or come out on the other side with an unrealistic expectation that you can understand and solve anything...
In slightly related news the next version of plumber2 will have support for authentication
In slightly related news the next version of plumber2 will have support for authentication
Reposted by Thomas Lin Pedersen
I'm excited to share a new version of the Air formatter for #rstats, with support for tabular formatting! Super useful with `tibble::tribble()` calls or `data.table::fcase()`.
It's currently experimental as we're looking to get feedback on the feature, so please let us know what you think.
It's currently experimental as we're looking to get feedback on the feature, so please let us know what you think.
October 21, 2025 at 10:34 AM
I'm excited to share a new version of the Air formatter for #rstats, with support for tabular formatting! Super useful with `tibble::tribble()` calls or `data.table::fcase()`.
It's currently experimental as we're looking to get feedback on the feature, so please let us know what you think.
It's currently experimental as we're looking to get feedback on the feature, so please let us know what you think.
Visual do-ever of the plumber2 site plumber2.posit.co
I really should adopt the logo colours for all my pkgdown sites
I really should adopt the logo colours for all my pkgdown sites
Easy and Powerful Web Servers
Automatically create a web server from annotated R files or by building it up programmatically. Provides automatic OpenAPI documentation, input handling, asynchronous evaluation, and plugin support.
plumber2.posit.co
October 6, 2025 at 11:49 AM
Visual do-ever of the plumber2 site plumber2.posit.co
I really should adopt the logo colours for all my pkgdown sites
I really should adopt the logo colours for all my pkgdown sites
🎨 Theming got a huge overhaul with the latest #ggplot2 release. In honour of that @teunbrand.bsky.social has written a comprehensive deep-dive into styling your plots, covering both old and new functionality. Grab a coffee and dive in!
#rstats
#rstats
ggplot2 styling
This post discusses one function in ggplot2: `theme()`. Find out about the glamour of graphics in this deep-dive article.
www.tidyverse.org
October 1, 2025 at 8:10 AM
🎨 Theming got a huge overhaul with the latest #ggplot2 release. In honour of that @teunbrand.bsky.social has written a comprehensive deep-dive into styling your plots, covering both old and new functionality. Grab a coffee and dive in!
#rstats
#rstats
Reposted by Thomas Lin Pedersen
The new ggplot2 4.0.0 is here! 🎉
This major update includes a foundational rewrite of S7 and user benefits such as smarter labeling and a revamped theming system.
Check the details: www.tidyverse.org/blog/2025/09...
BONUS: Join the release party on Oct 3, 3pm ET. bit.ly/join-gg-extenders
#RStats
This major update includes a foundational rewrite of S7 and user benefits such as smarter labeling and a revamped theming system.
Check the details: www.tidyverse.org/blog/2025/09...
BONUS: Join the release party on Oct 3, 3pm ET. bit.ly/join-gg-extenders
#RStats
September 30, 2025 at 3:30 PM
The new ggplot2 4.0.0 is here! 🎉
This major update includes a foundational rewrite of S7 and user benefits such as smarter labeling and a revamped theming system.
Check the details: www.tidyverse.org/blog/2025/09...
BONUS: Join the release party on Oct 3, 3pm ET. bit.ly/join-gg-extenders
#RStats
This major update includes a foundational rewrite of S7 and user benefits such as smarter labeling and a revamped theming system.
Check the details: www.tidyverse.org/blog/2025/09...
BONUS: Join the release party on Oct 3, 3pm ET. bit.ly/join-gg-extenders
#RStats
Quote with your yellow art 💛
September 29, 2025 at 8:14 PM
Quote with your yellow art 💛
Reposted by Thomas Lin Pedersen
ggplot v4.0.0 is now out! 🎉
Join the release party on October 3rd with developer & maintainer @teunbrand.bsky.social and the ggplot2 extenders meetup to learn all about what's new and the change-making process!
📅 Friday, Oct 3rd
🕐 3pm Eastern
📋 Sign up: bit.ly/join-gg-extenders
#RStats
Join the release party on October 3rd with developer & maintainer @teunbrand.bsky.social and the ggplot2 extenders meetup to learn all about what's new and the change-making process!
📅 Friday, Oct 3rd
🕐 3pm Eastern
📋 Sign up: bit.ly/join-gg-extenders
#RStats
September 26, 2025 at 2:54 PM
ggplot v4.0.0 is now out! 🎉
Join the release party on October 3rd with developer & maintainer @teunbrand.bsky.social and the ggplot2 extenders meetup to learn all about what's new and the change-making process!
📅 Friday, Oct 3rd
🕐 3pm Eastern
📋 Sign up: bit.ly/join-gg-extenders
#RStats
Join the release party on October 3rd with developer & maintainer @teunbrand.bsky.social and the ggplot2 extenders meetup to learn all about what's new and the change-making process!
📅 Friday, Oct 3rd
🕐 3pm Eastern
📋 Sign up: bit.ly/join-gg-extenders
#RStats
I am super hyped to finally share the first release of plumber2 with all of you. This has been the center of my attention for a big part of 2025 and I hope you'll find it a worthy update to the venerable plumber package.
The blog post will tell you more
#rstats
The blog post will tell you more
#rstats
plumber2 0.1.0
plumber2, a complete rewrite of plumber, has landed on CRAN, providing a modern, future proof solution for creating web servers in R. Read all about the new features here.
www.tidyverse.org
September 24, 2025 at 6:52 AM
I am super hyped to finally share the first release of plumber2 with all of you. This has been the center of my attention for a big part of 2025 and I hope you'll find it a worthy update to the venerable plumber package.
The blog post will tell you more
#rstats
The blog post will tell you more
#rstats
Reposted by Thomas Lin Pedersen
New blog post!
Ever wonder what geom_histogram is actually doing? How about geom_boxplot?
In celebration of the release of #ggplot2 4.0.0 (ggplot8?), I explore the relationships between the “geoms” and “stats” offered by the core {ggplot2} functions.
#rstats
Ever wonder what geom_histogram is actually doing? How about geom_boxplot?
In celebration of the release of #ggplot2 4.0.0 (ggplot8?), I explore the relationships between the “geoms” and “stats” offered by the core {ggplot2} functions.
#rstats
Exploring {ggplot2}’s Geoms and Stats – Stat’s What It’s All About
blog.msbstats.info
September 15, 2025 at 7:04 PM
Reposted by Thomas Lin Pedersen
posit::conf(2025) kicks off TOMORROW, and we are fully in launch mode.
🎒 Pack the essentials.
📲 Download the app.
📍 Check the schedule.
Whether you’re flying to ATL or logging in from home, the countdown is officially ON.
Let’s make it unforgettable. 💥
#PositConf2025
🎒 Pack the essentials.
📲 Download the app.
📍 Check the schedule.
Whether you’re flying to ATL or logging in from home, the countdown is officially ON.
Let’s make it unforgettable. 💥
#PositConf2025
September 15, 2025 at 6:10 PM
posit::conf(2025) kicks off TOMORROW, and we are fully in launch mode.
🎒 Pack the essentials.
📲 Download the app.
📍 Check the schedule.
Whether you’re flying to ATL or logging in from home, the countdown is officially ON.
Let’s make it unforgettable. 💥
#PositConf2025
🎒 Pack the essentials.
📲 Download the app.
📍 Check the schedule.
Whether you’re flying to ATL or logging in from home, the countdown is officially ON.
Let’s make it unforgettable. 💥
#PositConf2025
And if you want to learn hands on about some of the new things, come to our ggplot2 workshop at posit::conf(2025) next week
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
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
September 11, 2025 at 11:28 AM
And if you want to learn hands on about some of the new things, come to our ggplot2 workshop at posit::conf(2025) next week
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
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
September 11, 2025 at 11:20 AM
Reposted by Thomas Lin Pedersen
In the recent npm supply chain attack, DuckDB's Node.js and Wasm packages were compromised with malware. We have investigated the issue, deprecated the affected packages and released new versions.
We have released a security advisory that contains our full postmortem: github.com/duckdb/duckd...
We have released a security advisory that contains our full postmortem: github.com/duckdb/duckd...
DuckDB NPM packages 1.3.3 and 1.29.2 compromised with malware
The DuckDB distribution for [Node.js](http://node.js/) on [npm](https://www.npmjs.com/) was compromised with malware (along with [several other packages](https://www.aikido.dev/blog/npm-debug-and-c...
github.com
September 9, 2025 at 9:37 AM
In the recent npm supply chain attack, DuckDB's Node.js and Wasm packages were compromised with malware. We have investigated the issue, deprecated the affected packages and released new versions.
We have released a security advisory that contains our full postmortem: github.com/duckdb/duckd...
We have released a security advisory that contains our full postmortem: github.com/duckdb/duckd...
I'll be running a brand new workshop with @teunbrand.bsky.social for anyone who wants to make sure they are getting the most out of the constant development in ggplot2 and its ecosystem.
Hope to see you there
Hope to see you there
Level up your data science skills this September at posit::conf(2025)! Learn to tell a better story with data in our "Data Talks" or "Mastering Data Visualization with ggplot2" workshops.
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
August 20, 2025 at 9:07 AM
I'll be running a brand new workshop with @teunbrand.bsky.social for anyone who wants to make sure they are getting the most out of the constant development in ggplot2 and its ecosystem.
Hope to see you there
Hope to see you there
Reposted by Thomas Lin Pedersen
Level up your data science skills this September at posit::conf(2025)! Learn to tell a better story with data in our "Data Talks" or "Mastering Data Visualization with ggplot2" workshops.
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
August 19, 2025 at 8:07 PM
Level up your data science skills this September at posit::conf(2025)! Learn to tell a better story with data in our "Data Talks" or "Mastering Data Visualization with ggplot2" workshops.
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
Join us! Register now: posit.co/conference/
📅 Sept 16–18 | Atlanta
#RStats #ggplot2 #PositConf2025 #DataViz
Reposted by Thomas Lin Pedersen
Want to learn to write fast R code—and support Ukraine while doing it?
Join my workshop Thursday, August 28th 6-8 pm CEST!
We’ll cover profiling & benchmarking, and take a tour of fast packages like data.table, collapse, Rcpp and more...
With plenty of code examples & hands-on practice!
#rstats
Join my workshop Thursday, August 28th 6-8 pm CEST!
We’ll cover profiling & benchmarking, and take a tour of fast packages like data.table, collapse, Rcpp and more...
With plenty of code examples & hands-on practice!
#rstats
❗️Our next workshop will be on August 28th, 6 pm CEST, on Efficient R by @selina-b.bsky.social
Register or sponsor a student by donating to support Ukraine!
Details: bit.ly/3wBeY4S
Please share!
#AcademicSky #EconSky #RStats
Register or sponsor a student by donating to support Ukraine!
Details: bit.ly/3wBeY4S
Please share!
#AcademicSky #EconSky #RStats
August 17, 2025 at 6:05 PM
Want to learn to write fast R code—and support Ukraine while doing it?
Join my workshop Thursday, August 28th 6-8 pm CEST!
We’ll cover profiling & benchmarking, and take a tour of fast packages like data.table, collapse, Rcpp and more...
With plenty of code examples & hands-on practice!
#rstats
Join my workshop Thursday, August 28th 6-8 pm CEST!
We’ll cover profiling & benchmarking, and take a tour of fast packages like data.table, collapse, Rcpp and more...
With plenty of code examples & hands-on practice!
#rstats
I’ve always thought this character was a caricature, but history is catching up
arstechnica.com/tech-policy/...
arstechnica.com/tech-policy/...
August 12, 2025 at 3:47 PM
I’ve always thought this character was a caricature, but history is catching up
arstechnica.com/tech-policy/...
arstechnica.com/tech-policy/...
New art by Rikke Darling (rikkedarling.com/en) hanging proudly on our wall
August 3, 2025 at 11:23 AM
New art by Rikke Darling (rikkedarling.com/en) hanging proudly on our wall
Reposted by Thomas Lin Pedersen
#tidyverse purrr 1.1.0 is out - now with parallel processing!
Scale your #rstats map operations reliably and efficiently across multiple cores and even distributed systems.
Powered by the mirai framework, this unlocks new levels of performance.
Read more at:
www.tidyverse.org/blog/2025/07...
Scale your #rstats map operations reliably and efficiently across multiple cores and even distributed systems.
Powered by the mirai framework, this unlocks new levels of performance.
Read more at:
www.tidyverse.org/blog/2025/07...
Parallel processing in purrr 1.1.0
The functional programming toolkit for R gains new capabilities for parallel processing and distributed computing using mirai.
www.tidyverse.org
July 10, 2025 at 10:35 PM
#tidyverse purrr 1.1.0 is out - now with parallel processing!
Scale your #rstats map operations reliably and efficiently across multiple cores and even distributed systems.
Powered by the mirai framework, this unlocks new levels of performance.
Read more at:
www.tidyverse.org/blog/2025/07...
Scale your #rstats map operations reliably and efficiently across multiple cores and even distributed systems.
Powered by the mirai framework, this unlocks new levels of performance.
Read more at:
www.tidyverse.org/blog/2025/07...
Reposted by Thomas Lin Pedersen
Reposted by Thomas Lin Pedersen
Ever wonder how the #tidyverse came to be? 🤔
#TheTestSet's first episode features @hadley.nz on his accidental empire of #RStats packages, bear encounters, and more!
Stream it at thetestset.co, Spotify, or Apple Podcasts.
#DataAnalytics #PodcastLaunch
#TheTestSet's first episode features @hadley.nz on his accidental empire of #RStats packages, bear encounters, and more!
Stream it at thetestset.co, Spotify, or Apple Podcasts.
#DataAnalytics #PodcastLaunch
July 1, 2025 at 2:33 PM
Ever wonder how the #tidyverse came to be? 🤔
#TheTestSet's first episode features @hadley.nz on his accidental empire of #RStats packages, bear encounters, and more!
Stream it at thetestset.co, Spotify, or Apple Podcasts.
#DataAnalytics #PodcastLaunch
#TheTestSet's first episode features @hadley.nz on his accidental empire of #RStats packages, bear encounters, and more!
Stream it at thetestset.co, Spotify, or Apple Podcasts.
#DataAnalytics #PodcastLaunch
Reposted by Thomas Lin Pedersen
Bleeding edge update for the #tidyverse purrr package with even more seamless #rstats parallel maps.
Introducing our shiniest new adverb: `in_parallel()`. Just wrap your function to take advantage of blazing fast parallel processing via mirai.
pak::pak("tidyverse/purrr")
purrr.tidyverse.org/dev/
Introducing our shiniest new adverb: `in_parallel()`. Just wrap your function to take advantage of blazing fast parallel processing via mirai.
pak::pak("tidyverse/purrr")
purrr.tidyverse.org/dev/
Functional Programming Tools
A complete and consistent functional programming toolkit for R.
purrr.tidyverse.org
June 13, 2025 at 3:32 PM
Bleeding edge update for the #tidyverse purrr package with even more seamless #rstats parallel maps.
Introducing our shiniest new adverb: `in_parallel()`. Just wrap your function to take advantage of blazing fast parallel processing via mirai.
pak::pak("tidyverse/purrr")
purrr.tidyverse.org/dev/
Introducing our shiniest new adverb: `in_parallel()`. Just wrap your function to take advantage of blazing fast parallel processing via mirai.
pak::pak("tidyverse/purrr")
purrr.tidyverse.org/dev/