1814 words
9 minutes
terminal horizon
2025-11-18

(画像がデカすぎる)


はじめに#

2025年ももう11月終盤に差し掛かっていますが、 皆さんいかがお過ごしでしょうか。

この文章を執筆時点ではCloudflareが障害真っ只中であります。

ブログ最初の記事として、

  • ブログサイトを作成するに至った経緯
  • このサイトの技術構成(と選定理由)
  • どういう雰囲気で運用していくか

の3点について簡単に紹介したいと思います。


Only my site to blog#

blogの動機#

学生の頃は hatena blog にて、学期の区切りなどに振り返り記事などを投稿していた。

最初の投稿は大学一年の夏休み前くらいで、開設理由も述べていた。 当時の記事から引用すると、

そして、今回ブログを開設しようと思ったのは以下の理由からです

  1. 日記のようなものを残しておきたいが紙の日記では続く気がしなかったので不特定の読者がいるであろうブログが良いと思った
  2. facebookに長文を投下するのは憚られるので代わりのメディアとして
  3. twitterはノリが軽すぎるため
  4. 迫り来る夏休みに向けて目標をたて、スケジュールの可視化、管理を行うため

こんなところです。固いこと書いてますが中身は割とテキトーですので👋

https://sifi-border.hatenablog.com/entry/2017/07/09/181246

(今の自分には書けないような文体で趣がある。)

モチベーションの根底は現在にも通じているように感じる。

感覚的なモノなのでざっくりとしか言語化できないが、未来の自分を含む不特定多数の人間が見られる場所に現在の思考を晒すことで、何とか存在を証明したいのだと思う。

blog site 作成に至った経緯#

hatena blogの最後の投稿は就活体験記であり、社会人になってからは更新できていない。

今年度で社会人3年目であり、仕事にも慣れてきた&そろそろ新人では通らなくなりそうというのがあり、自分の活動を記録したりアピールしたりできる場所が欲しい気持ちが強くなってきていた。

ここではてなブログで投稿再開することも検討しないではなかったが、software engineerの端くれとして自分のサイトを運営したい気持ちもあり、 Claudeに相談しながら検討を重ねてできたのが当サイトである。


技術stack#

簡単に技術的な側面とその採用理由(経緯)について触れていく。

前提のモチベーションとして、stable かつ modern な技術で simple に構築したいというのがある。

Astro - web framework#

frontend周りのフレームワークに関する知見がないので、リサーチからClaudeにお願いしたところ、Astroというのが良いらしいという話になった。

withastro
/
astro
Waiting for api.github.com...
00K
0K
0K
Waiting...

見てみると jsが含まれる領域とそうでない領域とを区別し、 SSG1で静的コンテンツを軽量に配信できるのがウリのようだ。

Astroはアイランドアーキテクチャと呼ばれる新しいフロントエンドアーキテクチャパターンを提唱し、普及させました。アイランドアーキテクチャでは、ページの大部分を高速な静的HTMLとしてレンダリングし、インタラクティブ性やパーソナライズが必要な箇所に小さなJavaScriptの”アイランド”を追加します(たとえば、画像カルーセルなど)。これにより、多くのモダンJavaScriptフレームワークで問題となる巨大なJavaScriptペイロードによるレスポンス低下を防げます。

https://docs.astro.build/ja/concepts/islands/

公式チュートリアルでは簡単なブログを作成しながらフレームワークの概要を学べ、ほぼそのまま個人サイトに流用できそうだなと考えていた。

Fuwari - blog template#

チュートリアルには含まれなかった blog の要素で、個人的に欲しいと思っていた機能が以下の4個.

  • 数式のrender
  • 良い感じの code block
  • 記事の分量 + 読了時間目安
  • RSS feed

これらをちまちまastroで開発していくことになるんだろうと思っており、参考になりそうな既存のサイトを探そうと公式の theme を眺めていたら見つけたのがこのfuwariであった。

saicaca
/
fuwari
Waiting for api.github.com...
00K
0K
0K
Waiting...

オシャレかつシンプルなデザインに惹かれ demo サイトを見ると、上記に挙げた基本的な機能が網羅されており、「ほなこれでええか」となってしまった。

eiπ=1e^{i \pi} = -1hoge みたいなインラインはもちろん、

f(x)=f(ξ^)e2πiξxdξf(\relax{x}) = \int_{-\infty}^\infty f(\hat\xi)\,e^{2 \pi i \xi x} \,d\xi
fn main() {
println!("Hello fuwari!");
}

のようにブロックとしてもいい感じに表示してくれる。

加えて画面右端にtoc(table of contents)が表示されるのも嬉しい。(ただ表示幅の関係で縮小したりしないと現れないのが残念)

githubを見るとある程度活発に新機能の追加やバグ修正が行われていそうで、期待しています。(他力本願寺)

個人で疲弊しながら開発するよりも、熱量のあるコミュニティの恩恵に預かった方が本来の目的を達成しやすいと判断し、ありがたく便乗しています。

Netlify - deploy#

デプロイ先の候補は Netlify と GitHub Pages の二択だったが、前者を選んだ。

理由は色々あるが、大きかったのは (軽く調査した感じでは) 独自ドメインの証明書発行が簡単そうだったからだ。

当てにしていた解説ブログと設定項目などが変わっており若干苦労したが、Lets encryptで証明書発行までやってくれたので楽だった。

Cloudflare - DNS#

独自ドメインを取得する段になり、これも色々あるようだったが、Cloudflareにした。

DNSの設定も同一サイト内でできるのと、アクセス解析など機能が充実していそうだったからだ。

大手っぽそうというイメージがあり信頼を寄せていたが、早速障害に見舞われておりうーんとなっていた。


これから#

OSS開発者の皆様に頭が上がりません。

本 blog を作成するにあたって改めて hatena blog を読み返してみたりしたのですが、過去の自分の文章って読むのが恥ずかしいんですけど、味わい深いですねやはり。

今後自分を見失いそうになったり記憶喪失になったりした際に読み返して自我を取り戻せるような文章を投稿していきたいです。

なるべく定期的に。

Footnotes#

  1. Static Site Generation. SSR(Server Side Rendering(レアリティではない))ではない.