← ホームに戻る27 件のニュース
Anthropic Outage for Opus 4.5 and Sonnet 4/4.5 across all services

Anthropic Outage for Opus 4.5 and Sonnet 4/4.5 across all services

## Japanese Translation: アノマリーは複数のAnthropicサービスに影響を与え、特にSonnet 4.0、Sonnet 4.5、およびOpus 4.5モデルが対象でした。事件は2025年12月14日21:31(UTC)に初めて報告され、同日の21:46(UTC)に調査更新が行われました。この更新で問題は該当するモデルバージョンに起因することが確認されました。影響範囲は複数のAnthropicプラットフォームに及びます——claude.ai、platform.claude.com(旧console.anthropic.com)、Claude API(api.anthropic.com)およびClaude Codeです。タイムラインや次のステップについてはまだ発表されていません。

2025/12/15 6:53
Hashcards: A plain-text spaced repetition system

Hashcards: A plain-text spaced repetition system

## Japanese Translation: Hashcards は、すべてのフラッシュカードデータをプレーンマークダウンファイル(例:`Cards/Math.md` や `Chemistry.md`)として保持する軽量でローカル優先のスペースドリピテーションアプリです。ウェブ UI を起動すると (`hashcards drill <path>` が `localhost:8000` を開く)、レビュー履歴は SQLite データベースに保存されますが、カード自体は Git に対応し続けます。各カードはテキストのハッシュでコンテンツアドレス化されているためです。インターフェイスは作成をスムーズにすることを優先しており、クローズ削除は Mochi の冗長な `{{ }}` ではなく `[ ]` を使い、単一行ブロック(例:`Q: … A:` や `C: …`)でカードを定義します。 著者は Anki の煩雑な UI、“すべて期限切れを学習” ボタンの欠如、WYSIWYG エディティング、そして不安定なプラグインサポートを批判しています。Mochi は過度に冗長なクローズ構文、ノートタイプ自動化がないこと、および長期的には性能が劣る単純な倍率ベースのスケジューラーという欠点があります。Hashcards はこれらの痛みを解消し、最小限の摩擦、最適なスケジューリングのための高度な FSRS アルゴリズム、および任意のエディタや Unix ユーティリティ(例:`wc`、`awk`)でカードを編集できる機能を提供します。デッキは Git でバージョン管理・ブランチ化・マージが可能で、サードパーティサービスなしにユーザーがデータを完全にコントロールできます。 将来的には CSV ベースのカードインポート、Python で書かれたノートタイプロジック、および Git 主導の共有ワークフロー拡張をロードマップに含めています。これらの機能は協力を容易にし、コンテンツ生成を自動化するとともに、開発者が Hashcards を自身のプロジェクトへ拡張できるようにし、オープンソーススペースドリピテーション エコシステムを形成する可能性があります。

2025/12/15 1:55
JSDoc is TypeScript

JSDoc is TypeScript

## Japanese Translation: > この文章は、JavaScript で JSDoc ベースの型付けを「TypeScript」と同様に扱えると主張しています。理由として、TypeScript の言語サービスがこれらのコメントを解釈し、プレーンな `.js` ファイルでも VS Code の IntelliSense を動かすためです。この議論は、2023 年 5 月に Hacker News に投稿された Svelte のリファクタリングに遡ります。Rich Harris は、型宣言を JSDoc に移すことは「TypeScript に反対する」立場ではなく、単なる別のアプローチだと説明しています。その後、多くのブログ記事が続き、JSDoc がビルドステップなしで TypeScript の全メリットを提供すると主張しました。 > > 著者は古いフロントエンドを JSDoc だけで書き直すことでこの手法を実証しています。ほとんどの TS 機能は表現可能ですが、ランタイム列挙型は除外され、ジェネリクスは冗長になるものの推論が向上することに注意しています。JSDoc 型付きパッケージでは、CTRL/CMD クリックで別の `.d.ts` ファイルではなくソースコードへジャンプできます。TypeScript ツール(例:OpenAPI/GraphQL タイプジェネレーター)は、`.ts` ファイルではなく JSDoc コメントとして型を出力するように設定可能です。また記事は Microsoft の初期 ScriptSharp 作業や TS における列挙型の歴史にも触れ、TypeScript の学習曲線が膨大な変更ログドキュメントから来ていることを指摘しています。将来的には、JSDoc だけで型付けする採用が広がれば、ツールチェーンはコメントベースの型を優先し、別途 `.ts` ファイルの必要性が減り、JavaScript チームにとってツールコストが低下すると著者は予測しています。

2025/12/15 4:42
Do dyslexia fonts work? (2022)

Do dyslexia fonts work? (2022)

