プログラミングを趣味にするためのコツ

入門Ajax」を買ってみました。日本語で読めるものとしては現時点で入手できる唯一のAjax本……だと思いますけど、どうなんでしょうね。
ま、とりあえずざっと目を通してみました。
Ajaxでは横断的に各種技術を用いるので、キモの部分はやっぱり敷居が高いよなあと思います。HTMLは言うに及ばず、Javascriptは当然必須。PerlPHPのようなスクリプト言語だとかMySQLPostgreSQLなどのRDBMSについても知識が必要などなどなど。ほかにも文字コードの話だとか、細かいところを挙げていけばキリがありません。むーん。
とはいえ「なんか難しそう!わかんないからやーめた」ではなんともならんのですな。
幸いなことに本書ではGoogle Maps APIについての記述に多くの分量が割かれていて、これならサーバサイドのことは気にしなくてもなんとかなりそうです。難しかったり細かかったりする話もないではないですが、とりあえずサンプルコードを打ち込んでしまえ!そうすればやってるうちになんとなくわかったような気になれるかもしれないよ!という態度で臨むのがよろしいのではないかと。
えーとですね、わかんなくてもいいからとにかく読み進め!そしてサンプルコードを打ち込んで動かしてしまえ!ってのはプログラミングの教則本を読破するためのコツだよなあ、と思うですよ。大体その技術について知らないから教則本なんか読むわけで、それで引っかかるところがあちこちにあるなんてのは当たり前でしょう。それで逐一立ち止まるのも確かに結構だけど、じゃあリファレンスなんかを引いてしっかりはっきり理解できるかと言えば、そんなことまずありません。結局ああでもないこうでもないと試行錯誤をしつつ実践投入してみないことには身に付かない。英和辞典を読み通したからといって英作文も翻訳もバッチリってわけじゃないのと一緒ですな。
だからこそとにかくやってみろ!ってことになるわけです。わからないことは逃げたりしないから、とにかく未開の地をかきわけかきわけ進め、と。確かに居心地は悪いかもしれないし、わからないままに放っておいたせいで後で苦労する可能性は否定しません。でも後のことは後で考えりゃいいですよ。そんなふうにやや乱暴に進んでるうちに、気がつけば結構遠くまで来ちゃったなあ、ってことになったりするもんです。いちいち立ち止まってたらそこに到達する前に力尽きちまうのが関の山。
まあこんなの当たり前っちゃー当たり前のことなのかもしれないです。仕事でやるならそんなこと言ってる間もなく実戦に叩き込まれるんだからなおのことだし。でも「プログラミングとか一回やってみたいんだよねー」って人にとってはそうではないのかもなあ、と思ってこういうことを言ってみるわけです。結構私の身の回りにはいるですよ。そういうこと言ってる人が。で、死ぬほどブ厚い「入門Visual C++」とか買って途中で挫折したりしてな。まあC++については私も同じような挫折の仕方をしてたりするんで、あんまりデカいことは言えませんが。
とは言うモノの、いくら「とにかく手を動かすのだー」と言ってみたところで、サンプルコードを打ち込んで得られる結果になんの手応えも感じられないとちっとツラいのかもしれません。第一歩がメッセージボックスに「Hello,World!」ってのは仕方がないにしても、早いうちから目に見える結果が得られるのは重要。
そういった意味でGoogle Maps APIってのは脱初級者を目指す人向けにはいい教材なのかもしれないと思いました。AjaxといいつつもJavascriptのことをちょっと知ってればなんとかなりそうですからね。なんたって自分のサイトにぐりぐり動かせる地図が表示できるんだから、成果としてはわかりやすさ、手応えについては言うことなしかと思います。サポートページにはGoogle Maps APIリファレンスの日本語訳もあるので、気になったところをちまちま調べるのにもいいでしょう。「どーせ自分で遊ぶだけだからIEで動きゃいいや」とか言ってクロスブラウザなんかうっちゃってしまえば随分気楽になりますし。
Javascriptってのはブラウザさえあれば簡単に始められるから初心者向けかもね、って話は昔からあったと思うですが、Google Maps APIのおかげで比較的簡単に見栄えのする結果が得られるようになったのは大きいと思います。今のPCユーザーにとってはもっとも身近であろうブラウザを意のままに操ることが!ってのはポイント高そうだし。そしてサンプルコードのここをこう変えてみよう、とか思った日にはもう立派な宇宙語使い!周りの方々の畏敬なんだか単にヒいてるだけなんだかよくわからない視線が待ってます。
いやー、まだ1行もコードを書いてないのにこれだけ書けるってのは大したもんだ。あんまりAjaxとは関係ない話ではあるけれども。
いや、今さらPerlでネットワークプログラミングとかして遊んでるもんでして。しかも昔買って積ん読になってた本を発掘してってんだからねえ。そういうわけなので「とにかく手を動かせ!」ってのは実は自戒の念だったりするわけです。わはは。