スキップしてメイン コンテンツに移動

投稿

文学×数学の遊戯「ウリポ」をデジタルへ、「カットアップ」の次は「S+7法」ツールを作りたい

「カットアップ技法」をブラウザ上で手軽に再現できるツール「 カットアップメーカー 」 を公開したところですが、ふと「アルゴリズム的な文学技法は、まだまだデジタル実装と相性が良いものがあるのでは?」と思い立ち、リサーチを進めてみました。 そこで再発見したのが、実験文学集団「ウリポ」の代表的手法である「S+7法」であります。 ウリポとは、20世紀半ばのフランスでレーモン・クノーや数学者フランソワ・ル・リヨネらによって結成された文学グループで、数学的な制約や規則を文章作法に持ち込み、新たな文学的創造性を切り拓く試みを多数行ったそうです。その代表的な試みのの一つが、この「S+7法」であります。 ルールは至ってシンプル。「辞書を引き、文章中のすべての名詞を、その辞書で7つ後ろに載っている名詞に置き換える」というもの。 これを現代のウェブツールとして実装する場合、仕組みとしては以下のようなフローで構築できそうです。 入力されたテキストを形態素解析し、名詞のみを抽出 ベースとなる辞書インデックスを参照し、該当名詞から7語後ろのエントリを特定 元の名詞を置換して文章を再構成 課題になりそうなのは「参照する辞書データの選定」ですが、現代的な日本語辞書データや専門辞書を差し替えられる設計にすれば、生成される文章のナンセンスさや詩情がガラリと変わる面白いジェネレーターになりそうです。 現在取り組んでいる「 消えた伝説のX11宇宙戦「XShipWars」を発掘!20年前のコードをClaude Codeで現代に蘇らせる 」のプロジェクトが一段落したら、次はこの「S+7法」ツールの制作に着手してみようかと思います。 ちなみに今回のリサーチ中、アーティストの「 古川諒子 」さんの作品にも行き当たりました。「カットアップ」や「S+7法」などで自動生成・脱構築されたテキストからインスピレーションを得て、具象絵画を描き出すという非常に刺激的な試みをされています。言語のルールから生まれた偶然性が、ヴィジュアル表現へと変換される面白さ、もし東京などで個展が開かれる機会があれば、ぜひ実物を体感してみたいと思います。
最近の投稿

消えた伝説のX11宇宙戦「XShipWars」を発掘!20年前のコードをClaude Codeで現代に蘇らせる【序章】

  「インターネットから一度消えたソフトウェアは、二度と手に入らないのか?」 ふと昔遊んだ(あるいは名前を見かけた)レトロなオープンソースゲームを思い出し、検索窓に打ち込んでみる。しかし画面に返ってくるのは冷淡な「404 Not Found」や、20年前に時が止まったリンク集の残骸ばかり。そんなデジタルアーカイブの断絶を経験したことがある人は、決して少なくないはずであります。 悩めるエンジニアにとっては、「XShipWars」がそれでした。 「XShipWars」とはどんなゲームだったのか? XShipWarsは、1990年代後半から2000年代初頭にかけてUnix/Linux界隈で開発・運用されていた、クライアント・サーバー型の2Dリアルタイム宇宙戦略・戦闘シミュレーションです。 クレジットを稼いで小型迎撃機から大型戦艦へステップアップし、兵装やジェネレータ、センサー類を細かく換装していくRPG的成長要素や、惑星や宇宙基地を自勢力に組み込み、資源採掘と補給ラインを維持しながら敵勢力の拠点を攻め落とす戦略性、加えて当時のUnix系ゲームといえば、シンプルなワイヤーフレームや原色のドットアイコンが主流でしたが、XShipWarsは、細部まで描き込まれた宇宙船のビットマップスプライトを採用。さらに画面上には、リアルタイムに変化する円形レーダー、シールドやリアクターの出力を示す計器パネル、通信ログなどが整然と並び、まるで「本物の宇宙戦艦のオペレーションシート」に向き合っているかのような濃密なUIを実現していたのが特徴です。 公式サイト消滅から「Debian Snapshot」でのサルベージまで ずいぶん前からXShipWarsの公式サイトは完全に閉鎖されており、現代の主要ディストリビューションの公式リポジトリからもその名は姿を消していました。 「 Wayback Machine 」などのWebアーカイブでもリンク切れだらけで、「完全なソース一式の復元は絶望的か・・・」と諦めかけていました。しかし、オープンソースのエコシステムには強力なタイムマシンが存在していました。それが、Debianプロジェクトが運用する歴史的リポジトリ「 Debian Snapshot 」であります。 Debian Snapshotは、過去にDebianに取り込まれたパッケージを日付・バージョ...

