最近しんどいことが多いが、頭が働くとき(おもに深夜)には、ブログをちょこちょこ改造している。大幅なデザイン変更を除いては、ほとんど誰も気がつかないような細かいところを少しずつカスタマイズしている。今日は昨日と打って変わって朝から調子がいいので、またカスタマイズしてみた。今までのしょぼい検索ボタンを、GoogleAPIを使ってGoogleカスタム検索に変えてみたのだ。
いろいろカスタマイズしようとして「ここをこうしたい!」と取り掛かるが、何をどうしたらそうなるのか、なかなかうまくいかずに試行錯誤している。そもそも私はウェブ周りの知識には乏しいのだ。
思えば自分ははずっとインフラの道を進んできた。大学での研究テーマも「分散OSにおける耐障害性」というようなインフラ的なものだった。就職しても、ずっとインフラの仕事をしてきた。
大学を卒業して最初の会社に就職した20年ほど前は、「オープン化」「ダウンサイジング」という言葉が飛び交っていた頃で、メインフレームを中心としたシステム構成から、商用Unixで構成されたクライアント・サーバ型オープンシステムへの過渡期だった。Linuxはビジネスに使えるほど成熟しておらず、Windowsもまだサーバとして使うのには、不安定すぎた。そういう中で、Unix用のミドルウェアを開発したり、サーバやネットワーク周りのインフラをずっと担当してきた。
技術の進歩が早いこのIT業界では、常に新しい知識、スキルを身に付けることが要求される。ついていけなくなったら、その時点で自分は「エンジニア」を名乗る資格はなくなるだろう、そう思っている。
しかし、業務でしか身につけられない知識、スキルもある。インフラなんてのはその典型で、実際にサーバのクラスタリングやら本格的な仮想化やらルータやスイッチの設定やら、自宅で本を読んだりネットで勉強したところで身にはつかない。まあ、金が余りあるほどあれば、自分でサーバルームを作ってサーバとネットワーク機器をわんさか買えばできなくもないが。
ずっと仕事をしていないと、頭はどんどん鈍っていく。最近ブログの改造を始めてから、「ウェブ関連の技術だったら家でもいくらでも勉強できるではないか」と今さらながら気がついた。そこで、少しずつブログをカスタマイズすることによって、いろんな知識を断片的に拾い集めていっている。せっかくインフラの知識が役に立って、自宅サーバでブログを書いているのだ。インフラのスキルは自宅では身につかないが、ウェブ関連なら自宅でもできる。少しでも何かを身につけておきたい。そして、頭を使わないと、どんどん脳みそが錆び付いてしまう。
そんなこんなで、今さらながらいろいろ勉強している。勉強、というよりかは遊んでいる、という方が自分の感覚に近いのだが、DOMやらXHTMLやらAjaxやら、ちゃんと中身まで理解していなかったので、今までいろんなサイトで「これはどうやっているんだろう?」とぼんやりと思っていたのが、「なるほどこの技術を使っているのか」ということがわかるようになってきた。
このブログはMovable Typeという比較的メジャーなCMS(Content Management System)を使っている。その中で使えるMTMLという言語がある。いや、言語というか、コンテンツを作成する際のテンプレートの中で使える拡張タグであるが、変数も条件文もループも使えるし、基本的なプログラム機能を持ったメタタグといったところか。HTMLの中にMTMLを混ぜ込んでいって、ブログ記事やらアーカイブページなどのテンプレートを作成する。
Movable Type自体はPerlで書かれているが、その中でPHPのコードが出力されたり、さらにそのPHPでJavascriptをリクエスト時に作成していたりする。MTML、Perl、PHP、Javascriptの文法がごった混ぜである。いちいち文法を見直す。そしてレイアウトの細かい調整ではCSSをいじるのだが、このCSSも本当に初歩的なことしか知らなかったので、いろいろ勉強になっている。IEとChromeでFirefoxで見え方が違ったので、CSSハックも使っているのだが、あまりこういうやり方は好きではないなあ。
まあ、調子がよいときはできるだけ頭を動かして、新しいことをやってみよう。