2009年06月12日 02:30 [Edit]

perl - 現代的な Perl を再習得する方法は

camel

TopHatenarperl一位の私が来ましたよ。

現代的な Perl を再習得する方法は? - スラッシュドット・ジャパン
現代的な Perl を習得するためには、どのようなステップを踏むのが良いだろうか ? またお勧めの書籍などあったら教えて欲しい。

モダンPerlに限らず、プログラミングを再?習得するのに最適な方法、それは....


ブログに書きつづけること

です。他のどんな手法もこれに勝ることはないと弾言しましょう。

以下、その三つの理由。

1. 自然にアウトプットが出来る

プログラムは、言語で書きます。

書くものである以上、書かなければ覚えられません。

いくらいいソースコードを読んでも、書かなければ自分のものにはなりません。

一流のプログラマーですらそうです。いや一流のプログラマーほど、たとえ車輪の再発明であろうが自分で一度は書いてみなければ気が済まないのです。実際現在までに見つかったプログラミング手法の過半は、論理的な帰結ではなく経験から見つかっています。

教科書を読むなということではありません。教科書参考書、多いに読むべきです。実際教科書を見ればすぐに分かることをわざわざ書いて質問するのはプログラミングでなくても「ググレカス」と疎まれます。それでも、書いて質問する人の方が、書かずにわかったつもりになる人よりも確実に上達しますし、初心者の恥は書き捨てぐらい開き直ってよいと思います。

Programming Perl xivv
Most important, you don't have to know everything there is ot know about Perl before you can write useful programs. You can learn Perl "small end first". You can program in Perl Baby-Talk, and we promise not to laugh.
一番大事なのは、役立つPerlプログラムを書くのに、Perlの全てを知っている必要は全くないということです。小さなところから先に習ってよいのです。Perlで赤ちゃん言葉を話しても、私たちは笑ったりしないと約束します。[拙訳]

2. 添削が期待できる

書くのであれば、何もblogでなくてもよいかも知れません。SNSでも自分宛のメールでもよさそうではありますし、*.plファイルを自分のホームディレクトリのどこかにおいておけば事足りそうではあります。

しかしそれでは、他者の目に触れることはありません。他者の目に触れないということは、他者の力を借りるチャンスをみすみす失うということでもあります。

確かに、最初のうちは自分の拙いコードを晒すのは恥ずかしいかも知れません。しかし晒すは一時の恥、隠すは一生の損であることを、blogは証明しています。コードと恥はかけばかくだけ強くなるのです。

IT 戦士の作り方
晒している人は強い
晒されている人は強い
晒けだしている人は強い
変なプライドで閉じてる人は弱い

3. 自らの上達が目に見える

そうやってblogにコードを晒し続けていると、いやでも上達していきます。そしてその上達ぐあいが、過去ログとしてきちんと残ります。3ヶ月も続ければ、十分なログが出来るでしょう。

落ち込んだら、自分の過去ログを見てみて下さい。自分がかつてどれほど未熟だったか、そして今の自分がどれほど上達したかを改めて確認してみてください。

じゃあ、どこでblogを開設するべきか

で、あなたはblogでコードを晒す決意をしたとしましょう。どこでやるのがよいでしょう。

自分で Movable Type のサイトを立ち上げるというのも悪くないかもしれません。それ自体がプログラミングの体験にもなりますし。しかし「コードを晒す」という目的であれば、そこまでがんばらなくてもよいようにも感じます。blogを使う理由の一つは、「なるべくがんばらずに続ける」ということにもあるので、自分でサイトを立ち上げるのは、blogホスティングに不満が生じてからでも遅くないと思います。

で、blogホスティングもいろいろあります。PVを界王拳してくれるアメブロだってそれはそれでいいと思うのですが、ここでは「コードを晒す」が第一目的なので、ソースコードの貼りやすさというのは重要な指標になるでしょう。

その点で行くと、やはりはてなダイアリーは強い。ソースコードも

>|perl|
#!/usr/bin/perl
use strict;
use warnings;
....
||<

と書くだけできれいに表示してくれる。有名どころの多くが利用しているのもうなずけます。

それでも満足できないあなたには、ここ livedoor blog がおすすめ。おすすめなのはなんといっても生HTMLで書けること、そしてその中でJavaScriptが使いたいだということ。さらにアクセス数が多い場合、はてなダイアリーより安定かつ高速ということもあるでしょうか(最近しなもんの顔をおがみすぎだす)。

JavaScriptがそのまま実行できるのは、ソースコードを「見せる」だけではなく、その実行結果をも「見せられる」ということです。プログラムというのは動いてなんぼですから、これは大きい。はてなダイアリーを使っていない私のblogが"TopHatener"な理由の一つに、これが入っていることは間違いありません。

JavaScriptが使えるということは、llevalも使えるということ。これを使えばPerlを含め、「その場で動く」ソースコードがいくらでも書けます。

もっとも、こうした恩恵を受けるには、HTMLやJavaScriptといった、Perlとは直接関係ない知識もある程度要求されるということでもあり、その意味で中級者以降といったところはあります。

しかし、重要なのは、人にも見える場所で書き続けること。その条件さえ満たせば、あとは枝葉末節です。Happy Blogging -- and Hacking!

Dan the Perl Blogger


この記事へのトラックバックURL

この記事へのトラックバック
Mayaを(仕事で)勉強させてもらえることになったり、 エンジニアにあこが...
アウトプットをするためのブログ。【寿ノート】at 2009年08月23日 23:03
はてなブックマーク上でのイベントを他のWebアプリにHTTPで通知する、はてなブックマーク Web Hook。遅ればせながら、使ってみました。 (開発者さま向け) はてなブックマーク Web Hook 機能を公開しました - はてなブックマーク日記 - 機能変更、お知らせなど はてなブック
[GAE][Python]はてなブックマーク Web HookとGAEで「[これはすごい] in リアルタイム」を作った【医者を志す妻を応援する夫の日記】at 2009年06月15日 21:33
現代的な Perl を再習得する方法は? - スラッシュドット・ジャパン →dankogaiさんのエントリ perl - 現代的な Perl を再習得する方法は よりモダン...
晒すだけじゃだめなんだぜ【とっくりばー】at 2009年06月12日 15:00
この記事へのコメント
s/JavaScriptが使いたいだということ/JavaScriptが使えるということ/
Posted by salmonsnare at 2009年06月13日 18:00
だから、秀丸で書いてから、2回読んで推敲し、それからアップでしょう・・・
Posted by chaipapa at 2009年06月13日 06:26
先日1時間くらいかけてC++のブログ記事を書きましたが、間違えてブラウザを閉じてしまい。。。orz
Posted by rin at 2009年06月12日 14:24
はてな記法は livedoor blog でも使えるって知ってました ?
Posted by wiki記法って名前だけど at 2009年06月12日 10:35
英語学習においても、そのことがずばり適応できると思いました。
ありがとうございました。
Posted by sato at 2009年06月12日 10:07
確かに、はてなはソースコードが貼り付けやすいですね。
でもなんであんなに応答速度が遅いんでしょうかねぇ。
Posted by hatena at 2009年06月12日 09:54
JavaScriptが使いたいだということ→JavaScriptが使いたい放題だということ

ですかね
Posted by Fruori at 2009年06月12日 07:20