SNSで見かけた格安Amiga「NanoMig」が熱い!気になる「推奨ハード」と「ROMの入手元」を調べてみた

先日、Facebookのタイムラインを眺めていたら、手のひらサイズの小さなFPGA基板の上で、あの「 Amiga 」が軽快に動いている動画が流れてきて目を奪われたのであります。 「こんなに小さな基板で、なぜAmigaが動いているんだ・・・?」とその動画の正体を調べてみたところ、行き当たったのがオープンソースプロジェクトの「 NanoMig 」でした。 Commodore Amigaといえば、かつて欧米のホビーPCシーンやデモシーンを席巻した伝説の名機であります。日本国内でも、90年代の人気番組「進め!電波少年」のオープニングや演出で使われていた独特なCGアニメーション(松村邦洋さんや松本明子さんのキャラクターが動くCG)の制作に使われていたことで、ご記憶の方も多いかと思います。 今なお世界中に熱狂的なファンを持つAmigaですが、近年は実機のプレミア化が急激に進み、状態の良い本体を手に入れるのは極めて難しくなっています。 そんな憧れの名機を、現代の安価なFPGAボード上に蘇らせようと有志によって開発が進められているのがNanoMigなのであります。しかも調べてみると、2024年に始まったこのプロジェクト、最新版(v0.14-beta)ではなんとAmiga 1200相当(68020 CPU + AGAチップセット)の動作にまで対応しているとのこと。 【補足】初期型(A1000 / A500)から「Amiga 1200」への劇的な進化 Amigaは、CPUの負荷を減らすためにグラフィックや音声を専用のカスタムチップに任せる先進的な設計が特徴でした。 初期型(Amiga 1000 / 500): CPUはモトローラ「68000」のみを搭載。グラフィックは初代チップセット「OCS(Original Chip Set)」が担当し、最大4,096色中32色の同時表示でした。当時の家庭用PCとしては破格の性能でしたが、美麗なグラデーションの表現には限界がありました。 上位モデル(Amiga 1200): 1992年に登場したホビー向けAmigaの集大成。CPUがより高速な「68020」へと強化され、グラフィックも新世代の「AGA(Advanced Graphics Architecture)」チップセットへと刷新。最大1,677万色中256色(特殊なHAM8モードでは約26万色)...

Finderから一発起動!VS Codeを右クリックメニュー(サービス)に追加する方法

Windowsでは、VS Codeをインストールすると右クリックメニューに「Open with Code」が自動で追加されますが、macOSにはこの機能がないのであります。 そんな悩みを解消してくれる便利なツールが、オープンソースで公開されている「VS Code Finder Service」であります。 導入は驚くほど簡単。ターミナルを開き、リポジトリをクローンしてインストールスクリプトを実行するだけで完了します。 git clone https://github.com/vknabel/vscode-finder-service.git cd vscode-finder-service ./install.sh 日常のちょっとしたクリックやドラッグの手間を減らすだけで、開発や作業のリズムが格段にスムーズになります。Windowsのあの快適さをMacでも再現したい方は、ぜひ試してみてください!

【新店情報あり】ラーメン三水で導き出した最適解!「麺の量問題」を解決する黄金比とは?

脂と濃厚スープが恋しくなり、「 ラーメン三水 」さんをリピート訪問してきました。 ちなみに本題の前に耳寄りなニュースをひとつ。なんと「清六家 下妻店」が、 10月5日に「ラーメン三水 下妻店」としてリニューアルオープン するとのこと!近隣にお住まいの方は要チェックであります。 さて、今回いただいたのは「味噌ラーメン」にライス。 実は三水さん、前回欲張って「大盛り」にしたところ圧倒されるほどのボリュームで完食に苦戦した経験があります。そこで今回はリベンジとして「普通盛り」をチョイスしたのですが・・・、細麺に濃厚な味噌スープがしっかり絡み、ライスとの相性も抜群な反面、「もう少し麺を食べたい」と物足りなさを感じる結果に。 大盛りは多すぎる、普通盛りはちょっと足りない。 そんな悩めるエンジニアが行き着いた結論がこちらです。 麺は「中盛り」+「サイドメニュー(ライス等)」 この組み合わせこそ、満腹感・満足感ともに完璧なバランスを生む黄金比だと確信しました。次回からは迷わずこのオーダーで挑みます。 下妻の新店に行かれる方も、ぜひボリューム選びの参考にしてみてください!

