2010年5月29日土曜日

rails と postgresql schema

 うちの社員から、スキーマは分けないんですか?と、問われて、そんな事は無理だろう・・・と即座に思った。でも、まぁ、ちょっと実験してみるか・・・と、やってみたら、簡単に切り替える事ができた…。ショックでした…。


create schema test;
create table foos (
id serial primary key,
bar_id integer,
name varchar(16)
);
create table bars(
id serial primary key,
name varchar(8)
);
create table test.bars (
id serial primary key,
name varchar(8)
);


こんな感じのリレーションを作成しておいて


class FoosController < ApplicationController
before_filter :change_schema

def change_schema
Bar.set_table_name 'test.bars'
end
end


とか、やっちゃったら、簡単にスキーマが切り替えられたんです。怖いです。よくよく考えてみると、テーブル名は規約から外れるわけじゃないので、そうなのかもしれません。

 postgresql の slony-i のマスター・スレーブ方式ですが、DB単位じゃないですか?schema単位でマスター・スレーブ方式が選択できると、途端に幅が広がったりしませんか?相互にスキーマを転送できると、凄い事になりそうです。

デザイン・イノベーション感想

 これは!と閃くオーラを感じて「デザイン・イノベーション」読みました。札幌紀伊國屋書店では、デザインの棚に平積みされていましたが、紛うこと無くデザイン・イノベーションを行うためのマネジメント(経営)に関する本です。
 内容は、5:4:1ぐらいで、"デザイン・イノベーションを行うためのマネジメント"、"環境保護"、"オフショア・アウトソーシングに関する警告とアドバイス"となっています。半分ぐらいまでは、デザインをするためのノウハウが語られていて、興奮して読み進めました。ところが、後半からは地球温暖化問題など環境に配慮したデザインの話に切り替わってしまいます。もちろん、政府レベル・世界レベルで環境に配慮したデザインとは、どんなものか?といった事から、個々の企業が取り組むべきデザインとは?といった事が語られていて、それはそれで重要な話です。でも、もうちょっとデザインのメソッドについての話が読みたかったので、肩透かしをくらったような気がしました。オフショア・アウトソーシングの考え方は、賛同できました。
 読了した後でも、デザイン・メソッドの部分が消化しきれていなくて、前半部分を再度、読み直そうと思っています。

 本書は、マネジメントの本としてはユニークで、これからの時代をサバイバル・・・新たなデザインで開拓?していくためにも、経営に携わる人には必読の書と言えるのではないか?と感じました。

2010年5月27日木曜日

「非才」感想

卓球の世界チャンピオンという特異な経歴を持つ著者が、自らの経験に基づいて「非才」について書いた本です。マルコム・グラッドウェルの「天才! 成功する人々の法則」で、この事については、もう語り尽くされてるよ!と感じる方も少なくないのではないでしょうか?私も、読む前までは、二匹目のドジョウ本か?と考えていました。しかし、読み進めてみると、そうではありませんでした。
 なかなか幅広く心理的な面にまで掘り下げられているので、人によっては面白いと感じる部分が異なるかもしれません。私は、以下の点が面白かったです。
 才能とは努力した時間に比例する。ただし、目的意識を持って上達するような努力(練習)の時間に比例するのであって、漫然と時間をかけても決して才能は開花しない。目的意識を持って練習した上に人間に統合的に機能されたチャンク構造が生まれる。達人は、判断にチャンク化された能力を使用している。
 先日感想を書いた「脳に悪い7つの習慣」と全く同じ事が書かれており、才能を褒めるよりも、努力した事に対して褒める方が効果的であること。
 そして、スポーツ選手らしくドーピングによる能力獲得についての知見が書かれており、筋力の能力をあげるウィルスによる遺伝子ドーピングが、おそらく、もう既に行われているのではないか?といった話。
 あと、"あがる"という事について、チャンク化された能力を持つ者ほど、ダメージは大きいといった話。

 とりあえず、うちの坊ちゃん、すぐに「できない」とぬかして諦めちゃう傾向にあるので、「諦めるのは良くない事だよ」と、とりあえずやらせる事。そして、なるべくなら、できたから天才と褒めるのではなく、「よく頑張ったね」と褒めるようにしようと思ったのでした。(結論は、そこかヨッ!)

