2007 年の記事

2007年を振り返って

· Other

さて、あと数分で2007年も終わりを告げ、2008年がやってくる。 2007年は、年初には思いもしなかった「いろいろな変化」がやってきた。ずっとこのブログや雑誌の記事執筆はやってきたが、それとは比べ物にならない飛躍の年と言えるかも知れない。 結婚 S2Wicketの開発と公開 java-jaとの出会い いくつかの非生産性向上系Eclipseプラグインの開発と公開 母校での講演 こみゅすけの開発と公開とMA3トリプル受賞 Sun Tech Days、Seasar Conf…

Read more →

railsとrakeは似ている

· Ruby on Rails

Railsアプリのディレクトリの中で、テストケースを実行するために、 rake test と打たなければならないところを、 rails test と打ってしまうと、もれなくtestアプリケーションがテスト対象アプリの中にできあがる。 Railsアプリを「正しく」作っている(=ちゃんとテストコードを書いて品質を担保している)人々はきっと経験していることではないか、と想像してみるが、いかがだろうか。。。…

Read more →

楽しい楽しい冬休みの宿題

· Other

学生の時は、それはもう嫌で嫌で仕方がなかった「冬休みの宿題」。当時の僕は「休みなのに宿題って、休みにならないじゃん」と納得がいかなかったが、30歳を過ぎると、自分で宿題を課すようになった。不思議なことであるが、しかし学生当時と違って、大人の宿題とは「好きなこと【だけ】をやる」であり、モチベーションもそりゃあ違うということだ。 で、今シーズンはというと・・・ Railsのfixturesをごにょごにょする。 activerecord-jdbcでごにょごにょする。 S2WicketとIr…

Read more →

愛する僕の妻へ

· Other

