Category: Ruby

先日、著者である@igaiga555さんから献本をいただいた「たのしい開発 スタートアップRuby」。しかし、いつも書評を掲載していただいている「晴読雨読@エンジニアライフ」では、別の書評がすでに公開されている。

すっかり出遅れてしまった上に個人blogへの掲載で大変申し訳ない気持ちなのだが、本書はとてもいい本なので、こちらでも書評を公開させていただく。



(さらに…)

去る7/29(ナイス!肉の日)、RegionalRubyKaigiのひとつである「TokyuRubyKaigi05」が開催されたので、料理を持ち込んでLTしてきた。「Tokyu」がregionなのかどうかは気にしちゃいけない約束になっている。

LT

タイトルは「Rubyistが進むべき道への道」。もちろんコレへのオマージュである。

スライドはこちら。

ちなみに、スライドで告知している「るりま読書会」は現在絶賛参加申込受付中。有明まんが祭りの裏番組で、Ruby力を高めませんか?

(さらに…)

仕事でformによるファイルアップローダを作っていた。これはヘルパーライブラリとして切り出すと他のところでも使い回せるなーとか思っていたら、「社内ライブラリを OSS 化すべきだ」という記事のことを思い出した。

一方、QA@ITで「今時rubygems作るんならBundlerだよねー」というご指摘をたくさんいただいたことも思い出した。

ということで、仕事のために書いたけれどもビジネスロジックは含んでいないライブラリを「Tupper」として切り出し、Bundlerを使ってrubygemsとして公開するところまでの作業記録を晒してみる。

Tupper

Tupper

(さらに…)

ok kinoco

先日TDD Boot Camp Tokyo 1.6に参加してきた。参加記事はまたいずれ。

同僚と一緒に参加したらすっかり熱が上がってしまい、翌週「社内TDDBC」なんてのを開催してしまった。この記事も近いうちに。

ということで最近テスト方面が盛り上がっているのだが、TDDBCにautotestの準備が間に合わなかったのが悔やまれる。社内TDDBCでは使っているペアがいたので、悔しくなって急遽セットアップしてみた。



(さらに…)

7/31、大森のniftyで開催された「TDD Boot Camp Tokyo 1.6」に参加してきた。

TDDとは「Test Driven Development」、つまり「テスト駆動開発」のこと。それをBoot Campになぞらえて、講演とワークショップで1日みっちり叩き込まれる、という硬派なイベントがTDD Boot Camp (TDDBC)だ。

2009年に第1回が開催されて以来徐々に注目を集め、7/9に行われた会では定員36人に100人以上が殺到する、という大騒ぎになった。私もかねてから参加したいと思っていたので、今回もぐりこむことができてラッキーだった。

(さらに…)

スキャンした電子書籍を{ISBN}.pdfという名前で溜め込んでおいたら、あとから検索性が悪くて絶望した。一覧ページを作るために、「ISBN 検索 API」でググったところ、Amazonと楽天が有力候補(…というかそれ以外にほとんど存在しない)らしい。

普段から使っていることだしAmazonでいいか…と使ってみたら、いろいろやることがあったので手順をメモっておく。

(さらに…)

タイトルがすべてなのだけれど、一覧は意外と見当たらないので作ってみた。

環境

% ruby -v
ruby 1.9.2p136 (2010-12-25 revision 30365) [i686-linux]

概要

  • すべてのクラス定数を取得
  • ancestorsにExceptionクラスをもつものをピックアップ
  • ソートして表示

以下のコードはワンライナーで書いたものを整形してコメントを追記しただけ。参考にしたのはこちら

すべての組み込み例外クラス

以下のようなコードを書いてみた。

puts Object.constants.find_all { |c|
  (cc = Object.const_get(c)) &&         # シンボルからクラス定数を取得
  cc.respond_to?(:ancestors) &&         # ancestorsメソッドを持つ
  cc.ancestors.include?(Exception)      # Exceptionとそのサブクラス
}.sort

(さらに…)