Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb をよろしくお願いします。

#rubykaigi 2011に行ってきた

書きたいことが多すぎて逆に書けなくなりそうなので、まとめようとせずだらだらと思いついたことを書いていく。

1日目

金曜から3泊するつもりで池袋のホテルをとっておいたのだけど、会社関係の用事でチェックインが午前4時に。 忙しかったので開催スケジュールもろくに確認出来ていないまま、なんとか開始時間に滑り込んだ。もしホテルをとってなかったら何時入りになったのかわからない。

初日の最後は闇RubyKaigiだったわけだけど、できればエントリしたいなと思い立って当日に資料を書き始める。会場でスライド作りをしてたわけで、初日の発表はあまり聞けなかった。

幸運なことに闇トーカーに選ばれて「打倒tDiaryメンバー募集」というタイトルで脱tDiaryとPipinについて話させていただいた。Yokohama.rbについては我らが @1syo に丸投げして、完全に個人的な内容でいくことにした。時間切れのドラが鳴ってしまったけど、LTだしまあ最低限言いたいところまでは言えたので、自分的に目的は果たせた。

tDiary方面に対して挑発的なタイトルだけども、相手は元祖モヒカンのただただしだし、ハンドアックスを投げつけることに躊躇はいらないと思った。というかオレの攻撃力じゃカスリ傷ひとつ与えられる気がしないので、躊躇すること自体がおこがましい。なので容赦なく投げたが、投げ返される覚悟はちゃんとしてたよ。

翌日たださんに「だんさんをとっちめなきゃ」と言われたり、きたさんに凄まれたりしてたいへん光栄です。

発表内容とかPipinについての詳しいことは別エントリであとで書く。

2日目

1日目のあと、池袋でVDD方面のオーストラリア組と一緒に飲んでたのだけど、あのAndyの異様なハイテンションの中にあってコーラしか飲まなかったため体調は前日よりも良し。

さて2日目のメインイベントは「ゆRuby」。 お昼に3Fの和室で「toRuby, guRuby, Yokohama.rb 出張版」という形で勉強会を開催。

しかし、Yokohama.rbの名前が入ってはいるものの、実質Yokohama.rbが貢献することは何もなくて、勉強会を勉強させてもらうために参加させていただいた次第。本当はYokohama.rbからも何か企画を提案出来ればよかったのだけど、こちらの力不足で形にできなかった。とうわけで結果的にも本当にただおじゃまさせていただいただけで、この辺でもこれからの課題が浮き彫りに。

guRubyの「初めてのRuby」読書会セッションは著者のyuguiさんに本人に朗読してもらうという豪華セッション。和室で「正座禁止」というゆるさを強制される中、yuguiさんは厳格で厳しくって、個人的にあの雰囲気のyugui先生好き。

後半はこれまた豪華で咳さんによるdRuby体験セッション。dRubyを触るのが8年ぶりくらいだったので新鮮だった。toRubyは安定感があって貫禄の存在なので、あの空気感をYokohama.rbのメンバーが経験できたのは良かったと思う。

ゆRubyにYokohama.rbが参加させてもらう形を実現したのは@1syoによる働きかけによるもので、Yokohama.rb側からすればたいへんなGJ。きっと今後の勉強会運営において、貴重な経験になるに違いない。 toRuby, guRubyのみなさま、本当になんにもお手伝いできませんでしたがいい体験ができました。本当にありがとうございました。

角谷さんの話はこれからの活動を考える上での大きなヒントになるはず。冒頭でYokohama.rbに言及していただいて光栄だった。

2日目本編終了後、懇親会の開始まで少し時間があったので、急遽その場にいた10人くらいでぞろぞろと池袋ジュンク堂で行われているというRubyKaigi写真展にいくことにした。到着すると壁に10枚ちょっとの写真が貼ってあるだけで一瞬拍子抜けしたんだけど、実際写真を見てるとどれだけいても飽きないという不思議な空間だった。2006年から毎年の写真が並んでいて、どこを見てもいろんな思い出があって感慨深い時間を過ごすことができた。行って大正解だった。

3日目

3日目はゆっくり発表を見ることができた。

特に島田さんの存在が印象に残っている。

昼にRails勉強会@東京が行われているという噂を聞きつけて3Fへ行ってみると、なんと@1syoが仕切っているではないか。最近Rails勉強会に顔を出してなかったけど、こっちでも活躍してたのね。

