2009/07/26

Mt.Jinba

http://www.takaotozan.co.jp/cource/cource08.htm

(※)写真に映っている人物は現実とは一切関係ありません。vkgtaro これを写す。

・・・なわきゃーなくて、irc.lazy-people.org の方々と高尾山経由で陣馬山に行ってきました。リフト経由で高尾山の頂上へと行き、小仏峠、景信山経由で陣馬山へ。約20kmの行程でした。

正直な感想として、普段脚を使っていない人はこのコースを甘く見ない方がいいですw 以前登った高尾山の6号路よりもアップダウンが激しく、結果として脚を使います。「mumumuのおっさんが完走できたのは驚き」と tomyhero が語るように、僕はいつも最後尾で皆から平均10分遅れくらいでした。足を引っ張ってしまってスミマセン(´ー`; )

さらに注意すべきなのが下山ルート。本当は和田峠経由が王道のルートなのでしょうけど、下山を始めたのが17時だったので最短のルートを選択した結果、忍者か修行僧でなければ通らないだろうと思われる最悪の傾斜の道を歩くことに。生きて帰れたのが不思議なくらいです。普段の足腰の差がこういう状況になると露骨に出ます。おそらく皆から30分遅れくらいだったんじゃないかしら(藁

・・・ということで普段運動をしていない人は高尾山で脚を鍛えましょう。僕は今体の上下ともに非常に痛くて立ち上がるのにも一苦労です。lazy-people.org の皆様、僕を要所要所で待っていただいてありがとうございました。

2009/07/23

オープンソースソフトウェアの育て方 (3)

「オープンソースソフトウェアの育て方」を2部、欲しい方に差し上げます、と前回のエントリでアナウンスしたのだけれども、早速抽選しましたので結果を以下に公表します。

エントリ頂いた皆様、本当にありがとうございます。7名も希望者がいらっしゃるとは正直思いませんでした。

抽選手段は以下の通り SQL によるランダム抽出(※)であり、僕の主観は一切入る余地がありません。当選されたのは junjun さんと masugata さんです! おめでとうございます! 僕のメールアドレス mumumu at+ mumumu dot org に本の送付先を教えて下さい。(at+ は @ に、dot は . に置き換えてください) 送付先を伺い次第、発送させて頂きます。

残念ながら外れてしまった皆様、差し上げたいのはやまやまなのですが、、ごめんなさいです。Webサイト または リアルの本屋さんでの購入をお願い致します。

test=# select CURRENT_TIMESTAMP;
now
-------------------------------
2009-07-23 00:35:11.345851+09
(1 row)

test=# select * from possjp_drawing ;
winner_c | entry_url
-----------------+--------------------------------------------------------------
Nully | http://blog.magical-remix.net/urame/archives/564
kinneko | http://d.hatena.ne.jp/kinneko/20090718/p2
ita-wasa | http://d.hatena.ne.jp/ita-wasa/20090718/1247906897
junjun | http://junjun.haun.org/d/index.cgi?d=20090722#20090722-1-2-1
masugata | http://d.hatena.ne.jp/masugata/20090722
02034 aka garo2 | http://d.hatena.ne.jp/Garo_unst/20090722
testu | http://mc255dqn.dtiblog.com/blog-entry-874.html
(7 rows)

test=# select winner_c as winner, entry_url from possjp_drawing order by random()
limit 2;
winner | entry_url
----------+--------------------------------------------------------------
junjun | http://junjun.haun.org/d/index.cgi?d=20090722#20090722-1-2-1
masugata | http://d.hatena.ne.jp/masugata/20090722
(2 rows)

(※) 上記は PostgreSQL 8.3.7 での結果であるが、MySQL でも random() を rand() に置き換えることで同じことができる。これは、random な数値を1カラム付け加えてソートすることで、少ない数が割り当てられた上位2名を当選者としている。

尚、この抽選方法は L_star氏 に教わったものである。この場を借りて御礼申し上げます。

2009/07/18

オープンソースソフトウェアの育て方 (2)




















さて、先のエントリに書いた「オープンソースソフトウェアの育て方」ですが、上の通り見本が手元に届きました。ざっとチェックしたんですが、オライリー・ジャパンらしく編集してありますね。id:mohri さん GJ です。

手元には3部あるのですが、1部は当然手元に置いておくとして、残りの2部については、是非書籍版を読みたい、という方に差し上げたいと思います。

条件は、この本が欲しいということと、送付先の住所を僕に教えても良いという方です。以下の手順で欲しい方は応募してください。締切りは7月22日(水)24:00 (JST) までです。希望者多数の場合は、抽選となります。また、逆にいない場合は、僕と親しい人にあげちゃいます。
  1. 自分のブログに「オープンソースソフトウェアの育て方が欲しい!」と書く
  2. 書いたブログエントリの URL をこのエントリにコメントする (bloggerってトラックバックがサポートされてないんです、、ごめんなさい)

2009/07/16

オープンソースソフトウェアの育て方

http://www.oreilly.co.jp/books/9784873114125/

前にもちらっと書いたのだけれども、僕と高木さんが全文の翻訳を手掛けた Producing Open Source Software の日本語版が、オライリー・ジャパンより今月の25日に出版されることになった。邦題は左のカバー画像にもある通り、「オープンソースソフトウェアの育て方」である。

内容をひとことで言えば、この本は オープンソースプロジェクト に働く力学と運営ノウハウを教えるものである。この本は全文がオープンソースとしてオンラインで公開されている(※1)ので、無料で読むことができる。よってまずはオンライン版を参照頂き、気に入ったら購入して頂ければ幸いである。

出版される内容は、このオンライン版に対して書籍化のために細かい構造や注釈に手を加えた上で、オンライン版に残っていた微妙なバグを修正したものである。よって自分が見た限りでもオンライン版よりは明らかに読みやすく、クオリティも向上している。この点、編集者の id:mohri さんには感謝申し上げる次第だ。

こうした編集が入っているため、現状オンライン版と書籍版とは相当量の差分が生じているが、この点は クリエイティブ・コモンズ BY-SA 2.1-jp (表示・継承) に沿ってオンライン版に反映してよいとの許可をオライリー・ジャパンより既に貰っている(※2)。よって、書籍となった内容はオンライン版にもいずれ反映するつもりだ。

----

(※1)原文と照らし合わせながら読みたい方は、Subversion から直接チェックアウトすれば、翻訳チームの作業の跡を全て見ることができる。コマンドは以下の通りである

svn co http://svn.red-bean.com/repos/producingoss/trunk/ja/ poss-ja

(※2)オンライン版の存在と、こうしたライセンス条件を知りながら出版を決めてくれたことには、今でも驚きと感謝を禁じ得ない。

2009/07/03

PHP-doc CVS account - you are what you write

http://www.php.net/cvs-php.php
http://elf.no-ip.org/wiki/?PHP%2Fphpdoc%2F04.cvs
http://www.mumumu.org/~mumumu/tmp/apply_php_cvs.txt

どうせなら直接コミットしたいので CVS アカウントを申請した。これが通れば、暇を見て直接作業できるようになる。

俺の場合日本語でも英語でもそうなんだけど、流れに任せてちょいちょいと書いて急いで推敲しただけの文章ってあり得ないくらい恥ずかしい文章であることが大半である。日本の中学生でもやらない間違いが数ヶ所あり、それが当然の如く news.php.net に投稿されていて穴があったら入りたくなった。

上記の最後のリンクは、それを手直ししたものである。美辞麗句はいらない。要点が必要、ということは知っていても、オープンソースソフトウェアの世界では「書いたことがすべて」である。反省します。ハイ。

----

申請のコツは2番目のぢょーさんのWikiに書いてあることが全てであり、俺はそれをなぞっただけに過ぎない。俺がそれに付け加えるとすれば、申請ページの入力フォームには引っ掛け問題というか罠があるので、申請ページの説明は「きちんと」読みましょう。フォームだけ適当に入力して submit すると「必ず」失敗します。

[ Update July 4th 23:14 JST by m ]

無事にアカウントを取得出来ました。これも高木さんの口添えがあったお陰です。ありがとうございます。

2009/07/01

PHP Manual Translation

http://www.php.net/manual/en/migration53.php

PHP 5.3.0 がリリースされるされると言われていつつも上記が手つかずだったのでおとついまでにざっと翻訳したのだが、コミットログみたら更新入りまくりんぐ。まあこれだけでっかいリリースの前後なので無理もないとは思うけれども。

こりわ高木さん一人じゃ追いつけないわけですね。暇を見つけて無理のない範囲で手伝ってみることにしよう。

PHP 5.3.0

http://www.php.net/archive/2009.php#id2009-06-30-1

リリースされちゃいました。区切り文字が物議を醸しまくった名前空間やびみょーなクロージャをはじめとして多くの機能が詰め込まれてるわけだけど、個人的には undeprecatedな (一度非推奨にされたが、非推奨ではなくなった)is_a 関数に大笑いしたのと、private や protected に マジックメソッド __call がアクセスできるようになったのが一番面白い変更点である。

特に後者はのべつまくなしに適用すれば OOPの原則いくらでも破れる C++ の friend みたいになっちゃわないですかね? と思ってちょっくら試してみた。

class Test {
public function __call($name, $arguments) {
call_user_func(array($this, $name));
}

private function hoge()
{
echo "called hoge\n";
}
}

$a = new Test();
$a->hoge();

実行結果は以下の通り

$ php/5.3.0/bin/php test.php
called hoge

ああ、やっぱり呼べるんだ。けどやっぱマジックメソッドはおもろいですよね。あと、Ethnaのテストを実行してみたらやっぱり5.3.0の方が速かった。

: PHP 5.2.10
real 0m2.180s
user 0m1.908s
sys 0m0.256s
: PHP 5,3.0
real 0m1.905s
user 0m1.648s
sys 0m0.232s