James Balamuta

James Balamuta

@coatless.bsky.social

omnipresent explorer of the unknown, fashionably caffeinated informatics phd, amorous cavalier. design, build, analyze. #rstats on #macos + #webr and #python with #pyodide

1.2K followers16 following511 posts

View full thread

On iPad: File, Code, Run and View menus (hold Command to see them), plus Projects and History in the four-pane view. Everywhere: VoiceOver reads results and errors aloud, and the app respects larger text, reduced motion and higher contrast.

View full thread

Big tables open quickly and you can filter, sort and search them. The package list tells you what each package does, and your saved packages load several times faster.

R can reach the web now. Fetch live data with httr2 and chart it with ggplot2, right on your phone. By default that traffic goes through a small helper running on your own device, not through anyone else's server.

View full thread

Got an R script in your email? It opens straight into webRios now, from Mail, Files and other apps. CSV files too. The editor also stays quick on long scripts, with text sizes up to 30 pt.

The big one: a Stop button. Started a loop that never ends? Tap Stop, or press Command-period on a keyboard, and R stops right where it is. Your variables stay put. The old advice, "restart the app", is officially retired.

View full thread

No compute server sits behind the site. A static host hands out the files and the reader's browser does the computing, so GitHub Pages, Netlify, Cloudflare Pages or your own web server can publish it.

Five steps take a folder to a site. catalog() starts a collection, acquire_package() and acquire_file() fill it, bind() builds the site, reading_room() previews it, and circulate_via_github() sets up publishing on GitHub Pages. Watch it in 100 seconds. youtu.be/Ujoa-zBFKpY

View full thread

webRoid also now allows you to request a "Copy Files Back from R" to sync files to your folders. Plus, you can now tap an excel file opens Import Dataset, which reads Excel once readxl is installed.

One heads-up before you update... The new R version can’t load R packages installed by the old one. So, the app clears them the first time it opens. A notice lists them, and one tap on Reinstall brings back each one the webR repository has. R on PC requires the same when going from 4.5 to 4.6.

Starting in webRoid v1.1.1, you can restart R instead of restarting the app! After a minute, a banner says R is still working and offers a fresh session. Your variables in the current session will go away though and need to be redefined!

{Pyodios} v1.1.0 has been sent over to the App Store for approval. It includes a host of fixes, features, and a bump from Python v3.13 to v3.14. This requires iOS 26 or above. Once approved, we'll be pulling back the initial Pyodios v1.0.0 version to avoid it being available on iOS 17/18 devices.

View full thread

Every painter has a gpaint_*() twin that returns a real ggplot, so it works with ggsave() and patchwork() like other ggplot2 extension packages. Thus, you get the same drawing either way, in four palettes.

View full thread

show_indices = 'cell' stamps every matrix cell with the [row, column] that reaches it. Useful when the thing you are explaining is not the values but the addressing.

Formatting further aims to emphasize magnitude by showing significant figures, but the digits it drops go grey rather than vanishing, so 123456.789 still reads as a bold 123 with a faded 457 with decimals rounded if its a large number. NA is red. Inf is blue.

You already know a data frame is a list whose elements happen to share a length. Your students do not. paint_list() and paint_data_frame() draw the same card until one element changes length and the bottom edge goes ragged. That is the lesson, drawn.

What about the forthcoming quarto-hub.com that's moving into Release Candidate (RC) status for Quarto v2? c.f. bsky.app/profile/coat... github.com/quarto-dev/q...

github.comquarto-hub: track invitations centrally · Issue #344 · quarto-dev/q2"User X shares project Y with user Z" is a thing we could track in the same service that will track (user_id, project_set_automerge_id) tuples.
Hadley Wickham@hadley.nz

It’s the end of an era: we are sunsetting rpubs.com, quartopub.com, and shinyapps.io in favour of connect.posit.cloud. These services are important, but we need to focus our efforts on a single platform (and it’s overall less confusing to have one place to publish everything you do in R or Python).

{livelink} will also soon be expanded over to Python just after Pyodidarian launches as the later comes with a Pyodide powered Python enhanced 4-panel editor based off of webR's. #pyodide #livelink #python