後半はAkitaOnRailsさんが飛び入り参加してのスピーチ。突然激アツのスピーチが始まって、英語力が足りないことを悔やみつつも、英語を学ぶモチベーションをもらうことができた。ハプニング的な展開まで含めてとてもアツイ場になっていた。

アジャイル系の本は買ったことなかったのだけど、薄くて読みやすいと聞いてアジャイルサムライを買いに行ったら、おさださんが「一番最初に売れたのはだんさんのですよ!!」と教えてくれて、またRubyKaigi直前に立て続けに売れちゃって在庫の調達が大変だったとか、光栄なお話をいただいてびっくり。この辺の話しを突然元気いっぱいに言われてドキッとしてしまったのだけど、あくまできのこ派なので自重。

まとめ

とにかくいろんなことが多すぎて、とても書ききれない。やっぱりまとまらないので思いついたまま書いていく。

@nagachikaのLTはとっても良かった。個人的にLTの中で一番面白かった。@nagachikaは、昨年のRubyKaigiの直後Yokohama.rbを立ち上げることをWebで表明したとき真っ先に参加表明をしてくれた人で、そのあとruby-trunk-changesがはじまったり、コミッタになったり、Yokohama.rbでも発表してもらったりと、この一年ほんと活躍してるのを近くで見てたし、何かとお世話になったり。

@1syo。さんざん話題になっていたので今更特に書くまでもないのだけど、もしYokohama.rbが100人の村だったら30人が@1syoです。というくらい彼が今のYokohama.rbを形作ってるし動かしてる。スライドでの登場回数も得点王争いに参加できるほどだったんじゃないかな。3日目はもう燃え尽きてたけど、大変だったぶんいろんなことを動かしたと思うよ。横浜の坂本龍馬。

他にもYokohama.rbのメンバーが活躍してるところや、楽しそうにしているところをたくさん目撃した。

今回、今までのRubyKaigiと比べて個人的に大きな違いがあって、それはYokohama.rbというホームがあったということ。 一般参加した去年はランチにいくにしても夜ふらっと飲みに行くにしてもメンバー探しに一苦労してたわけだけど、今回はその心配がまったくなかった。ランチ行きましょうと #yokohamarb のハッシュタグをつぶやけば、誰かしらつかまるという安心感は初めての経験だった。でもこっやって内輪で仲良くしてると、外の人がボッチ感を感じちゃう気持ちがわかるので難しいんだけど、よくも悪くも今までとは全然違った。

先日一緒にハッカソンをやった姉妹rbであるMinami.rbのメンバーもともずっと仲良くさせてもらった。つじたさんとも会えて良かった。

Yokohama.rbと関係ないところでは、岡山からひとりで来たという学生さんと話す機会があってパワーを貰ったり。そして、なによりたださんと絡めて嬉しかった。また最後の席が偶然柴田(@hsbt)さんでちょっとだけPipinについて話ができたことも幸運だった。

permalink no tweet

#railshachathon ふりかえり

来週のYokohama.rbの懇親会でふりかえりをやるという提案もあったけど、帰りの電車でさくっとふりかえった。 ただし一部の具合の悪くなった人たちは不参加。

keep

  • mと@watarumの参加
  • 運営
    • 段取り
  • minamiの人たちと交流できた
  • ファウンダー同士の交流。hubだから
  • 日本酒がうまかった
  • 山喜
    • 回線
    • 畳の匂いが良かった
    • 一階はいろいろキレイ
    • 海近
  • プロジェクタがあった
  • 品評会の場所が調度良かった
  • 13時入りは時間が確保できた

problem

  • 募集を分けたのは?
  • 連絡がゆきとどかなかった?
  • 成果物の実用性が?
  • 電源タップ
  • たぶん部外者が #railshackathon で不謹慎なツイートをしてた

try

  • 次をやりたい
  • 新しい人たちを呼びたい
  • 第何回が参加のハードルを高くしてる
  • 毎回が第1回
  • 初めてでも楽しめます、と書く
  • 時間を長く
  • みんな一緒の部屋で
  • ひとりチームをやってみたい
  • 足りないとかない決算の方法を考える
permalink no tweet

bundlerでgemを作ってみる

昨日のYokohama.rbで#railshackathonに向けたアイデアソンでいろいろ話してたら 新しいブログシステムのメージが具体化してきた。

実装はbilbo以上に小さくできそうな気がしているので、もうアイデアをメモするよりもメモがわりにプロジェクトを立ち上げてしまっていいかなと。

で、どうせだから今回はgem化してみよう。

