Subakoを支えるRustコード アーキテクチャについて
H1rono_Kと申します。9/11にKikuviからリリースされたSubakoについて、その実装コード アーキテクチャを紹介します。 Subakoとは 紹介動画: https://youtu.be/Vpt5voDm1j8?si=-RQ
Zennのトピック「Rust」のRSSフィードです
H1rono_Kと申します。9/11にKikuviからリリースされたSubakoについて、その実装コード アーキテクチャを紹介します。 Subakoとは 紹介動画: https://youtu.be/Vpt5voDm1j8?si=-RQ
PCで作業中、「25分後にお茶を入れる」「明日15時にミーティング」といったちょっとしたリマインダーを設定したいこと、ありますよね。 これまではターミナルで手軽に済ませることが多かったです。 (sleep 25m && notify-sen
AIエージェントに設計書を書かせることが増えました。書かせて終わりではなく、読んで、直させて、また読みます。 そのたびにエディタのプレビューへ切り替え、読み終えたらターミナルへ戻っていました。 この往復をなくしたくて、設計書をエージェントの
はじめに 自作の帳票エンジン(Rust + Skia)のコマンドライン版を、次の6プラットフォーム向けにビルドして GitHub の Release で配布した。 OS CPU 配布 ZIP 名(例) Windows x64
対象版:Wasefire release/2026-02-10(commit 0c476b10ff3c7bc8237718afdd2c98895f6b8dc3)。主要コンポーネント:wasefire 0.8.1、wasefire-sched
日本の会社で働いていると、一度は受け取ったことがある .xdw ファイル。無料の DocuWorks Viewer Light で見ることはできますが、付箋を1枚貼ったり日付印を1つ押したりするには DocuWorks 本体(1ライセンス
1. 導入 Rustで高速な並列リングバッファを作ってみました。具体的にこのバッファは以下のような特徴を持ちます。 wait-free: Writerは常にwait-free(手順が必ず有限ステップで完了する)に書き込めます(ただし、at
対象は RTIC リポジトリの commit 80f64ef1a973e9668b1a5c9055a167b225ac149b です。rtic と rtic-macros のパッケージ版は2.3.1ですが、リリース後の変更を含みます。比較対
はじめに Meetily(会議の録音、文字起こし、要約をすべてPCの中で行うオープンソースの会議アシスタント)のコードを読みました。Windows版のMeetilyは、会議アプリやブラウザが再生している音を「WASAPIのループバック」(P
「このユーザーは、どこまで権限を上げられるのか」を、端末の設定から洗い出してくれる分析ツールPathScopeを作りました。MacとLinuxの端末で動いて、一般のユーザーからrootや機密データに届く道を「経路」として出し、どこから直すと
はじめに 第1弾では、Rust 製描画エンジンを Windows / macOS / Linux × x86_64 / ARM64 の6通りで実機ビルドする構成を紹介しました。今回はその中の ARM について、Windows ARM 機1台
Rust 1.98のalgebraic_addを使うかどうかは、「少しくらい誤差が出てもよいか」だけでは決めません。見るべきなのは、コンパイラによる演算の再順序化を、その計算の契約として許せるかです。 私なら、結果のビット列や後段の分岐に再
はじめに AI に文章を書いてもらったあと、「意味は通るけど、この言い回しは自分では使わないな」と感じることはありませんか? 「と言えるでしょう」で段落を締め、「このように」で次の説明につなぐ。ひとつずつなら気にならなくても、繰り返されると
コーディングエージェントを4つ、別々のペインで走らせているとする。仕様変更のリファクタを1つ、テスト書きを1つ、ログ調査を1つ、依存の更新を1つ。少し目を離してSlackに返信して戻ってくると、画面の前でひとつ問いが浮かぶ。「今、どれが俺の
! 以下は2026年10月2日に公式ドキュメント等を確認した内容です。 特に rc 版のAPIや対応バージョンは変わるため、 導入時には使用するバージョンのドキュメントを確認してください。 specta とは 概要 specta
OSSのPRを長期戦にしていると、レビュアーから「rebaseして履歴を整理してほしい」と言われ、さらにそれが「merge commitsを外してsquashしてほしい」に変わることがあります。著者は uutils/coreutils の
はじめに 個人開発しているRust製の強化学習フレームワーク、ReinforceXにPythonから学習させるためのFFIを整備したので、今回はその設計と実際に学習させてみた結果を紹介します。 前回の記事では、RustからGymnasium
Keyroアカデミー|機能ガイド 「IMEの中身って、触ったらWindowsに怒られそう」 分かります。日本語入力は毎日使うのに、その内部は驚くほど見えません。変換候補が出るのは一瞬。でも、その裏ではキーボード入力、Windowsのテキスト
文字起こしの「0:14」を押したら、その発言を聞き直せる。録音ファイルの14秒へ移動すればよさそうですが、Besideの履歴再生では、それだけでは合いませんでした。 あるMacでの検証では、文字起こし側の14.817秒に対応する音が、録音フ
きっかけ Googleが公開した記事によると、Gemini(AI)を使ってgiflib(約3,000行のC製GIF処理ライブラリ)を ABI互換のRust実装に書き換え、差分ファジングで検証したという事例が紹介されていた。 出典: htt
Dドライブの空き容量を見たら、9.9GBしか残っていませんでした。 正直、ぎょっとしました。何かのログが暴走したのか、変なファイルをダウンロードしっぱなしにしていたのか。掘る前は、そのどちらかだろうと思っていました。 ! 結論から書くと、犯
前回の記事では、Rustが安定したABIを持たないことの実害と、それに対するRust公式の実験的な取り組みであるcrABIを紹介しました。 Rustの安定ABI問題と、その先にある世界観 ── crABIが目指すもの 今回はその一歩手前にあ
LLMを使うタスクには、短い文章の整形から、長文の要約、画像の読み取り、複雑な設計・コーディングまで幅があります。これらを毎回同じモデルに送ると、軽い仕事にも高価なモデルを使ったり、逆に難しい仕事を小さなモデルへ送ったりします。 そこで、リ
ファイルシステムを作ろうと思う。やり方はあまりまともじゃないかもしれない。ただ、何か書き残しておいたほうがいい気がした。とはいえ、このシリーズで技術的な話はほとんどできないと思う。 シリーズの最初なので、乏しい知識でファイルシステムの基本概
Claude CodeやCursorのようなAIエージェントに開発を任せると、APIキーの扱いに困ります。 .envに平文で置くと、エージェントがファイルを読んだ時点で会話の履歴に入ります。 環境変数で渡しても、エージェントがenvやデ
Angular開発チームから新しい計画が発表された。TypeScript 7への対応のためにAngularコンパイラをRustで書き直すというものだ。 https://x.com/angular/status/210460203391952
日本語の音声作品(ボイスドラマ・ASMR など)をフォルダごと読み込んでライブラリにし、PC の中だけで文字起こしと翻訳をして字幕を出すデスクトップアプリ「Local Media」を個人で作っています(macOS / Windows)。 処
私が Rust で実装して公開している Unix-like OS「octox」が、サンフランシスコ大学(University of San Francisco)の授業で教材として使用されていることが分かりました。 octox 専用のガイドが
Cloudflare Birthday Week 2026 が始まりました!Cloudflare の16周年にあわせたさまざまな発表が行われる1週間です。 この記事では Day1 の発表内容をまとめていきます! 公式な情報が見たい方は以下で
VRChatを遊んでいると、 「このワールド、前に行ったことあったっけ?」 となることがあります。 VRChatにはお気に入り機能がありますが、「実際にどのワールドへ行ったか」を自分のサービス側で記録したい場合、別途訪問履歴を取得する仕組み
nginx のモジュールを Rust で書いていて、Apple Silicon のマシンでだけ挙動が変わる現象に当たりました。原因は bindgen が生成した構造体のビットフィールドが、C コンパイラの配置と 2 ビットずれていたためでし
外部ソートは、入力がメモリに収まらないとソート済みの一時ファイル(spill file)を書き出し、最後にそれらをマージします。この一時ファイルへの書き込みが失敗したとき、コマンドはエラー終了すべきであり、unwrap() によるpanic
WordPressで業務アプリを運用していたとき、バックエンドとフロントエンドが一蓮托生になり、同じサーバーのリソースを圧迫していました。普段から約80%、ピーク時には約110%という表示。テーブルデータの集計や計算も重く、処理の置き場所を
nginx のモジュールを Rust で書くための実践ガイド。ngx-rust を使い、設定ディレクティブの受け取りから 共有メモリでの集計、Prometheus 形式での出力、Test::Nginx による統合テストまで、実用モジュールを
こんにちは、カウシェの塚本こと、つかびー(@tsukaby0) です。 前回は Shopify app の作り方とリリースの話を書きました。 https://zenn.dev/kauche/articles/78cef0eb9e4193 今
自作しているセキュリティアプリ(RoamSwitch)のBadUSBガードは、未承認のキーボード(BadUSBのように振る舞う不審なHIDデバイス)からの入力を止める機能を持っている。最初のバージョンは、USBデバイスをUSBサブシステムの
Rustで競プロをしていると、こんな感じの早期 break / continue / return を使うときが多いです。 しかし、rustfmt等のフォーマッタに流すと改行されて見づらくなります。 // こうしたい if hoge { b
AI がどうにもまともなコードを生成しないので詰めていると、「SOLID 原則とか曖昧でちょっと・・・」と言われました。 その辺り諸々あるんですが、ココではその前段として型システムと責務について纏めます。 以下断定的に書いていますが、そう
この記事の3行要約 Claude Code のクラウドセッションに計画だけ渡して、Rust + wasm のペイントソフトを作りました。PC 版が約 2 時間、スマホ・タブレット対応が約 45 分で、使ったのは無料クレジットのうち $60
はじめに この記事は、他の言語でもよく扱いに困るCSVの読み書きを、Rustではどう書くのかと考えたときの記録である。 CSVは大容量のデータを相手にすることが多い。そのため前提として、メモリに載る量のデータではなく、1行ずつ処理するストリ