スキニー(ぴったり)なシステム開発のススメ
12月7日、「スキニー(ぴったり)なシステム開発のススメ」というタイトルでセミナーを開きます。
tapp v1.2.0 をリリースしました
七夕ではありませんが、tapp v1.2.0をリリースしました。
Ruby Recipes and Japanese Cooking at COOKPAD で発表します
7月14日に COOKPAD 様で開催される Ruby Recipes and Japanese Cooking at COOKPAD で発表します。
tapp v1.1.0 をリリースしました
短冊に願いを込めてtappの新バージョンをリリースしました。
新しい契約形態での受託開発サービス「価値創造契約」での第1弾システムが無事稼働し始めました
価値創造契約の第1弾、サイエンス倶楽部様の基幹システムが6月より稼働を開始しました。
pry-rails をちゃんと使う
pry-rails をちゃんと使う
この前に社内で pry 中々良いんじゃないのという話になって rails console を pry に置き換える pry-rails を使い始めている。
だいたい irb で出来ることは出来ているんだけど、pry-rails だけだと reload! が使えないのでちょっと不便。そんな時は ~/.pryrc に
Pry.hooks = {before_session: ->(*args) { self.extend Rails::ConsoleMethods if defined?(Rails::ConsoleMethods) } }
と書けば reload! が使えるようになると後ろの席に座っている @moro に教えてもらった。みんなも pry を使って見ると良いです。
Growing Object Oriented
読書会に参加。
12章で テストの実行結果と対話しながら、とにかく必要最小限の実装と仮の実装で前に進め、13章で概念の輪郭を捕まえて Extractのリファクタリング していく様が面白かった。
サンプルアプリを追うのに興味がなくても、この辺の章のコラムだけで目を通しておいても色々勉強になる
Growing Object-Oriented Software, Guided by Tests (Addison-Wesley Signature Series (Beck))
- 作者: Steve Freeman,Nat Pryce
- 出版社/メーカー: Addison-Wesley Professional
- 発売日: 2009/10/12
- メディア: ペーパーバック
- 購入: 2人 クリック: 37回
- この商品を含むブログ (26件) を見る
読書について
- 作者: ショウペンハウエル,Arthur Schopenhauer,斎藤忍随
- 出版社/メーカー: 岩波書店
- 発売日: 1983/07
- メディア: 文庫
- 購入: 20人 クリック: 198回
- この商品を含むブログ (173件) を見る
多読、文書きの人には、「ぐざっ」とくる文がたくさん出てくる。
毒舌に抵抗感がないのであればおすすめです。
もっと、建設的に本を読む方法に興味がある人は、下記の方をお勧めする。
- 作者: J・モーティマー・アドラー,V・チャールズ・ドーレン,外山滋比古,槇未知子
- 出版社/メーカー: 講談社
- 発売日: 1997/10/09
- メディア: 文庫
- 購入: 54人 クリック: 361回
- この商品を含むブログ (298件) を見る
Rails 3.2.0 リリース
Rails 3.2.0 リリース
Rails 3.2.0 がリリースされていた。
結局、rails-3.2.0.rc2 で callback が動かない件はアプリケーションの方を直して対処してしまったのでその後の調査を止めていたのだった。誰となくすみません。わかったことは、A has_many B のようなリレーションで B を build して A の save で B も save しようとすると動いていないという現象なんだけど、そこで深追いは止まっている。
あと、何処かで RailsGuide の epub を生成出来るようになったというのを見かけたのでちょっと調べたけど、epub ではなくて mobi だった。生成方法は gem install kindlegen してから、みんなの手元にあるはずの Rails のリポジトリ の railitie に移動して
KINDLE=1 bundle exec rake generate_guides
を実行すると生成出来る。公式サイトでも配布しているので、常に最新!というわけでもないのなら右上からダウンロードして kindle に突っ込んでおけば Ruby のビルドやテスト実行の待ち時間の時間つぶしに便利。
Ubuntu11.10にrbenvとruby-buildを使ってREEをインストールする
仕事用のマシンを修理に出すので、代替機として借りたマシン(ThinkPad Edge)のVirtualBox上にUbuntu11.10を入れて開発環境を作りました。
rbenvとruby-buildのインストール
rbenvとruby-buildのインストールは、それぞれのページの通りでOK。
Ruby処理系のインストール
rbenvとruby-buildをUbuntuで使う場合は、典型的なエラーが起きた場合には対処方法が画面に表示されます。ですので、とりあえず普通にやってエラーメッセージの通り対処する、という進め方がオススメです。
まずは、おもむろにrbenv install ree-1.8.7-2011.12してみると、「curlがないからapt-get install curlしてね」と出てきます。(そこからですか…)
curlをインストールして、もう一度インストールコマンドを叩くと、今度はダウンロードは成功するけど必要なライブラリがないと言われます。sslとかreadlineとかいつものやつ。(本当にいつものやつ!かつて何度同じことをしたんだろう) ここでは、readlineのパッケージとしてlibreadline5-devを提案されるんですが、このパッケージは今はないようなので、libreadline-gplv2-devを入れます。
さぁ、再度インストールコマンドを叩いて、これで終わりかと思えば「gccがないのでbuild-essentialを入れてね(ハート)」と、このタイミングで言われます。
build-essentialを入れてインストールコマンドを叩けば多分成功します。
最近のUbuntu
Ubuntuは3年振りくらいに触ったんですが、App Storeみたいなやつでaptの全パッケージに評価とかコメントを付けることができるようになっていたり(Vimはすばらしい!☆5!)、デスクトップが凄く重いのでまずはクラシックに戻したり、と期待を裏切らない感じで安心しました。
kindle を買った
kindle を買った
昨年末から電子書籍を買うだけで満足してしまって全く読んでない本が貯まってきたので、何とかしないとということで kindle を買ってしまった。日本への発送料も含めて $121 とだいたい1万円弱くらい。日曜夜に注文して水曜夜に届いた。
ひとまず手元には pdf, epub, mobi の3種類の電子書籍が混在しているんだけど、それぞれ以下のように kindle に転送してみた。
- pdf とmobi は Windows の"send to Kindle"で転送
- epub は caribre を使って mobi に変換してから "send to Kindle" で転送
mobi にしたファイルは流石に読みやすいけど、pdf はちょっとしんどいね。ひとまず技術書というよりは読み物系を中心にどんどん消化しているところ。
MongoTokyo 2012 に参加してきた
MongoTokyo 2012 に参加してきた
朝になるまですっかり参加登録したことを忘れていたんだけど品川シーサイドの楽天で開催された MongoTokyo 2012 に参加してきた。
10gen の人の話
今日は President と Technical Director が来ていて割と話の内容には期待していたんだけど、10gen 社と MongoDB のご紹介という感じの"2年前に聞いたわー"みたいな内容だったのでだいぶ聞き流していた。会場には MongoDB は使った事ないんですけど…みたいな人も割と多かったので、そういった層に向けてはちょうど良かったのかな。
楽天の人の話
ニュース配信のバックエンドを MongoDB で作ってみましたという話。MongoDB は read はとても性能が出るけど write がダメやとか、session ストレージに使ったらオワタとか、ensureIndex は DB をロックしてしまうからレプリケーションを組んだ環境で迂闊に実行するとサービスを落としてしまうとかだいぶ興味深い内容だった。
NHN の人の話
サービスの裏でこう使ってますよという話。余り聞いてなかった。
nifty の人の話
MongoDB と Hadoop を組み合わせて使うと両方の欠点を補ってバンバンやーという話。Hadoop よくわからないので、話の内容も良くわからなかった。
CA の人の話
animal land(permalink だと facebook のアクセス許可ページに飛んでしまうのでニュースリリース)を MongoDB, Spring MVC, AWS で構築しましたという話。最初から課金周りはMongoDBには載せないで MySQL にしたとか、セッションは memcached 一択とか、ゲームをうまく作る上でユーザー collection にほとんどのスキーマを突っ込んだとか、これもだいぶ興味深い話だった。
全体的に去年のこの時期はログ解析に使っていますという話が割とメインな感じだったように記憶しているけど、node.js 周りとの連携も相まって割と MongoDB が力を発揮する部分でハードに使われてきているなあという印象だった。弊社でもプロジェクトで必要に応じて使ってはいるものの、今日発表があったような規模(レプリカセットとかシャーディングとか)までは使っていないのでだいぶ勉強になった。まる。
家にある技術書を全部電子化した
家にある技術書を全部電子化した
昨年の2011-07-23に買った ScanSnap を使って、やっと家にある技術書112冊全部をPDF化するだけの簡単なお仕事が終わった。
自炊といっても裁断は通勤途中にあるキンコーズに朝渡して夕方引き取るというのを5-6冊ずつだいたい毎週やっていた。1冊の裁断料金は1cmちょいの本なら100円、大きめの3-4cmの本だと4-500円という値段。なので裁断だけで総額2万弱くらいにはなったけど、本のスペースを減らして裁断機のスペースが増えるというのも本末転倒な気分なのでこれはこれでいいや。
肝心のスキャンは ScanSnap のおかげでだいぶスムーズに行ったけど、紙の質として薄いものや古くて乾燥している本などはどうしてもくっついてスキャンのやりなおしを何回かやるはめになった。
コツとしてはキンコーズの裁断後に一度1枚ずつめくって全部分解しているのを確認してからスキャンすることかな。だいぶ面倒だけど、スキャン途中にカバーを開けたりする手間を考えたら分解チェックは入れた方が良いと思う。今だと1冊5分くらいで処理できるかなあ。最初は15分くらいかかってた。
技術書はこれで片付いたけど、本棚には教科書が残っていてこれは表紙がだいぶ厚かったり、ハードウェアなDRMがかかっているので電子化するのはだいぶ大変そうだなあ。いっそのこと捨ててしまうかも。







