• 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
 

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/141

1年ぐらい前から思ってる事なんですが、brazilさんのこちらの記事を読んで、同じような事を考えてる人がいるんだなあと思い、記事にしてみました。

ゲームのような作業はどうしてみな非生産的なのか。
生産的なゲームはなぜ存在しないのか。

問題の単純化のために言い切ってしまうと、生産的な作業というのは、それをする事によってお金が得られる(価値を生み出す)ような作業のことです。

ゲームをする事によってお金が得られるようなゲームが存在しないのはなんでだろう。
価値を生み出す作業がゲーム的な楽しさや中毒性を持ち合わせていない理由はなんだろう。

そうでなければならない理由なんて無いように思えるのに、なぜかそうじゃない例を見つけられないんですよね。

これが本当に不思議。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/141

posted by Png genki on Tue 12 Dec 2006 at 10:09

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/140

Ruby on Railsを使って多人数で開発を行う場合、各々の開発環境で別々に作成されたmigrationの番号が衝突してしまうことがあります。

この問題を解決する方法として、以下のようなものが提案されています。

simultaneous migrations
同じ番号のmigrationファイルを並列に実行する事を可能にするパッチ
Migrations, branches and dependencies
migration番号の代わりにタイムスタンプを用いることで、そもそも衝突を起こさなくする方法の提案(コードはまだ無い)
後者の方法はシンプルですが、VERSION指定でmigrationを管理するのが若干面倒になりそうですね。番号でも指定できれば便利かな。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/140

posted by Png genki on Sun 10 Dec 2006 at 19:08

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/138

今まで気がつかなかったけれど、Ruby-1.8.5になってから ActiveSupportのBinding.of_callerが動かなくなっているのですね。

Binding.of_callerはRubyの継続(Continuation)を使った面白い機能の一つなのですが、使えなくなるのは残念ですね。なんとかならなかな。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/138

posted by Png genki on Sun 10 Dec 2006 at 16:59

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/137

先日見つかった、CGI.rbのDoS脆弱性を簡単に修正するHotfix RubyGemsが公開されたようです。 RubyGem Hotfix for cgi.rb Vulnerabilities Released

RubyGemsなので使い方は簡単です。以下のようにHotfixをインストールします。

sudo gem install cgi_multipart_eof_fix --source blog.evanweaver.com
続いて、Rubyアプリケーションの中でHotfixを呼び出します。
require 'rubygems'
require 'cgi_multipart_eof_fix'
Railsアプリケーションの場合であれば、environment.rbの中に記述すればOKです。

稼動中のシステムを抱えていて、簡単にRuby本体のバージョンを上げられない場合などには重宝しそうですね。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/137

posted by Png genki on Thu 7 Dec 2006 at 05:18

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/135

Ruby on Railsで、form_forのようなブロック引数を取るhelperメソッドを書く方法を紹介します。

ブロック引数を取るhelperメソッドは、例えば以下のような感じで使うとします。

<% foo do %>
  test
<% end %>
この結果、以下のようにヘッダとフッタが挿入された結果が出力されるとします。
foo header
  test
foo footer
このような挙動をさせるためのfooメソッドの定義は、以下のようになります。
def foo(&block)
  concat('foo header', block.binding)
  block.call
  concat('foo footer', block.binding)
end
concatメソッドは、ERbが内部的に使用している_erbout変数に文字列を追加します。 concatメソッドの定義はこんな感じです。
def concat(string, binding)
  eval("_erbout", binding).concat(string)
end
blockが持っているERbの実行コンテクストで_erbout変数にアクセスし、 _erbout.concat(string)を呼び出しています。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/135

posted by Png genki on Thu 7 Dec 2006 at 04:49

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/134

本日より、MONO+Listのクリスマスキャンペーンが始まりました。

キャンペーン期間中にMONO+Listに登録されたモノを、抽選で10名様にプレゼントする企画です。キャンペーン期間は12月20日(水)23:59までとなっています。

それから、トラックバックキャンペーンも行っています。こちらはキャンペーンサイトにトラックバックを頂いた方の中から、抽選で1名様にWii(TM)をプレゼントいたします。

詳しくはこちらのキャンペーンサイトをご覧ください。

みなさま、奮ってご参加ください。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/134

posted by Png genki on Wed 6 Dec 2006 at 13:53

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/133

botreeのアルファバージョンをリリースしました。

http://botree.drecom.jp/

botreeはオンラインで使えるアウトラインプロセッサーです。

開発した安藤さん、ひとまずお疲れ様です。

This article was migrated from http://rails.office.drecom.jp/takiuchi/archive/133

posted by Png genki on Tue 5 Dec 2006 at 00:19