Sign in

Etienne Bacher

@etiennebacher.bsky.social
258 followers 70 following 151 posts

PhD in economics from LISER, Luxembourg, now Research Software Engineer for @palaeoverse.bsky.social at @es-ucl.bsky.social. Mostly here to talk about #rstats github.com/etiennebacher

PostsRepliesMedia
Etienne Bacher @etiennebacher.bsky.social · 22/09/2026
#rstats new blog post! "Snapshotting error messages", where I explain why I think all testthat::expect_error() should be replaced by testthat::expect_snapshot(error = TRUE), and where I present an easy, automated way to do this transition. www.etiennebacher.com/posts/2026-0...
etiennebacher.com
Snapshotting error messages | Etienne Bacher
Usually, when we develop software, we know very well how to use it and how it works. This is not true for external users, people who will make mistakes and won't use your software correctly on the fir...
1205
Reposted by Etienne Bacher
Palaeoverse @palaeoverse.bsky.social · 17/09/2026
🎉 We've reached 100 users 🎉 Our new Zulip community workspace is growing, and we’re excited to now have over 100 palaeontologists sharing knowledge and discovering new opportunities. Thank you to everyone who has joined so far! If you're interested, sign up here: palaeoverse.org/zulip/join-z...
A flyer advertising over 100 users of the Palaeoverse Zulip workspace. The text reads: Join our community workspace on Zulip! Connect with fellow palaeontologists, share the latest news, and discover new research, opportunities, events, and more! 

Pictograms accompany the following features:
Conferences and workshops.
Job opportunities.
New publications.
Grants and funding.
Resources.

The link for the sign up page is: https://palaeoverse.org/zulip/join-zulip/
052
Reposted by Etienne Bacher
R-Podcast (Eric) @rpodcast.bsky.social · 04/09/2026
Episode 240 of R Weekly Highlights is out! serve.podhome.fm/episodepage/... 🔬 Jarl 0.6.0 Updates @etiennebacher.bsky.social 📰 Package docs with altdown (Bjarke Hautop) h/t @mike-thomas.bsky.social & Jon Calder 🙏 #rstats #databs #podcast
serve.podhome.fm
404 Page Not Found
182
Reposted by Etienne Bacher
Vincent Arel-Bundock @vincentab.bsky.social · 04/09/2026
Big news! 🎉 𝚖𝚊𝚛𝚐𝚒𝚗𝚊𝚕𝚎𝚏𝚏𝚎𝚌𝚝𝚜 1.0.0 for #Rstats is out. It’s a big number and it feels like a big step. I wrote a blog on the challenges of interpreting statistical models, SPEED, cool new features, the future, and a 5 year package development and writing odyssey. arelbundock.com/posts/margin...
1642199
Etienne Bacher @etiennebacher.bsky.social · 24/08/2026
#rstats I'm glad to announce Jarl 0.6.0! Jarl is a very fast R linter, written in Rust. This release brings many improvements and fixes. See the blog post: www.etiennebacher.com/posts/2026-0... And the full changelog: jarl.etiennebacher.com/changelog 🧵 to highlight some features below (1/5)
etiennebacher.com
Jarl 0.6.0 | Etienne Bacher
Personal website of Etienne Bacher: blog posts about R, research, and software.
1308
Reposted by Etienne Bacher
Palaeoverse @palaeoverse.bsky.social · 13/07/2026
💻 Our new website is now live! 💻 Over the past few months, we've been working hard to create a hub of resources designed to support the palaeontological community. 🔗 Find out more and visit the new site here: palaeoverse.org
Our new website is live now! Visit: https://palaeoverse.org/.
13523
Etienne Bacher @etiennebacher.bsky.social · 07/07/2026
#rstats tidypolars 0.19.0 is available! tidypolars provides the tidyverse syntax while using polars for better performance. In this release: - support more functions, incl. the new %notin% operator - better consistency with tidyverse - bug fixes Changelog: www.tidypolars.etiennebacher.com/news/
tidypolars.etiennebacher.com
Changelog
0102
Reposted by Etienne Bacher
Palaeoverse @palaeoverse.bsky.social · 11/06/2026
palaeoverse is a community-driven R package of generic functions to help streamline palaeobiological analyses and improve code readability and reproducibility. This is our last version before a major refactor in Autumn, supported by funding from the @softwaresaved.bsky.social.
palaeoverse 1.5.0 out now! Highlights include: New tax_certainty() function, Grouping support in tax_range_time()/strat(), axis_geo() gains title & autofitting, Lots of under-the-hood improvements.
23812
Reposted by Etienne Bacher
Maëlle Salmon @masalmon.eu · 02/06/2026
New post on the R-hub blog! "Refactoring with Jarl: a coffee chat" ✨ By @frick.ws + myself, reviewed by @etiennebacher.bsky.social blog.r-hub.io/2026/06/02/j... #RStats
Meme of a kitten attacked by monsters. The text says "Everytime you use Claude for something a CLI can do, a kitten dies"
03312
Reposted by Etienne Bacher
Josiah @josiah.rs · 20/04/2026
extendr v0.9.0 is release! 🚀 (hopefully) our last until v1.0.0! Improved DX 👨🏻‍💻 𝙢𝙞𝙜𝙧𝙖𝙩𝙞𝙤𝙣 𝙜𝙪𝙞𝙙𝙚 included! - `anyhow` support out of the box - deprecates `rextendr::document()` use {devtools} only! - use std trait implementations instead of custom methods #rstats #rust extendr.rs/blog/posts/2...
extendr.rs
extendr v0.9.0 – extendr
This is (hopefully) our last minor release before extendr v1.0.0, focused almost entirely on improved developer experience.
0154
Reposted by Etienne Bacher
Vincent Arel-Bundock @vincentab.bsky.social · 17/04/2026
🚨 #RStats and #PyData devs! I'm looking for β testers for this thing I just built: A unified dashboard + orchestrator for code and data quality checks. It has lots of neat features and I'm super eager for feedback and bug reports. Check out the video demo: vincentarelbundock.github.io/scrutin/
A Unified Dashboard and Orchestrator for Quality Checks¶

