なんとなく日記

Everyday studying...

RubyとDebianとコミュニティとか

年末年始はまったくと言っていいほど、ネットからは離れていたので、いまさらながらにこの話題を。 Ruby in Debian DebianのRubyパッケージメンテナ辞任で騒動に まあこういうのはある意味仕方ないことかなと思ってます。だいたいそれぞれのdistributionにはパッケージに関する思惑があるわけで、それと言語自体の考えや開発スピードがうまくマッチすればいいんですが、そうならない場合にはいろいろ問題が起るわけで。あとRubyGemsはパッケージ化してもらわない方がいいと思うんですが、どうなんですかね。頻繁にアップデートできるならともかく、そうではない場合にはaptやyumでインストールしても古いとなると、使わなくなりません? まあRubyGemsに関しては、インストールディレクトリをlibではなくshareにするとか、いろいろできそうなところはあると思うので、頑張ってもらいたいところです。 Ruby community 日本語と英語と言う言語と文化の差があるのでどうしようもない部分もある。日本人としては、「いままで日本人は歩み寄って行ってたんだから、Rubyのときぐらい、こっちへ来いよ」と思わないでもないんだけどね。一人を除いて、ちょっとでも日本語を読めるようになろうとしている英語圏の人がいないのが寂しいところ。まあそうは言っても日本語は奇怪な言語なので、それを覚えろと言う気にはなれませんが。 で、どうするかというのは、やっぱりmanagerを設置すべきかなぁと思いました。要するにfull timeな@yuguiさんを作り出せばいいんですが、そう簡単ではない。その人がちゃんとmanagementしてくれれば、「ruby-devとruby-core合体させようぜ」とならなくても大丈夫になるのかなと。それが無理なら、いままでやってきたこのスタイルを継続していくしかないんじゃないでしょうかね。 1.8.8 メンテナンスしている方々には申し訳ないのですが、出て欲しくありません。むしろ1.8.8にリソース割くなら、1.9.2に力を入れてくれと思ってます。開発側の思惑がどうなのか知りませんが、「1.8.8のリリース」は「まだ1.9.2へ移行しなくてもいいよ〜」と言う意思表示にしかならないと思うんですよね、やっぱ。1.8.8には1.9.2からのバックポートがあるらしいのですが、いかんせんEncodeが入らないのであれば、実際問題意味がないと思うわけです、jpmobile的には。 「是非1.9.2を使って欲しい!」のであれば、1.8.xはsecurity fixのみにしてしまって、あとは1.9.2 or laterに全力Tokyu投球してもらいたいところです。

2011年の展望と2010年の振り返り

明けました。おめでとうございました。今年も一つよろしくお願いします。 まあ簡潔に今年の展望と、去年の振り返りなど。 2011年の展望 まあなんと言っても、Ruby界隈でいろいろとやっていきたいなぁと思っています。とりあえずはjpmobile周辺で、まだまだ機能的に足りていないところがあるので、そこに手を入れる予定です。 次はRuby以外の言語にも手を出したいなと思ってます。やっぱり幅広く知識や情報を収集して理解しておかないと、年齢的にも厳しいかなと感じてるんですよね、やっぱ。 最後にもっと文章を書いていきたいと考えています。とりあえずブログを書く頻度を上げていきます。 2010年の振り返り まず大きかったのは、RubyKaigiで発表できたことでしょうか。いろいろ勉強になりました。次はTokyuRubyKaigi 02を開催できたこと。2回目を開催するのって、いろいろ大変らしいと言うことだったのですが、さすがTokyu.rb。さっくり開催できました。今年は03を開催予定なので、また司会で取り仕切りたいと思います。 また去年は、地域Ruby会議やRubyKaigiで各地のRubyistや日本で仕事する外国人Rubyistと交流できた年でした。ただ東側にしか行けていないので、今年は西側に出向きたいと思ってます。 でも結局はいつも通りに とは言え、Tokyu.rbらしく、まあいつも通りな年にしていきたいと思います。と言うわけで、本年もどうぞよろしくお願いします。

札幌Ruby会議03に参加してきた