## 日本語訳: (以下は日本語訳です) 記事は、ディスレクシアの「支援」製品がほとんど効果的でないと主張しています。なぜなら、ディスレクシアは視覚障害ではなく言語ベースの障害だからです。サミュエル・オートン(Samuel Orton)が1927年に文字逆転を観察したことから始まった初期理論は、プリズム、色付き眼鏡、カラーフィルター、OpenDyslexicやDyslexieなどの特殊フォントといった市場を生み出しました。しかし、イェール大学センターのデータによれば、ディスレクシアは子どものおよそ5人に1人が影響を受ける主要な言語処理問題であり、視覚的な問題ではありません。2017年の研究では、OpenDyslexicフォントがArialやTimes New Romanと比べて読み速度と正確性を低下させたことが示されました。さらに2018年の調査では、Dyslexieは標準フォントに対して優位性がなく、学生は主流のフォントを好みました。国際ディスレクシア協会(IDA)と英国ディスレクシア協会は、視覚ベースの神話を否定し、エビデンスに基づく音韻指導、多感覚的アプローチ、およびオーディオブック、ノート取りアプリ、動画録画、テキスト読み上げソフトウェアなどのクラスルーム補助機器を推奨しています。彼らは、読みやすさを高めるためにArial、Verdana、Tahoma(12–14 pt)と明確な見出しを使用することを勧告します。 **主要メッセージ:** エビデンスに基づく音韻指導と多感覚的教育がディスレクシア学習者を支援する最も効果的な方法であり、特殊フォントや色付きレンズなどの視覚的「修正」は実証的根拠がありません。

2025/12/15 4:41
The Typeframe PX-88 Portable Computing System

The Typeframe PX-88 Portable Computing System

## Japanese Translation: --- ## Summary Typeframe PX‑88 Portable Computing System は、コンパクトで「スタックド・デッキ」型のデバイスであり、強力な性能とユーザーに優しい設計を融合しています。Raspberry Pi 4 B を動力源としており、ウェブベースのエディタやその他の計算集約的タスクも処理可能です。機械式キーボードは、ほとんどのコンシューマー製品より優れた触感入力を提供し、筐体はシンプルな構造と最小限のはんだ付けで信頼性と組み立ての容易さを実現しています。ユニット内部のコンポーネントはスライド式アクセスパネルからアクセスできるため、迅速なメンテナンスが可能です。 PX‑88 はサイバー・デッキ(ハッキングやネットワーキングツール向け)と長文執筆用のライターデッキの両方として市場に投入されており、多目的スタックド・デッキへのトレンドを反映しています。Typeframe は、高品質な入力とコア性能が結合した、ポータブルでプロフェッショナルなコンピュータとして位置付けています

2025/12/15 2:43
Developing a food-safe finish for my wooden spoons

Developing a food-safe finish for my wooden spoons

## Japanese Translation: 著者は、2日以内に硬化し、食品安全で溶剤フリーかつ疎水性を保ちつつ、見た目も良い木材仕上げを作ることを目指しました。純粋なチュン油は2〜4週間後にしか安全にならず、ポリマー化されたチュン油は数日で硬化できますが入手しにくく、柑橘油やD‑リモネンで希釈する必要があります。その他の天然仕上げ(亜麻仁油、エポキシ、食用油)は黄ばみ、味が悪い、または耐熱性が不足します。 著者は3種類の硬いワックスブレンドを試しました。 - **実験 #1**:40 g チュン油 + 10 g カルナウバワックス – 硬くてペースト状、マット仕上げ。 - **実験 #2**:7 g カルナウバ、2 g 蜜蝋、1 g ラノリンを追加 – 柔らかく塗りやすい、「ナッツ‑バニラ‑ハニー」香り。 - **実験 #3**(最終配合):50 g チュン油 + 10 g カルナウバ + 2 g 蜜蝋 + 2 g ラノリン + 3 g ダマール樹脂 + 5 g ココナッツオイル + 2滴 MnZrCa ドライヤー + 2 g ビタミンE。約48時間で硬化し、サテンのような光沢を発し、食品安全基準を満たしました。 完成品は現在ルーマニアでオンライン販売されており、速く、溶剤フリーで水を弾くコーティングが必要なホビイストや小規模木工職人向けです。著者は、このハードワックスオイルがOsmo Polyx OilやRubio Monocoatなどのブランドと競合し、安全かつ高速な代替品として、優れた色保持性と耐久性を維持していると述べています。

2025/12/11 6:44
AI and the ironies of automation – Part 2

AI and the ironies of automation – Part 2

## Japanese Translation: > **改訂要約:** > 本稿では、現代のAIエージェント艦隊には、新しいタイプの人間監視が必要であると主張しています。すなわち、高速かつ能動的で戦略的に訓練された監視体制が求められ、従来の自動化では見逃される稀少かつ高影響度のエラーを検知するためです。Bainbridge の 1983 年の産業制御ステーション研究を引用し、人間は長期的な AI 計画における深い誤りを発見できず、出力を迅速に解釈できないと効率が低下することを示しています。ストレスや緊急性は分析能力をさらに削減するため、オペレーターは予期しない障害に対しても巧みに介入できるよう訓練されなければならない。産業制御システムは破滅的エラーが高コストになるため、迅速応答インターフェースを採用しています。一方、AI エージェントは長時間にわたり自信満々の計画を生成し、人間を圧倒します。記事では、「人工支援」や「アラーム・オン・アラーム」を稀な事象に対して提案し、より一般的な戦略シミュレーター訓練(可能なら実務経験も含む)と、受動的監視から能動的な指揮権への転換を推奨しています。多くの現在の艦隊リーダーは正式なリーダーシップ研修が不足しており、戦略的ガイダンスではなくチューニングに頼っていること、そして最も優れた AI システムほどオペレーターへの投資が大きいという逆説を指摘しています。これは Bainsbridge の「時間圧力が人間の問題解決を妨げる」という発見で強調されています。これらの変化は、AI エージェントに対する信頼を高め、安全基準を向上させ、高リスク自動化環境における採用・訓練慣行を再構築する可能性があります。

2025/12/14 22:19
Checkers Arcade

Checkers Arcade

