先日 Hugo + Cloudflare Pages + GitHub に移行したばかりのこのブログを、スマホからどこまで更新できるのか試したくなった。 Claude Code のモバイルアプリ に Code 機能が載っていて、GitHub 連携してリポジトリを直接いじれる。先日書いた Vibe coding 本では「Claude Code にドラフトを書かせて GitHub 側でレビュー・推敲する」という分業フローを推していたのだが、それをそのままブログ更新スタックに持ち込めるかという実験でもある。
まず、モバイルアプリで Claude にネタを投げてドラフトを書かせ、ブランチを切って 2026-04-25-mobile-blogging.md を作成、categories に private を入れた状態で push する。private タグが付いている間はメニュー導線から辿れないので、人目に触れず Cloudflare Pages のプレビューで仕上がりだけ確認できる。本で書いた「生成は Claude、判断は人間、履歴は Git」の役割分担がそのまま効いていて、誤字や事実誤認があっても公開前に落ち着いて直せる安心感がある。
仕上げは GitHub に切り替える。当初は GitHub 公式モバイルアプリのコードエディタで直接いじるつもりだったが、このアプリは画像のアップロードに対応していないことが分かった。スクショを 1 枚足したいだけでも詰むので、最初からモバイル Safari でデスクトップ表示の github.com を開いた方が早い。ブラウザ版なら page bundle のディレクトリで「Add file → Upload files」が普通に使えて、写真ライブラリから画像をそのまま放り込める。アップしたファイル名は IMG_xxxx.png のままでよくて、Claude Code に「これを本文の適切な位置に挿入して、ファイル名もリネームして」と頼めば、Markdown の ![…]() 参照と git mv までまとめて処理してくれる。文章の追記修正も、結局このブラウザ版エディタでやれば画像問題に詰まらないし、プレビューも付いている。
ほぼ 10 年ぶりにこのブログを更新した。最後の更新は 2016 年 4 月で、当時の月次 AWS コスト(合計 0.69 USD)を報告していた。最近 Vibe coding にハマっていて、プライベートなブログも簡単に書けそな気がした。そこで、古くメンテナンス性のよくないブログシステムを 2026 年のスタックに作り直した。
旧構成は Octopress 3.0 + Jekyll 2.5.3 (Ruby 1.9.3) で rake generate して s3cmd で AWS S3 に放り投げ、DNS は Route 53、という 2014 年頃にベストだった配置で止まっていた。NGS Tips は別途 gitbook 化していて、こちらもノーメンテ。問題が (1) HTTPS が提供できない、(2) ソースがローカルにしか無くロストリスク、(3) bundle install が現行環境ではもう通らない、(4) Universal Analytics は 2023 年 7 月に停止済みで計測も死んでいる、と 4 つ揃っていて、触るに触れない状態だった。
そもそも、最近は、Ruby をあまりさわらなくなった。R すらほぼ書いていない。ほぼ Python になってしまった。Python すら Claude か Codex がほぼ書いている。
新構成は Hugo + Cloudflare Pages + GitHub にした。Hugo は Go 製の単一バイナリで Ruby/Node 依存ゼロ、Markdown ネイティブで活発に開発されている。Cloudflare Pages は無料・HTTPS 自動・GitHub 連携で git push のたびに自動ビルド・デプロイ、PR ごとにプレビュー URL も発行される。10 年経つと、課金しなくても十分すぎる選択肢が手に入る。
先日導入した、橋本義肢製作株式会社のフェルトデスクマットは、ちくちくしたりかゆなったりはしないが、細かい毛が発生する。毛足長めのセーターを着てるときぐらいは出る。みためにあまりよくないし、マグのなかにはいりそう。そこで、キーボードも新調したし、デスクまわりの掃除グッツを導入した。
まずキーボードの掃除用に世田谷電器 HAKETE 60mmロング ブラシとエアリア ゼンクリマックスを購入した。さらにキーボードだけでなくデスクやデスクチェアなどの掃除のために、Shark EVOPOWER DXも購入した。Sharkは欲しい色が高かったので妥協したが今見たら安くなってたし。
一日中 Vibe coding しているので、指関節が痛くなってきた。Touch IDを使いたいので、Apple Magic Keyboard with Touch ID を使っていたが、こいつは打鍵したときに底突きする衝撃が指関節にくる。そこでキー荷重軽めで、底を突く感じが少ないキーボードを Opus 4.6 と検討した結果、以前使っていた REALFORCE シリーズの REALFORCER R3Sをおすすめされたので衝動的にポチってみた。指紋認証問題はMacBook Pro開きっぱなしで使えばいいということにした。
もともと厚みのあるキーボードが苦手なので、ロープロファイルのキーボードも探してみたが、一緒に購入した Keychron 木製パームレストを使えば違和感なかった。REALFORCEの純正パームレストもあるみたいなので夏はAluminum Wrist Restを試してみたい。
ロープロファイルキーボードとしてNuRphy Air 65 V3も購入してみたが、若干底を突く感じがあり、R3Sに軍配が。こっちはラボに持っていこう。
また、ついでに、橋本義肢製作株式会社のフェルトデスクマットも購入。ちくちくしたりかゆなったりはしないが、細かい毛が発生する。使っているうちにでてこなくなるのかな?
音声入力でVibe codingしているひともいるみたいだけど、個人的にはプロンプトは何度も推敲したい派なので、音声入力はうまく使えていない。
s
3月分の invoice が届いた。
Service $ R53 0.55 Data transfer 0.11 S3 0.03 Total 0.69 今日のレートで76.90円ぐらい。
2月分の invoice が届いた。
Service $ R53 0.55 Data transfer 0.19 S3 0.03 Total 0.77 今日のレートで87.54円ぐらい。
このサイトで利用しているAWSから請求がきた。S3, Data transfer でそれぞれ$0.03, R53に$0.55で、合計$0.61だった。今日現在のレートで71円ぐらい。
GitBookで書いている Bioinformatics Tipsを少し更新した。 なぜかMarkdownがHTMLに変換されなかったが、SUMMERY.mdを更新しないと HTMLにならず、markdown のままだった。
あと前回の記事作った Rakefile では、GitBookのHTMLをOctpressのディレクトリに 出力できなくなった。なので、単純に gitbook build したあとに、cp -a _book [octopress]/source にコピーすること にした。
このサイトを整理しはじめたので、ついでに gitbookで書いてきたバイオインフォマティクスのTips集を、このサイトに統合した。 並行して進めていた研究のほうの計算結果が期待外れだったので現実逃避。
バイオインフォマティクスTips これまでは github においていたが、こちらに統合したほうがみやすい。 ただ gitbook で出力したページから Octopress のページのほうにリンクバックできないのが不便かもしれない。
更新の方法をメモしておく。 まず、いつも通りにgitbookのディレクトリに markdown 形式で tips を書く。 その後、以下のコマンドを実行する。
rake build 実際は、
gitbook build ./ [octopressのsourceディレクトリ] を実行すればよいのだが、忘れるのでRakefileにしておいた。 すると、gitbook で静的ページを Octopress のディレクトリに出力する。 あとは Octopress のディレクトリに移動して、
rake generate rake deploy とすればS3バケットが更新される。
gitbookのMacクライアントも改めて試してみるが、日本語環境ではフォントが崩れたりしていまいち。 今後もSublime Text 3で編集することにしよう。
そうこうしているうちに計算がうまくいっていない理由を調べる方法が思い付いたので明日試してみよう。
間違えてVM落して放置していたこのサイトをS3で復活させた。が独自ドメインの振りかたがわからん。 R53使わないと駄目なのか?
ここみながら sublime Text 3 の設定を修正。Package Control を入れ markdown 関連の設定をする。どうやら、Cmd+Shift+pで Package Controlが起動するようだ。Markmonを入れ、Package Control から Markmon launchすると ウェブブラウザが起動し、リアルタイムでMarkdownがレンダリングされていく。快適すぎる。
octopressの更新の仕方を忘れているのでメモ。まず octopress, s3cmdを入れる。
ブログの更新のしかた # rake title['タイトル'] rake generate rake preview # プレビューを確認したいなら rake deploy ページの追加の方法 # rake new_page['dir/title'] 以下を編集してメニューバーに入れる。
source/_includes/custom/navigation.html rake generate rake preview # プレビューを確認したいなら rake deploy