Rubyのテスト文化とツール 2010 by @hsbt さん Asakusa.rb & 永和の人 去年と着ているものが同じ 「テストを書かないとRubyistではない!」と言う話し 永和の文化 テストを書くと言う文化がある in Ruby World Conference Ruby を使うとどんどん書ける Ruby を使うとどんどん書ける 書けるが不安になるので、テストを書く <li>metric_fu 静的解析ツールを一度に実行してくれる <li>Rails のレイヤーごとに使っているツール mock/stub stub -> RSpec の stub mock -> RSpec の should_receive rr webmock stub な Web API 呼び出し <li>fixture replacement factory_girl Machinist

RailsDevCon2010を開催しました!

と言うわけで、去る2010/11/20(土)にRailsDevCon2010を開催してきました。今回は実行委員と言いつつ、当日まであまり何もできなかったので、会場係として、明い緑のパーカーと言う季節もへったくれもない格好でいろいろ動きまわってました。 実は企画自体はRubyKaigi2009の直後ぐらいから @ysakaki さんといろいろ妄想を語ってたのですが、当時のスタッフの都合などもあり、なかなか開催に踏み切れませんでした。そんなとき、RubyWorldConference 2010での @a_matsuda さんの講演を聞いて、「これはやらんといかんな!」と思い立ち、急遽開催することになりました。少ない準備期間でこれだけの資料を準備していただいたスピーカーの方々、また当日の設営と撤収作業を手伝っていただいた当日スタッフの方々、そして事前の準備に奔走したスタッフの面々、そして隣で仕事と共に頑張ってくれた副実行委員長、本当にありがとうございました!このRailsDevConは定期的に開催できればいいなーと思ってるので、その時はまたみなさんご参加ください。 そして次は TokyuRubyKaigi 03 の司会へと続きます。

NOSQL AFTERNOON JAPAN in Rakuten

と言うわけで、先週の11/01に楽天で開催されたNOSQL AFTERNOON JAPANに行ってきました。全体的に、もうRDBMSじゃなくてKVSなんだなぁと感じさせるような賑いでした。以下、当日のログを。 Hibari/NOSQL for BIGDATA @ Gemini Mobile Tech. <ul> <li>Function programing world conference will hold at Japan</li> <li>About Gemini</li> <ul> <li>Products</li> <ul> <li>MMSC for Japanese mobile carriers</li> </ul> <li>2010/07 Hibari open source</li> </ul> <li>@geminimobile</li> <li>@hibaridb</li> </ul> Hibari <ul> <li>for GB mailbox webmail</li> <li>chain-replication</li> <li>good performance for read big data</li> <li>Linux distribusion supported</li> <li>Erlang/OTP R13B03</li> <li>supports Amazon S3, JSON, native Erlang client API</li> <li>"read-optimized"</li> <li>Admin server</li> <li>Why NoSQL?

emacsでscim-skkを使わない方法

要するにXの設定を使えばいいようなので以下のように実行する。 % XMODIFIERS=@im=none emacs これをaliasなどやメニューなどに登録しておけばいい感じになるかな。

zshのプロンプトにgit stash listの数を表示する