bing がんばれよ

 検索ワード

version_requirements is deprecated Augast 2010


に対して、

Google 約 2,360 件 (0.33 秒)

Bing 1-1件

  Full text of "Studies concerning glycosuria and ...
  あのー、どこに検索ワードがございますんでしょうか?

まじめに検索にも力を入れてまっか???

2010年5月24日月曜日

ぽやっきー

 iPad の情報を見てると、iPhone と違って、今度はマジほしい・・・。しかし、維持する金なんて無いんで(安いのは二年間だけ)買えるなら WiFi版だよねー。でもさ?GPS って、3G版にしか無いザンス・・・。はっきり言って、これでは魅力半減なわけだす。GeoLocationAPIもあるけど、オフラインで完全に使えるか?つうと、疑問です。そんな訳で、急速にiPadも様子見かな?などと考えてしまいます。電子ブックのためだけに購入するのならば、別に iPad じゃなくてもいいわけです。iPad の SIMロック残念っす。ソフトバンクに貢げる方だけ買ってくださいって感じがして、どうにも嫌です。アップルは日本での膨大な利益と引換に、iPadを使える層を引き上げてしまった気がして、とても残念です。すんません、やっかみです。
 ここんところ良書に当たって、読書は充実してます。けど、今頃、風邪をひいてしまいました・・・。折を見て感想を書きたいと思います。電子書籍なら、新書を買って読んでは、よほど気に入ったものを除いて、本を置く場所が無いのでBOOKOFFに売りにいくという事をしなくてもいいのかなーなんて空想してます。もう半年も待てば、Googleも追随してくるでしょうから、それまで我慢した方がいいのかもしれません。
 

2010年5月20日木曜日

activescaffold の :select の sort

ActiveScaffold の form_ui = :select を指定した時に、意図した並び順でリストボックスを表示したい。
ActiveRecord にデフォルトの並び順が指定できるようになった。

class Hoge < ActiveRecord::Base
default_scope :order => 'id';
end

だから、activescaffold における form_ui = :select を指定した場合にアルファベット順でソートする挙動は、もう要らない。
helpers/association_helpers.rb を修正する。

# returns options for the given association as a collection of [id, label] pairs intended for the +options_for_select+ helper.
def options_for_association(association, include_all = false)
available_records = association_options_find(association, include_all ? nil : options_for_association_conditions(association))
available_records ||= []
# available_records.sort{|a,b| a.to_label <=> b.to_label}.collect { |model| [ model.to_label, model.id ] }
# already sorted by sql. so disable sorting.
available_records.collect { |model| [ model.to_label, model.id ] }
end

2010年5月18日火曜日

宮崎県の口蹄疫と独占禁止法

 宮崎県で種牛が集中管理される事により生産性と質を高め、低コストで高生産・高開発の体制をとっていた。という事になるのであろうか?これが、裏目になって、口蹄疫により大打撃を受けて回復の目処すら立たないという…。
 ふと、似た構造を感じてしまうのが、今の世界の潮流だ。Winner takes all. 1位以外の2位以下は敗者であり、真の競争社会を生き抜くためには買収・合併しなければならない!と、日々、企業は巨大化している。
 今の合併吸収は、一昔前ならば独占禁止法違反という裁定が下されてもおかしくない状況だったと思われる。しかし、情報社会になってからは、生存競争の厳しさから少々の事には目をつぶってしまっている。おかしいような気がしてしょうがないのだが、よほどの事が無い限り、不思議と全世界が黙認してしまっている。
 本来、独占禁止法が設定された裏には、独占による弊害があったからではないか?単一構造は、フォルトトレーラントでは無いのである。
 宮崎県の口蹄疫感染問題が変なところで今の世界とリンクしてしまったのであった・・・。

2010年5月16日日曜日

秋葉原アニメでPRという記事を見て閃いた

 秋葉原が電気街よりもアニオタの世界で観光地としてPR、といった趣旨の記事を見て閃いた。コインロッカーを設置しているスペースを改造し、無料で着替のできる場所を提供してはどうだろうか?こうやって、コスプレしやすい環境を整えてあげれば、目論見どおり人が人を呼ぶかもしれない。

2010年5月13日木曜日