[![めりくり!いつもありがと... - クリスマスケーキ - はてなセリフ](http://serif.hatelabo.jp/images/cache/3e4a752345a83a268576b79ea15f10b1d724cb6a/e912e5fc5b33e9860378610a8bf5400b810f2915.gif)](http://serif.hatelabo.jp/3e4a752345a83a268576b79ea15f10b1d724cb6a/e912e5fc5b33e98603…

Read more →

Java Edge第3回ライブセッションで話をしてきました

· Java

中部地区におけるJavaコミュニティ「Java Edge」が主催した第3回ライブセッションが昨日行われた。「こみゅすけの里帰り」という題目で、僕も話をしてきた。 [![SlideShare](http://static.slideshare.net/swf/logoembd.png)](http://www.slideshare.net/?src=embed) | [View](http://www.slideshare.net/yoichiro/javaedge3) | [Upload …

Read more →

第一回チキチキ 『ant から maven2へ 』〜血があつい鉄道ならばこまるよね〜 が行われました

· java-ja

やたらと題名が長いJava-jaの勉強会。今回は「 [第一回チキチキ 『ant から maven2へ 』〜血があつい鉄道ならばこまるよね〜](http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E4%BC%8D%E5%9B%9E)」と題して、maven2をテーマとして6名のスピーカーが思い思いのテクニックを披露した。僕はと言うと、昨日の丸レクの資料作成に全力を注いだ結果、今回のJava-jaの資料作成に踏み切るだけの元気は既に使い果たしてしまった状態。…

Read more →

JRuby1.0.3がリリースされました

· Ruby on Rails

先週の土曜日、JRubyの安定バージョンとして、1.0.3がリリースされた。これはマイナーバージョンアップであり、バグフィックスが中心となっている。 [JRuby 1.0.3 Released](http://docs.codehaus.org/display/JRUBY/2007/12/15/JRuby+1.0.3+Released) - JRuby - Codehaus 参考までに、リリースに関する上記の内容を訳してみた。 --- JRubyコミュニティは、JRuby1.0.3のリリースを…

Read more →

Rails2.0.2がもうあるよ!

· Ruby on Rails

JRuby1.0.3がリリースされたので、それにRailsを入れようとした。 ![rails202.jpg](http://www.eisbahn.jp/yoichiro/images/rails202.jpg) なんと、すでに2.0.2がある。この前2.0.1がリリースされたばかりなのに。 というわけで、近日中に2.0.2リリースのアナウンスが正式に来るだろう。…

Read more →

丸レクでREST on Railsについて話をしてきました

· Ruby on Rails

本日、「 [丸山先生レクチャーシリーズ RESTfulサービス技術の台頭](http://www.c-sq.com/modules/article/article131.html)」で話をしてきた。僕の題目はというと、「Ruby on Rails2.0におけるREST対応」。使用したスライドは下のものである。 [![SlideShare](http://static.slideshare.net/swf/logoembd.png)](http://www.slideshare.net/?src…

Read more →

あるタグ全体を検証するassert_dom_equalメソッド

· Ruby on Rails

RailsにおけるControllerの挙動をテストするために、functionalsテストがある。functionalsテストの対象は各種Controllerクラスのメソッドであり、Webブラウザのリクエストをシミュレートして、それに対するControllerおよび使用されたViewの結果の内容を検証するのが目的。つまり、rhtmlやrxmlなどのViewによってレンダリングされた内容についても、動的に変化する部分に関してはfunctionalsテストの範囲となる。 functionalsテ…

Read more →

ある冬の出来事

· Complaining

先日、嫁と一緒に自宅近くのDocomoショップに行ったときの話。 僕らは家族割引の変更をしたくて、Docomoショップの中で順番を待っていた。整理券の自動発券機が入り口の正面に置いてあって、自分の番号が来るまで、座ってるか商品を見て待っているのが、大人の振る舞いである。僕らの前には10人ほどいるはずなのだが、店内には10人も見当たらない。整理券だけ取ったけど、時間がかかるし今日はいいや、って感じで帰っちゃう人がいるのだろう。つまり、整理券に書かれている番号ほど待ち時間は長くない、ということだ。1…

Read more →

assert_selectで属性値を扱う方法

· Ruby on Rails

rhtmlのレンダリング結果を確認するために、assertselectを使用する。この際、要素が持つテキストを確認するのではなく、ある属性の値を検証する必要も出てくるだろう。 ある要素のある属性値を確認するためには、以下のようにすれば良い。 assertselect element, '[name=?]', 'value' 上記の例では、ある要素elementに対して、それが持つ"name"属性の値が"value"であることを確認するコードである。つまり、 [CSSセレクタ](http:/…

Read more →

Ruby on Railsでもfacebookアプリは作れます(3)

· facebook

かなりもったいぶっている「Ruby on Railsでもfacebookアプリは作れます」シリーズだが、やっと今回からrfaceookプラグインを使って実際にfacebookアプリを作る話をしてみようと思う。 rfacebookプラグインを使ったRuby on Railsでのfacebookアプリの作り方は、 [前のエントリ](http://www.eisbahn.jp/yoichiro/2007/12/rubyonrailsfacebook.html)でも紹介した通り、 [RFacebo…

Read more →

RESTful Webサービス本が届きました

· Other

僕はこれを5日以内に読破しなければならない。 [![200712131129000.jpg](http://www.eisbahn.jp/yoichiro/images/200712131129000.jpg) RESTful Webサービス](http://www.amazon.co.jp/exec/obidos/ASIN/4873113539/eclipseplugin-22/ref=nosim)…

Read more →

「Ruby on Rails2.0におけるREST対応」のハンズオンが公開されました

· Ruby on Rails

来週の18日に控えている丸レクで使用する資料が、今日から以下のサイトで公開されている。 丸山先生レクチャーシリーズ2007-2008 「 [第2回「RESTfulなサービス技術の台頭](http://www.c-sq.com/modules/article/article131.html)」 僕の資料は、「第3セッションのハンズアウト」である。興味のある方は、ぜひ見てみて欲しい。もちろん当日会場に来てもらえると、もっと嬉しい。…

Read more →

Ruby on Rails 2.0がリリースされました!

· Ruby on Rails

見落としていたのだが、すでにRuby on Rails 2.0が、12月6日にリリースされていた。現在は、すでに2.0.1になっている。 [root/tags/rel2-0-1](http://dev.rubyonrails.org/browser/tags/rel2-0-1) - Rails Trac 今日時点で、例えば「jruby -S gem install rails --include-dependencies」すれば、2.0.1一式を得ることができる。ちなみに、僕のmacではヒープ…

Read more →

DHCPからIPアドレスが振られないこととSafariブラウザの関係性

· Complaining

昨日、自宅のルータの無線LANの調子が悪くなった。有線でつなげると元気なのだが、無線LANでルータとパソコン間の接続が確立され、そしてパケットを投げた途端に、ルータがほぼ100%ハングアップしてしまう。結婚してすぐだから、今年の2月から約10ヶ月使ってきた。寿命とはとても思えないが、いろいろ対策を施してみるも復活することはなく、残念ながら新ルータを購入することとなった。 近くの大手家電店Y電気に行き、ルータを物色。ふむふむ、今は11nなんて規格があるのか。まだドラフトらしいが、子機が11nに対応…

Read more →

Ruby on Railsでもfacebookアプリは作れます(2)

· facebook

[前のエントリ](http://www.eisbahn.jp/yoichiro/2007/12/rubyonrailsfacebook.html)で、facebookアプリがRuby on railsでも開発することができるということを紹介した。数回にわけて、実際にアプリを作るための手順を紹介していこうと思う。もちろん、facebookにアカウントを登録してサインインしていることが前提条件。 まず、アプリケーション開発を行うためのアプリケーション「Developer」を、自分の登録アプリとしなけ…

Read more →

Ruby on Railsでもfacebookアプリは作れます

· facebook

[facebook](http://www.facebook.com/)が「ソーシャルOS」と呼ばれる所以は、facebook上にアプリケーションを自作して登録し、facebookユーザに使ってもらうことができる、ということにある。自作アプリケーションは、当然facebookが持つ様々な機能と連携することが可能である。例えば、アプリケーションで起きたことをMini-Feedに追加したり、プロフィール画面にアプリケーション固有の区画を追加したり、あるいはアプリケーションを自分の友達に勧めたり、とい…

Read more →

リソースが3段以上ネストしたときのmap.resourcesの書き方

· Ruby on Rails

RESTfulなサービスを実装するとして、対象リソースがその他のリソースとの従属(親子)関係があるときに、Ruby on Railsではmap.resourcesをネストして記述することが可能になっている。例えば、部署(Division)に所属する社員(Employee)のリソース定義であれば、 map.resources :divisions, :pathprefix = '/api' do |divisions| divisions.resources :employees, :contr…

Read more →

いろんなところで講演をします

· Other

気がついたら、17日の週は結構大変なことになってた。1週間の中で3回もスピーカーをやることに。しかも、テーマは見事にバラバラ。 [12月18日] 丸山先生レクチャーシリーズ2007-2008 「 [第2回「RESTfulなサービス技術の台頭](http://www.c-sq.com/modules/article/article131.html)」  【タイトル】Ruby on Rails2.0におけるREST対応 [12月19日] java-ja 「 [第一回チキチキ 『ant から mave…

Read more →

ActionController::Resourcesを翻訳しました

· Ruby on Rails

「 [Active ResourceのREADMEを翻訳してみました](http://www.eisbahn.jp/yoichiro/2007/11/activeresourcereadme.html)」エントリでRESTサービスを叩くためのActiveResourceに関するドキュメントを翻訳したが、またもや勉強のために、今回はActionController::Resourcesに関するドキュメントを翻訳してみた。ActionController::Resourcesには、RESTfulサー…

Read more →

「ITアーキテクトの視点」に記事が載りました

· Other

[ITpro](http://itpro.nikkeibp.co.jp/index.html)のサイトにある「 [ITアーキテクトの視点](http://itpro.nikkeibp.co.jp/itarchi/index.html)」。この中に「ブログ」コーナーがあり、僕も参加させていただいている。すでに他の方々の記事は掲載されているが、本日僕の記事も公開された。 【ブログ】 [ITアーキテクトとして最も面白く感じること](http://itpro.nikkeibp.co.jp/article…

Read more →

腰痛が再発!

· Other

一昨日、家でソファーに座って原稿を書いていて、起き上がったその瞬間。 あの、あの恐ろしい腰痛が、なんと再発! 立てない。動けない。うなずくだけでも腰に響く。寝返りできない。踏ん張れないため、人生で片手ほどしかない便秘。すべての動作がスローモーション。 昨日、地元で有名な接骨院に行ったところ、「昔のぎっくり腰(=腰のねんざ)が治ってないよ。結構重症だね」と言われてしまった。ぐりぐりやられて、めっちゃ痛い。この腰痛のおかげで、楽しみにしていたEclipseプラグイン開発勉強会も行けなくなってしまった…

Read more →

Dukeスニーカーが届きました!

· Commusuke

Sun&リクルート主催で行われたMash up Award 3rdの [こみゅすけ](http://commusuke.eisbahn.jp)トリプル受賞からすでに1ヶ月以上経過しているが、先週サン・マイクロシステムズ賞の副賞が届いた。 ![200711191915000.jpg](http://www.eisbahn.jp/yoichiro/images/200711191915000.jpg) スニーカー全面にDukeが6パターンちりばめられている。まさにJava好きにはたまらないシューズ…

Read more →

参加申込者一覧のメール送信機能を追加しました

· Commusuke

[こみゅすけ](http://commusuke.eisbahn.jp)には、イベントの参加申込を受け付ける機能がある。参加申込時にはメールアドレスも入力させているのだが、ロボットに拾われてスパムメールの情報発信源になるのは避けたかったので、入力されたメールアドレスは表示しない(Ajaxのレスポンスにも含めない)ようにしている。 ただ、それだとイベントの主催側がリマインドメールなどを送信できないので、メールアドレスも含め、参加申込者の一覧をコミュニティ管理者にメール送信する機能を追加した。 !…

Read more →

我が家に暖かい冬がやってきた

· Other

今日、家に帰ると嬉しいお知らせを目にした。 ![200711222210000.jpg](http://www.eisbahn.jp/yoichiro/images/200711222210000.jpg) そして、今日の食卓には、世界一美味しいモツ煮が並んだ。 ![200711222223000.jpg](http://www.eisbahn.jp/yoichiro/images/200711222223000.jpg) 今日の日本海側は大雪。東京の夜も気温は5℃程しかない。でも我が家は、…

Read more →

iCalendar形式でイベント情報をエクスポートできるようにしました

· Commusuke

[こみゅすけ](http://commusuke.eisbahn.jp)に登録されたイベント情報は、 [RSS Feed](http://commusuke.eisbahn.jp/rss)によってRSSリーダーなどで購読できるようにしている。また、Google Calendarから、イベント情報をGData APIを使ってインポートする機能も提供している。 [id:yoshiori](http://yoshiori.org/blog/)さんからの要望もあり、iCalendar形式でイベント情報…

Read more →

参加申し込みページにリンクを配置しました

· Commusuke

イベントの参加申し込みを受け付ける機能を持つ [こみゅすけ](http://commusuke.eisbahn.jp)。今までは、参加申し込みページに直接行くことができず、こみゅすけ上でイベントの検索を参加申込者が自分で行わなければならなかった。これだと、利便性が良いとは言えない。 そこで、あるお方からの要望もあり、イベントの参加申し込みページにリンクを設置して、そのリンクを配布することにより直接参加申し込みページに行くことができるようにした。 ![attendancepermalink.jp…

Read more →

macのSafari3で文字化けしてたのを解消しました

· Commusuke

多くのmacユーザは、Leopard(10.5)に移行したことだろう。僕も販売開始のその日にLeopardに移行した。Leopardには、Safariの新しいバージョン3が搭載されている。このSafari3で [こみゅすけ](http://commusuke.eisbahn.jp/)を見てみると、なんと見事に文字化けしていた。Safari2でも文字化けしていて直したというのに、だ。 Safari2では、dojoによって読み込まれるjsファイルおよびhtmlテンプレートファイルの両方が文字化けして…

Read more →

Seasar Conference 2007 AutumnにてS2Wicketのセッションを行いました

· Wicket

11月11日に行われた「 [Seasar Conference 2007 Autumn](http://event.seasarfoundation.org/sc2007autumn/)」で、S2Wicketについてのセッションを行った。定員30人の部屋が満席になるほどの人々に来ていただき、Wicketの簡単な紹介とS2Wicketの機能や今後などについて語ることができた。 S2Wicketのセッションにいらしてくれた皆さん、心より感謝いたします。また、スタッフの皆さまにも、感謝いたします。あり…

Read more →

Active ResourceのREADMEを翻訳してみました

· Ruby on Rails

Rails 1.2から搭載され、Rails 2.0でいくつか改良されたActive Resource。これを使えば、RESTなWebサービスを簡単に利用できるようになる。これのREADMEが「 [ここ](http://dev.rubyonrails.org/svn/rails/trunk/activeresource/README)」にあるのだが、勉強がてら日本語に翻訳してみたので、公開してみようと思う。 [ActiveResourceREADMEja.txt](http://www.eisb…

Read more →

Sun Tech Days 2007 Mash upセッションで話してきました

· Commusuke

昨日のSun Tech Days 2007 Day-2にて行われたMash upに関するセッションに登壇し、 [こみゅすけ](http://commusuke.eisbahn.jp/)についての話を行ってきた。その時のプレゼン資料が↓である。 [![SlideShare](http://static.slideshare.net/swf/logoembd.png)](http://www.slideshare.net/?src=embed) | [View](http://www.slide…

Read more →

単純化&最適化&DRY

· Java

問題の局所化およびDRYによるメンテナンスビリティを考えられないプログラマがいるとは、驚きに値する。 人間がミスをおかしにくくするためには、問題領域をできるだけ狭めて、何事にも単純化を行う必要があると僕は思っている。そして、一旦でき上がったシステムを長期的にメンテナンスしていくためには、昔流行った「各コンポーネントがそれぞれ能動的に何かをする(そのためには同一処理が複数箇所で記述されることを許容する)」のではなく、DRY(Don't repeart yourself)の精神に従った最適化ロジッ…

Read more →

JJUG クロスコミュニティカンファレンス 2007 Fallの模様です

· Java

本日開催された「JJUG クロスコミュニティカンファレンス 2007 Fall」をUstreamで配信していたのには、みなさんお気付きだっただろうか?同時に録画もしておいたので、もし残念ながら会場に来れなかった方は、ぜひご覧になってもらいたい。 [Part 1 丸山先生レクチャーシリーズ 第1回 Googleの分散処理技術] [Part 2 コミュニティパネル 「Webアプリケーション開発の今後を占う」 - 第1部 ポジショントーク Seasar代表 ひがさん] [Part 3 コミュニティ…

Read more →

近頃の中年は腐ってる

· Complaining

新宿で宇都宮線のグリーン車に乗るために並んで待っていると、頭の上が禿げた中年が列の反対側に立った。イメージ的には、下図のような感じ。 ○○○ ○←中年   ↑列の先頭 その中年は、ドラゴンボールの19号にそっくり。 僕は先頭から2番目。さすがに馬鹿じゃないよなぁと思っていたが、期待通りの馬鹿。電車が来た途端に列を無視して電車に乗ろうとしてきた。一刻も早く座りたいらしく、僕に軽くぶつかってきた。 思わず僕は19号に言った。「ちゃんと並べよ」と。 この言葉は中年の心にマイナスの方向で刺さったらしい。…

Read more →

Seasar Conference 2007 AutumnでS2Wicketについて話します

· Wicket

11月11日に行われる [Seasar Conference 2007 Autumn](http://event.seasarfoundation.org/sc2007autumn/)で、「 [E3: S2Wicketの紹介](http://event.seasarfoundation.org/sc2007autumn/Sessione3)」というセッションを行うことになった。 特にWicketは「存在は知ってるけど使ったことがない」という人がほとんどだと思うので、Wicketの簡単な紹介とWi…

Read more →

Sun Tech Daysでこみゅすけについて話します

· Commusuke

Sun&リクルート主催の [Mash up Award 3rd](http://jp.sun.com/mashupaward/)で3部門同時受賞に輝いた「 [こみゅすけ](http://commusuke.eisbahn.jp/)」について, [Sun Tech Days](http://jp.sun.com/company/events/techdays/)のセッションで紹介させていただくことになった。 日付: 2007年11月8日(Day-2) 時間: 18時10分〜19時00分 セッション…

Read more →

こみゅすけをJRuby on Glassfishに移行!

· Commusuke

機能追加をして久々にmongrelを再起動したら,こみゅすけが起動しなくなった。というか,4つ動かしていたrailsアプリが全滅。すっごい緊急事態。 稼働させているサーバは,Fedora Core 6。64bitのクアッドコアCPUで,uname -aの結果は以下の通り。 Linux chako 2.6.20-1.3002.fc6xen 1 SMP Mon Aug 13 14:21:21 EDT 2007 x8664 x8664 x8664 GNU/Linux yumを毎日自動起動させていた…

Read more →

「Project Zero ナイトセミナーvol2@秋葉原」に参加してきました

· Groovy

[稚北ナイトセミナー「Project Zero」の第2回](http://www.wakhok.ac.jp/tyo-sat/night-semi2007b.html)に,先週の木曜日に行ってきた。僕の指名は「Ustream配信係」。200万画素の新しいカメラも買って,ノリノリで参加をした。講師は [アークランプのゆーすけ氏](http://www.arclamp.jp)。 今回の内容はGroovyの紹介。Rubyが流行ってしまった今日では,Groovyをやってみよう!という人は残念ながら減少傾…

Read more →

dojo-release-0.9を見てみた

· dojo

今年も気がつくともう10月。振り返ってみると,dojoを使う機会がすごく多くなった。とはいえ,使用しているのはdojo-0.4.2とか0.4.3。そろそろdojo-1.0が登場する予定なこともあって,0.9を見ておかないといけないぞ,と。dojo使いまくりの [こみゅすけ](http://commusuke.eisbahn.jp/)の起動速度が遅くなってきているのも気になるので,dojo-release-0.9を試してみることにした。 0.4.3から0.9の差分を中心として,ぱっと見で気になった…

Read more →

「第一回チキチキ 19時だよ全員集合!!ライトニングトーク大会」

· java-ja

一昨日の10月5日,java-jaの第4回目となるイベント「 [第一回チキチキ 19時だよ全員集合!!ライトニングトーク大会](http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E5%9B%9B%E5%9B%9E)」を開催した。今回はプレゼンすることをみんな経験しちゃおうぜ!という主旨のもと,参加者全員がライトニングトークを行った。テーマは自由。真面目なテーマな人,自己紹介をテーマにした人,ホワイトボードな人,ウクレレな人,新デバイスな人,ダンスな人…

Read more →

Mash up Award 3rdで「こみゅすけ」がトリプル受賞を果たしました

· Commusuke

8月の初めから開発を初めた「 [こみゅすけ](http://commusuke.eisbahn.jp/)」。Sunとリクルートが開催した「 [Mash up Award 3rd](http://jp.sun.com/mashupaward/)」コンテストに応募していたのだが,この度なんと「3部門同時受賞」に輝いた。最優秀,マッシュ賞,アップ賞に続く第4位的な感じであり「大賞まであと一歩!」なのだが,とにかく嬉しい!めちゃめちゃ嬉しい!具体的には, サン・マイクロシステムズ賞 テクノラティ…

Read more →

「Project Zero ナイトセミナーvol1@秋葉原」に参加してきました

· Groovy

先週の金曜日(9月28日)に, [「Wakhok Night Seminar」の「Project Zeroコース」](http://www.wakhok.ac.jp/tyo-sat/night-semi2007b.html)の第1回に参加をしてきた。Project ZeroはIBMが始めたアプリケーション開発用のプラットフォーム。話の流れは,Project Zeroの背景として,Web1.0からWeb2.0への移り変わり,Webサービスの変革,そしてRESTという流れの紹介と整理が前半。後半はP…

Read more →

MA3 participant sessionに参加してきました

· Commusuke

無事 [マッシュアップコンテスト](http://jp.sun.com/mashupaward/)に応募することができた「 [こみゅすけ](http://commusuke.eisbahn.jp/)」。先日の22日に行われた「MA3 participant session」に参加をしてきた。これは,しっかりと作品を作り上げて応募した参加者限定で行われた,いわば「打ち上げ」である。約30作品の作者の方々が集まり,5分後との各作品の紹介を飲み食いしながら楽しむ,といった会だった。 事前に参加作品を一…

Read more →

参加申し込み機能を追加しました

· Commusuke

勉強会やイベントなどをコミュニティが行う場合,予め「参加者を応募して人数を把握しておく」などが必要となることがある。そこで, [こみゅすけ](http://commusuke.eisbahn.jp/)にも,参加申し込み機能を追加してみた。 各ミーティングの吹き出しやミーティング情報に,以下のようなリンクを作ってある。 ![commusuke-attendance1.jpg](http://www.eisbahn.jp/yoichiro/images/commusuke-attendance1.…

Read more →

勉強会やイベントに付箋を貼ることができます

· Commusuke

[こみゅすけ](http://commusuke.eisbahn.jp/)は,未知のコミュニティを知り,そのコミュニティが行っている活動に参加する機会を増やす目的で作ったものである。もちろんリアルに参加して,実際にメンバーと顔を合わせることが重要である。しかし,二次会の場所を決めたり,参加の前にコアメンバーに雰囲気を聞いたりすることも,もちろん重要なコミュニケーションである。さらに,さまざまな情報をメンバーに伝えて共有知とすることも,コミュニティにおいて非常に重要な点である。 こみゅすけには,そ…

Read more →

二次会お店検索機能を追加しました

· Commusuke

勉強会などを主催する立場になると,「終わった後の二次会をどこにしようか?」というタスクも付きまとうようになる。いろんな人が勉強会には来るので,それぞれの好みなんて気にしている場合じゃない。それよりも,勉強会の会場に近く,しかも人数のキャパが多い,そんなところを探し当てなければならない。 そこで [こみゅすけ](http://commusuke.eisbahn.jp/)に,「 [ホットペッパー Webサービス](http://api.hotpepper.jp/)」を使って,勉強会の半径1km以内に…

Read more →

宿泊施設検索機能を追加しました。

· Commusuke

コミュニティは日本各地にいろいろな形で存在している。何も都内に住んでいる人が都内で開催される勉強会に参加することだけがコミュニティではない。遠方から都内で開催される勉強会やイベントに参加することもあるだろう。都内のコミュニティが地方でイベントを行うこともあるだろう。そうなった場合,「宿泊」ということをしなくてはいけなくなる。 そこで,会場の近く(2km以内)にある宿泊施設を「じゃらん Webサービス」を使って検索し,一覧表示および地図へのプロットを行う機能を「こみゅすけ」に追加してみた。 ![…

Read more →

コミュニティやミーティングを自由に登録できるようにしました

· Commusuke

初期の段階では,コミュニティの登録や,イベントや勉強会などのミーティング登録は,Google Calendarの設置が必要だったために,非常に閉じた世界となっていたこみゅすけ。これでは敷居がかなり高いので,こみゅすけ上からコミュニティの登録やミーティングの登録を行えるように機能拡張した。登録は,Wikiの精神に則り,認証などを設けず,自由に行えるようにしている。 まずはコミュニティの登録。これは,上部のツールバーの左から6個目のボタンを押すと,コミュニティの情報を入力するためのフォームが表示され…

Read more →

RBCドリコムノック(長崎)に参加してきます

· Ruby on Rails

車酔いを恐れず,果敢にブログエントリを試みる。 ギガプライズ勤務最終日だった昨日から一夜明け,今日は「 [Ruby ビジネス・コモンズ ドリコム・ノック](http://qwik.jp/rbc/16.html)」のお手伝いを行うため,九州に旅立つ。福岡には昨年いやというほど行ったのだが,長崎は初めての上陸。このエントリは,大宮から羽田空港に向かうバスの中で書いている。 「 [こみゅすけ](http://commusuke.eisbahn.jp/)」の開発に夢中になっている今日この頃だが,すでにR…

Read more →

「24」風Ustreamプレーヤー,題して「Ustream24」

· Ruby on Rails

外国ドラマの「24」風な感じで,Ustreamを見るためのサイトを作ってみた。 題して,「 [Ustream24](http://ustream24.eisbahn.jp/)」。 ![ustream24.jpg](http://www.eisbahn.jp/yoichiro/images/ustream24.jpg) ま,単にUstreamを四方に置いて,真ん中に黄色くLCD的なデジタル時計を置いただけ。ただそれだけ。しかし,何故かこれで見ると「ちょっとした臨調感」を感じれたりするので,勉強会…

Read more →

Safariでdojoを使うと文字化けする件

· dojo

こみゅすけは,dojoというライブラリをかなりの勢いで使用している。dojoは数多くあるJavaScriptライブラリの中で,おそらく最も大きなコードセットだろう。イベント処理やIO関連,各種ウィジェットなど,Ajaxでアプリケーションを作る上で必要となる全ての分野について網羅している。今まではそのコードの大きさのために「遅いっ!!」という悪印象があり,利用を敬遠してきた人も多くいることだろう。しかし,0.4.2以降では,テンプレートの読み込みの削減など,動作の遅さを根本解決するための修正が施さ…

Read more →

クロスコミュニティ IDEに参加してきました

· Java

JJUGが主催した「 [クロスコミュニティ IDE](http://commusuke.eisbahn.jp/map/19)」に参加をしてきた。例のごとく,今回もUstreamで模様をリアルタイム配信してみた。録画に失敗しちゃったかと思ったのだが,最初の17分間だけ何故か別動画になってしまっていただけで,一応全部録画できていた。ほっと一安心。 「最初の17分間」 「残り全部」 JDeveloper紹介者の佐藤さんとは,この前のJava Edge発足総会でご挨拶させていただいていたのだが,たけ…

Read more →

関連する動画を検索できるようにしました

· Commusuke

[Sagoolの検索API](http://sagool.jp/sagoolapi.html)を利用して,ミーティングに関連する動画を検索する機能を追加した。 ![commusuke-sagool.jpg](http://www.eisbahn.jp/yoichiro/images/commusuke-sagool.jpg) 僕が顔を出してUstreamで録画している勉強会しか基本的に今は登録されていないため,僕のブログばかりがヒットしてしまう。今後登録してくれるコミュニティをもっと探して,い…

Read more →

天気予報を表示するようにしました

· Commusuke

こみゅすけは,開催される勉強会やセミナーの情報,特に「どこで開催されるか」を中心的な概念として織り込んでいる。どこで行われるか?に関連する情報はいくつか考えられるが,例えば特に勉強会の当日になって気になるのが,「雨降ったりしたらイヤだな」という天候についてではないだろうか。 あるお方からの要望もあって,livedoorが提供している「 [お天気Webサービス](http://weather.livedoor.com/weatherhacks/webservice.html)」を利用して,地図上に…

Read more →

「最寄り駅,関連書籍,関連ブログ」機能を追加しました

· Commusuke

開発を始めて3週間ほど経った「こみゅすけ」。基本機能が揃ってきたので,いくつか面白系の機能を追加してみた。 「最寄り駅」機能 「関連書籍」検索機能 「関連ブログ」検索機能 最寄り駅の検索は,「 [SimpleAPI vol.2 最寄り駅Webサービス](http://map.simpleapi.net/)」を使って行っている。SimpeAPIという名前通り,非常に手軽に使えるサービスである。戻りのXMLの内容もシンプルであり,簡単に取り扱うことができた。検索結果を最大3件表示するよう…

Read more →

こみゅすけに予定を登録する手順

· Commusuke

こみゅすけにミーティングを登録するには,コミュニティ毎に登録されているGoogle Calendarに予定を登録します。 Google Calendarには「毎日,毎週,隔週」などの繰り返しや「終日」などの予定登録が可能ですが,現時点では,こみゅすけは「ある1日で時間が決定している」予定のみをサポートしています。具体的に入力して頂きたい項目は,以下の項目です。 タイトル: ミーティングの名前となります。 日付: ミーティングの開始・終了日時となります。○○月○○日○○時○○分〜○○月○…

Read more →

「こみゅすけ」作ってます!

· Commusuke

勉強会に顔を出したり,あるいは主催側に回ってみたり,足を使った活動を徐々に増やしている今日この頃。僕がいるIT業界では,多くのコミュニティがそれぞれ「勉強会」と称したミーティング(≒飲み会)を行っている。 そんな勉強会,日々ググっている最中に偶然コミュニティに出会ったり,身近な誰かから聞いたり,といった感じで情報を得ているのがほとんどではないかと思う。せっかくなので,いつどこでどんな勉強会が行われているのか,という情報を提供するサイトを作ってみようと思い,そろそろ形になってきたので公開を開始した…

Read more →

東武スーパープールは灼熱でした

· Other

お盆休み,高速道路は渋滞ばかり。電車でどっか行くにも,どこも混雑に違いない。しかし,灯台下暗し。住んでいるアパートから車でわずか10分のところに, [東武動物公園](http://www.tobuzoo.com/pcindex.html)がある。小学校のときに数回行ったことはあるのだが,13日に久々に行ってきた。動物を見に行ったわけではなく,「東武スーパープール」に芋を洗いに,だ。 ![RIMG0721.jpg](http://www.eisbahn.jp/yoichiro/images/RI…

Read more →

こういうの大好き

· Other

使用前。 使用後。 外人も。 [【ニコニコ動画】愛を取り戻せ!](http://www.nicovideo.jp/watch/sm432035) もっとうまい外人。 [【ニコニコ動画】雀の雲 愛を取り戻せ](http://www.nicovideo.jp/watch/sm193694) さらにSHOCKな外人。 [【ニコニコ動画】【北斗の拳】DGM - You Wa Shock!! (愛を取り戻せ!)](http://www.nicovideo.jp/watch/sm85880)…

Read more →

Wicket勉強会を行いました

· Wicket

先日の8月10日,java-ja主催の「 [第一回チキチキ そろそろ Wicket について一言いっとくか](http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E4%B8%89%E5%9B%9E)」,つまりWicket勉強会が開催された。 今回も,yoshioriさんの書道から始まった。 ![java-ja-wicket2.jpg](http://www.eisbahn.jp/yoichiro/images/java-ja-wicket2.jpg)…

Read more →

seasar.orgの人々と飲みました

· Java

一昨日の8月9日,seasar.orgの中の人々にお会いすることができた。 ![200708092242000.jpg](http://www.eisbahn.jp/yoichiro/images/200708092242000.jpg) かなりぶれてしまってるのだが,お会いできたのは次の方々だ。 [よねさん](http://d.hatena.ne.jp/yone098/) [まさたかさん](http://d.hatena.ne.jp/masatakak/) [mopemopeさん…

Read more →

当たりパナップ,はずれパナップ

· Other

嫁とパナップを食べていたら,最近のパナップは「当たり」と「はずれ」があることが判明。 ![200708101606000.jpg](http://www.eisbahn.jp/yoichiro/images/200708101606000.jpg) もちろん右が当たりパナップである。…

Read more →

Timeオブジェクトに対するto_jsonメソッド呼び出し

· Ruby on Rails

Ajaxを多用したアプリケーションにおいても,Ruby on Railsの採用が今後どんどん増えていくと考えられる。Ajaxと言えば,言葉の通りXMLを連想するかもしれない。しかし,サーバから受け取った後の処理効率を考えると,JSONでやり取りを行ったほうがトータルで都合が良い。近年では,XMLではなくJSONを利用する機会が多いと考えられる。 Ruby on Railsの1.2から,全オブジェクトに対してtojsonメソッドを呼び出すことができるようになった。これは,activesuppor…

Read more →

Java Edge発足総会に参加してきました

· Java

昨日の8月3日,名古屋工業大学で行われた「Java Edge発足総会」に参加をしてきた。今回は,単に聴衆としてではなく,パネルディスカッションのパネラーとして僕も参加。 Java Edgeは,名古屋を中心として活動を行っていくJavaのコミュニティであり,JJUG(日本Javaユーザグループ)がバックアップを行っている。最近のJavaやRuby関連のコミュニティは,東京以外の都市を対象として,総会や勉強会,各種イベントを行うことが多くなってきている。Java Edgeに関しても,Javaをメイン…

Read more →

tracがsubversionの履歴を拾ってくれなくなったとき

· My PC environment

気がつくと,ある日からsubversionへのコミット履歴などをtracが拾ってくれなくなっている現象が発生するときがある。今まさに,その状況に直面した。「subversionのリポジトリが壊れたのかっ!?」とtracの表示を信じてしまったのだが,別のsubversionクライアント(subclipse)で覗いてみると,壊れていないっぽい。 ググって調べてみると,tracがsubversionの履歴を拾ってくれなくなったら,以下のコマンドを試すといいらしい。 trac-admin [svnリポ…

Read more →

ActiveRecordの属性に「?」で問い合わせる

· Ruby on Rails

ActiveRecordオブジェクトは, class Employee < ActiveRecord::Base end とするだけで,上記で言えばemployees表が持つ各種列に対応する属性が利用可能になる。例えば,employees表にname列が定義されていたとすれば, employee.name = 'Yoichiro' p employee.name というように,nameアクセッサを利用することができる。とても簡単だ。では, employee.name? とemploy…

Read more →

僕と嫁の脳内

· Other

「 [脳内相性メーカー](http://maker.usoko.jp/nounaiai/)」より: ![nounai2.jpg](http://www.eisbahn.jp/yoichiro/images/nounai2.jpg) とても嫁には見せられない orz…

Read more →

Wicket勉強会やります!

· Wicket

来る8月10日,java-ja主催で, 「 [第一回チキチキ そろそろ Wicket について一言いっとくか](http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E4%B8%89%E5%9B%9E)」 と銘打ったWicket勉強会を開催する予定である。 POHP+フルJavaなWebアプリケーションフレームワークであるWicketは, [Apacheのトッププロジェクト](http://wicket.apache.org/)に名を連ねるところまで来て…

Read more →

Windows XP on Parallelsの起動がめっちゃ速い件

· MacBook Pro

最新MacBook Pro(2.2GHz,4GB)にしてみて,何がびっくりしたって,Windows XPの起動が恐ろしく速い。あまりの衝撃に,録画してみた。 Parallelsには「mac側のファイルのダブルクリックによる起動でParallels内のWindows XPにインストールされたアプリケーションでそのファイルを起動する」という機能があるのだが,この速度でOSが上がってくれれば,その機能の有り難さを感じることができる。 ハイエンドのPCにWindows XPネイティブインストールした…

Read more →

結局lighttpdからmungrel_clusterに移行

· Ruby on Rails

「 [lighttpdで稼働しているrailsアプリでリダイレクトが効かなくなった](http://www.eisbahn.jp/yoichiro/2007/07/lighttpdrails.html)」件だが,結局原因は判明せず。どうもyumの自動更新によってlighttpdがバージョンアップされたらしく,そのタイミングで動作がおかしくなった模様。 apacheとlighttpdの組み合わせは,mongrelの自動機能の設定を行うのが面倒そう,という安易な理由で選んだのだが,やはり世の中はap…

Read more →

SpringNightDreamに行ってきました

· Java

昨日の7月27日に,Japan SpringFramework User Group主催の勉強会「 [SpringNightDream](http://springframework.jp/index.php?%CA%D9%B6%AF%B2%F1)」に参加してきた。ちょっとお手伝いしつつ,総勢8名の方々のライトニングトークを楽しんだ。ひがさんを除いて(w,皆さんSpringにまつわる話を展開。nekopの上空からの突っ込み,そしてひがさんの鋭い突っ込みなども含め,なかなかレベルの高い勉強会となっ…

Read more →

lighttpdで稼働しているrailsアプリでリダイレクトが効かなくなった

· Ruby on Rails

「 [約5時間かかったRuby on Railsの実行環境構築](http://www.eisbahn.jp/yoichiro/2007/07/5rubyonrails.html)」で頑張ってみたRails運用環境だが,今日になって不具合が出てしまった。昨日までは元気に動いていたのに。。。 昨日の夜に,配置してあるRailsアプリに機能追加を行った。実際には2つRailsアプリを配置してある。形態は「apache2 modproxy lighttpd」という組み合わせ。修正は片方のアプリのみ…

Read more →

updated_atを自動でセットしないようにする方法

· Ruby on Rails

データベースに格納される情報は,「作成日時」や「更新日時」を付与することが多い。ActiveRecordでは,作成日時や更新日時について,暗黙的にセットする機構が標準で備わっている。例えば, class CreateEmployees 'updatedat DESC') end end lastupdatedemployeeメソッドを呼び出すと,最後に更新されたEmployeeオブジェクトを1件取得できる。さて,これをテストすることを考えるのだが,ここではfixtureに初期データを記述す…

Read more →

ActiveRecordに置き換えられたfind_allメソッド

· Ruby on Rails

ActiveRecordは,Rubyの動的な性質を存分に使って作られた,非常に利便性の高いライブラリだと思う。ActiveRecordをJavaにコピーすることは,きっとできないだろう。しかし,時に初心者(今の僕)は,その動的な特徴故に,期待した通りの動きにならずに苦戦することが多い。 ActiveRecordを使えば,モデル間の関連とそれに関する操作を数行で定義することができる。例えば,部署を表すDivisionモデルと,部署に所属する社員を表すEmployeeモデルがあった場合, cla…

Read more →

叩いた?

· Other

「たたいた」を漢字変換して,びびった。なぜなら,第一候補が, 多対多 だったから。普通だったら「叩いた」が最初に出てくるはずなのに。 仕事のしすぎかもしれない。。。…

Read more →

Ustreamはじめました

· Other

Lingr,Twitterと続き,最新のホットなWebサービスは,「 [Ustream](http://ustream.tv/)」らしい。 ということで,はじめてみた。 うっかり音声をブロードキャストして情報漏えいしないように気をつけなければ。。。…

Read more →

JavaでいうdeprecatedはRubyではobsoleteというらしい

· Ruby on Rails

遥か昔に制定した法律や決め事が今日のご時世に合わずに支障を来しているように,プログラムにおいても,過去に作ったものについて現在使って欲しくないという状況がしばしば起きる。実際のプログラミング環境では,「使って欲しくない」という作者の意図が何らかの形でプログラマに伝わらなければならない。 Javaでは,ソースコードに"deprecated"というキーワードを埋めておくことで,プログラマに「このメソッドは非推奨だから使ってはいけません!」と意思表示することができる。例えば,こんな感じ。 / @…

Read more →

options_form_collection_for_selectの初期選択が効かない

· Ruby on Rails

アプリケーションでは,データベース内に格納された各種マスタの一覧から1つ選択する,という行為が良く行われる。Webアプリケーションにおいて,マスタの内容を一覧表示する際は,selectタグとoptionタグの組み合わせが多く使われる。Ruby on Railsのactionpackに含まれるactionviewヘルパーには,あるモデルの集合からoptionタグのセットを生成してくれる便利な機能が提供されている。それが,optionsfromcollectionforselectメソッドである。 …

Read more →

動的プロキシ問題を解決した素晴らしい二人へ

· Wicket

以前「動的プロキシが循環参照していた際のシリアライズ問題」エントリにおいて僕が解決に至らなかった問題を紹介したが,見事に問題をクリアしたお二方からトラックバックを頂いた。 「 [動的プロキシが循環参照していた際のシリアライズ問題](http://d.hatena.ne.jp/tyano/20070718/1184790146)」- 矢野勉のはてな日記 「 [循環参照問題のよりエレガントな解法](http://d.hatena.ne.jp/tyano/20070720/1184898542)」- …

Read more →

なぜ恋人を「振る」というのか

· Other

嫁から「なんで『振る』っていうか知ってるー?」って聞かれ,確かに言葉の由来を考えずに今まで「振る」「振らない」って言ってきたな,と。ある本を見て,嫁も初めて由来を知ったらしい。 恋人と別れる際になぜ「振る」というのか。 それは「昔は女性が交際を断る際に振袖を振って断ったから」という昔の文化から来ている。そして,結婚してしまえば,もう袖を振る必要はないため,留袖を着ることになる,ということのようだ。 詳しくは, 「 [恋愛で云う所の「振る」「振られる」の由来は振袖](http://skmwin.…

Read more →

学生からの質問に答えます

· Other

先日行った [いわき明星大学での講演](http://www.eisbahn.jp/yoichiro/2007/07/post155.html)を聞いてくれた学生から,いくつか質問を受けた。このエントリでは,その答えを紹介してみたいと思う。 --- Q. 将来の夢はなんですか? A. 尊敬される職人になること。幸せな家庭を築くこと。 --- Q. これはやっておいてよかった.もしくは,やっておけば良かったと思うことは何ですか? A. 好きなこと(ソフトウェア関連)に集中できたのは良かったこと。や…

Read more →

僕のJava処女作を恥ずかしげもなく公開!

· Java

「 [昨日の講演](http://www.eisbahn.jp/yoichiro/2007/07/post155.html)」の中で,僕の卒業研究テーマを取り上げた。その時に作成したプログラム「CASL Simulator for Java」を,恥ずかしげもなく公開しようと思う。 [CASL Simulator for Java Version 0.992](http://www.eisbahn.jp/yoichiro/casl-0.992.tar.gz) 解凍後,「java MainWind…

Read more →

母校で講演してきました

· Other

昨日(7/19),いわき明星大学(僕の出身校)の電子情報学科3年生を対象に,以下のテーマで講演を行った。 世間の荒波を乗りこなせ! 〜これから社会に出る皆さんにそろそろ一言いっておくか〜 そのときの写真や撮影した動画は,今後大学の方で公開してくれるとのことなので,ここでは講演に使った資料を先行公開する。 お世話になった方々への恩返しのつもりでお話をさせてもらった。聴衆の学生達は,「携帯電話持っている人」という問いに9割の学生が手を挙げないという積極性だったが,私語もあくびもなく聞いていただけ…

Read more →

railsでテストが実行できなくなった

· Ruby on Rails

快調にRuby on Railsなアプリを開発。そして振り返ると,なーんにもテストコードを書いていない自分に気がつく。Rails上でのテストコードの記述は好きな部類に入るため,テストを書かねばと思い立つ。 あるモデルに対するテストを1メソッド作り,「rake test:units」を実行した。すると, ./test/unit/../testhelper.rb:18: undefined method usetransactionalfixtures=' for Test::Unit::Test…

Read more →

assert_selectでCSSセレクタを使う

· Ruby on Rails

Ruby on Railsアプリケーションの統合テストは,ActionController::IntegrationTestクラスを継承して作成する。統合テストは,ユーザが行うアクションを想定してコードでシミュレーションを行い,結果としてアプリケーションが正しく振る舞うかどうかを確認するためのテストである。一般的にWebアプリケーションの場合は,操作の結果としての出力の形式がHTMLという比較的複雑な文字列であるため,正しい動作を行ったかどうかの検証は難しい部類に入る。 Railsの場合,レン…

Read more →

キーマクロ最高!

· My PC environment

今更ながらに,「emacsのキーボードマクロ最高!!」と世界の中心で叫びたくなった。 「 [GNU Emacs Manual - Keyboard Macros](http://flex.ee.uec.ac.jp/texi/emacs-jp/emacs-jp215.htmlSEC237)」- GNU Emacs Manual Eclipseにもキーマクロ欲しい。。。…

Read more →

YAMLファイルの読み込みと場所の指定

· Ruby on Rails

Ruby on Railsアプリケーションにおいて,実行環境依存で設定を変更したくなるときがある。昨日一応の完成を見た僕の処女作では,最初にログインする際のパスワードについて,正解のパスワードをデータベースからではなく,ファイルから読み込ませるようにしたかった。しかし,IntegrationテストやFunctionalテストのコード中にログイン処理のテストをコーディングする際に,正解のパスワードを記載しなければならないため,production時の正解のパスワードではなく,開発時もしくはテスト時…

Read more →

仕事をロールプレイングゲーム感覚で行うために

· My PC environment

僕はPC88エミュを使って,各種RPGのミュージックモードでBGMを聞きながら仕事をする。 昨日はYs3。一昨日はドラスレ6。今日はハイドライド3の銀行で。 ![hyd3.jpg](http://www.eisbahn.jp/yoichiro/images/hyd3.jpg) フィールドの雑魚キャラをサクサク切って切って切りまくるように,仕事もサクサクこなしている感覚を得ることが可能。 ただ,エミュを実行するためにWindows XPをParallels Desktop使って立ち上げているため…

Read more →

datetime型を持つモデルのテスト

· Ruby on Rails

Ruby on Railsにおいて,テスト環境がとっても気持ちがいいと「前のエントリ」で書いたが,実際にテストケースを書き始めると,やっぱり知らないことがいろいろと出てきて,サクサクっとはいかない。もちろん,それは俺がバンビーノだからなのだが。。。 datetime型な列があるappointments表のAppointmentモデルをテストすることを考える。fixtureには,こんな感じで記述するだろう。 first: id: 1 promise: 2007-07-10 13:30:00 …

Read more →

Railsアプリを本番環境に配備する際の注意点

· Ruby on Rails

MacOS Xで作成したRuby on Railsアプリケーションを,今日Fedora Core 6に配備することにチャレンジした。もちろん一発でうまくいく訳もなく,いくつかハマり箇所があった。同じミスを繰り返さないためにも,ここに残しておく。 [rubyコマンドのパス] 作成したRailsアプリを,「 [約5時間かかったRuby on Railsの実行環境構築](http://www.eisbahn.jp/yoichiro/2007/07/5rubyonrails.html)」エントリで紹介し…

Read more →

「%>」と「-%>」の違い

· Ruby on Rails

Ruby on Railsで採用されているERB(eRubyの実装)。これによって,HTML内にRubyコードを記述することで,動的なコンテンツを出力することが可能となっている。 いくつかのサイトや書籍を見ながらRoRアプリケーションを試していたところ,以下の点に気がついた。 「%」と「-%」,何が違うのか? マイナス記号が付いている場合と付いていない場合がある。例えば, 'edit', :id = user.id -% といったように。 上記のコードの場合,マイナス記号を削除して実…

Read more →

Ruby on Railsのテスト環境が気持ちいい

· Ruby on Rails

Javaな世界に10年以上どっぷりと浸かってきたが,Ruby on Rails(RoR)をやっていると「良く考えられているなぁ」と感心してしまう箇所が随所に見られる。とかくScaffoldやActiveRecordに関するコーディングに目が行ってしまいがちだが,僕個人的にはテストに関する環境が最も「おぉ」と感じている。 言うなれば,「JUnit + DbUnit + Cactus」な環境が標準で整備されている,ということだ。 JUnitについては,もちろんTest::Unitがそれに相当する…

Read more →

約5時間かかったRuby on Railsの実行環境構築

· Ruby on Rails

ここ数日はJavaからほとんど離れて,Ruby on Railsのお勉強に多くの時間を割いている。確かにRoRがこんだけ騒がれる理由がわかる。railsの内部処理に踏み込むと宇宙な世界だが,railsの上でアプリケーションを書いて単体テストをしている分には,この上ない気持ちにさせてくれる。 しかし,RoRアプリの運用環境構築に5時間も苦戦するとは思わなかった。 RoRの運用環境は,現在では以下のパターンがあるらしい。細かく分ければ,もっと多くの組み合わせがあるだろう。 apache + mo…

Read more →

S2Wicketをバージョンアップしました

· Wicket

何ヶ月ぶりかになるが, [S2Wicket](http://s2wicket.sandbox.seasar.org/ja/)をバージョンアップした。数ヶ月苦しんだ機能追加ができあがったのではなく,いくつかのバグフィックスを施したのが今回の内容。S2Wicketを使ってくれている [NAGASEYASUHiTO](http://java-ja.yoshiori.org/index.php?NAGASEYASUHiTO)さんからのフィードバックを元に,不具合修正を行った。 [JIRA - S2Wic…

Read more →

Webブラウザの起動

· Eclipse

「 [Webブラウザコンポーネントの利用](http://www.eisbahn.jp/yoichiro/2007/06/web1.html)」エントリで紹介したように,EclipseプラグインのViewなどにBrowserコンポーネントを貼り付けることで,効果的なEclipseプラグインを低コストで開発することができるようになる。「〜clipseな技術」の第2弾として,Webブラウザの起動方法について紹介してみたい。 何らかのWebサービスを利用したEclipseプラグインでは,Webサービ…

Read more →

Webブラウザコンポーネントの利用 Part2

· Eclipse

「 [Webブラウザコンポーネントの利用](http://www.eisbahn.jp/yoichiro/2007/06/web1.html)」エントリで紹介したBrowserコンポーネントを使用すれば,低コストでリッチなEclipseプラグインを開発できる。しかし,嬉しいことばかりではない。このエントリでは,発生し得るいくつかの問題点と,その解決方法について紹介する。 万能に見えるBrowserコンポーネントだが,Webブラウザであること故のデメリットもちゃんと対処してあげなければならない。…

Read more →

夏到来!

· Other

昨晩,家に帰ると玄関に「夏到来!」な文字があった。 ![200706272303000.jpg](http://www.eisbahn.jp/yoichiro/images/200706272303000.jpg) 普段嫌いな夏だけど,今年の夏は元気に乗りきれそうだ。…

Read more →

Webブラウザコンポーネントの利用

· Eclipse

「〜clipseな技術」の第1段として,Webブラウザコンポーネントの利用方法について紹介する。 近年,Web2.0的なアプリケーションが数多く登場している。これを支えているのは,RESTなどによる軽量なWebサービスが次々と公開されているという事実であることについては,誰もが認めるところだろう。多くのWebサービスがWebブラウザ上で利用あるいはマッシュアップされることを前提として提供されている。つまり,Webブラウザ上,しかもJavaScriptとの親和性という点が重要である。 何らかの…

Read more →

Twitterアクセス制限に対応しました

· Eclipse

Twitterが「1時間に70回」というアクセス制限を始めた。これに伴い、Twitterclipseも「10秒に1回の更新」を止め、「60秒に1回」(これは初期値で更新頻度は設定で変更可能)に変更を行った。 古いTwitterclipseのままだと、数分のうちに「400エラー」になってしまうので、ご利用の方は是非アップデートをお願いしたい。…

Read more →

Searchclipseのバグフィックスを行いました

· Eclipse

修正点は以下の通り。 検索履歴が10個溜まってしまうと,新しいキーワードが履歴として含まれなくなってしまう不具合を修正。 キーワード入力フィールドの大きさを修正。 興味のある方はバージョンアップをして欲しい。 そろそろ「〜clipseな技術」のエントリを始めようと思っている。ちょっとしたテクニックで面白いプラグインを作ることができるんだぜ,的な内容にしていくつもりだ。…

Read more →

食中毒にご注意を

· Other

先週の水曜日に発熱し,木曜日の夜に至っては高熱で一睡もできなかった。お腹も下してしまい,体力がどんどん削がれていく。じっとしていることができず,関節や筋肉の痛みも徐々に増してくる。明らかにただの風邪ではない。 さすがに病院に行って診断してもらう。医者は言う。 「食中毒の疑いが強いです」 どうやら細菌の感染による急性胃腸炎ということらしい。時に高熱が出ることがあるらしく,血液検査についても炎症反応があるために,ほぼ間違いないとのこと。2時間ほど点滴を受けながら,その間にお腹のエコー検査などをこなす…

Read more →

Twitterclipseをバージョンアップしました

· Eclipse

変更点は以下の通り。 twitterサーバが返答したJSON内に含まれる日付のフォーマットが変更されたことへの対応。 「ぬるったー」「うまくいったー」「しくったー」機能の実装。 2つ目の機能追加は,Eclipse特有のものである。「ぬるったー」機能とは,何らかの理由でコンソールビューに「NullPointerException」が表示された際に,自分のステータスを自動的に「ぬるったー」に更新する機能である。「うまくいったー」「しくったー」機能は,JUnitテストケースの実行がうまくいった…

Read more →

脳内イメージ

· Other

[脳内メーカー](http://maker.usoko.net/nounai/)を早速試してみる。 [![うそこメーカー](http://maker.usoko.net/nounai/images/logo.gif)](http://maker.usoko.net/)[![よういちろうの脳内イメージ](http://maker.usoko.net/nounai/img/%25A4%25E8%25A4%25A6%25A4%25A4%25A4%25C1%25A4%25ED%25A4%25A6.gi…

Read more →

JSUG勉強会Vol.4に参加してきました

· Java

Japan SpringFramework User Groupの [第4回勉強会](http://springframework.jp/index.php?%CA%D9%B6%AF%B2%F1)に参加してきた。ミニレポートをエントリしてみたいと思う。 [JavaOne2007報告] 日立の河村さんのプレゼン。これは5月30日に行われたJavaOne2007報告会で行われたプレゼンとほぼそのままだったので,聞くのは僕個人的には2回目。 [前にエントリした通りの内容](http://www.eis…

Read more →

もうブラウザ増やさないで〜!

· MacBook Pro

昨日開幕したWWDC(Worldwide Developers Conference)で,米Appleのスティーブ・ジョブス氏により,Webブラウザ「Safari」のWindows版が発表され,Public Betaが公開された。 [Safari 3 Public Beta](http://www.apple.com/safari/) - Apple 「あぁ,またテストしなくちゃいけないプラットフォームが増えてしまう。」って思ったWebアプリケーション開発者は,それはそれは多いことだろう。僕も…

Read more →

JavaでもC++でもLLでもない僕の選択肢

· Java

昨日、久々にDelphiで遊んでみた。僕は、DelphiのVer.1からのユーザ。最近のDelphiは「Turbo Delphi」という名前で公開されていて、「 [Turbo Delphi 2006 Explorer](http://www.codegear.com/products/turbo)」が無償版である。 ![turbodelphi.jpg](http://www.eisbahn.jp/yoichiro/images/turbodelphi.jpg) 動的言語もいいが、Windows…

Read more →

JavaOne2007報告会に行ってきました

· Java

去る5月30日にJavaOne2007報告会がSun用賀で行われ,それに参加してきた。途中からの参加だったので,JavaSEについての岡崎さんのプレゼンは聞くことができず,その後のJavaEEについての動向のプレゼンから聞くことができた。 まず,やはり注目を集めていたのは,JavaFX。RIA向けの製品ということで,JavaFX MobileやJavaFX Scriptが中心だったらしいが,JavaFX EEという言葉もプレゼンの中で出てきていたのは面白い。それがプレゼン者の造語なのか実際にSe…

Read more →

Google Gearsをとりあえず勘違いしてませんか?

· Complaining

先日,Googleから「Google Gears」とGoogle ReaderのGears対応が発表された。これに伴い,「GoogleがオフラインでAjaxアプリを使えるようになる技術を発表」と各メディアはこぞって伝えている。 しかし,なんか勘違いしていないか?「オフラインでAjaxアプリを使えるようになる技術」は誇張された表現じゃないか? もともとGoogleがGearsを作ってGoogle Readerに適用した動機として,「地下鉄に乗っているときなどネットワークが不安定(ぶちぶち切れたり繋…

Read more →

Searchclipseに履歴機能を追加しました

· Eclipse

Eclipseに検索窓を設置できるSearchclipseに機能追加をまたまた行った。 入力したキーワードを履歴として10個記憶し,[Page Up]と[Page Down]キーで履歴を取り出せるようにした。 [Shift]+[F4]キーでフォーカスをキーワード入力フィールドに移動させる際に,エディタで選択されている文字列をキーワードとして入力フィールドにセットするようにした。 我ながら,キーワード履歴は結構便利な機能だと思う。ぜひバージョンアップしていただきたい(インストールしてない方…

Read more →

動的言語やrails系に走る理由

· Java

Ruby on Railsという言葉は誰しも知っている状況であり,さらにJava言語を推進してきたSunでさえJRubyを担ぎ出す今日。米国ではPythonで書かれた大規模サイトがスピード感を持って次々と登場してきている。昔からちょっとしたWebサイトにPHPやPerlといったスクリプト言語は広く使われてきたが,RubyやPythonによって,スクリプト系言語,つまりLLの印象は多くの開発者にとって大きく変わった。 LLがなぜこんなにももてはやされ,そして採用され始めているのか。大きく2つに分け…

Read more →

aptを使ってみようかな

· Wicket

アノテーションによってコンポーネント構築を目論んだ次期S2Wicketだが,いくつかエントリした通り,芳しくない結果に終わってしまった。助けてエントリをしてみるも,とてもありがたい「頑張ってください」エールはいくつか頂けたものの,具体的な解決策を得るまでに至らなかった。 もっと別の何かを閃くことができれば,忘れることができるだろう。しかし,思いついたことといえば,TwitterclipseだったりSearchclipseだったり。S2Wicketについては,未解決で終わった問題領域を悶々と試すだ…

Read more →

Searchclipseを更にバージョンアップ

· Eclipse

またまたSearchclipseをほんのちょっとバージョンアップした。今回は機能追加を2つ行っている。 [SHIFT]+[↑]または[SHIFT]+[↓]キーで,検索サイトの選択を切り替える。 [ESC]キーで,アクティブなエディタまたはビューにフォーカスを移動する。 「キーワード入力フィールドへのフォーカス移動をショートカットキーで行えるのに,検索サイトの選択をマウスでしないといけない」という使い勝手の悪さを解決するのが,今回の機能拡張の目的である。また,「やっぱりやーめた」という場合…

Read more →

macが退院

· MacBook Pro

「 [macが要入院・・・](http://www.eisbahn.jp/yoichiro/macbookpro/000846)」エントリで紹介した通り,macがこのほど入院してしまったのだが,思っていたよりもかなり早く,今日僕の手元に戻ってきた。修理内容は, 左右のファンの交換 I/Oボードの交換 バッテリの交換 という感じ。ロジックボードの交換はなかった。 今のところ,ちゃんと稼働している。放熱の効率が良くなることを期待していたが,筐体がすっごく熱くなるのは変化なし。残念。 それ…

Read more →

Lingrclipseをちょこっとバージョンアップ

· Eclipse

いままでLingrclipseを使っていただいてきた皆さんはご存じかと思うが,今までLingrclipseでlingrにログインすることができなくなっていた。 原因は,APIのRoomにtimezone属性が追加されたこと。今のLingrclipseは,APIとJavaBeansクラスの形が完全に一致しないと例外を吐いてしまう。とりあえず,timezoneに対応したlingrclipse-core(1.3.1)を公開したので,lingrclipseをお使いの方はぜひバージョンアップしていただきた…

Read more →

Searchclipseもちょこっとバージョンアップ

· Eclipse

Searchclipseをより使いやすくするための修正を行った。修正点は以下の2つ。 [Shift]+[F4]キーで,キーワード入力フィールドにフォーカスが移動する機能を追加。 内部ブラウザを開いたときに,入力されたキーワードをタイトルにセットするように修正。 Searchclipseをお使いの方は,ぜひバージョンアップしていただきたい。…

Read more →

Searchclipseをバージョンアップ!

· Eclipse

Eclipseに検索窓を設置してくれるSearchclipse,さっそくバージョンアップを行ってみた。修正点は2つ。 キーワードをURLエンコードする際の文字コードを指定可能にした。 ブラウザ起動後に,入力したキーワードを消すか残しておくかを設定可能とした。 細かな点だが,使い勝手やサイト登録の可能性が広がるはずである。ぜひバージョンアップして欲しい。…

Read more →

macが要入院・・・

· MacBook Pro

先週から、macの調子が悪い。 バッテリの残量が40%~50%付近になると、いきなりシャットダウン。今日はもっとひどく、残量が80%くらいあるのに、何の前触れもなく電源が遮断される。怖くて何もできない。 アップルのサポセンに電話したところ、バッテリもしくはロジックボードの不具合だろうということだった。バッテリを取り替えて様子を見るかどうか聞かれたが、この際なので入院させてしっかり診てもらうことにした。明後日、僕の手から旅立つ予定。 何かしてしまった自覚が全くないのだが、ググってみると同じ症状の方…

Read more →

最近のパナップ

· Other

昔は白地にストロベリーの丸が3つあっただけだったが,今は。。。 ![panapu.jpg](http://www.eisbahn.jp/yoichiro/images/panapu.jpg) スマイル!!:)…

Read more →

Searchclipse公開開始!

· Eclipse

Rimoclipse,Lingrclipse,Twitterclipseと,どちらかというと生産性を低下させてしまうEclipseプラグインを開発してきたが,「〜clipse」シリーズ第4段として,Searchclipseの公開を開始した。 Searchclipseは,FirefoxやIE7に搭載されている検索バーのようなものだ。 ![searchclipse1.jpg](http://www.eisbahn.jp/yoichiro/images/searchclipse1.jpg) 検索サイ…

Read more →

電車内でプログラムなどをするための9つのコツ

· My PC environment

java-jaの知り合いに頼まれたエントリ。それは「電車の中でのプログラミングのコツについて」。 僕はここ2,3年,電車や飛行機の中でプログラミングや記事(雑誌やブログなど)の執筆をすることが非常に多い。というか,毎日電車の中でパソコンを開いて,何かしらやっている。このエントリも,宇都宮線の中で書いている。 最近いくつか「〜clipse」というネーミングのEclipseプラグインを開発して公開した。今日もSearchclipseを作って公開を開始したのだが,これらの開発はほぼ完全に電車の中でプロ…

Read more →

Docomo2.0ってどうよ

· Complaining

最近テレビCMで多く流されている「Docomo2.0」。まだ秘密らしく,その詳細はベールに包まれている。しかし,Docomo2.0というネーミングが前面に押し出されていることについて,僕は非常にやるせない気持ちになってしまった。 勝手な推測であるが,Docomo2.0というネーミング,これは間違いなく「Web2.0」を真似た表現だろう。特にIT業界やマーケティング業界において,Web2.0という言葉はもはや一般的な単語である。Docomo2.0と聞いて,「あ,Web2.0を真似たな」と思うだろう…

Read more →

RISC OSって知ってますか?

· Other

何気なく今日Blogのアクセスログを見ていると、聞いたことのないOS名を発見。 ![log-os-20070515.jpg](http://www.eisbahn.jp/yoichiro/images/log-os-20070515.jpg) RISC OS?RISCチップに最適化されたOSか? Wikipediaで調べたら、 [RISC OSは商用UNIX](http://ja.wikipedia.org/wiki/RISC/os)で、BSD系とSystemV系の両方があるらしい。MIPS社…

Read more →

動的プロキシが循環参照していた際のシリアライズ問題

· Java

S2Wicketの新仕様を実装する際に問題となった,動的プロキシのシリアライズ問題だが,ここで直面した問題を整理したいと思う。そのために,問題領域に限定したコードを作成したので,興味のある方,解決策を知ってるぜ!という方は,ぜひ [ここからプロジェクトをダウンロード](http://www.eisbahn.jp/yoichiro/serialize-test.zip)して欲しい。 では,問題の簡単な説明をしていこう。まず,SwingやSWTなどのコンポーネント関連のクラスでよく見られるコンポジッ…

Read more →

Twitterclipseをバージョンアップしました

· Eclipse

[Twitter](http://twitter.com/)サービスをEclipseで利用するための「Twitterclipse」プラグインをバージョンアップした。 ![twitterclipse-1.2.0.jpg](http://www.eisbahn.jp/yoichiro/images/twitterclipse-1.2.0.jpg) 今回は,「@ユーザ名 ステータス」という書式で自分宛のステータスが受信されたときに,ダイアログを表示する機能を追加した。TwitterclipseをFa…

Read more →

クロージャの再帰処理

· Groovy

最近始めたGroovy。LLちっくな文法やメソッドが多く盛り込まれていて,非常に面白い。RubyかPythonに走ろうと思っていたが,やはり長年Javaをやってきた僕にとっては,Groovyが手に馴染みやすいのかもしれない。 さて,Groovyの文法において,Javaと比べて最も特徴的なものが,やはりクロージャではないかと思う。JavaSE7からクロージャがJava言語にも入るとか入らないとか議論されているが,Groovyではそんなクロージャをいち早く体感することができる。クロージャにより,L…

Read more →

新S2Wicket仕様,断念

· Wicket

約2ヶ月間,Wicketをより使いやすくしようとチャレンジしてきたが,力及ばず断念することを判断した。 コンポーネントベース開発を採用しているWicketについて,コーディングの中心はコンポーネントの組み上げ処理であり,SwingやSWTなどのGUIアプリケーションと同じくらいの記述内容と記述量が求められる。コンポーネントの組み上げは「インスタンス生成」と「モデルとの関連付け」,そして「親コンポーネントへの登録」処理の連続であり,共通的に見える割には共通化が難しく,できあがったコードは非常に煩雑…

Read more →

Twitterclipseをバージョンアップしました

· Eclipse

先日公開を開始した [Twitterclipse](http://www.eisbahn.jp/yoichiro/2007/04/twitterclipse.html)だが,さっそくバージョンアップを行った。修正点は以下の通り。 IE6で動作させた際にスクリプトエラーが発生してしまう不具合を修正。 サーバチェック後に毎回表示のリフレッシュがかかってしまう現象を回避するように修正。 ステータスの表示を更新日付でソートされるように修正。 ユーザ名の表示を設定されたURL(Blogなど…

Read more →

Twitterclipse公開中!

· Eclipse

自分が何をしているのか?友達や知り合いが何しているのか?こんなことを共有して楽しもうというサービスが, [twitter](http://twitter.com/)である。そんなtwitterを,例のごとくEclipseから利用できるように,プラグインを開発した。その名も,twitterclipse。 ![twitterclipse.jpg](http://www.eisbahn.jp/yoichiro/images/twitterclipse.jpg) eisbahn.jpのアップデートサイ…

Read more →

怒りと共にlingrclipseをバージョンアップ

· Eclipse

先ほど,lingrclipse-coreを1.3.0にバージョンアップした。昨日あたりからlingrclipseを使ってLingrサービスに入室ができなくなっているはずなので,ぜひすぐにバージョンアップを行って欲しい。 今回の修正は,LingrのAPIに変更が生じたために必要となった。具体的には,Room情報にcreatedat属性(たぶんそのルームが作られた日時)が追加された結果,JSONからJavaBeanへのマッピングに失敗してしまうことが修正理由である。現状の作りは,JSONに含まれる属…

Read more →

動的プロキシをシリアライズする具体的方法

· Java

「 [Javassistを使った動的プロキシの作成](http://www.eisbahn.jp/yoichiro/2007/04/javassist.html)」エントリと「 [替わりのオブジェクトをシリアライズするwriteReplace()/readResolve()](http://www.eisbahn.jp/yoichiro/2007/04/writereplacereadresolve.html)」エントリを組み合わせると,実行時にその場で作った動的プロキシクラスを元にnewしたイ…

Read more →

OLAPで脳みそ多次元

· Java

とある理由で情報の統計・分析についてのお勉強をすることに。うーん、なんで今まで避けて通ってきたんだろう、と思うくらい、なかなか面白い。 キーワードだけでも、 OLAP、OLTP 多次元データベース データマイニング データマート データウェアハウス VLDB スライシング ドリリング ドリルアップ、ドリルダウン ダイジング ディメンション 時系列 ファクトテーブル ディメンションテーブル キューブ メジャー と盛り沢山。OLAPにも…

Read more →

Javassistを使った動的プロキシの作成

· Java

前回の「 [動的プロキシとシリアライズ](http://www.eisbahn.jp/yoichiro/2007/04/post141.html)」エントリで紹介した通り,今回はその第一歩として,Javassistを使って動的プロキシを作成するための方法を紹介してみようと思う。 [Javassist](http://www.csg.is.titech.ac.jp/~chiba/javassist/)は,動的プロキシを作成するためのライブラリというよりは,バイトコードを操作するためのライブラリで…

Read more →

動的プロキシとシリアライズ

· Java

一般的なDIコンテナに大抵標準装備されている機能に,AOPがある。例えば,あるオブジェクトのあるメソッドが呼び出された際に,そのメソッドを処理する前に何らかの処理を挟み込む,などがAOPである。この機構を実現するためには,動的プロキシと呼ばれる機能が必要となる。 デザインパターンのProxyパターンは,あるオブジェクトと同等のインタフェースを持つProxyクラスを作成し,そのProxyクラスの中から本来のオブジェクトを呼びだすようにする。クライアントは本来のオブジェクトを触っている感覚なのだが,…

Read more →

替わりのオブジェクトをシリアライズするwriteReplace()/readResolve()

· Java

今回は「 [動的プロキシとシリアライズ](http://www.eisbahn.jp/yoichiro/2007/04/post141.html)」エントリで取り上げた通り,writeReplace()メソッドとreadResolve()メソッドの使い方について紹介してみようと思う。 あるオブジェクトをシリアライズしたくなったとする。しかし,時として,そのオブジェクトをそのままシリアライズすることができない理由が出てきたりする。そのままシリアライズしてしまうとサイズが非常に大きくなってしまう,…

Read more →

第1回java-jaミーティング大成功!

· java-ja

4月13日の金曜日, [java-ja](http://java-ja.yoshiori.org/)の [第1回ミーティング](http://java-ja.yoshiori.org/index.php?%E7%AC%AC%E4%B8%80%E5%9B%9E)が行われた。下はその様子。実際にはもう少し人が増えて,20人近い人に来ていただいた。ちなみに,幽霊のような残像が,java-ja発起人の [yoshiori](http://yoshiori.org/blog/)さん。 ![java-m1…

Read more →

天使やカイザーの次は・・・

· Other

まさか「ラオウ」とは・・(w 「 [Java-jaミーティングに行ってきました](http://d.hatena.ne.jp/tonocchi/20070413/1176484125)」- じゃばてな 生産性低下の神様は私の中では身長185センチ、体重90キロ、というのを想像していましたごめんなさい。どういうわけか世紀末覇者的な方かと思っていましたごめんなさい。 [Biographyのページ](http://www.eisbahn.jp/yoichiro/2005/03/post11.ht…

Read more →

今週は海外に行ってきます

· Other

2日から6日まで,新婚旅行でケアンズ(オーストラリア)に行ってくる。ほぼ全員に, 「PCを持って行く」=「成田離婚」 と言われているが,そう言われると余計に持っていきたくなるのが男というもの。ま,飛行機の中とか空港での待ち時間とかいろいろとあるので。 ホテルの部屋はネットが使えるらしいしかし,ネットにつなぐのが夜になるのは確実。すぐに返事を返すのは無理だが,何かあればメールをしておいて欲しい。海を見ながらOSSのコーディングをしたいが,うーん,それこそ離婚になってしまうので,自粛予定。 お土産ご…

Read more →

lingrclipseのちょこっとした機能拡張

· Eclipse

LingrをEclipse上で使用できるようになる [Lingrclipse](http://www.eisbahn.jp/yoichiro/2007/03/lingrclipse.html)に,以下のちょこっとした機能拡張を施した。 入室時のパスワード指定。 メッセージの「画像表示」「YouTube表示」「リンク表示」「顔文字表示」に対応。 開発時には外部に漏らしたくないことを話すこともあるだろう。ま,Lingr自体そういった機密情報の話に向いているかというと非常に疑問だが,例えば仲間…

Read more →

次期S2Wicketではこうなります Part2

· Wicket

[前のエントリ](http://www.eisbahn.jp/yoichiro/2007/03/s2wicket.html)で, [S2Wicket](http://s2wicket.sandbox.seasar.org/)の今後の方向性として,以下のコードを示した。 public class HelloWorldPage extends WebPage { @WicketModel private LabelModel helloModel; @WicketComponent private…

Read more →

インスタンスフィールドが勝手に上書きされる!?

· Java

さて,以下の抽象クラスがあったとする。これは,コンストラクタの中からfoo()メソッドを呼び出すが,foo()メソッドはサブクラスで実装を提供することを意味している。 abstract class C1 { C1() { foo(); } abstract void foo(); } そして,上記のクラスを継承した下記のクラスがあったとする。ここでは,インスタンスフィールドvalueを宣言し,宣言と同時に値1を代入するように記述している。コンストラクタ内でvalue値を表示し,foo()メソ…

Read more →

Lingrclipseに通知機能を追加しました

· Eclipse

[Lingrclipse](http://www.eisbahn.jp/yoichiro/2007/03/lingrclipse.html)に,通知機能を追加してみた。新しいバージョンは,lingrclipse-view 1.3.0である。 通知機能とは何かと言うと,Lingrclipseのビューが隠れていた時,例えばFast Viewにしていたとか,他のビューをアクティブにしていたときとかに,入室したルームで誰かが発言をしたことがわかるようにした,ということである。 具体的には,Eclipse…

Read more →

次期S2Wicketではこうなります

· Wicket

[前のエントリ](http://www.eisbahn.jp/yoichiro/2007/03/wickets2wicket.html)でちょっと触れた [S2Wicket](http://s2wicket.sandbox.seasar.org/)の方向性。現在,考えていることが実際に実現可能かどうかを検証している段階である。で,とりあえず次期S2Wicketを使うと,これがこーなります,というコードを掲載しよう。 例えば, public class HelloWorldPage exten…

Read more →

Lingrclipseに認証機能を追加しました

· Eclipse

先日公開したLingrclipseだが,さっそくバージョンアップを行ってみた。 追加機能は,認証機能である。Lingrにアカウント持っている人は,予め設定(Preference)画面にてメルアドとパスワードを入力しておけば,入室時にLingrにログインされる。もちろん,退室時にはログアウトも行われる。それだけ。 ![lingrclipse-login.jpg](http://www.eisbahn.jp/yoichiro/images/lingrclipse-login.jpg) この認証機能…

Read more →

ご依頼の修正を行いました

· Eclipse

[java-ja](http://www.lingr.com/room/java-ja)にて,ある方からLingrclipseに以下の修正願いを頂いた。 メッセージの字を小さくして欲しい(上司に見つからないように) 参加者のアイコン画像を表示しないようにして欲しい(上司に見つからないように) さっそく上記2つの修正を行ってみた。 ![lingrclipse-hide-icon.jpg](http://www.eisbahn.jp/yoichiro/images/lingrclipse-…

Read more →

Wicketへの挑戦 〜S2Wicketの次なる野望〜(大げさ)

· Wicket

Wicketは,WebアプリケーションをSwingなどに代表されるGUIアプリケーションと同じように開発することができるようにと考え出されたフレームワークである。機構自体は非常に複雑だが,その複雑さは表には一切出てこない。 コンポーネントベースという点ではJSFと同じだが,JSFは拡張性やVisualな開発ツールを意識するあまり,APIセットがプログラマに全くもって親しくない。そして,結局JSPをデフォルトとして採用しているため,相変わらず開発メンバーのロールをはっきりとすることができなくなって…

Read more →

Lingrclipseの公開を始めました

· Eclipse

AjaxとCometによるリアルタイムなチャットサービスが, [Lingr](http://www.lingr.com/)である。そのEclipseプラグインを開発してみた。その名も「Lingrclipse」。eisbahn.jpのアップデートサイトにてLingrclipseの公開を先ほどから開始した。 eisbahn.jp アップデートサイト http://www.eisbahn.jp/update-site/ 上記アップデートサイトから,下記のプラグインをインストールすると,Lingrc…

Read more →

Rimoclipseは後始末が必要だった

· Eclipse

さっそくだが,知り合いのブログのエントリより。 「 [Eclipse のプラグインは超簡単にできるよ](http://yoshiori.org/blog/2007/03/eclipse.php)」- Yoshioriの日記 Eclipseのプラグインは超簡単に作れます!! いや、マジで。 その通り。特に「画像を表示する」「Webページを表示する」「何か一覧を表示する」ようなViewを作りたいだけだったら,BrowserコンポーネントやCanvasコンポーネント,Tableコンポーネントな…

Read more →

今日もPythonは僕に冷たい

· Ruby on Rails

ちょっと興味が出てきたので,軽くテスト。 Python 2.3.5 (1, Jan 13 2006, 20:13:11) [GCC 4.0.1 (Apple Computer, Inc. build 5250)] on darwin Type "help", "copyright", "credits" or "license" for more information. class Foo(object): ... def p(self): ... pri…

Read more →

僕のRuby第一歩目

· Ruby on Rails

誠に恥ずかしながら,今日初めてRubyコードを書いた。 Weclome to Darwin! beloved:~ yoichiro$ irb irb(main):001:0 print "test" test= nil irb(main):002:0 "Hello world!"ではなく,"Hello Ruby!"でもなく,"test"。 うーん,センスなし。orz…

Read more →

「冪等」って読めますか?

· Java

2007年2月23日に, [Lingr API](http://wiki.lingr.com/dev/show/API+Reference)にいくつかの [機能追加](http://wiki.lingr.com/dev/show/API+Release+20070223)が行われた(現時点の最新のAPIは [3月6日リリース](http://wiki.lingr.com/dev/show/API+Release+20070306)のもの)。その中で, The room.enter method…

Read more →

Rimo開発日記はじまる

· Eclipse

[Rimoclipse](http://www.eisbahn.jp/yoichiro/2007/02/rimoclipse.html)でお送りするRimoサービスの開発日記が始まった 「 [戻るボタンを付けました](http://d.hatena.ne.jp/rimotv/20070228/1172643373)」- Rimo(リィモ)開発日記 番組をスキップしすぎたとき前の番組に戻れるように「戻るボタン」を付けました。 Rimoに追加される機能は,Rimoclipseでもそのまま有効とな…

Read more →

僕が考えるAOPの適用ポリシー

· Java

「 [Javaナイトセミナー(Vol.3)](http://www.nsug.or.jp/seminar/0702javasemi.html)」で宿題(?)だった「AOPの適用」について,僕なりの意見を以下に述べようと思う。 AOPはトランザクションやロギング,ベースとなる機構で必要な前処理などを適用することが代表例なのは揺るぎのない事実だろう。そして,AOPのこれらの処理に対する適用は,プログラマからテクニカルで毎度毎度のお決まりコーディングを削減することができ,さらに継承やTemplateパ…

Read more →

Javaナイトセミナー(Vol.3)に参加してきました

· Java

27日にSun用賀で行われた「 [Javaナイトセミナー(Vol.3)](http://www.nsug.or.jp/seminar/0702javasemi.html)」に参加をしてきた。 題材はSpring Framework2.0の新機能の紹介。ビールで乾杯から始まるセミナーは,いやでもノリ♪なテンションになり,雰囲気はとても良かった。講師の方はとても面白く,しかし聴衆からの質問には冗談を交えながらもポイントをしっかり突いた回答で,さすがだなぁと思いっぱなしだった。僕は対人恐怖症なため,真…

Read more →

今日の服装

· Other

![200702271619000.jpg](http://www.eisbahn.jp/yoichiro/images/200702271619000.jpg) 気軽に声をかけてください。対人恐怖症ですが,頑張ります。…

Read more →

JRは点検してんのか!?

· Complaining

今日の20時25分頃,宇都宮線の小山駅で信号トラブルが発生。その結果,2時間半以上も電車は止まることになってしまった。もう一度言う。2時間半もだ。20時30分に出発した人は,家に到着するのは少なくとも22時30分を過ぎる。 システムというものは,ダウンタイムが少なければ少ないほど良い。もちろんダウンしないシステムなど存在しないので,冗長にしたり,ダウンする前に交換する,などの工夫を施しながら,ダウンをできるだけ避ける努力をする。性善説ではなく,性悪説が基本だ。 しかし,JRのトラブルは酷い。1ヶ…

Read more →

TranslationViewプラグイン1.1.4リリース!

· Eclipse

Eclipse上で翻訳を行うプラグインである「 [TranslationView](http://yoichiro.cocolog-nifty.com/eclipse/2004/11/post.html)」プラグインを1.1.4にバージョンアップした。今回は, 翻訳前,翻訳結果のテキストボックス内でCtrl+Vなどをしたときの不具合修正 翻訳結果を持つレスポンスの文字コード指定を追加 の2点を機能追加した( [ここ](http://eclipsewiki.net/eclipse/inde…

Read more →

S2Wicket1.2.0リリースしました

· Wicket

WicketとSeasar2を統合する [S2Wicket](http://s2wicket.sandbox.seasar.org/)だが,先ほどVersion 1.2.0をリリースした。 今回のリリースでは,パッケージ名とクラス名,そしてフィールド名について,正規表現でパターンを与え,それに一致するフィールドをインジェクション対象とするFieldNamePatternFieldFilterフィールドフィルタ実装クラスを新たに提供している。これを利用することによって,@SeasarCompone…

Read more →

tarのエントリは100文字まで?

· My PC environment

自宅のサーバのバックアップスクリプトを作成しようとして,Antのビルドスクリプトを着々と書いていた。特にCVSのリポジトリは多くのファイルがあるため,tar形式でファイル群を1つにまとめようと思い,tarタスクを書いた。 ... ... いざ実行してみると,ほとんどのファイルがtarに入れられず,エラーになってしまった。 [tar] Entry: yoichiro.eclipse.plugins.translationview/src/〜/internal/ui/messages.pr…

Read more →

maven2のsiteゴールで自作ページを追加する

· Maven

maven2のsiteゴールは,標準Webページや各種レポートの出力により,プロジェクトの情報共有を行うためのWebページを簡単に生成することができる。もちろんこれだけでも十分魅力的なのだが,特にオープンソースなライブラリなどを開発するプロジェクトであれば,そのライブラリの使用方法やチュートリアル,ダウンロードページなどを追加して,siteゴールのみでコンテンツ全てを賄いたくなってくるだろう。今回は,siteゴールで自作のWebページを追加する方法を紹介しようと思う。 まずは,siteゴールを…

Read more →

Rimoclipseでウキウキプログラミング

· Eclipse

はてなが新しく公開を始めたサービス,それが「 [Rimo](http://rimo.tv/)」である。現在は, [YouTube](http://www.youtube.com/)の人気動画を集めてテレビ化されている。 特に意味はないのだが,Rimoを見ながらプログラミングができるよう,Eclipseプラグインを作成してみた。 その名も「Rimoclipse」。 eisbahn.jpのアップデートサイト「http://www.eisbahn.jp/update-site/」からインストールするこ…

Read more →

Wicket好きはコーティング好き?

· Wicket

Wicketの特徴として「Javaで何でも書くことにより,Javaプログラマが生き返る」ということがある。これは確かにそのとおり。特にJDK1.1の頃からJavaに携わっている開発者にとって,Wicketでアプリケーションをコーディングした結果は,あの頃のGUIアプリケーションに非常に近い。近年の多くのWebアプリケーションに比べて,自分の時代が戻ってきた!という感覚を開発者は持つだろう(Webアプリしか知らない人には体感できないかも)。 ただしこれは「アプリケーションの記述言語としてJavaを…

Read more →

Judeで屏風にER図を描いた

· Java

ついにJudeでER図が描けるようになった。 「 [JUDEのER図,できました!](http://blogs.itmedia.co.jp/hiranabe/2007/02/judeer8219.html)」 - An Agile Way 今後、UMLとERとマインドマップを交えた、新しい方法論にチャレンジしますので、ご期待ください! さっそく使ってみた。使用感は,ERWinに近い気がする。僕はERWinに慣れているので,非常に描きやすい。 今日では,データベースアクセスを行う際には必ずと言…

Read more →

maven2のsiteゴールによるレポートの出力

· Maven

maven2によって管理されているプロジェクトは,siteゴールを使用することによって,さまざまな情報をWebページとして自動的に出力することができる。これについては,「 [maven2のsiteゴールによる標準Webページの出力](http://www.eisbahn.jp/yoichiro/2007/02/maven2siteweb.html)」エントリで紹介した。今回は,プロジェクトの成果物に関する各種レポートをWebページとして出力するための方法を紹介してみよう。 Javaソフトウェア…

Read more →

maven2のsiteゴールによる標準Webページの出力

· Maven

ソフトウェアを構成するファイル群やそれらに対するコンパイルやパッケージング,依存関係などを管理してくれるmaven2。プロジェクトに存在するさまざまな情報や処理結果をチームで共有することが開発に必要なのは明らかであり,多くの場合はそのプロジェクト用にWebページを構築して情報をチームメンバーに公開することが行われる。しかし,Webページの更新作業について,手作業ではなかなか難しく,ついつい更新が滞ってしまうことが多くのプロジェクトで見られる。アジャイルやイテレーティブな開発プロセスを採用している…

Read more →

Javaナイトセミナー参加表明

· Java

来る2月27日に,Sun用賀で「Javaナイトセミナー (Vol.3)」が開催される。 [Javaナイトセミナー (Vol.3)](http://www.nsug.or.jp/seminar/0702javasemi.html) 〜Spring Framework 2.0:   デファクトスタンダードDIコンテナの現在と未来〜 あまり(というか全くと言っていい程)こういうセミナーに参加してこなかったのだが, [java-ja](http://java-ja.yoshiori.org/)で出会っ…

Read more →

「java-ja」には気軽なJavaが待っている

· Java

現在はJavaが利用言語トップ3に陣取るIT業界であるが,10年前はJavaと言えば少数派だった。「Javaをやってます」と言えば,「おぉ,先進的ですねぇ」なんて言われたものだ。 今思うと,Javaは登場の最初からコミュニティが支えてきたのではないかと思う。ほとんどのJava牽引者は,最大のコミュニティであったJavaHouse-MLをホームグラウンドとして活動を行い,Q&Aを日々蓄積し,その結果Java人口が増えていった。その成果は,Topicとしてまとめられている。まさにコミュニティが生産し…

Read more →

S2Wicket1.1.0リリース!

· Wicket

WicketからSeasar2を利用するための [S2Wicket](http://s2wicket.sandbox.seasar.org/ja/)のバージョン1.1.0を本日リリースした。 1.0.0では,@SeasarComponentアノテーションをフィールドに付与することによって,インジェクション対象としていた。1.1.0ではそれを進化させ,どのフィールドをインジェクション対象にするかを判断するロジック(フィールドフィルタ)を,アプリケーション開発者が自作して登録することができるようにし…

Read more →

結婚しました

· Other

2007年2月3日に婚姻届を某市役所に提出し,晴れて結婚いたしました。 これもひとえに皆さんのお力添えがあってのことです。今後はより一層このIT業界に貢献できるよう,頑張る所存でございます。 しかし,今朝すがすがしい気持ちで仕事を始めようとした矢先に,市役所から電話が入る。 「新しい本籍が書かれていませんので,書きに来てください」 現在,僕は結婚しているのか,まだ独身なのか・・・。これぞグレーゾーン。orz…

Read more →

S2Wicket1.0.0公開!

· Wicket

[seasar.org](http://www.seasar.org/)にて, [S2Wicket 1.0.0](http://s2wicket.sandbox.seasar.org/)をリリースした。 これは,wicket-seasarとして先日公開したライブラリを,Seasarブランドに仕立て直して再公開したものである。主な変更点は,プロダクト名の変更,パッケージ名の変更,それに伴うサイトの文面の変更があげられる。ソースコードに関しては,パッケージ名以外は変更していない。 とりあえずこれでw…

Read more →

wicket-seasarはS2Wicketに生まれ変わります

· Wicket

「早!,もうかよ」と思うだろうが,先日公開したWicketとSeasar2の統合ライブラリは,S2Wicketとして公開し直すことにした。seasar.orgからの承認も得て,近日中に [http://www.seasar.org/](http://www.seasar.org)の中にサイトも移行する予定。wicket-seasarは,Seasarブランドの仲間入りをすることになる。移行後は,http://s2wicket.sandbox.seasar.org/ がS2Wicketプロジェクトの…

Read more →

WicketとSeasarを統合するwicket-seasarを公開!

· Wicket

Wicketは,POHPソリューションの代表として今後広く普及するであろうフレームワークである。そして,WicketでDIコンテナの恩恵を受けるために,Spring Frameworkとの統合を行う拡張ライブラリ(wicket-spring)も提供されている。 最近,僕の回りではSpring Frameworkよりも,Seasar2をDIコンテナとして採用する事例がとても多い。さらに,以下のようなエントリを見つけてしまった。 「 [Webアプリ作成前に考えたこと](http://mesolabs…

Read more →

アプリケーションコードとフレームワークと単体テスト

· Java

「 [フレークワークに依存しないっていうけどさ](http://d.hatena.ne.jp/higayasuo/200701191169180656)」 - ひがやすをblog アプリケーションのコードは、フレームワークに依存せずに済ませられるなら、それに越したことはありませんが、依存して楽できるなら別にいいんじゃないのというのが私の考え。 フレームワークに依存した状態で,更に「それに対する単体テストコードの記述の敷居が高くならなければ(※)」フレームワークに依存したコードを記述することを…

Read more →

Wicket2は凄そうだ

· Wicket

2007年1月14日時点での,Wicket1.2からWicket2.0への変更点について,以下のURLのページで発表されている。 [Migrate-2.0](http://cwiki.apache.org/WICKET/migrate-20.html) - Wicket wiki 要約すると,以下のような感じである。英語は苦手なので間違っている箇所があると思うが,構わずに掲載してしまおう。 JavaSE5以上が必須になる。 onAttach()の親実装を先に,onDetach()の親実…

Read more →

DIコンテナの設定ファイル書くの?書かないの?

· Java

DIコンテナの設定情報,つまり「オブジェクトの依存関係」や「オブジェクトの設定内容」について,規約重視で暗黙のものとするか,ファイルに記述することで形式のものとするかは,個々人によって主張が異なるようである。何が何でも設定ファイルを書かない,あるいは,何が何でも設定ファイルを書く,といった「原理主義者」も多く,多くの場合は彼らの説明に「コンテキスト」が含まれない。よって,主張を聞いても,実際に何らかのDIコンテナを使う際をイメージした場合,その主張に沿う部分と沿わない部分が僕個人の中で発生し,完…

Read more →

怪我人続出!?

· Gymnastic

日本が価値点向上に乗り出した。 「 [体操高難度の演技にボーナス点付加を設定](http://www.nikkansports.com/sports/f-sp-tp0-20070105-138799.html)」 - 日刊スポーツ アテネ五輪までの体操は,C難度やD難度の技の組み合わせによって全体の価値点を上げ,その完成度が評価された。つまり,単発の大技を出しても,高得点に直接結びつかない。それは,アテネ五輪での中野大輔選手の平行棒種目別決勝の演技に対する評価が表していた。 しかし,現行のルール…

Read more →

Shale Remotingを使ったファイルアップロードの方法

· Shale

java.sun.comから,こんな記事が掲載されている。 「 [Accessing Resources From JavaServer Faces Custom Components](http://java.sun.com/developer/technicalArticles/J2EE/jsfresources/?feed=JSC)」 - java.sun.com JSFのカスタムコンポーネントで,Ajaxによるファイルアップロード系の処理をするためにShale RemotingやDojo…

Read more →

WicketとSpringFrameworkの連携

· Wicket

WicketはPOHPのソリューションとして非常に素晴らしいが,やはりUIに対するライブラリであり,ビジネスロジックに関してはDIコンテナを採用してAOPなどの恩恵を受けることが今日の開発スタイルにマッチすると考えられる。 Wicketでは,DIコンテナであるSpringFrameworkと連携するための2つの方法を提供している。 ApplicationオブジェクトにDIコンテナ管理下のオブジェクトをセッターインジェクションして,各WebPageオブジェクトからgetして利用する。 各…

Read more →

携帯サイト向けにWicketを使う

· Wicket

携帯端末向けにアプリケーションを開発する場合,作成するコンテンツが小さいために,とにかく余計な記述なしにサクサク開発をしたいと考えるだろう。XHTMLでページを作成していけるソリューションを採用すれば,さらに開発効率は向上するはずだ。そう,Wicketの出番となる。 ただし,WicketはもちろんFirefoxやIEなどのWebブラウザを標準のターゲットにしているために,そのままでは不都合がいくつか存在する。 まず,Wicketの標準では,Webブラウザのマルチウィンドウ対応を行うために,出…

Read more →

不快なCM

· Other

箱根駅伝を見ていると,かなり高い頻度でサッポロビールのCMが流れてくる。 「 [ないものは,つくるしかない。](http://www.sapporobeer.jp/naimono/)」 - サッポロビール 同じ言葉を何度も何度も連呼される。なんか自分が洗脳されかけている気がして,不快だ。…

Read more →

WebSphere+commons-logging+log4jは使い物にならない

· Java

IBM WebSphere6.1(WAS)とBEA Weblogic9.2(WL)のどちらを採用するかを検証する機会が昨年あった。政治的な理由でWASに大きく傾きかけていたのだが,致命的な問題がWASに存在することが発見された。 それは,commons-loggingとlog4jの組み合わせをWebアプリケーションで使っていた場合に,WLやTomcatの場合と比べて,出力ログパターンによって処理性能が著しく低下するというもの。具体的には,「%C」「%M」といった,保守や不具合の原因の発見に非常…

Read more →

TranslationViewプラグインをバージョンアップしました

· Eclipse

Eclipse上で翻訳を行うプラグインである「 [TranslationView](http://yoichiro.cocolog-nifty.com/eclipse/2004/11/post.html)」プラグインを1.1.3にバージョンアップした。今回は, 翻訳結果で「全て選択」機能(Ctrl+A)を追加 翻訳要求時のパラメータの文字コード指定を追加 の2点を機能追加した( [ここ](http://eclipsewiki.net/eclipse/index.php?Translati…

Read more →

OmniGraffle Proを使ってます

· My PC environment

雑誌の執筆を行うときや,技術的な内容をエントリするときには,どうしても文章だけではくどい説明になりがちなので,図を作ることが多い。雑誌の執筆は9年前からやっていたりするのだが, Microsoft PowerPoint Macromedia Fireworks(現Adobe) で図を書くことがほとんどだった。絵心のない僕では,これらのソフトではきれいな図を書くのはなかなか難しい。 しかし,macユーザになって,すばらしいソフトに出会うことができた。 ![OmniGraffleIcon.…

Read more →

今年もよろしく!

· Other

すでに明けてしまった2007新年。遅ればせながら,昨年を振り返ってみると。。 Private: 婚約! Public: 大阪・福岡・名古屋への地方長期出張 Public: ○億規模のシステム開発案件へのアーキテクトとしての参戦 とにかく移動しっぱなしの年。毎週飛行機か新幹線に乗っていた1年だった。その中で,システム開発案件でアーキテクトとして,アーキテクチャや開発プロセスの策定などを,比較的大きな規模で実践することができた。いい意味でも悪い意味でも,経験の蓄積ができたはず。今年はそれ…

Read more →

今年の初仕事は・・・

· Other

お供え餅のセッティング。 ![200701010818000.jpg](http://www.eisbahn.jp/yoichiro/images/200701010818000.jpg) これが2分ほどで, ![200701010826000.jpg](http://www.eisbahn.jp/yoichiro/images/200701010826000.jpg) に組み立てることができてしまう。高度にコンポーネント化されているからこそ,簡単にできあがるわけだ。 ソフトウェア開発もこれ…

Read more →