Wasm で再現可能性を担保するツールとしての Shinylive

Shinylive は、R / Pythonウェブアプリケーションを作るためのフレームワーク Shiny をブラウザ上で完結して動くようにするツールです。 先日の Japan.R でもLTがあったりして、認知が広がってきているのかなと思います。

そんな Shinylive は「ウェブブラウザで面白いことができるよ」という文脈で語られることが多いですが、Tidyverse blog のリリース紹介記事を読んでいると「再現可能性を担保するツール」という力点で語られていて、面白い観点だなと思ったので軽く紹介します。

(以下、製薬業界について詳しくないので、私の理解や用語が間違っているところがあればご指摘ください...!)

続きを読む

Japan.R 2024 で「How To Craft A Blazingly Fast Graphics Device」というタイトルで発表してきました。

先週末に開催された Japan.R 2024 で10分枠で発表してきました。 久々の完全オフライン開催ということで、運営もいろいろ大変だったと思います。運営のみなさま、そして会場係をされていた方々、ありがとうございました。

スライドは Quarto Pub で公開しています。

話すのは日本語だと決めていたんですが、スライドを日本語にするか英語にするかは迷いました。 聴衆はたぶんほぼすべて日本語分かる人なので日本語か?と思ったものの、英語にしとくと英語圏にも資料を公開できるので便利かも、ということで英語にしてみました。 英語でわかりづらかった、という人がいたらすみません。

続きを読む

Rust .Tokyo reject con 2024 で「R から Rust を使うには」というタイトルで LT してきました。

というだけの内容なんですけど、ブログに書かないとスライドどこに行ったか分からなくなってしまうと思ったので。。 これがそのスライドです。 申し込みのときは「savvy の紹介」としてたんですけど、R 使ってる人いなさそうだしもうちょっと周辺事情を話そう、という方向に舵を切りました。

自分ごときが Rust のことを話していいんだろうか...、とおそるおそる発表しに行ったんですが、あたたかく聞いてもらえてありがたかったです。 ありがとうございました! Rust.Tokyo 本番も楽しみです。

savvy 0.8.0 をリリースしました。

「savvy とは?」という資料をそもそも日本語で書いてないことに気づいたんですが、とりあえず宣伝にリリースのブログを書きます。 savvy は、R のパッケージの中で Rust を使うためのフレームワークです。

続きを読む

Rust と WebGPU で R のグラフィックデバイスをつくる(2 年ぶり 2 度目)

ドーモ、無職です。

「さいきん何やってるの?」という質問に対して、端的に答えるにはちょっとマニアックすぎることをやっていて説明に困ることが多く、ちょっと整理も兼ねてブログを書きます。 vellogd という R のグラフィックデバイスをつくっています。

続きを読む

R から winit を使いたい、あるいは winit を main thread 以外で使うには

あとで書き直すかも。いったん「これでいけそう」という方針が決まってきたので、自分の中での整理も兼ねて書きます。

続きを読む

string2path パッケージで COLRv1 絵文字フォントを読めるようになりました

string2path は、文字列のアウトラインをプロット可能なデータフレームに変換する R パッケージです。

これは ttf-parser という Rust のライブラリを使っているのですが、パッケージのメンテナンスついでにバージョン上げておくかと思って CHANGELOG を確認していると、COLRv1 絵文字フォントを読めるようになっていることに気付きました。 ということで、せっかくなので対応させてみました。

こんな感じです。

library(string2path)

# COLRv1 フォント(後述)
ttf <- "~/Downloads/NotoColorEmoji-Regular.ttf"

d <- string2fill("👺", ttf)

ggplot(d) +
  geom_polygon(aes(x, y, group = triangle_id, fill = color)) +
  coord_equal() +
  theme_minimal() +
  scale_fill_identity() +
  ggtitle("判断が遅い")

続きを読む