Unit tests · Data validation · Linting · Spelling

Run every quality check on your project using a single command: unit tests, data validation, linters, spell checkers. Scrutin watches for edits, figures out which checks are affected, and re-runs them in parallel. Drill into a failure to see the expected and actual values, as well as the relevant source code. Use quick keystrokes to fix linting and spelling issues, or to open files in your editor of choice.
0227
Reposted by Etienne Bacher
Maëlle Salmon @masalmon.eu · 02/04/2026
New post on the @ropensci.org blog, "A Better R Programming Experience Thanks to Tree-sitter" Edited by @etiennebacher.bsky.social, @davisvaughan.bsky.social, Steffi LaZerte ropensci.org/blog/2026/04... #RStats
ropensci.org
A Better R Programming Experience Thanks to Tree-sitter
Modern tooling for parsing, searching, formatting, editing R code, just like for other programming languages.
0198
Etienne Bacher @etiennebacher.bsky.social · 01/04/2026
#rstats tidypolars 0.18.0 is available! tidypolars provides the tidyverse syntax while using polars for better performance. In this release: - support more base R functions - bug fixes (including better NA handling in several functions) - and more Changelog: www.tidypolars.etiennebacher.com/news/
tidypolars.etiennebacher.com
Changelog
071
Reposted by Etienne Bacher
Maëlle Salmon @masalmon.eu · 30/03/2026
New post! Better Git diff with difftastic A diffing tool that understands syntax and can - ignore formatting changes - match delimiters in wrappers - ... masalmon.eu/2026/03/30/d... #RStats
Diff where some code was moved out of f to a helper function g. The diff highlights parts of both functions without matching delimiters.Diff where the same code was moved out of f to a helper function g. Difftastic does a better job of highlighting the whole definition of f, and just the name and left arrow defining g. No unmatched delimiters!Native git diff for a function that got a new argument and whose definition is now on multiple lines because it got too long to fit on one line of 80 characters. Git highlights all the lines as changed.Difftastic diff for a function that got a new argument and whose definition is now on multiple lines because it got too long to fit on one line of 80 characters. Difftastic only highlights the line with the new argument and the comma on the line before that.
0295
Etienne Bacher @etiennebacher.bsky.social · 24/03/2026
#rstats I'm glad to announce Jarl 0.5.0! Jarl is a very fast R linter, written in Rust. This release brings many improvements and fixes. See the blog post: www.etiennebacher.com/posts/2026-0... And the full changelog: jarl.etiennebacher.com/changelog 🧵 to highlight some features below (1/4)
etiennebacher.com
Jarl 0.5.0
15812
Reposted by Etienne Bacher
James Balamuta @coatless.bsky.social · 23/03/2026
29 years of #rstats community knowledge was sitting in hard-to-search pipermail archives. So I built a more modern home for it. Introducing the R Mailing List Archives: 631,000+ messages from 32 lists, fully searchable and available as open data. r-mailing-lists.thecoatlessprofessor.com
Homepage of the R Mailing List Archives showing a search bar, three popular lists (R-help with 398,500 messages, R-devel with 63,425, and R-package-devel with 12,125), and a full directory of core lists and special interest groups.
1022154
Reposted by Etienne Bacher
Grant McDermott @gmcd.bsky.social · 06/03/2026
Back in December, I presented at a "Fast Computing" workshop hosted by the Bank of Portugal. The videos + materials are now all available online. github.com/BPLIM/Worksh... (Also including cool talks by @s3alfisc.bsky.social, @sebkrantz.bsky.social, and others.)
github.com
Workshops/BPLIM2025 at master · BPLIM/Workshops
Collection of presentations at BPLIM's workshops. Contribute to BPLIM/Workshops development by creating an account on GitHub.
0124
Etienne Bacher @etiennebacher.bsky.social · 12/02/2026
#rstats tidypolars 0.17.0 is available! tidypolars provides the tidyverse syntax while using polars for better perf. In this release: - support new functions from dplyr 1.2.0 (filter_out, when_any...) - pivot_wider with lazyframe - bug fixes and more News: tidypolars.etiennebacher.com/news/
tidypolars.etiennebacher.com
Changelog
0289
Etienne Bacher @etiennebacher.bsky.social · 05/02/2026
#rstats I'm very happy to announce Jarl 0.4.0! Jarl is a very fast R linter, written in Rust. This release brings lots of improvements and fixes. See the blog post: www.etiennebacher.com/posts/2026-0... And the full changelog: jarl.etiennebacher.com/changelog 🧵 to highlight some features below
etiennebacher.com
Etienne Bacher: Jarl 0.4.0
Find unreachable code, ignore diagnostics, show summary statistics of diagnostics, and more.
32710
Etienne Bacher @etiennebacher.bsky.social · 22/01/2026
#rstats tidypolars 0.16.0 is available! tidypolars provides the tidyverse syntax while using polars for better perf. This release: - support for unnest and separate functions (tidyr) - new interface to export partitioned output - and more News: www.tidypolars.etiennebacher.com/news/#tidypo...
tidypolars.etiennebacher.com
Changelog
1101
Etienne Bacher @etiennebacher.bsky.social · 20/01/2026
#rstats I've given a workshop a few days ago on handling large data (think tens to hundreds of millions of rows) with Polars in Python and in R. Here are my introductory slides: brussels-large-data-r-python.etiennebacher.com And the associated repo: github.com/etiennebache...
brussels-large-data-r-python.etiennebacher.com
Handling large data with R and Python
1197
Etienne Bacher @etiennebacher.bsky.social · 17/12/2025
#rstats Jarl 0.3.0 is available! Jarl is a very fast R linter, able to check and fix thousands of lines in milliseconds. New since 0.2.0: - 6 new rules - ignore automatically generated files by default - bug fixes and perf improvements All changes: jarl.etiennebacher.com/changelog
jarl.etiennebacher.com
changelog – jarl
061
Etienne Bacher @etiennebacher.bsky.social · 28/11/2025
#rstats Jarl 0.2.0 is available! Jarl is a very fast R linter, able to check and fix thousands of lines in milliseconds. New since initial release: - 10 new rules (incl. 5 opt-in rules for testthat) - 3 CLI args were renamed - bug fixes, docs improvements jarl.etiennebacher.com/changelog (1/3)
jarl.etiennebacher.com
changelog – jarl
281
Etienne Bacher @etiennebacher.bsky.social · 20/11/2025
#rstats Please welcome Jarl, a new R linter. Jarl is a CLI tool with extensions in VS Code, Positron, and Zed. It can check thousands of lines of R code in milliseconds. Jarl provides several output formats, a Github Actions workflow, and more. Blog post: www.etiennebacher.com/posts/2025-1...
98531
Etienne Bacher @etiennebacher.bsky.social · 03/11/2025
#rstats tidypolars 0.15.0 is available! tidypolars provides the tidyverse syntax while using polars for efficient computations. This release: - more support for string and date func. - two func. to export partitioned output - bug fixes Changelog: www.tidypolars.etiennebacher.com/news/#tidypo...
tidypolars.etiennebacher.com
Changelog
0133
Reposted by Etienne Bacher
Vincent Arel-Bundock @vincentab.bsky.social · 29/09/2025
{tinytable} 0.14.0 for #RStats makes it super easy to draw tables in html, tex, docx, typ, md & png. There are only a few functions to learn, but don't be fooled! Small 📦s can still be powerful. Check out the new gallery page for fun case studies. vincentarelbundock.github.io/tinytable/vi...
a table about lemurs a table about students and schoolsa table about wines
113438
Etienne Bacher @etiennebacher.bsky.social · 24/07/2025
#rstats tidypolars 0.14.0 is now available! tidypolars provides the tidyverse syntax while using polars for efficient computations in the background. This release brings compatibility with polars 1.0.0, released earlier this week, and several features and bug fixes. (1/2)
2205
Etienne Bacher @etiennebacher.bsky.social · 23/07/2025
#rstats polars 1.0.0 is now available! polars provides bindings to the eponymous Rust library, a very efficient dataframe library. This is the outcome of a 1-year long rewrite led by @eitsupi to refactor the internals and match the API of Python polars. pola-rs.github.io/r-polars/ Details ⬇️
pola-rs.github.io
Polars R Package
43411
Etienne Bacher @etiennebacher.bsky.social · 30/06/2025
#rstats {flir} 0.5.0 is now available! {flir} can detect and rewrite code patterns. This is the 1st CRAN release and has two nice features: - share custom rules across projects - show changes in Shiny app before applying them flir.etiennebacher.com/news/#flir-050 More details in the 🧵 (1/3)
flir.etiennebacher.com
Changelog
140
Reposted by Etienne Bacher
Laurent Bergé @lrberge.bsky.social · 20/06/2025
Just gave a presentation a the REGIS summer school we organised in Bordeaux. Algorithms for empirical research Slides and material here: github.com/lrberge/2025... The conclusion is that, even in the age of AI, using your brain is still relevant! #RStats #EconSky
1114
Etienne Bacher @etiennebacher.bsky.social · 02/06/2025
#rstats A few weeks ago I gave three R classes at Universitat Innsbruck: 1. Webscraping part 1: static webscraping 2. Webscraping part 2: dynamic webscraping 3. Handling large data with Python and R Details and links to the slides in the 🧵 (1/5)
1487
Etienne Bacher @etiennebacher.bsky.social · 23/05/2025
#rstats New post: Refactoring code with `flir` `flir` is a pkg I created last year, similar to `lintr` but faster and with automatic fixes. In this post, I explain how to extend it, for instance to replace superseded and deprecated functions in large projects www.etiennebacher.com/posts/2025-0...
etiennebacher.com
Etienne Bacher: Refactoring code with `flir`
How to efficiently rewrite many code patterns.
2289
Reposted by Etienne Bacher
Polars @pola.rs · 01/05/2025
Polars has gotten 4x faster than Polars! 🚀 In the last months, the team has worked incredibly hard on the new-streaming engine and the results pay off. It is incredibly fast, and beats the Polars in-memory engine by a factor of 4 on a 96vCPU machine.
4163
Reposted by Etienne Bacher
Vincent Arel-Bundock @vincentab.bsky.social · 10/04/2025
📚😅🎉 Yay!! I just submitted the complete manuscript of my upcoming book to the publisher! Learn to easily and clearly interpret (almost) any stats model w/ R or Python. Simple ideas, consistent workflow, powerful tools, detailed case studies. Read it for free @ marginaleffects.com #RStats #PyData
Model to Meaning: How to interpret statistical models with marginaleffects for R and Python
21596148
Etienne Bacher @etiennebacher.bsky.social · 10/03/2025
#rstats tidypolars 0.13.0 is available via R-universe! It brings some features and bug fixes, notably: - more support for functions from base R, lubridate, stringr - better errors/warnings when some args in a function are not supported Changelog: www.tidypolars.etiennebacher.com/news/#tidypo...
tidypolars.etiennebacher.com
Changelog
083
Etienne Bacher @etiennebacher.bsky.social · 24/02/2025
#rstats {flir} 0.3.0 is now available via R-universe! This version marks the renaming of the package. {flir} was named {flint} but a new package on CRAN now has this name, which could create confusion and namespace conflicts. {flir} stands for "Fix Lints In R": flir.etiennebacher.com/news/
flir.etiennebacher.com
Find and Fix Lints in R Code
Lints are code patterns that are not optimal because they are inefficient, forget corner cases, or less readable. flir provides a small set of functions to detect those lints and automatically fix the...
020
Reposted by Etienne Bacher
Davis Vaughan @davisvaughan.bsky.social · 21/02/2025
@lionelhenry.bsky.social and I are so excited to finally announce Air - an extremely fast R code formatter! 🎉 With Air, you'll never need to worry about styling your #rstats code ever again. All you need to do is save, and Air takes care of the rest. www.tidyverse.org/blog/2025/02...
tidyverse.org
Air, an extremely fast R formatter
We are thrilled to announce Air, a new R formatter.
20366121
Etienne Bacher @etiennebacher.bsky.social · 26/01/2025
Still open! #rstats #rshiny #biology #internship
143
Etienne Bacher @etiennebacher.bsky.social · 21/01/2025
#rstats {flint} 0.2.0 is now available via R-universe! {flint} is a pkg to quickly find lints and fix them automatically. In 0.2.0: * fix when several replacements targeted the same piece of code * adds a couple of new linters * removes some edge cases All changes: flint.etiennebacher.com/news/
041
Reposted by Etienne Bacher
Anatolii Tsyplenkov @anatolii.nz · 05/01/2025
🎉 New in Formalist for Positron IDE: Fix lints in #rstats code on demand! Select your code, hit a button, and let {flint} by @etiennebacher.bsky.social handle the rest. 🚀 Works on selected text only 🔧 Customizable with flint::setup_flint() 🌐 github.com/atsyplenkov/...
0163
Etienne Bacher @etiennebacher.bsky.social · 19/12/2024
#rstats #rshiny #biology #internship Internship offer for Master students: - make an R Shiny app to viz data from a large lit. review in marine biology - 6 mo., Brest, France, start March 2025 - R Shiny, SQL, Python No requirements in biology. CV and cover letter to send to contact in the file.
0106
Etienne Bacher @etiennebacher.bsky.social · 14/12/2024
Just arrived here to follow the growing #rstats community! As a first post, I thought I'd just reuse my latest one on Mastodon: {flint} is a package to detect and automatically fix lints in R code. It is also very fast and compatible with many {lintr} rules. More info: flint.etiennebacher.com
3112