git stashしたあとにgit stash popし忘れたりすると、なんだかいろいろ面倒なことになりかねないので、いつも使ってるzshのプロンプトにgit stash listの数を表示してみることにしました。以下はその設定。あまりたいしたことやってないですが、これでpopし忘れが減るといいな。 autoload -Uz vcs_info zstyle ':vcs_info:*' formats '(%s)-[%b]' zstyle ':vcs_info:*' actionformats '(%s)-[%b|%a]' precmd () { psvar=() # for vcs_info LANG=en_US.UTF-8 vcs_info [[ -n "$vcs_info_msg_0_" ]] && psvar[1]="$vcs_info_msg_0_" # for rvm [[ -e $HOME/.rvm/bin/rvm-prompt ]] && psvar[2]=$($HOME/.rvm/bin/rvm-prompt) # for git stash [[ -e $PWD/.git/refs/stash ]] && psvar[3]=" ($(git stash list 2>/dev/null | wc -l) stashed)" } VCS_PROMPT="%1(v|%F{green} %1v%3v%f|)" RUBY_PROMPT="%2(v| %U%B%F{magenta}(%2v)%f%b%u|)" PROMPT=$'%{\e[32m%}$LOGNAME@${WINDOW:+"[$WINDOW]"}%B:%b%{\e[m%}[%~]$RUBY_PROMPT$VCS_PROMPT\n%% '

MongoDB on Debian 5.0(Lenny) のインストール

Squeezeからはaptでパッケージをとれるそうですが、Lennyではまだなので公式サイトにあるとおりにインストール。 # echo 'deb http://downloads.mongodb.org/distros/debian 5.0 10gen' > /etc/apt/sources.list.d/mongodb.list # apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 # aptitude update # aptitude install mongo-stable あとはmongoというInteractive Shellがあるので、それで接続確認して終わり。パッケージあると便利だなぁ、やっぱ。

Rails 3.0 + RSpec 2.0 で response.should redirect_to の不具合

Rails ではflunkというTest::Unit::Assertionsのメソッドが使われているのですが、どうもそれが原因でテストに失敗するときにエラーになります。(参考: http://github.com/rspec/rspec-rails/issues/closed#issue/192) 解決策としては、spec/spec_helper.rbなどに以下のコードを追加します。 module RSpec::Rails module ControllerExampleGroup def flunk(*args, &block) assertion_delegate.flunk(*args, &block) end end end まあなんというか、致し方ないことなんだろうか。

不満があるなら自分を変えろ by 少佐

こないだ、攻殻機動隊 SAC見たときにふと思ったことなんですが、第一話冒頭の台詞に、 社会に不満があるなら自分を変えろ. それが嫌なら耳と目を閉じ口を噤んで孤独に暮らせ!それも嫌なら… と言うのがあります。これはテロリストに向けた言葉で、社会を変えるために暴力に訴えると言う行為を否定した言葉だと思ってます。最後は「社会からいなくなる」=「死」と言う趣旨の言葉に繋がるのだろうと思うのですが、ここで「社会」を「会社」に置き換えたときのことを考えてしまいました。 不満があるなら転職すれば よく会社を変革させようとしていろいろ動き回る人がいます。こういう人は事前に根回ししたりして、問題が起こりにくいように物事を進行させるものです。もちろんこういう人は先ほどの「テロ」を起こすような人ではなく、どちらかというと政治家のような感じですね。このような人が会社にいると、当然悪いこともありますが、良いことの方が多かったりします。 問題は根回しなどせずに突然公の場で「こういうやり方は間違ってる。そもそも〜」などと議論をけしかけたり、「ったく、あの人ときたら…」などとこれ見よがしにつぶやいてみたりする方々。これは周りへ破壊的な影響を与えるという意味でテロと言えるでしょう。 と言うかそんなに嫌なら辞めればいいのです。前にも書いたのですが、辞めずに残っているのは自分の意志です。「俺がやらなきゃいけないんでしょ。仕方ないな。」と思うのは自惚れでしかありません。「辞めたら困るでしょ」とさも他人に強制されている風な言い方をする人もいますが、それは「必要だと認めてもらいたい」と言う欲求から勝手に思い込んでいるだけ。言ってしまえば駄々をこねて騒いでいる子供のようなものです。情熱プログラマーにも書いてありますが、会社って人がいなくなっても実は何とかなるのです。「俺がいなきゃ会社回らないし、仕方なく働いてやってる」と言うのは幻想でしかありません。いなくなればなったで、その範囲内でなんとか回るように動くのが組織です。そこのところを勘違いしては、後ろ指を指されるだけの人になってしまいます。 そしてどうしたのか じゃあ私はどうしたのかというと、自分を変えました。ただし会社に適合するというのではなく、何ができるのかを考えてそれに注力することで、自分自身を良い方向に持って行こうと。ぐちぐち言ってても何も変わらないんですよね、当然ですが。本当に変えたいなら声を出して主張しなければいけないんですが、それがやりたいわけではない。だったら自分のできる力で良い方向に持って行こうと考えるようになりました。世の中考え方次第で視点が変わり、受け取り方も変わるものです。「べっ、べつにあんた(会社)のことが気になるとか、そういうんじゃないんだからねっ!」的なのでもいいので、自分をより高いレベルで考えられるように持って行くことで、視点を変え、考え方を変え、いい人生を送りたいものです。よくわかりませんね、すみませんorz。