## Japanese Translation: (revised version)** この記事では、ホビー愛好家が通常のアメリカ式チェッカー盤を数枚の安価なトークンや駒だけで多用途のゲームセットに変えることができる、低価格の「Checkers Arcade」キットに焦点を当てています。キットはほんの数ドルで購入でき、印刷しやすいルールブックが付属しています。このキットでは同じ盤上でプレイ可能な8種類のゲームが用意されています: | ゲーム | プレイヤー | 決定ホライズン | プレイ時間 | 主要アイデア | |------|-----------|-----------------|------------|--------------| | Ricochet Roombas | 2–4 | ローカル | 約10分 | ゴールディスク上にロボット掃除機を見つけて止めた方が勝ち。 | | Checkers Go‑Moku | 2 | ローカル | 10–15分 | 五つの連続ラインを作った後、相手の駒を残り4枚までしか捕獲できない。 | | Halma | 2 | ローカル | 10–15分 | 自分のすべての駒を相手側のスタートゾーンに移動させる。 | | Squava | 3 | 即時 | 10–15分 | 四つ連続ラインを作るか、残り二人のプレイヤーを排除する;三つ連続ラインになると自分が消滅。 | | Hobbit Checkers | 2 | ローカル | 10–20分 | ホビットとレンジャーを制御し、レンジャーはスタック上を飛び越えて捕獲できる。羽根が追加されるとさらに駒が増える。 | | Vault | 2 | ローカル | 10–20分 | 相手のホームラインに到達するか、全移動をブロックして勝利。 | | Breakthrough | 2 | ローカル | 10–20分 | 最初に相手のホームラインへディスクを移動させることが目的。 | | Lines of Action | 2 | 遠距離 | 15+分 | 自分のすべての駒を一つの連続したグループに接続する。 | | Bashni | 2(または 2–4) | 遠距離 | 20+分 | 捕獲は必須で、相手側ホームラインへ入ると兵士が将校になる。捕獲チェーンも許可される。 | このキットは、ルールブックをダウンロードした後にゲームを追加・変更できるようにすることで、創造性を促進し、ボードゲームのバリエーションを拡張するためのコストパフォーマンスの高い方法を提供します。

2025/12/12 23:18
Advent of Swift

Advent of Swift

## Japanese Translation: ** 著者は、Python 3.13 と互換性のあるプリビルトバイナリがないため、Void Linux 上で Swift 6.2 をソースからコンパイルして評価しています。インタープリタは単一ファイルスクリプトを高速に実行しますが、クラッシュ時のバックトレースは限定的です。デフォルトではコンパイル済みバイナリは標準ライブラリへ動的リンクし、静的リンクすると約10 MB増加します。 Swift の言語機能には、モダンな構文、optional/Result 型、Unicode 対応の `Character.wholeNumberValue`、および `split(whereSeparator:)` などの Sequence ユーティリティが含まれます。文字列処理は完全な Unicode セマンティクスに従い、オフセットや範囲インデックスを使うと面倒になるため、著者は一部の問題でコードポイント配列を使用しました。正規表現は Ruby より約 100 倍遅く(ループ内)、ホイスト後は 3 倍遅く、またプレフィックス/サフィックス演算子は式に「貼り付け」る必要があり (`if !condition` は無効) ます。関数パラメータは名前付きで、可読性は向上しますが OCaml のような再順序化やカリー化はできません。コレクションは値セマンティクスを採用し、コピーオンライトと `inout` 最適化があります;サブストリングには専用の `Substring` 型があり、`func parse<T>(_ str: T) where T: StringProtocol` のように別途関数シグネチャが必要です。著者は `swift‑algorithms` ライブラリを使用せず、自前でコレクションコードを書きました。型チェックは通常のコードでは高速ですが、遅く混乱しやすいケースもあります(例:上限より下限が大きい空範囲はエラーとして致命的に扱われます)。欠落している機能には Hashable タプル(2020 年に削除)と配列/パターンマッチングがあり、利便性を低減しています。 **改善された要約(必要なら):** (上記の段落。)

2025/12/15 5:04
Shai-Hulud compromised a dev machine and raided GitHub org access: a post-mortem

Shai-Hulud compromised a dev machine and raided GitHub org access: a post-mortem

## Japanese Translation: Trigger.dev のコードベースは、**2025年11月25日**に調整された npm サプライチェーンワーム攻撃を受けました。エンジニアが **11月24日 20:27 UTC** に `pnpm install` を実行した際、悪意あるプリインストールスクリプトが TruffleHog を使用してクレデンシャルをスキャンし外部に送信しました。 攻撃者は Shai‑Hulud 2.0 ワームで、500 個以上の npm パッケージを乗っ取り、世界中で 25,000 件以上のリポジトリ(PostHog、Zapier、AsyncAPI、Postman、ENS など)に影響を与えました。次に **11月25日 22:36 UTC** から開始した 17 時間の偵察期間中に **Trigger.dev のリポジトリ 669 件**(米国インフラから 527 件、インドから 142 件)をクローンしました。 約 **15:27 UTC** に攻撃者は破壊的な行為を開始し、10 分間にわたり複数のリポジトリへ「init」コミットを強制プッシュ(例:trigger.dev/cloud、trigger.dev/…‑repos、jsonhero-web、infra、json‑infer‑types)し、42 件の PR を閉じ、4 つの保護ブランチ設定を拒否しました。 検知から **約 4 分** 後(~15:36 UTC)、攻撃者の GitHub アカウントは削除されました。すべての Infisical シークレット、AWS IAM Identity Center、Vercel、Cloudflare、および AWS SSO セッションがブロックされました。Trigger.dev の GitHub App 用秘密鍵はゴミ箱フォルダで発見され、**11月26日 18:51–20:16** にローテーションされました。 復旧では、GitHub Events API、公開フォークデータ、およびローカル reflog を用いて攻撃前の SHA から 199 の強制プッシュされたブランチを回復し、7 時間以内に完了しました。 対策として、npm スクリプトを全体で無効化(`npm config set ignore-scripts true`)、pnpm 10 へのアップグレード(デフォルトでスクリプトが無視され、`minimumReleaseAge=4320` を設定)やすべてのリポジトリにブランチ保護ルールを適用し、npm 公開時に GitHub OIDC に切り替え、AWS SSO 用に Granted を採用しました。 このインシデントはプライベートキーとクレデンシャルが外部に漏れたこと、開発者・顧客・パートナーへの影響、および npm サプライチェーン攻撃の脅威が増大していることを示し、業界全体でより厳格なスクリプト制御と定期的なクレデンシャルローテーションの採用を促しました。

