Twitterの障害情報などを教えてくれる Twitterアカウント があるようです。

tw01

弊社 でも真似して作ってみました。

今のところ、特に障害が発生する予定は無しです :-)

何か新しい事を始めるときに使ってみよう。

posted by Png genki on Sat 22 Dec 2007 at 20:47

ある単語Xが出てくる場所の前後5行以内に別な単語Yが出現する場所を探したい。

たまにはそんなこともありますね。

-A -B -C オプションが実装されている Rak やgrepを使えば簡単。

   1  % rak X -C 5 | rak Y

-A nは後方n行、-B nは前方n行、-C nは前後n行を 含めて表示するので、それをパイプして前後の文脈の 中からさらに検索してあげればOK。

posted by Png genki on Fri 21 Dec 2007 at 13:07

一時動かなくなっていた restful_open_id_authenticationプラグイン ですが、 ひとまず手元の環境で動く状態になったので、こちらに置いておきます。

http://svn.s21g.com/public/rails/plugins/restful_open_id_authentication_redux/

ruby-openid-2.0.1 のexamplesのコードが非常に参考になりました。

プラグイン中のmigrationジェネレータは、何も無い状態から DBを作るためのマイグレーションになっています。

すでにrestful_open_id_authenticationプラグインを 使っている状態からアップグレードする場合は、下記 [2]に掲載したmigrationコードをご利用ください。

Enter at your own risk!

See Also

  1. restful_open_id_authenticationプラグインの更新に着手
  2. rescful_open_id_authenticationプラグインの更新#2
posted by Png genki on Fri 21 Dec 2007 at 08:09

restful_open_id_authenticationプラグイン でOpenIDストアに使用していたDBを ruby-openid 2.0に移行させるためのマイグレーション。 ruby-openid 2.0のexamplesから抜粋。

   1  # Use this migration to upgrade the old 1.1 ActiveRecord store schema
   2  # to the new 2.0 schema.
   3  class UpgradeOpenIdStore < ActiveRecord::Migration
   4    def self.up
   5      drop_table "open_id_settings"
   6      drop_table "open_id_nonces"
   7      create_table "open_id_nonces", :force => true do |t|
   8        t.column :server_url, :string, :null => false
   9        t.column :timestamp, :integer, :null => false
  10        t.column :salt, :string, :null => false
  11      end
  12    end
  13  
  14    def self.down
  15      drop_table "open_id_nonces"
  16      create_table "open_id_nonces", :force => true do |t|
  17        t.column "nonce", :string
  18        t.column "created", :integer
  19      end
  20  
  21      create_table "open_id_settings", :force => true do |t|
  22        t.column "setting", :string
  23        t.column "value", :binary
  24      end
  25    end
  26  end

ちなみにオリジナルのプラグインが生成したマイグレーションコードはこちら。

   1      create_table :open_id_associations, :force => true do |t|
   2        t.column :server_url,   :binary
   3        t.column :handle,       :string
   4        t.column :secret,       :binary
   5        t.column :issued,       :integer
   6        t.column :lifetime,     :integer
   7        t.column :assoc_type,   :string
   8      end
   9  
  10      create_table :open_id_nonces, :force => true do |t|
  11        t.column :nonce,        :string
  12        t.column :created,      :integer
  13      end
  14  
  15      create_table :open_id_settings, :force => true do |t|
  16        t.column :setting,      :string
  17        t.column :value,        :binary
  18      end

open_id_settingsは不要になって、open_id_nouncesの 内容が変わります。

posted by Png genki on Fri 21 Dec 2007 at 06:40

昨日RubyGemsを1.0.0にアップデートしたところ、 require_gemが使えなくなってしまったため、 内部でrequire_gemを使っているGemが使えなくなりました。

かなり前から移行措置が取られていたため、 使えなくなったGemはほとんど無かったのですが、 一個だけ、ruby-openidの1.x.x系列が使えなくなっていました。

その結果、愛用していた restful_open_id_authenticationプラグインが 動かなくなってしまいました。 結構いろんなプロダクトで使っていたので影響大です。

ruby-openidの2.x.x系列は、require_gemを使わないようなコードに なっているのですが、インターフェイスが大分変わっているため、 すんなりとアップグレードが出来ない感じですね。

しかし、アップグレードしないわけにもいかないので、 restful_open_id_authenticationプラグインの ruby-openid 2.x.x系対応に着手します。

すでに同じ問題に取り組んでいる方がいらっしゃいましたら、 喜んでご協力いたしますのでご連絡いただけるとありがたいです。

連絡先

posted by Png genki on Fri 21 Dec 2007 at 06:23

