2011/10/14

YAPC::Asia 2011にやってきたので…

 今年もやって来ましたYAPC::Asia。
 まだ、一日目(前夜祭を入れると二日目?)の午前が終わったところなんだけど、KeynoteのJesse Vincentのトークを聴いて、Twitterで書き足りなかったところを書いとこうかと。

 実は、この話は事前にOSCON 2011のスライドを見ていたので知っていた。
 でも、実際にJesseのトークを直に聴くと、Perl5を良くしたい!という情熱がひしひしと伝わってくる。

 非常に大雑把に言ってしまうと、「Perl5をこれからも進化させ続けていくために、Perl5のコアを小さくしよう、過去の遺物を捨てられるようにしよう」、そういう方向に舵を切ったんだという話。
 でも、それをやりつつも、今動いているPerlプログラムは(可能な限り)動き続けるよう互換性を保つための提案をしている。
 とても野心的な話だ。(どんな方法を提案しているのかは、上のスライドを参照)

 個人的には、未来に向かって変わり続けようとする、この話には心から賛同している。
 一方で、この方向に舵を切ることで、Perl5が俺が大好きだったPerlではなくなってしまうのかもしれないなぁ…という一種の寂しさもよぎった。
 俺が大好きだったPerlというのは、つまり、なんでもござれの全部入りアーミーナイフなPerlのことだ。

 「Perlが使えれば、なんとかなる!」

 そんな妙な安心感をくれるPerlのことだ。

 一方で、コアを小さくして拡張はモジュールでやる方向性でいくと、その極限の解はSchemeだ。
 Schemeの世界は素直に綺麗だと思えるけど、俺の好きな世界ではなかった。
 やっぱり俺は、病的折衷主義者なのだね!

 Jesseはアーミーナイフともチェーンソーとも表現していたけど、Jesseもこのチェーンソーが好きみたいだ。
 だから、Schemeみたいになることはないと思う。
 そんなことをしても、嬉しい人は少ないと思うし。
 一方で、病的折衷主義と純粋主義とのバランスの狭間で、難しい舵取りをすることになると思う。

 色々思うところはあるけれど、前に向かって変わり続けるというのには大賛成だ。
 変わり続けることのみが、自分たちが自分たちで在り続けられるたった1つの方法だと思うから。

 今はただ、そんな大それた決断をしたJesseとPerl Mongerたちを、自分なりにサポートできる方法ってなんだろう、とそれを考えている。

2011/03/10

JavaScriptのオブジェクト指向は、逆の順番で学んだほうが理解しやすいと思うので…

 事の発端というか、きっかけは、id:perlcodesampleさんとid:gfxさんの下のポストを見て、

 newとかprototypeを使うのが推奨されてないとか、直接代入するほうが楽とかじゃなくて、挙動が違うんだよなぁ、と思ったこと。
 挙動が違うんだから、もちろん使いどころも違うんですよね。

 でも実際、JavaScriptのオブジェクト指向は混乱しやすいと思います。
 自分もご多分にもれず、さんざん混乱させられたクチですしね。
 わかってしまえば、どってことなくて、とってもシンプルなんですけどね。

 せっかくなので、今だからこそ言える、自分だったらこうやって教えて欲しかったなぁ、っていう説明をしてみようかと思います。
 題して、JavaScriptのオブジェクト指向は、逆から入門しろ!

2011/03/07

zshでperlbrewを補完するようにしたので…

 zshの補完ってホントに便利ですよねー
堕落しきった俺には、もはやperlbrewのサブコマンドを入力することさえ困難なのです。

 というわけで、perlbrewのzshでのコマンド補完(改) - LAPISLAZULI HILL#Hatena のルールを利用させてもらって、補完できるようにしました。

 でも、このルールは若干古くなっていたので、ちょこっと修正しまった↓
具体的には、switchとuseの補完候補にinstalledサブコマンド(listサブコマンドの古いやつ)を使うようになっていたので、修正しています。

 あとついでに、install候補も補完できるようにしときました。(※CPANからリストを取ってくるので、最初の補完には時間がかかりますが(>_<;)) これで、いちいちバージョンを調べなくても気軽にいろんなperlを試せますね!


 zshの補完関数はじめて書いたけど、こんなんでいいのかな?

3/11追記

 App-perlbrew-0.17にアップデートしたら、switch候補がちゃんと動かなくなったぽいので、修正しました。

2011/02/28

どうやらzshなしでは生きられない体になってしまったようなので…

ついにWindowsにまでcygwin-zshを入れてしまった。minttyとの組み合わせで快適。今まで、なるべくcygwinは避けて生きてきたのに……ホントにzshがないと生きられなくなりつつある。堕ちるところまで堕ちた感じだ。2月27日 via web Favorite Retweet Reply

 最近、上のようなことをTwitterでさんざんつぶやいてますが、表題のとおりです。
もうTab補完でどこにでも行けるコレに慣れてしまうと、手放せなくなる、っていうか補完がきかないとコマンドラインでの作業ができないくらいになりつつあります(>_<)
ホントにたくさんのコマンドの補完ルールが最初から入ってるので、どんどんオプションを覚えなくなって、どんどん堕ちていくw

 そんな、イイカンジに人を堕落させてくれるzshをWindowsに入れる際に、いろいろとコツがいったので、メモがわりに書き留めておきます。
自分以外にも、Windowsでzshを使うのをためらってた人がいたら、これでzshライフ始めましょう!

2010/07/29

Sencha Touch 勉強会に行ってきたので

メモるよ!
ExtJS が Sencha となって,Sencha Touch という iOS とか Android 向けのライブラリを作っているという,どっかの誰かたちがやってることとモロかぶりじゃねーか!みたいな話を聞きつけたので,行ってきましたよ!
しかも,会場がソフトバンク本社ということをすっかり忘れてサンダル出勤してしまっていたため,そのままサンダルで参戦しました(テヘッ
公式ブログポストはこちら: http://www.extjs.co.jp/blog/2010/07/13/tokyo-meetup-jul-2010/
以下,自分が興味をひかれたところのメモ↓
(ちなみに,※印は筆者の憶測です)

2010/07/21

JavaScriptは比較演算子"も"推移関係が成り立っていない件

そういえばすっかり三連休も終わってたことだし,すっかり存在を忘れていたブログに小ネタでもメモっておくかー

tweet もしたけど (http://twitter.com/Maki_Daisuke/status/18780506275),タイトルの通りのおはなしです.
推移関係 (transitive relation) っていうのは,「風が吹けばほこりがたつ」「ほこりがたてば(略)桶屋が儲かる」だから「風が吹けば桶屋が儲かる」っていう三段論法みたいなやつですね.

2010/03/26

ECMAScriptのJIS委員会に行ってきたので...

せかっくだから,なんか書くよ.

非常に大雑把にいうと今回の委員会は,ECMAScript 5th Edition(JavaScriptコア言語の最新仕様)がECMAで採択されてISO/IEC標準になりそうだから,日本でも審議しなきゃねーという流れで招集されました.
詳しい話は,委員である竹迫さんのデブサミ2010でのスライドを見るとバッチリです!(いきなり他力本願だな)

で,そういえば,自分も委員だったんですよねー・・・