2025/12/14 19:07
GraphQL: The enterprise honeymoon is over

GraphQL: The enterprise honeymoon is over

## Japanese Translation: GraphQL はクライアントが必要なフィールドだけを要求できる点で称賛されますが、ほとんどの企業は既存の Backend‑for‑Frontend (BFF) レイヤーが GraphQL が解決しようとしていたオーバーフェッチング問題をすでに解決しているため、不要な複雑さを増すと感じています。 BFF は UI ごとにデータを集約・整形し、GraphQL が防ぐはずの余分な呼び出しを排除します。 GraphQL を追加すると問題が downstream に移るだけで、依然として REST サービスから取得し、新しいスキーマやリゾルバ、アダプタ、すべてのオブジェクトに一貫した `id` フィールドを必要とするため、単純な BFF が少ない労力で対処できる作業が増えます。 エラーハンドリングは曖昧です。 REST の 2XX/4XX/5XX ステータスコードは明確ですが、 GraphQL は失敗を汎用エラーメッセージの背後に隠します。 Apollo のキャッシュシステムは脆弱で、クエリの小さな変更が手動調整と追加の往復呼び出しを強いることがあります。 ファイルアップロード/ダウンロードは GraphQL では扱いづらく、転送には多くの場合 REST にフォールバックせざるを得ず、レスポンスに大きなバイナリを直接埋め込むとペイロードが膨張します。 これらのオーバーヘッドにより、著者は GraphQL がニッチなユースケースでのみ採用されると予測し、それ以外ではチームは BFF‑REST パターンを継続するでしょう。この結果、保守コストが増大し、オンボーディングが遅くなり、可観測性が低下し、企業環境での GraphQL の採用が制限される可能性があります。

2025/12/15 2:13
Disk can lie to you when you write to it

Disk can lie to you when you write to it

## Japanese Translation: > 本番向けの書き込み先行ログ(WAL)は、データがクラッシュや潜在的なセクタエラーに耐えるために、複数の保護機構を組み合わせる必要があります。 > 1. **チェックサム**:各レコードヘッダーにはマジックナンバー、シーケンス番号、および CRC32C チェックサムが含まれ、`fsync()` 後にチェックサムが検証されて静かな破損を検出します。 > 2. **冗長性**:2 つの WAL ファイルを別々のディスクに並列で書き込み、一方が LSE(潜在的セクタエラー)を起こしてももう一方は壊れません。 > 3. **Direct/Durable I/O**:`O_DIRECT`/`O_DSYNC` を使用すると、カーネルにデータを安定したストレージへフラッシュさせるため、ページキャッシュ遅延を防止します。 > 4. **順序付き操作**:Linux では `io_uring` と `IOSQE_IO_LINK` を組み合わせることで、各書き込みが直後に `fsync()` が実行され、追加のコンテキストスイッチを排除します。 > 5. **書き込み後検証**:両方の `fsync()` が完了した後、WAL を再読込しチェックサムを再確認します。失敗した場合はセカンダリ WAL を使用します。 > 6. **回復**:クラッシュリカバリ中にシステムは両方の WAL ファイルをスキャンし、重複レコードをマージして最高連続シーケンス番号を特定し、操作を再実行してインメモリ状態を再構築します。 この層状設計は、ページキャッシュ遅延・静かな LSE 及び順序バグを軽減し、5 層の組み合わせにより単一コピーに依存せずに大規模データベースやストレージシステムで信頼性の高いクラッシュリカバリを実現します。

2025/12/12 10:16
GNU recutils: Plain text database

GNU recutils: Plain text database