遂にリリースされましたね。

Ruby-1.9.1(12/25リリース予定の)にバンドルされる見通しのRubyGemsですが、 それに先立ってバージョン1.0.0がリリースされました。

RubyGems 1.0.0

Release 1.0.0 fixes several bugs.

RubyGemsのバージョンアップを行うためには、 通常のGemパッケージとは違い、以下のような コマンドを実行する必要があります。

   1  % sudo gem update --system

今年の年末はいろいろと新しくなって、ユーザとしては楽しいですね。 開発者の皆様、お疲れ様です。

posted by Png genki on Thu 20 Dec 2007 at 21:53

本日、DNSサーバの設定の問題により、本ブログにアクセスできなくなる 障害が発生しておりました。

現在は復旧しておりますが、設定が反映されるまで 今しばらくアクセスが出来ない状態が続く可能性があります。

ご迷惑をおかけいたしますが、 もうしばらくお待ちいただけますと幸いです。

よろしくお願いいたします。

posted by Png genki on Thu 20 Dec 2007 at 21:14

Twitterで話題になってたのでちょっとやってみたのだけれど、 MyMiniCity が面白いです。

mmc

なにやらSimCityを髣髴とさせる画面なのですが、 特に何か操作できるようなことも無く、町が発展するのを眺めているだけ。 メッセージボードみたいなのがあって、一応そこでコミュニケーションは 取れるみたいですね。

自分が作った町のページに人が訪れてくると、町の人口が増える 仕組みらしい。これは良いアイディアだなあ。

posted by Png genki on Wed 19 Dec 2007 at 13:34

前から思っていたけれど、簡単なアプリケーションを作ったり、 とりあえずアイディアを動く形にするためには、MySQLを使うよりも Sqliteの方が向いていると思います。

そんな人には、今回のRailsのアップデートは嬉しいかもしれません。

Softies on Rails: Rails 2.0.2

So I believe that for anyone reading this blog, Rails 2.0.2 is a must-have upgrade. Just watch out for the new default to SQLite3 instead of MySQL for new applications.

というわけで、Rails-2.0.2では、デフォルトで使用されるDBがMySQLから Sqlite3に変更されたようです。初めて使う人にとっての敷居が下がるのは良いことですね。

See Also

更新履歴

  • 2007/12/19 See Alsoを追加
posted by Png genki on Tue 18 Dec 2007 at 04:10

Rails勉強会@東京#25 に参加してきました。

photo01

今回は、勉強会終了後に 東京と関東Rubyの忘年会2007 とmergeされるという事で、普段よりも参加者が多めでした。 賑やかで良かったです。

流れとしては、

  • 3回ほど前から続いているランチ懇親会
  • 前半セッション(DBの話)
  • 笹田さんによるキーノートスピーチ(Ruby 1.9の話)

という感じでした。

ランチ懇親会

shachi さんやYuumiさんとe-mobileの スピードテストをしつつ、 The Rails WayAdvanced Rails Recipes がRails 2.0対応していて良さそう、というような話をしていました。

それからSimple DB面白そう、という話もしたような気がします。 まだリリースされてないのですけど、出たら使ってみたい。

DBの話

西さんを捕まえて、第七正規形とか、Rails 3.0に必要なのはなん だろうというような話をしていました。

User.find :all, :conditions => {:deleted => nil} みたいなのは簡単に記述出来るけど、:deleted => not nil な条件を指定したいような状況では、 :conditions => 'deleted IS NOT NULL' とやらないといけない ので面倒だな、という話から、nilの補集合を表すような 記号の話になり、集合の切り分け方の話、最終的に第七正規形の話 への展開。

他、話した内容のメモ。

  • プラグインをGem化する簡単な方法が欲しい
  • perform_filter的なものが必要
  • detached_after_filterが欲しい
  • backgroundrbでやっているような仕組みを、 フレームワーク側で用意しても良いのではないか
  • ActiveScaffold GJ!
  • ActiveSearchが欲しい
    • テキスト全文検索のためのアダプタ群が欲しい

笹田さんによるRuby1.9の話

前回に引き続いて、キーノート的なセッション。 なかなかいい感じですね。笹田さん、次回もぜひ。 面白そうだったポイントとしては、

  • ネイティブスレッド
  • RubyGemsとRakeが標準添付
  • {foo: 'bar'}でHash
    • User.find :all, limit: 10, order: 'created_at DESC' とかできる
  • proc{|a,b,&block| } ブロック引数でブロックが取れる
  • Hashが全て順序つきHashに

この辺ですね。期待。

posted by Png genki on Mon 17 Dec 2007 at 09:07