プログラミング

このところ数ヶ月、プログラミングに関心が向いてきた。
その理由をちょっと考えてみることにする。


はじめてプログラミングをしたのは、小学生の頃か。
ハノイの塔 - Wikipedia
http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%8E%E3%82%A4%E3%81%AE%E5%A1%94
何か本を見ながら、これ関係の簡単なプログラムをベーシックで書いて、
10分オーディオテープに保存してた。ガーガー音がしてたのをなんとなく覚えてる。
でもそれ以上興味が湧かなかった。そんなところ。
ゲームをつくろうとかそういう気持ちは全然なかったな。


次は、大学入学後。よくわかんないけど、そういう会社の
ラボを出入りしてて、HTMLってこうやって書くんだみたいなのを
教わった。おー、表示される。という感じ。2000年の話。
あの頃はタッチタイピングできることがすごいと思ってた。
いまどきそんなこと思っている人はいないだろうな。


javascriptでアラートが出るとか、まあ単純なところを
本を読んだり、「とほほ」とか見てやってた。
Perlで掲示板とかアクセスカウンターとか。
PostgreSQLからデータを引っ張ってくるとかしてた。
アルバイトになって、XSQLでデータを引っ張ってきて
XSLTを使って表示とか、画面遷移がどうのこうのとか始まる。
2001年になって、iアプリ用のゲームをJavaでつくるとか
まあそんな話で、ゲームに興味持てなくてやめた。
Javaの本も見てみたけど、それで何をやるかが
よくわかんなくなって、やる気がなくなっていった。
自分が知らなかっただけかもしれないけど、当時は
掲示板、アクセスカウンターくらいしか個人が使うものって
見当たらなかったような気がする。


2001年5月にPCを買って、寮内LAN共有の常時接続環境で
インターネット生活が始まる。プログラミング生活は止まったけど。
デザイン凝るのもいいけど、大切なのは「言葉」であり
文章なんだよな。余計なものなんてほとんどいらないんだから。
今思ったが、当時と今とでほとんど変わってない。
情報に対する飢え度合いとか、使ってる時間とか。
でも1つだけ大きく変わった。道具だ。
マシンスペック、回線速度、ソフトウェア、ウェブアプリ
どんどん効率が上がったから、アクセスできる情報が増えた。
一番大きな変化はソーシャルブックマーク
年間6000ブックマークしているけど、それまではずっと
ブログに書いてたことがここに来ただけだから
それ自体にたいした違いはない。
海外のソーシャルブックマークで上がってきた記事を
読み始めたら、日本の記事で「なんだ、いまさらかよ」と
思うことが増えた。情報源をダイレクトに見てるから
まあ当然といえば当然だけど驚いた。


そんな感じでネット生活が続いていたわけだが、
プログラミングが気になるきっかけとして
adblockgreasemonkeyPlagger
この3つのツールの存在を知ったことが挙げられる。
共通点は、自由であること。コンテンツは与えられたままじゃなく
自分の見やすい形に加工して、好きなように見るということ。
ポップアップとかヘッダーに出てくる広告がずーっと邪魔だと
思ってたし、ここちょっと見難いって思うことはよくあった。
目でフィルタリングももちろんしてたけど、やっぱり
そもそも存在しない方がいい。楽だから。
コンテンツの見せ方はユーザーにゆだねられるべき。
少なくともその可能性は残すべきだと思った。


5年前に比べたら大きく環境が変わった。
googlemapとかamazonとかFlickrとか膨大な情報を持つ
データベースがどんどん無料で公開されるようになった。
しかも、先人の遺産(モジュール)が大量にあるから
5年前に比べると、手間は大幅に削減される気がする。
ほとんどブラックボックスで使えるのであれば、
たいした知識がなくても、いろいろできそう。


この「いろいろ」をもうちょっと具体的に。
Greasemonkey - Googleラジオボタン押したら検索
http://a-h.parfe.jp/einfach/archives/2006/0106171150.html
ダブルクリックで はてなブックマーク に追加する Greasemonkey Script - ◆F99a.q8oVE::Blog
http://blog.f99aq8ove.net/archive/2006/05/1146485659.html
この二つは特にすごいと思った。一手間省くスクリプト。
マウスカーソルをどっかにあわせるってのは、けっこう手間がかかる。
どこでもいいからダブルクリックっていうのがすばらしい。
ショートカットより速そうだから、keyconfig要らずかも。
機械というのは、単純作業を人間がやらなくてもいいようにするものだ。
個人的にそう思っている。ちりも積もれば山になるわけだし。


CountDownTVからランキング情報を取ってきて、その曲をyoutubeで探して
アウトプットする作業を自動化するなんて、plaggerすごいと思った。
CDTubeβ - カウントダウンチューブ
http://pulpsite.net/cdtube/
ちょっとUIがアレなmixiにはアクセスせず、新着日記がgmail
送られてくる日記ってのも理にかなってる。
Monologue:PlaggerBloglinesMixi日記をGmailに送る。
http://blog.teachat.org/archives/50445349.html
デジタル情報が公開されていれば、アイデア次第でくっつけて
いろいろと加工することが可能になってきている。
先人の知恵が蓄積されているんだから、面倒な作業が減って
楽しそうな作業ばかり残っているような印象を受ける。
ある程度のレベルまで行けばいろいろ考えないといけないのかも
しれないけど、当分そんなレベルにならないから、楽しめそう。
ポールグレアムのハッカーと画家を読んだり、
Perlのすごい人たちのブックマークを購読してたり
会社で泥臭い作業をしなくなったりしてくると、
自分の中でなんとなくそういう方向に向いてきた。


ソフトウェアのカスタマイズから一歩進んだくらいの
ゆるめのプログラミングってのもあっていいと思う。
でも、まだ何もはじめてないけど。
それに、自分はコードよりも文章を書くのが好きだったりする。