## Japanese Translation: > **概要:** > GNU Recutils は、*recfiles* と呼ばれるシンプルなプレーンテキストデータベースを作成・照会するための軽量ツールキットです。各 recfile には名前付きフィールドを持つレコードが格納され、必須/禁止フィールド、ユニークキー、自動カウンタ、タイムスタンプなどの制約によりデータ整合性が保証されます。整数・実数・日付・正規表現で定義されたユーザー定義型を含む豊富なタイプシステムを備え、結合、外部キー、グルーピング、ソート、集計などの高度な操作やパスワードベースの AES を用いた選択的フィールド暗号化が可能です。 > 変換ユーティリティにより、MDB ファイルから recfile への移行、および CSV と recfile 間の相互変換が実現します。 > プロジェクトはエディタと密接に連携しており、Vim は vim‑rec による構文ハイライトを提供し、Emacs はナビゲーション・編集・フィールド折り畳み・型別可視化編集・org-mode テーブルへのデータ出力をサポートするフルモードを備えています。テンプレートによりレポート生成やエクスポーター作成が可能です。 > Recutils は GPLv3+ の下で配布され、ソースコードは HTTPS・HTTP・FTP を通じて主要な GNU サーバおよびミラーから取得でき、Windows、macOS、Linux、BSD、および Trisquel、Fedora、openSUSE、Debian、Arch、Mandrake、Parabola、OpenCSW、Solaris、FreeBSD、Termux、Void など主要 Linux ディストリビューション向けに事前ビルド済みバイナリが用意されています。 > 開発は Savannah 上で行われ、アルファ版はそこで公開されます。Recutils Translation Project が翻訳を管理し、bug‑recutils(開発/バグ報告)と help‑recutils(ユーザーサポート)のメールリストがコミュニティ支援を提供します。プロジェクトは Jose E. Marchesi によって維持されています。

2025/12/15 4:08
Illuminating the processor core with LLVM-mca

Illuminating the processor core with LLVM-mca

## Japanese Translation: 記事(元はChris KennellyによるFast TotW #99)は、LLVMの`llvm‑mca`ツールを検討しています。これはコンパイラのスケジューリングデータを利用する静的命令レベルシミュレーターですが、キャッシュミス・分岐誤予測・フェッチ/デコード遅延は無視します。記事では、Protobuf VarintSize64の2つの実装パス(“lzcnt”版と「bsr」版)を比較しています。Skylake上で“lzcnt”版は9サイクル、“bsr”版は10サイクルです。命令レベルの並列性がポート使用率と遅延を通じてどのように捉えられるかを示しています。100イテレーションのループで“lzcnt”パスは134サイクル(約1.34 c/e)かかり、ベクトル化バリアントでは32個のアイテムを29サイクル(約0.91 c/e)で処理します。記事はまたCRC32Cについても触れています:`llvm‑mca`は連続した32回の `_mm_crc32_u64` 呼び出しを合計51サイクルでモデル化し、3つの独立ストリームを実行すると遅延が22サイクルに短縮されることを示しますが、4番目のストリームでは追加効果はありません。ツールはL1ヒットのみをシミュレートし、分岐予測やフェッチ/デコードをモデル化できず、LLVMのプロセッサモデルに依存しているため、一部アーキテクチャでは不完全な可能性があります。最後に`llvm‑mca`の出力(命令ごとのタイムライン、uOpカウント、遅延/スループット数値、およびリソース圧迫表)を強調し、より深い理解のためにuops.infoやAgner Fogのマニュアルなどのリソースを紹介しています。

2025/12/15 0:05
Standalone Meshtastic Command Center – One HTML File Offline

Standalone Meshtastic Command Center – One HTML File Offline

## Japanese Translation: (翻訳文) --- ## 要約 Meshtastic Standalone Command Center は、単一の 51 KB の HTML ファイルだけで完全にオフライン動作する軽量なゼロ依存ウェブインターフェースです。Web Bluetooth、Web Serial、WiFi/HTTP などのネイティブブラウザ API のみを使用しているため、インストールやバックエンドサーバは不要で、すべてのデータがローカルに保持されるため最大限のプライバシーとセキュリティが確保されます。 **主な機能** - RSSI/SNR/ホップ数メトリクスおよび経路詳細を表示するリアルタイムノードマップ - ブロードキャスト/メッセージコンソール、ノード設定・診断ツール - イベントログと CSV データエクスポート - 伝送手段(Bluetooth、シリアル、WiFi)の自動検出とフリートレベル監視ビュー **サポート対象プラットフォーム** Web Bluetooth/Web Serial をサポートする任意のモダンブラウザで実行可能です。Windows、Linux、macOS のノートパソコン、タブレット/スマートフォン、そして WebView+BLE を備えたスマートウォッチも対応します。 **ロードマップ** 今後のアップデートでは、ノードプロビジョニングツール、多重メッシュダッシュボード、オフライン地図タイルキャッシュ、より豊富な経路可視化、オプションでクラウド同期(オプトイン)、ネイティブモバイルラッパーを追加予定です。 **コミュニティとライセンス** 本プロジェクトは Apache 2.0、MIT、または MPL 2.0 のいずれかのオープンソースライセンスで公開されており(ユーザーが別のライセンスをリクエスト可能)、ハードウェアテスト、バグ報告、機能提案、プルリクエスト、ドキュメント改善などの貢献を歓迎します。GitHub Issues を通じて、緊急通信団体、研究ラボ、導入支援が必要な方は Jordan @townsendsdesigns.com までご連絡ください。 **重要性** ブラウザ内ですべてがローカルに実行されるため、ユーザーはデータをクラウドへ送信せずに自分のデバイスだけでメッシュネットワークを管理できます。これにより、緊急対応者、研究者、および携帯可能で安全なネットワークコントローラが必要なすべての人にとって特に有用です。

2025/12/09 18:05
Linux Sandboxes and Fil-C

Linux Sandboxes and Fil-C