OSの核心をコードで学ぶならこれ!MIT教材「xv6」と電通大の日本語訳テキストが素晴らしい

MIT teaches operating systems by giving students a complete Unix-like kernel and asking them to modify it. it's called xv6, a ~6,000-line reimplementation inspired by Unix V6. processes, system calls, virtual memory, and filesystems are all there pic.twitter.com/sFiHWgMmHb — trish (@TrisH0x2A) September 22, 2026 オペレーティングシステム(OS)の仕組みを一から本格的に学びたい方に、ぜひおすすめしたい教材を見つけたのでご紹介であります。 かつて「 UNIX 4.3BSDの設計と実装 」(通称:悪魔本)などに挑んだ経験がある方も多いと思いますが、現代のLinuxやFreeBSDなどのOSは数百万行を超える巨大な規模に成長しています。いきなり本物のソースコードを読んで全体像を掴むのは、ハードルが高く挫折しやすいのが現実です。 そこで最適なのが、MITの教育用OS「xv6」であります。 👉 Xv6, a simple Unix-like teaching operating system(MIT公式サイト) xv6が学習に最適な3つの理由 コード量が約6,000行と極めてコンパクト Unix Version 6(V6)の基本設計を踏襲しつつ、無駄を削ぎ落としているため、個人でも全体のコードを読み切ることができます。 現代の標準アーキテクチャ「RISC-V(マルチコア)」に対応 古き良きUnixの設計思想を、今まさに注目を集めるRISC-V環境で学べます。 充実した講義テキストと「日本語訳」の存在 MITの公式テキストが配布されているだけでなく、電気通信大学の菅原研究室によって 日本語訳テキスト が無償公開されています。難解なカーネルの概念を母国語でじっくり追えるのは本当にありがたい環境です。 👉 RISC-V版xv6テキストの和訳(電気通信大学 菅原研究室) まず何から始めるべき? まずは和訳テキストの「第0章(OSのインターフェース)」に目を通し、興...

「How(どう作るか)」はAIが肩代わりする、だからこそ問われる「 Why(何を・誰のために・なぜ作るのか)」という動機

過去に開発が止まって眠っていた個人プロジェクトを「 眠っていた個人開発をClaude Codeで救出!文章再構成ツール「カットアップメーカー」をGitHub公開しました 」で紹介したとおりGitHubで公開しました。 今回は、その開発プロセスで実践した「仕様駆動開発」のノウハウをスライドにまとめてみたのであります。 👉️ 仕様駆動開発をClaude Codeで試してみた リポジトリのコードを参照させた上で、以下の要件をClaudeに伝えてみました。 作成の目的・想定読者 スライドの大まかな構成 最も伝えたいメッセージと、読後に起こしてほしいアクション すると、わずか数分ほどで約7割の完成度のスライドが一気に生成されました。あとは細部を微調整しただけで、トータルの作業時間は2時間ほど。これで十分実用に耐えるクオリティに仕上がりました。 制作効率が劇的に向上し、AIの進化に圧倒された一方で、強く心に刻まれたことがあります。これまでもいくつかの記事で触れてきましたが、「 How(どう作るか)」をAIが軽々とこなす時代だからこそ、人間側の「 Why(何を・誰のために・なぜ作るのか)」という動機こそが最大の価値になる、ということです。 「何かを表現したい」「これを作って誰かに届けたい」という人間ならではの純粋な情熱やエネルギーがなければ、どんなに優れたAIがあっても何も始まらないのだと思い知らされたのであります・・・。  スライドをご覧いただき、AIの進化とともに「これからのクリエイターの在り方」を実感していただけたら幸いです。

AI時代の個人開発をどう見せる?開発物を「GitHub Pages」でポートフォリオ化してみた