そろそろ無料でもなくなったか?

 少し前にNing が有料モデルに移行した。実は、私が所属するカヌークラブのサイトを Plone でやっていたのだが、鬼のようにオブジェクト・モデルが変更されるなどバージョン・アップが毎回しんどく、DBのサイズも8Gを越えてメンテナンスもしんどいので、Ning が良いのではないか?と検討した時期もあったのだ…。しかし、いつの日か有料モデルに移行する日が来るだろう…その時に突きつけられる月額費用は、Ning のいいなりになるしかないと思い直し、結局のところ Ning を選択する事はなかった。現在、クラブのサイトは会員制というやや閉鎖的な方向に進んでいるようだ。
 Blogger に Trackback が無いのに驚いて導入したのが Haloscan だったのだが、しばらくしてから、JS-Kit に買収されてしまった…。その JS-Kit も有料モデルを目指しているっぽく、悪戦苦闘しているように思える。で、しばしばトラブルで、ブログのページも巻き添えを食うので業を煮やして JS-Kit を切ったのだが???今日、JS-Kit にログインしようと試みても、ログインがでけん…。俺のアカウントは、過去のコメントと共にどこかへ行ってしまったようだ。
 いくら一人あたりのサービス・コストが0円に近くなったからと言っても、先立つものが無ければサービスを続ける事はできない。コアなサービスならば、有料でもやっていけるという認識(有料でないともうできませんギブアップかもしれない)も出つつあるのかなぁ?なんて思うのであった。


2010年5月11日火曜日

脳に悪い7つの習慣(やる気のでないあなたに)

プログラマーのピークというエントリーで紹介した「<勝負脳>の鍛え方」という本を書かれた林成之先生が、「脳に悪い7つの習慣」という本を出されていたので、読んでいます。正直、いそがしくて読む本も限定していかないといけない状況であり、触手の動かされる本がなかなか見つからなかったのです。そんな中、本書は群を抜いておもしろいです。
 3月から4月にかけて具合が悪くなるぐらい忙しくて、「無理だ」とか「不可能だ」とか「しんどい」とか愚痴をこぼしていたのですが、これが全く脳にとっては良くない行為なのだとか…。それでも無理なものは無理という事実に変わりはありませんが、口に出したり、書いたりするのは良くない行為で、自分のパフォーマンスを下げる行為になるそうです。
 そして、人には「仲間になりたい」という要求があり、これがマズローの高次な欲求にもつながる本能だというのです。オープン・ソースが成立するのも、そういった理由からで、人は自分のためというよりも人のためになる事をした方が脳にとっては良いのだそうです。自分の事だけを考えるのは経験に基づく後天的な「自己保存」という性質であるとか…。
 すごいコードを書きたい。C++の本を書きたい。なんのため?誰のため?それは仲間になりたいという人間本来の欲求から来ているはず。原点の気持ちに立ち返る。そんな感動を呼び戻し、自らのパフォーマンスも引き上げてくれる素敵な書。「脳に悪い7つの習慣」でした。

2010年5月9日日曜日

ゴールデンウィーク京都

4月30日

実は今まで足を運んだ事の無かった嵐山方面。まずは天龍寺へ。龍安寺と混同してて石庭はどこだ?なんてマヌケなお話でした。



 その後、乗れと言わんばかりのタイミングで列車が来てしまったので、トロッコ列車に乗りました。

このトロッコ列車が意外にも楽しかったです。残念ながら保津川下りをする時間はありませんでした。カヤックでダウンリバーしたら2時間コースだな…などという感じです。
 二尊院から清涼寺へ向かっていたはずなんですが、気がつけば、あだし野念仏寺へ。どうりで遠いと思ったよ・・・ってオイ!お釈迦さまが、雲の上で悠然と手を差し伸べる極楽浄土のような雰囲気を感じて外から撮影しました。無縁仏さまの集まりなので、中は撮影禁止です。

5月1日 

 京都駅のホテルに一泊して、銀閣寺へ。ちなみに京都駅スバコの中村藤吉の抹茶ソフトクリームが絶品で感動しますた。

 この後、哲学の道を歩いて南禅寺へ

 三門に登って、めっちゃ怖かったんですが、写真だと迫力が無いっす。もっと写真を撮ったはずなんだけどな…。