## Japanese Translation: (欠落している詳細を組み込む) メモリ安全性とサンドボックスは、相補的な方法でソフトウェアを保護します。メモリ安全性はバッファオーバーフローを防ぎ、サンドボックスはプログラムのシステムアクセスを制限します。あるプログラムは片方だけを持つことも可能ですが、両者が併用されると最強の保護になります。Fil‑C は、実行時チェックを挿入して syscall の制限とスレッド分離を強制することで、メモリ安全な C/C++ コードを既存のサンドボックス手法と統合する方法を示しています。 純粋な Java プログラムは、メモリ安全であってもファイル安全ではありません。これは OS のフル権限で実行されるためです。一方、低レベルのアセンブリコードはバグがあってもファイル安全になることがあります。欠陥のあるカーネル呼び出しが攻撃者にサンドボックスを抜けさせる可能性があるためです。この事実は、サンドボックスが不完全である理由を示しています。メモリ障害時に攻撃者が悪用できる特権「ブローカー」呼び出しを許可してしまうからです。 Fil‑C は OpenSSH の現在のサンドボックス(seccomp‑BPF、chroot、setrlimit、およびユーザー/グループ分離)に基づいて構築されています。Fil‑C を OpenSSH に適応するには、2 つの小さな変更だけで済みます ― `SECCOMP_RET_KILL_PROCESS` をすべてのスレッドが違反時に終了するように変更し、`MAP_NORESERVE` と `sched_yield` を mmap の許可リストに追加します。ランタイムハンドシェイク(`filc_runtime_threads_handshake`)は、各スレッドが必要な `PR_SET_NO_NEW_PRIVS` および `PR_SET_SECCOMP` 設定を受け取ることを保証します。複数のユーザー スレッドが存在する場合、Fil‑C は安全性エラーを報告します。 Fil‑C を統合すれば、OpenSSH では手動でサンドボックス構成を行う必要が少なくなり、メモリバグによる攻撃に対するハードニングが簡素化されます。同じアプローチは、現在別々のサンドボックスツールに依存している他の低レベルサービスにも有益であり、設定を合理化し全体的なセキュリティを強化します。

2025/12/14 7:58
Price of a bot army revealed across online platforms

Price of a bot army revealed across online platforms

## Japanese Translation: ## Summary 本研究は、**2024年7月25日から2025年7月27日までの61件の国際選挙に先立つ30日間** において、8大ソーシャルメディアプラットフォームでの偽アカウント用SMS認証料金を調査しました。 - 選挙前の期間中、Telegram の平均価格は **12 %** 上昇し、WhatsApp は **15 %** 上昇しました。これは登録にローカル電話番号が必要なためと考えられます。 - Facebook と Instagram では同様の傾向は見られませんでした。これらは国境を越えてサインアップできるためです。 - Telegram はロシア関連影響操作で主に利用されており、平均費用は **1.02 ドル/アカウント**(WhatsApp は **0.89 ドル**)です。 - ベンダーの多くはロシア・中国向けにロシアン決済システムやサイトを通じてサービスを提供し、小規模ベンダーは既存アカウントを転売または仲介、大規模ベンダーはフォロワー数や偽アカウントの大量注文を受注し、顧客サポートも行います。 - 2022年の調査では、**10 ユーロで約90,000件の偽閲覧または200件の偽コメント**が購入できることが示され、サービスの経済規模を明らかにしました。 - COTSI ツールは隠れた操作市場を定量化し、アナリストが誤情報ビジネスモデルを露呈・解体する手段を提供します。 - 2025年英国の SIM ファーム禁止措置とロシアの 9月に施行される第三者登録禁止法により、COTSI は規制がベンダー行動や SMS 認証需要に与える影響を追跡できます。価格上昇またはアクセス制限が生じれば、有料偽アカウント市場は縮小し、国家支援の影響キャンペーンを抑制するとともに、大手ソーシャルプラットフォーム全体でベンダーの収益モデルを再調整させる可能性があります。

2025/12/15 1:09
Compiler Engineering in Practice

Compiler Engineering in Practice

## Japanese Translation: この記事は、既にある程度経験を持つ開発者向けに実践的な知恵を共有するコンパイラ工学ブログシリーズの一部です。コンパイラとは単純に二つの言語間の翻訳機であり、入力と同じ振る舞いをする出力を生成します。例としては C → x86 アセンブリや Python ソース → バイトコードなどがあります。コンパイラは基本的にファイルを読み込み書き込む単純なプログラムであるため、時間依存の割り込みがなく、OS やデータベースよりもバグの再現性が高いです。しかし信頼性は重要です。1 つの誤コンパイルだけでもデータ損失・セキュリティホール・誤った AI 出力を招き、運用環境でのデバッグには数か月を要し、典型的なコンパイラバグよりも 100〜1 000 倍以上のコストが発生します。この記事では、すべての誤コンパイルは契約違反とみなし、次回リリース前に徹底した分析と予防策を講じるべきだと主張しています。コンパイラの核は中間表現(IR)グラフであり、この IR 上の各変換は意味論を変更しないことが検証されなければなりません。IR スキーマは複雑で、Clang の AST から LLVM IR、さらにはターゲット固有の MIR に至るまで多層にわたります。そのため、オーバーフロー処理の誤りや制御フローを横断したコード移動などの微妙なミスが誤コンパイルを引き起こす可能性があります。実用的なコンパイラは大規模で長寿命のプロジェクトであり、堅牢な API 設計、慎重な IR 設計、厳格なテスト、およびコンパイラパスに特化したデバッグ戦略が必要です。すべての IR 変換ステップで徹底的な検証を行うことで、業界はデバッグコストを削減し、ユーザーを危険なバグから守り、最新コンパイラで構築されたソフトウェアへの信頼を強化できるでしょう。