以前@jugyoに教えてもらったjewelerを使ってみようかなと思ったけど、gem作成においてより後発のbundlerを使ってみることにする(thx @takkanm @nagachika)。

雛形の作成

gem install bundler

新しいgem化するプロジェクト名をpipinとすると、

bundle gem pipin

これでpipin gemの雛形ができる。

=>
      create  pipin/Gemfile
      create  pipin/Rakefile
      create  pipin/.gitignore
      create  pipin/pipin.gemspec
      create  pipin/lib/pipin.rb
      create  pipin/lib/pipin/version.rb

Hello Pipin

ひな形として作成されたlib/pipin.rbに"Hello Pipin!"の表示を追加する。

module Pipin
  # Your code goes here...
  puts 'Hello Pipin!'
end

それとpipin.gemspecのTODO(2箇所)を書き換えてbuildする(TODOという文字列が残っているとbuildできない)。

rake build
=> pipin 0.0.1 built to pkg/pipin-0.0.1.gem

gemファイルが作れた模様。

gem install

次のようにbuildで作成されたpkg/*.gemファイルを直接指定したらインストールできた。

gem install pkg/pipin-0.0.1.gem

実行してみる。

ruby -r pipin -e ''
=> Hello Pipin!

うまくいった!

RubyGems.orgで公開

pipin.gemspecの s.authorsとs.emailをRubyGems.orgに作成したアカウントに合わせてbuildした上で、

gem push pkg/pipin-0.0.1.gem

でOK。

githubへ

githubのDashboardのNew Repositryでリポジトリを作成し、そのあと表示される以下のヘルプの手順でOK。

Existing Git Repo?
  cd existing_git_repo
  git remote add origin git@github.com:dan5/pipin.git
  git push -u origin master
permalink no tweet

oink雑談

今回は全然メモとれなかった。 あるプロジェクトのドラフト見せてもらって、あとはずっとデザイン哲学についての話しをしていた。

  • 千駄ヶ谷のコーヒーはハウスブレンドだった
permalink no tweet

MacにCoffeeScriptをインストール

手順

  1. nvmをインストール ... nvmはnode.jsのrvm
  2. nvmでnode.jsをインストール
  3. npmでcoffee-scriptをインストール
  4. 環境設定(未解決)
  5. Hello World

nvmとnode.jsのインストール

gitはインストール済み。

git clone git://github.com/creationix/nvm.git ~/.nvm
. ~/.nvm/nvm.sh
setopt no_nomatch
nvm sync
nvm install v0.4.8

最後のnvm installでnode.jsの0.4.8をインストールしている。

以下は上記にたどりつくまでの試行錯誤のログ。

git clone git://github.com/creationix/nvm.git ~/.nvm
. ~/.nvm/nvm.sh
nvm sync
nvm install latest

としたら、installのところで以下のようなメッセージが出てうまくいかない。

nvm_version:27: no matches found: v*.*.*
nvm:40: no matches found: -#
nvm: install N/A failed!

zshのときは以下を実行するといいらしい。

setopt no_nomatch

ここで改めてもう一度、

nvm sync

うまく行った模様。 さっきまで出ていた以下のようなメッセージが消えた。

nvm_version:27: no matches found: v*.*[02468].*
nvm_version:27: no matches found: v*.*.*

改めて、

nvm install latest

を実行。がしかし、

nvm: install N/A failed!

と言われて止まってしまう。

nvm ls で最新版を調べて、

nvm install v0.4.8

としたら無事インストールできた。

CoffeeScriptのインストール

npm install coffee-script

環境設定

まだこの作業は未完了。

ログイン後、以下でnvmが使えるようになる。

. ~/.nvm/nvm.sh

さらにuseコマンドでバージョン指定。

nvm use v0.4.8

これでnodeが使えるようになる。

coffeeコマンドは以下にある。

.npm/coffee-script/1.1.1/package/bin

毎回直接呼ぶのは面倒なわけだけど、 どうしたものやら(未解決)。

とりあえず毎回以下を実行してしのぐことにする。

. ~/.nvm/nvm.sh
nvm use v0.4.8
alias coffee='~/.npm/coffee-script/1.1.1/package/bin/coffee'

Hello World

以下の内容でhello.coffeeを作成する。

hello = ->
    console.log("Hello World!")

hello()

以下で実行。

coffee hello.coffee

jsファイルを生成する場合は-cを使う。

coffee -c hello.coffee
node coffee.js
permalink no tweet