そして、地理がわからんので蹴上りまで彷徨った挙句の果てに三門裏の水路閣へ。その後、市原平兵衛商店にて、もしもの時に備えてを補充。といったプチ旅行でした。

スーパーボキャブラリービルディング

 「10000語レベル スーパー・ボキャブラリー・ビルディング」 を買ってきました。動機は、英語のサイトに書いてある事を、もう少し深く理解したいと思ったからです。本屋を物色していて思ったのは、文法うんぬんよりも、まず単語の意味がわからなければ、お話にならない事。「デベロッパ系単語3000」とか、「プログラマ系単語3000」なんていうのがあれば喜んで買ってたんでしょうけど、ビジネス英語・日常会話・ニュースに特化したものしか置いてませんでした(そりゃそうだ)。そこで本書の登場です。10000語あればデベロッパ系単語もカバーできるだろう…って発想です。

2010年5月6日木曜日

ubuntu10.04もう修復された

 x86_64 の代わりに i386 で試してみようとやってみたら、カーネルがアップデートでカーネルが更新されていたので、再度 x86_64 を入れました。手順は、こんな感じ。
  1. ext4 で /boot と / パーティションを統合して i386 をインストール
  2. recover-mode で /scripts/init-bottom done... 後に ESC キーを押して X-server low-mode 起動
  3. アップデートを実行し、カーネルが更新されているのを確認。アップデート中にエラーで亜ボーン
  4. どうせなら・・・で、x86_64 で CD-ROM 起動、ネットに繋いだ状態でインストール実行
  5. recover-mode で(2.)同様に起動
  6. nvidia current-driver インストール。すぐに再起動しないで、アップデートを実行。
  7. アップデート完了後に再起動
  8. すんなりと起動…恐るべし…ubuntu…
追記:と思ったが、起動が不安定だ。ESCキーを押しっぱなしにして、次に Ctrl-C を押しっぱなしにして、なんとか起動できる状態。
/var/log/messages に、[ 85.959521] ACPI: Cant attach device と出ていて、へたれBTOのノートパソコンのBiosが腐ってるのかもしれない。
2010/05/29 追記:未だに起動が不安定で、ESCキーを押しっぱなしにして、画面に ^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[^[ と表示されたら、キーを離して起動している状態です。

2010年5月5日水曜日

ubuntu10.04雑感

 まぁ、9.10 よりは、10.04 の方が安定版なんで期待してアップグレードしました。それが間違いの元だったかも…。現在、10.04 から書き込みしているので、使えなくはありません。経過を報告しますと。
  1. アップグレードを実行
  2. すんなりとアップグレード作業が終了し、再起動
  3. いつまで経っても黒い幕のまま
  4. 業を煮やしてrecover-modeで起動
  5. /scripts/init-bottom という処理が done したところで無反応
  6. やっぱりか!のクリーン・インストールを決行(余計な要因を排除するためext4->ext3)
  7. やっぱり /scripts/init-bottom でダンマリ
  8. recover-mode で我慢の子…X-server シングル低解像度で起動
  9. とりあえず、アップデートしとけ…
  10. nvidia 最新(current)ドライバを有効
  11. なんとか、起動したぞい…
  12. firefox が freeze しマクローリン展開…埴輪…
  13. 苦難の google chrome ファイルをダウンロード(インストーラ起動では無理)
  14. ファイルをダブルクリックして、chrome をインストール
  15. 良かった… chrome は freeze しねぇぜ
  16. まだまだ、すんなり ubuntu 10.04 が起動するかどうかは未知の世界
  17. 無線LANは、何事もなく繋がるよっ
と、まぁ、こんなところです。ここ3ヶ月ぐらいの間には、これらの問題は修正されるだろうと予測されます。

追記:windows 7 にて書き込み中。案の定、ubuntu 10.04 が起動する事は2度と無かった。現象としては、ここと同じようだ。/var/log/boot.log を install-CD から起動して、sudo passwd root して、覗いて見たが、手がかりが全く無い。blacklist うんぬんも効果ナッシング。9.10 をクリーン・インストールするより無さそうだ…。
ちなみに boot.log は
init: ureadahead-other main process (XXX) terminated with status 4
init: ureadahead-other main process (YYY) terminated with status 4
で終わってたかな…。