James Goldie's Avatar

James Goldie

@jamesgoldie.dev.bsky.social

Data engineer @ countercurrent.ai, former #climatehealth ๐ŸŒก๏ธ + #datajournalism ๐Ÿ—บ๏ธ Building, coding and storytelling with #rstats, #js and #swift for fun and for good ๐Ÿ˜Š

592 Followers  |  568 Following  |  131 Posts  |  Joined: 01.09.2024  |  1.8953

Latest posts by jamesgoldie.dev on Bluesky

100% agree + #RStats WebR works in Notebooks 2.0 & Desktop!

I went into some detail abt Notebooks & Desktop this past week: dailydrop.hrbrmstr.dev/2025/07/31/d...

02.08.2025 11:05 โ€” ๐Ÿ‘ 17    ๐Ÿ” 7    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 1

I feel like a round-trip with Google Colab could be the go!

30.07.2025 08:34 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

It's been a while since I last shared my starter pack

If you're a stats/data person in or from the Pacific region (not just Australia or Aotearoa) and would like to be included, please let me know!

#statssky #episky #databs #rstats #python

27.07.2025 23:12 โ€” ๐Ÿ‘ 23    ๐Ÿ” 11    ๐Ÿ’ฌ 8    ๐Ÿ“Œ 0

Two days later www.theguardian.com/world/2025/j...

25.07.2025 23:28 โ€” ๐Ÿ‘ 16    ๐Ÿ” 16    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

100% agree! I say it more to illustrate that I do recall pak binary versions of packages on Linux, at least the way it was configured on this image. Iโ€™m not sure why it didnโ€™t for you. Thanks for engaging with us all in this topic, btw!

23.07.2025 21:24 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Unfortunately donโ€™t have the bandwidth for it (and wonโ€™t for a while), but Iโ€™m there with you in spirit!

23.07.2025 12:03 โ€” ๐Ÿ‘ 0    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Glad to hear it! FWIW when I was regularly doing reproducible analysis in arm64 Linux dev containers a couple years ago, pak pulled down binaries no problem. (I also didnโ€™t have the patience for 10 minute Docker builds every time a package dep changed ๐Ÿ˜…)

23.07.2025 06:43 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
System requirements โ€” System requirements pak takes care of your system requirements.

I could also be wrong about this, but to loop back to your comment about pak not installing system reqs, I understand thereโ€™s some permissioning fine print there: pak.r-lib.org/reference/sy...

23.07.2025 04:38 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Check the multiverse out for reliable reproducibility! R-universe started out more to automate builds for package devs

23.07.2025 04:34 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

(That being said, usually I run a dev container and have renv or pak install from a lock file anyway!)

23.07.2025 04:20 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

The โ€œcommunityโ€ multiverse channel is more of a free for all, but its โ€œproductionโ€ channel aims to keep the CRAN dependency standards. This might address your โ€œwhy do I need to install a package to install other packages?โ€ question, and I think they have potential to be a future default!

23.07.2025 04:20 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

R-universe.dev does CI/CD package builds as personal indexes. R-multiverse.dev brings all the R-universes into one index from what I understand.

23.07.2025 04:20 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

One big plus of Rโ€™s default package index, CRAN, is that they screen all published packages to ensure they work together at any given point in time. It puts some extra stress on package devs but makes reproducibility a lot easier for package users.

23.07.2025 04:20 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I see youโ€™re already getting a lot of replies, so this mightโ€™ve already been covered, but also check out r-universe.dev and r-multiverse.org! (1/5)

23.07.2025 04:20 โ€” ๐Ÿ‘ 2    ๐Ÿ” 1    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I would call myself a professional pessimist and "extremely depressed about the future" but god, please stop going into people's mentions to tell them that the law/courts no longer matter or post "AND YOU'RE SURPRISED???" at them, especially so if they are actively engaged in making the world better

12.07.2025 01:38 โ€” ๐Ÿ‘ 7485    ๐Ÿ” 853    ๐Ÿ’ฌ 120    ๐Ÿ“Œ 72
Preview
CounterCurrent With cutting-edge AI forecasts, your vessels can harness ocean currents to save fuel and cut emissions.

Absolutely blown away that my colleagues and I at CounterCurrent, along with the folks at Rainstick, are the first Aussie winners of AWS + IRCAI's Compute for Climate Fellowship. I'm super excited about the work we're doing ๐Ÿฅณ countercurrent.ai/news/2025-07...

10.07.2025 13:39 โ€” ๐Ÿ‘ 4    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Screenshot of webR REPL in a web browser showing R code for creating a scatter plot analyzing car weight vs fuel efficiency. The left panel contains ggplot2 code using the mtcars dataset, with points colored by cylinder count and a trend line. The right panel displays the resulting scatter plot with a clear negative correlation between weight and MPG. A modal dialog box is overlaid in the center showing "Share URL (765 bytes)" with a long encoded URL and a blue "Copy URL" button, demonstrating the new share link feature.

Screenshot of webR REPL in a web browser showing R code for creating a scatter plot analyzing car weight vs fuel efficiency. The left panel contains ggplot2 code using the mtcars dataset, with points colored by cylinder count and a trend line. The right panel displays the resulting scatter plot with a clear negative correlation between weight and MPG. A modal dialog box is overlaid in the center showing "Share URL (765 bytes)" with a long encoded URL and a blue "Copy URL" button, demonstrating the new share link feature.

Screenshot of the same webR REPL interface after the share dialog has been closed. The left panel shows the same R code for the car efficiency analysis, and the right panel displays the identical scatter plot visualization. The console output shows package loading messages and the correlation result (-0.868). This demonstrates the clean interface without the share modal overlay.

