Astrologian
3. "Boredom and drudgery are evil." by Eric Raymond
まずAstroって名前がいい
いきなり「推しの顔がいい」みたいな情報量ゼロの話から始まりますが、どうせネットの片隅で書くオタクの独り言として聞き流してください。
親に買い与えられた図鑑の影響で幼い頃から宇宙が好きでした。
高校生の頃はAstから始まるPSNIDを使っていたし、当時比較的無名だったAstroのMixAmpを(性能はもちろん)名前も好きで気に入って即購入し、FFXIVのメインジョブはもちろん占星術師。
というかこの記事読んだ人が関西の民であればぜひ彼氏彼女を連れて「星カフェSPICA」という大阪市中央区にあるバーに行ってください。
まぁ名前からでも好きになれるっていいことですよね。ね?
JavaScriptって名前がどうしても好きになれなくてJSって呼んでるし、無性にコーヒー飲みたくなるんですよね。このブログからTypeScriptで書くことにします。
Enhanced-HTML感覚で扱える
JavaScript、スキル面でもそこまで得意でもないんですよね。
なんだかんだ書き始めたら楽しいのですが、「これHTML/CSS側で書けたら綺麗だよなぁ」という悩みを、そもそもビルド後に残さないという方針だけで排除できる。
逆方向の話をすると、const siteTitle = 'Que sais-je?'のようにconstを、HTMLで変数的な扱えるのも素晴らしかったです。
前の話で軽く触れたようにtypoの修正も一箇所で済み、何より精神衛生上すごく楽。
視覚的にもインデントが深すぎる箇所を切り分けたり、情報がみっちみちに詰まった気の重くなりそうなHTMLを、SCSSのパーシャルみたいに綺麗に分離出来るのもいい。
合計が同じくらいのサイズでも、1ファイル単体で何百行もあるコードって読みたくならないですよね。
分割のためだけにvue.jsを導入するとなると自分には少し難解で、なによりこの規模でそこまでやらなくていいんじゃない? という気持ちが湧いてきます。
直感的に書けるっていうのは明確なAstroの強みだと感じました。
コンテンツの置き場所を選ばない
Obsidianのmdをそのまま記事にできる
これも私事なんですけど、アイデアなどをObsidianに突っ込みがちなので、そのmdを清書するだけでブログ記事に出来るのが良かったです。
文章エディタとしても使われがちなNotionとか、少し用途はズレてるけどVSCodeとか、見た目はクリーンでモダンですが、文章を書くには多機能すぎて落ち着かない。
何より細かい見た目を弄るのは無理だったりコストが高かったりする。
文章を書く時はね、誰にも邪魔されず自由で、なんというか救われてなきゃあダメなんだ。
一方のObsidianは配布されたテーマに少しCSSを編集するだけでぼくがかんがえたさいきょうのテキストエディタになるので、あまりにモノを書くのに向きすぎてるんですよね。
しかもそこで書いた.mdをほぼそのままディレクトリに入れるだけ完成。
AstroのfrontmatterもObsidianに慣れてるので取っつきやすく、流用も出来、なんならフォーマットを揃えれば万事恙無し。
Notionで書いてそのまま記事にできる(まだ試してない)
Notionは御存知の通りWYSIWYG編集が可能なドキュメント管理ツールですが、コネクトトークンさえ発行しちゃえばAPI経由でDBの内容をそのまま外部にインテグレーション出来るっぽいんですよね。
つまりやろうと思えば、
Notion :: 記事を書く
TypeScript :: fetchして受け取った.jsonを.astroに変換
Astro :: Staticなサイトとして生成
という流れは作れそう。
端末問わずどこからでも開けて編集でき、モダンでシンプルなインターフェイスというNotionの良いところを、細かくスタイリングが可能なWebサイトを結びつけられたら、技術に明るくない人でも簡単にブログが運用できるようになる。これってCMSの進化系みたいで素敵じゃないですか?
あと、この構成だとbuildしなければfetchも発火しないのでそこもissueになりそうですが。
話題が少しそれますが、一時期IFTTTって流行ったじゃないですか、最近めっきり話聞かなくなっちゃいましたけど。
最近はAIの流行もあってかAPI(orWebhook/MCP)経由の操作を重視する流れが生まれつつあって、形は違うけれどあの時の流れに近いものを感じます。
お硬めの印象があるSMBCですらアプリ内で外部サービス連携出来るようになりましたし。
こういう風潮って、サービスとサービスを繋ぐことで人間がデータ入力から解放されつつ、利用者個々人がプライバシーのコントロールしやすい社会になっていく素晴らしい流れだと思うんですよね。
と偉そうなことを書いたのですが、既にヘッドレスCMSという概念があることを書いてから知りました。己の無知を恥じ入るばかりです
PHP非依存
正直なところ自分がphp触ったのって過去にWordPressで簡単なカスタムテーマ作った時くらいなんで、イメージで語っています。すみません。
自分が小学生の頃、いくつかのECサイトでSQLインジェクションが話題になったことがあり、自分個人としては「phpは安易な作りにできない敷居の高いもの」というイメージがあるので、PHPを使わないで済むならその方がいいと考えています。
久々にブログを運用し、ここまで書いて、自分は感動したこと・好きなものを他人に共有したいというベースでしか文章を書けない人間だと痛感しました。
とってつけたように「PHP非依存」みたいなセクションを設けましたけど、後ろ向きな視点なので書いてて苦痛だったんですよね。PHP楽しいとか思ったら多分手のひらクルクルして「PHP最高!」って記事書いてるかもしれません。
Node.jsをまともに使うのも今回が初めてでしたけど、Astroのbuild程度では詰まるところもなく、サーバーへのデプロイもいつも通りで、正直書くことなかったです。
いつも通りだからこそ感動しているのに、それ故に書くことがないって皮肉なもんですね。