2025/12/14 16:45
Efficient Basic Coding for the ZX Spectrum (2020)

Efficient Basic Coding for the ZX Spectrum (2020)

## Japanese Translation: ZX SpectrumのROM BASICは、各プログラム行を「行番号 2 バイト」「長さ 2 バイト」「終端 0x0D」の順で格納します。1 行にはエラーが発生する前に最大127 のステートメントを含めることができます。通常、編集時は行番号を 1–9999 に限定していますが、POKE を使うと 0 や 9999 より大きい番号の行を作成できます。しかしこれにより問題が生じます(GO TO/RESTORE が 32767 超で失敗、GO SUB が 15871 超で失敗、LIST と編集が壊れる)。 インタプリタは行アドレス表を保持せず、GO TO・GO SUB・NEXT・FN 等のジャンプ命令に遭遇するたびにプログラム全体を先頭からスキャンします。これは前方の各行につき約 71 µs のコストがかかります。そのため、多くのジャンプや頻繁な呼び出しを含むコードを最初に配置すると、実行時間から数百ミリ秒を削減できます。 ZX‑Basicus は最適化を支援します。 - `--profile` でどこに時間が使われているか表示します。 - `--mergelines` が隣接する行を結合し、スキャン回数を減らします。 - `--delrem` と `--delempty` がコメントと空行を除去します。 - `--move` はコードブロックを再配置し、参照先の番号(リテラルのみ)を更新します。 「GOTO‑with‑POKE」トリックは、システム変数 PROG (23635) と NEWPPC/NSPPC (23618/23620) を使ってインタプリタの検索開始点を設定し、NXTLIN (23637) も同様に利用できます。これらの手法により、ジャンプ時間が短縮され CPU 負荷が低減し、実際の Spectrum ハードウェア上で BASIC プログラムを高速化できるため、レトロゲーム愛好家や保存プロジェクトにも恩恵があります。

2025/12/14 21:04
iOS 26.2 fixes 20 security vulnerabilities, 2 actively exploited

iOS 26.2 fixes 20 security vulnerabilities, 2 actively exploited

## Japanese Translation: Appleは2025年12月11日にiOS 26.2、iPadOS 26.2、およびmacOS Tahoe 26.2をリリースし、20以上のセキュリティ脆弱性を修正しました。これには、悪意あるウェブコンテンツがコードを実行したりメモリ破損を引き起こす可能性のある二つのWebKitバグ(いずれも積極的に悪用されている)が含まれます。また、App Storeの支払いトークン不具合、画像トリガーによるメモリ破損欠陥、Hidden Albumのプライバシー漏洩、FaceTimeリモートコントロールパスワード削除といった問題も修正されました。Appleはすべてのユーザーに即時インストールを促しました。 今年初めに開発者はiOS 26.2のリリース候補を受け取り、Appleの迅速な対応パターンは以前のWebKitパッチと同様です。このアップデートには、少なくとも15の新機能がiPhoneに追加され、macOS TahoeではEdge Light(ビデオ通話中に顔を照らす効果)、AirPods Proのファームウェア更新(8B30 → 8B25(Pro 3)および8B28 → 8B21(Pro 2)がEUでLive Translationサポートを拡張、Google Mapsの新自動駐車位置機能が最大48時間分の駐車データを保存するなどがあります。iOS 26の内部ビルドのリークはAirTag 2の改良ペアリングと未公開機能を示しており、今後のハードウェアリリースを予感させます。

2025/12/15 1:13
Vacuum Is a Lie: About Your Indexes

Vacuum Is a Lie: About Your Indexes

## Japanese Translation: PostgreSQL の `VACUUM` はテーブルから死んだタプルを削除しますが、空の B‑tree インデックスページはそのままにしておくため、大規模な削除後にはテーブルと主キーインデックスが膨張した状態のまま残ります。約 80 % の行を削除するデモでは、ヒープは約 7 472 kB のままで、主キーインデックスは 2 208 kB に留まりました。`pg_stat_index` は平均葉密度 (avg_leaf_density) を 86 % と報告しましたが、bloat_ratio が 2.8 であるため、インデックスは期待値のほぼ三倍に膨らんでいることを示しています。 `VACUUM` はページを再利用可能としてマークするだけで OS に返却しないため、物理ページ数は増え続け、プランナーがそのカウントに基づく推定値でコスト計算を誤り、不要なシーケンシャルスキャンを引き起こすことがあります。 テーブルをオフラインにせずにスペースを回収するには、管理者は `REINDEX CONCURRENTLY` でインデックスを再構築できます。これにより demo_pkey のサイズが 2 208 kB から 456 kB(約 79 % 削減)になりました。オンラインツールの `pg_squeeze` は論理デコードを使ってテーブルとインデックスの両方を縮小します。完全な `VACUUM FULL` も同様の結果が得られますが、ACCESS EXCLUSIVE ロックとダウンタイムが必要です。 B‑tree インデックスのデフォルト *fillfactor* が 90 % であっても削除による膨張は防げず、 `ANALYZE` は統計情報のみを更新し(`relpages` を変更しない)、bloat_ratio が約 1.8–2.0 を超えると調査のトリガーとして有効です。閾値は環境ごとにチューニングできます。この結果、クエリ計画が高速化され、ストレージコストが削減されつつデータベースをオンラインで維持できます。