Screenshot of the same webR REPL interface after the share dialog has been closed. The left panel shows the same R code for the car efficiency analysis, and the right panel displays the identical scatter plot visualization. The console output shows package loading messages and the correlation result (-0.868). This demonstrates the clean interface without the share modal overlay.

#webR now has shareable links! Just like #Shinylive's editor, you can instantly share #rstats code snippets with colleagues.

Thanks to @gws.phd (webR creator) for adding this awesome feature to webR Latest (0.5.4-dev)!

Try it out with this demo snippet: webr.r-wasm.org/latest/#code...

07.07.2025 23:45 โ€” ๐Ÿ‘ 21    ๐Ÿ” 6    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0

So as a mea culpa for breaking DRY coding principles, here is a little write up of less well known but incredibly useful purrr function; partial()

Let's see an applied example in how to create a function factory

Let's get started!

#rstats

1/n

07.07.2025 02:16 โ€” ๐Ÿ‘ 8    ๐Ÿ” 3    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

10/10 recommend giving OJS a try, especially as itโ€™s built into Quarto!

30.06.2025 12:08 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Plain text table: duckdb -c "select user, id, completed from 'todos.json' limit 5"

Plain text table: duckdb -c "select user, id, completed from 'todos.json' limit 5"

Markdown table: duckdb --markdown \
  -c "select user, id, completed from 'todos.json' limit 5"

Markdown table: duckdb --markdown \ -c "select user, id, completed from 'todos.json' limit 5"

CSV export: duckdb --csv \
  -c "select user, id, completed from 'todos.json' limit 5"

CSV export: duckdb --csv \ -c "select user, id, completed from 'todos.json' limit 5"

HTML table fragment: duckdb --html \
  -c "select user, id, completed from 'todos.json' limit 5"

HTML table fragment: duckdb --html \ -c "select user, id, completed from 'todos.json' limit 5"

Flags like --csv, --json, --html, --markdown, --latex, etc. make @duckdb.org feel like Pandoc for data. Lots of quick data tasks that would either require a dedicated tool or a small #rstats or #python script end up being quick one-liners: duckdb.org/docs/stable/...

30.06.2025 07:03 โ€” ๐Ÿ‘ 11    ๐Ÿ” 2    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

One small feature of @duckdb.org that I really love is the flexibility of its CLI. It's amazing enough that Duck can read and write CSV, JSON, Excel, Parquet and a heap of other formats so portably, but the CLI flags for output format let it replace a wide set of CLI tools.

30.06.2025 07:03 โ€” ๐Ÿ‘ 8    ๐Ÿ” 2    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

The Quarto team are pretty serious about backwards compatibility โ€” Iโ€™d probably expect R packages to be more of a source of breaking changes tbh!

29.06.2025 23:25 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Can you make a copy of the action, change the Quarto version and deploy it to a different domain (or donโ€™t even deploy it, just see whether the build succeeds)?

29.06.2025 22:49 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Keep an eye on your gas bills โ€” when we got induction cooking, our gas use fell similarly, but a couple of estimated bills led to us being overcharged like $150!

27.06.2025 23:43 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Two dark-themed line charts showing daily IP activity from Turkmenistan and Tanzania, used to visualize source volatilityโ€”how erratic daily IP counts are. The Turkmenistan chart shows a volatility score of 1.665 with โ€œunknownโ€ intention, and the Tanzania chart a 1.441 score marked as โ€œmaliciousโ€ (in red). Both show a spike in early June, well above a dotted horizontal line representing average daily activity. Labels explain that higher volatility means more erratic IP activity.

Two dark-themed line charts showing daily IP activity from Turkmenistan and Tanzania, used to visualize source volatilityโ€”how erratic daily IP counts are. The Turkmenistan chart shows a volatility score of 1.665 with โ€œunknownโ€ intention, and the Tanzania chart a 1.441 score marked as โ€œmaliciousโ€ (in red). Both show a spike in early June, well above a dotted horizontal line representing average daily activity. Labels explain that higher volatility means more erratic IP activity.

I rly hope @observablehq.com Plot never goes away (along with Framework). It makes dashboarding so stupid easy.

Just added some new things to the internal alpha site before we put this up as another Viz Experiment.

18.06.2025 18:04 โ€” ๐Ÿ‘ 5    ๐Ÿ” 3    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Preview
GitHub - jimjam-slam/quarto-svelte: Formerly Sverto. Add Svelte components to your Quarto documents Formerly Sverto. Add Svelte components to your Quarto documents - jimjam-slam/quarto-svelte

Sverto is now quarto-svelte!

But that's not all โ€” there's a new release of quarto-svelte, with Svelte 5 support! The release is packed with bug fixes and is easier to use than ever! #Svelte + @quarto.org = ๐Ÿคฏ

github.com/jimjam-slam/...
#quarto #quartopub

12.06.2025 10:48 โ€” ๐Ÿ‘ 10    ๐Ÿ” 3    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Daily News: R-devel/NEWS

R's graphics engine is getting variable font support! #RStats developer.r-project.org/blosxom.cgi/...

11.06.2025 07:45 โ€” ๐Ÿ‘ 12    ๐Ÿ” 4    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Testing out iPadOS 26 and Iโ€™m seriously considering switching on extra contrast. The glass is pretty but really adds a lot of detail that feels like it increases cognitive load ๐Ÿ˜ฎโ€๐Ÿ’จ

10.06.2025 23:07 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Using `make` to compile C programs (for non-C-programmers) jvns.ca/blog/2025/06...

10.06.2025 20:35 โ€” ๐Ÿ‘ 97    ๐Ÿ” 16    ๐Ÿ’ฌ 6    ๐Ÿ“Œ 1

Thanks Julia, this is super useful!

10.06.2025 22:00 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

@jamesgoldie.dev is following 20 prominent accounts