個人開発

Web Development

横一列12マスで物語を作る|URLアニメーションで動く107秒の設計

アドレスバーの `#` から先を12マスの画面として使い、107秒の無声映画を作りました。レイヤー合成、固定地図、幕という単位、1秒で1日を過ごす時間表現まで、1次元しかない画面での設計を書いています。
Retro Computing

6行テトリスを468文字で作った。5年前に476文字で作った人がいた

7行テトリスを6行に収めるため、アロー関数への変換、描画ループの統合、カラー表示の削除など5箇所を削って468文字にしました。2021年に公開されていた476文字版との比較、2021年版から取り込んだ event.which、そしてAIと一緒に削った過程をまとめています。
WordPress

PDFのサムネイルが真っ白になる。エラーはどこにも出ない

PDFをアップロードするとサムネイルが真っ白になる。エラーはどこにも出ません。原因はGhostscript 9.27以前が描画に失敗しても報告せず、白紙のページを返すことでした。4環境での切り分け、delegates.xmlが読まれていなかった話、そして同一リクエストでの4実装の比較計測をまとめています。
WordPress

WordPress にパスキーでログインするプラグインを作りました|Rapls Passkey

WordPress の管理画面にパスキーでログインできるプラグイン Rapls Passkey を公開しました。既存のログイン画面を置き換えず、パスワードを残したままパスキーを1つ足す設計にした理由と、端末を失くした人をどう戻すかの復旧経路の話をまとめています。無料版はWordPress.orgから。
WordPress

PS Auto Sitemap の代わりを作った|4年空いていた場所と、そこで決めたこと

HTMLサイトマップの定番だった PS Auto Sitemap が止まって4年、代替が定着していません。移行のコストが理由に見えたので、そこを消すことを設計の中心に置きました。決めた5つと、公開までの記録です。
Web Development

8割をAIと書いたコードを、1年後の自分が読めなくなった話|「動いた」は完成じゃない

8割を AI と書いた WordPress テーマを1年後に開いたら、自分のコードなのに読めませんでした。重複した関数、散らばったヘルパー、放置されたデッドコード。読めなくなった原因と、次に同じ轍を踏まないため自分へ課した6つのルールを、実体験でまとめました。
Web Development

Qiita には画像アップロードの API が無かった|予約投稿プラグインで詰まって、URL 埋め込みに切り替えた話

WordPress から Qiita へ予約投稿するプラグインを自作中、画像を Qiita へ送ろうとして API が見つからず詰まりました。公開 API に画像アップロードの口はありません。WordPress メディアや Cloudflare R2 の URL を本文へ埋め込む方式へ切り替えた検証メモです。
AI

施策が効いたのか、効かなかったのかが分からない|有効インストール10未満のプラグインで、計測の前提を間違えた話

OpenRouter の無料キー導線で AI チャットボットの初回の壁を下げましたが、有効インストールは10未満のまま動きません。効かなかったのではなく、効果を語れる母数も、どこで離脱したかを知る計測も持っていませんでした。個人開発の計測設計を実体験で書きます。
WordPress

プラグインが 24 時間反映されない?WordPress.org の配信保留が全プラグインに広がっていました

SVN にコミットしたプラグインが 24 時間配信されない原因は、2026 年 6 月 5 日に WordPress.org が全プラグインへ広げた配信保留です。仕様変更の経緯と、急ぐときに zip を手動アップロードして上書きする手順をまとめました。
WordPress

WordPress.org の SVN で初めてプラグインを公開した話|Git しか知らなかった個人開発者の記録

Git しか使ってこなかった個人開発者が、WordPress.org の SVN で初めてプラグインを公開した実体験です。assets はリポジトリ直下、commit は即配布、Stable tag と tags/ の一致。詰まった3点と、commit 前に見る svn status と svn diff、画像のサイズまでまとめました。
タイトルとURLをコピーしました