最近、GeminiやClaude Codeを活用した「 リアルタイム地震マップ 」や「 カットアップメーカー 」など、AIを取り入れた個人開発とGitHub公開を続けてきました。 これと合わせて開発したソフトウェアに関する技術スライドなども作成し始めたのですが、Bloggerなどの一般ブログでは公開しづらいなと感じたのであります。 そこで今回、過去のソフトウェアも含め開発実績や技術スライドを一元管理するため、「 GitHub Pages 」と「 Jekyll(ジキル) 」を使ってポートフォリオサイトを立ち上げてみたのであります。 なぜGitHub Pages × Jekyllなのか? 最大の利点は、「開発(コード管理)と発信(Webサイト運用)が同じ場所で完結する」点です。 リポジトリから即公開: サーバー契約や独自の設定不要で、GitHub上のファイルがそのままWebサイトになります。 Markdownでサクサク執筆: 標準組み込みの「Jekyll」のおかげで、普段のREADME感覚でMarkdownを書くだけで整ったページが生成されます。 メンテが圧倒的に楽 :ファイルをアップデートしたら、リポジトリ側でドキュメントを更新してプッシュするだけでサイトにも即反映されます。 構築にあたっては、以下のガイドを参考にさせていただきました。 👉  GitHub PagesにJekyllを使っていい感じのページを作る例 完成したポートフォリオページ 実際に出来上がったページがこちらです。 👉 tariki.github.io 実際に運用を始めてみて、やはり「まとまった技術ドキュメントや開発ログの管理」はブログサービスよりもGitHub Pagesのほうが相性抜群だと実感しています。 個人開発の成果物がいくつか溜まってきた方や、AIツールで作ったコードを手軽にWeb公開したい方は、ぜひポートフォリオ作りに挑戦してみてはいかがでしょうか!

ブレーキか高速化か? 技術の暴走を「止める」のではなく「追いつかせる」という現実解

前回書いた「 Linuxの「意図的な欠陥混入事件」から考える、生成AIという「同意なき巨大な社会実験」 」というテーマの続きとして、今回は「では、日本の現場や政策はどう動いているのか?」を掘り下げてみました。 日本のAIガバナンスの動向を捉える上で、東大の松尾研究室出身でエンジニア・起業家・政治活動家でもある「 チームみらい 」の安野貴博氏の発信を確認するのがよいかと考え、同氏が公開しているAI法案に関する解説動画をチェックしてみたのであります。 動画内では、「市民の合意が追いつかないまま実装が先行する弊害」という論点まで深く踏み込んだ言及はありませんでしたが、「技術の進化速度に、社会制度や議会の意思決定が追いつかない」という構造的なジレンマについて分かりやすく語られていました。 AIの能力が極めて速いペースで急速に進化しており、「議論して議会を通して法律を作る」という速度を上回ってしまっていること。 その結果、社会の隅々に想定外の負の影響が出る懸念があり、どうガバナンスを効かせるべきかが大きな裏テーマであること。 安野氏は、「同意なき社会実験」を止めるのではなく、「社会実験のフィードバックと合意形成のループをテクノロジーで超高速化する」というスタンスのようであります。この発想は非常に前向きで、エンジニアリング視点を持つ実務家ならではの現実解だと感じます。 テクノロジーの恩恵と影の両方を肌感覚で理解し、実装力をもって制度のアップデートに挑むリーダーの存在は、これからのAI時代においてますます重要になっていくはずです。安野氏、安野氏が率いるチームみらいの活動に期待したいと思ったのでありました。

健康診断でメタボ判定…!晩酌の「豆腐飽きる問題」を救ってくれたカルディの万能薬味

健康診断でメタボのリスクを指摘され、特定保健指導を受けてからというもの、運動を増やしビールも控える日々を送っています。ただ、体重は増えもしないけれど減りもしない・・・という、なんとももどかしい停滞期が続いているのであります。 そこで見直したのが晩酌のお供。ついつい手が伸びがちな揚げ物をやめ、ヘルシーな豆腐にシフトしたのですが、ここで直面したのが「淡白すぎてすぐ飽きる問題」であります。 ストイックな我慢は続かないと痛感していたとき、カルディの和食材コーナーで見つけたのが、口コミなどでも話題の様子の「 うまくて生姜ねぇ!! 」という商品であります。 細かく刻まれた国産生姜が特製醤油にじっくり漬け込まれていて、口に運ぶとまずまろやかな甘みが広がり、噛むほどに生姜の爽やかな香りとピリッとした刺激が追いかけてきます。さっぱりしていながらもしっかりとしたコクがあり、冷奴にスプーン1杯のせるだけで、淡白な豆腐が一気に満足感のあるおつまみに化けてくれます。冷奴はもちろん、蒸し鶏や焼き魚に合わせても相性抜群ではないかと思います。 「カロリーは抑えたいけれど、晩酌の満足度も妥協したくない」というときの心強い味方として、すっかりはまっています。カルディで見かけたらぜひ購入してみてください。