2025/12/14 22:13
I fed 24 years of my blog posts to a Markov model

I fed 24 years of my blog posts to a Markov model

## Japanese Translation: ``` ## Summary この記事では、Susam Pal(2025年12月13日)によって約30行のPythonで書かれた最小限のマルコフ連鎖テキスト生成器 *Mark V. Shaney Junior* を紹介します。GitHub(github.com/susam/mvs)とCodeberg(codeberg.org/susam)にホスティングされています。このプログラムは速度よりも可読性を優先しており、トリグラム(単語のペアをキーとして、その後続する単語のリストを保持)を使用して擬似テキストを生成します。学習データは著者自身のブログ投稿約200件(約20万語)から取得されており、すべてのコメント500件(約4万語)は除外されています。 READMEにはサンプル利用例が示されており、例えば `./mvs < susam.txt` のように実行するとゴミ文字の出力が得られます。デフォルトでは1回の実行で最大100語まで生成しますが、コマンドラインフラグでキーオーダー(既定は2)を変更できます。高いオーダーになるほど文がより一貫性を持ちますが、完全に同じテキストをコピーすることもあります。著者はマルコフモデルを数式で簡潔に説明し(`P(X_{n+1}|X_n)=P(X_{n+1}|X_n,X_{n-1},…)`)、ディープラーニングを用いる大型言語モデルと対比しています。 軽量かつ理解しやすいため、このツールは大規模AIシステムのオーバヘッドなしで言語生成に挑戦したいホビイストや学生向けの迅速なプロトタイプや教育支援として活用できます。 ```

2025/12/14 5:19
Using e-ink tablet as monitor for Linux

Using e-ink tablet as monitor for Linux

## 日本語訳: **要約** この記事では、Androidのe‑Inkタブレット(Onyx BOOX Air 2)をLinux(Arch + i3wm)上で負荷の少ないセカンダリディスプレイに変える方法を説明しています。著者はまずDeskreenを試しましたが、ストリーミング品質と入力遅延が許容できませんでした。その後TigerVNC(サーバー+AVNCクライアント)へ切り替え、約20分で設定完了しました。手順は次の通りです: 1. サーバーをインストール (`sudo pacman -Sy tigervnc`) 2. `$XDG_CONFIG_HOME/tigervnc/passwd` にパスワードを作成(モード 0600) 3. `/etc/tigervnc/vncserver.users` を編集し `:1=alireza` とマッピング 4. 設定ファイルで `session=i3`、オプションで `geometry=1400x1050+0+0`、`FrameRate=30`、`localhost`、`alwaysshared` を設定 5. サーバーを起動 ```bash x0vncserver -PasswordFile $HOME/.config/tigervnc/passwd \ -Geometry 1400x1050+0+0 -FrameRate 30 -AlwaysShared \ -SendCutText=false -SendPrimary=false -AcceptCutText=false ``` (ポート 5900がデフォルト。必要に応じてファイアウォールを開放) 小さなスクリプトでモニタサイズを設定し、主画面の右側に配置して rofi から VNC を起動できます。接続は遅延が最小限で、主にタブレットの低リフレッシュ率によって制限されます。著者はe‑Ink上で読みやすくするため、Neovim のライトテーマ(`:set background=light`)を推奨しています。この設定により、タブレットはディスプレイと入力デバイスの両方として機能し、読む・書く・描画(例:GIMP)やプレゼンテーションなどに便利です。さらに、e‑InkメーカーやVNC開発者が低リフレッシュ率ディスプレイ向けのパフォーマンス最適化を行うきっかけになる可能性があります。

2025/12/09 23:10
Getting into Public Speaking

Getting into Public Speaking

## Japanese Translation: この記事は、成長したい初心者のテックスピーカーを対象としています。著者が2022年末に数回のミートアップトークとLaracon US「Science Fair」のスロットだけで講演を始め、その後40人規模のミートアップからわずか数ヶ月で1,000人以上の聴衆を前にした約12件の国際的な講演へと急速に成長した経緯を語ります。核心となるアドバイスは、まず小さく始める―ローカルミートアップで自信をつけてから大規模会場へ挑むことです。実践が鍵です:各講演を何度もリハーサル(第5回目でも)行い、聴衆の時間を尊重しましょう。すべてのプレゼンテーションを一つの明確なストーリーとして扱い、物語が重ならないようにします。ライブコーディングセッションでは非常に大きなフォントを使用し、技術チェック時に徐々にサイズを増やしていきます。ステージへ上がる前にリュックバンドを外すことで焦点を自分に合わせ、ぎこちない写真撮影を防げます。ジョーク(自己卑下のものが効果的)で緊張をほぐし、「部屋を掌握」します:中央へ足を踏み入れ、自分を紹介し、ペースを調整しながら技術チェックを行いつつスペースを探索します。完璧なスクリプトは存在しないことを受け入れ、必要に応じて即興し、過去の講演者から指針を得ます。ステージ上で水分補給を忘れずに行い、監視下でも落ち着きを保つよう心がけましょう。これらの手順を踏めば、ライブコーディングはスムーズになり、エンゲージメントが高まり、講演機会が増え、個人のプレゼンテーションスキルが向上し、組織内でのコミュニケーションが明確になり、技術コミュニティ全体で質の高いトークが実現します。

2025/12/10 19:03