4月15日
というわけで(先週末に) website を刷新した。刷新とは言っても,内容が変わったわけではない。外観を作り直して,そして backend の CMS もまたゼロから書き直した。
外観を前回いじったのはいつだったかな,と Internet Archive を掘り起こしてみると,どうやら 2005 年のことらしい。もう 13 年前だ。CMS の書き換えも 10 年ぶりのことになる。13 年前と現在とを比べてみると,web 周りの技術もものすごく変化した。ようやくこの website も時代に追いついた感じがある。
外観を書き直したのは,smartphones からの閲覧に対応したかった,というのが大きい。13 年前はガラケーに対応していればよかった(つまり "tty" 用の CSS を用意しておけばよかった)のだけれど,もはやガラケーで web を見ることは少なくなり(しかも CSS における tty 指定が obsolete になり)代わりに "responsive design",つまり表示装置の画面の大きさを取得して,それに応じて使う style を変更する,みたいな技術が当たり前になった。というわけでようやくこの website も smartphones から快適に読めるようになった。とはいえ smartphones 用の画面はまだ十分に検証していないので,iPhone で実際にやってみて調整していこうと思っている。
外観と言えば,最近は web 用の font が無料で使える時代になったので,それを試してみた。日本語の表示がちょっと遅いのはそのせい。飽きたら標準に戻すかもしれない。そのほかにも 13 年前に比べると,数式の表示技術も大幅に進歩した(というか 13 年前には使われてなかった)し,同様に program codes の表示も手軽になった。まあこれらはこれまでに逐次的に導入していたので,今回の変更点ではないのだけれど,しかし 10 年というのは何もかもを変えてしまうなあと驚いている。
とまで書いてすっかり忘れていたのだけれど,今回から JavaScript を「ふつうに」使うことにした。10 年前はガラケーからも読めるようにしたかったので,たとえば日記の comment 書き込みのときに「書き込み画面」みたいなものに移動しなければならなかったのだけれど,今回ガラケー対応を捨てた結果として(&通信速度が大幅に向上した結果として),画面遷移なしで comment が書き込めるようになった。あとは時刻の表示も JavaScript にやらせるようにした。まあしかしこれは 10 年前にも普通に使われていた技術だし,本当に簡単なことしかやらせていない(AJAX すら使っていない)ので,たいしたことはない。
外観は刷新したけれど,内容はほぼ変わっていない。というか変わりようがない。Physics の内容が増えてきたので整理した(&dropdown menu を導入した)ぐらいだ。どの言語で書くかという問題も紆余曲折を経て,今の形,つまり Physics は英語のみ/それ以外は日本語を中心とした色々な言語,で落ち着いた感じがある。
Backend の CMS の更新は大変だった。0.3 人月ぐらいかかった。当初は public な static CMS を使って書き換えたい
と思っていて,Lektor とか Hugo とかを試したのだけれど,それでも論文とか講演とかの整理のためにそれらを customize しようとおもうとまずはそれらの CMS を理解しなければならなくて,それならそういう public CMS に似せて,過去の code も流用して,ゼロから書いた方が早そうだと思って,Python で全てを書き換えた。ので大変だったのだけれど,Python は公開 packages が充実しているので助かった。そのおかげで 0.3 人月で済んだ感じだ。以前の codes は 2008 年から継ぎ足し継ぎ足し書いてきたので(幸い spaghetti にはなってなかったのだけれど),10 年間継ぎ足してきたものを 0.3 ヶ月(分の労働力)で全て書き直すことができたのは,public codes のおかげだ。あとは Python の書きやすさも大きい。Template engine もついに導入できた。Git 連携も導入したので,LaTeX で書いている CV を書き換えるとほぼ自動で website の論文・講演一覧も書き換わるようになった。ようやく時代に追いついた。