2007/2 ~ 2007/4 の Kodougu の開発戦略をここに記述します。

○ モデリング機能開発
リスクは二つです。「マルチブラウザ対応」と「どれくらいの UI を実現するか」です。4 月末までにはベータ(機能拡張は基本的に終了)の状況にします。

・ マルチブラウザ対応
本プロジェクトでは、FireFox, IE を対象とします。

まず、4 月末までに FireFox 版を作成し、ブラウザ依存になる箇所(VML, SVG の実装依存の箇所とJavaScript の実装依存の箇所)を切り出し、マルチブラウザ対応の準備を完了します。

IE 対応は 5 月以降です。SVG の実装状況によっては、Safari や Opera も対象とする可能性はありますが、やはり 5 月以降です。

・ どれくらいの UI を実現するか
いわゆる Jude や EA のようなリッチな機能を完全にブラウザ上で実装することには限界があります。4 月末までにはブラウザ上で実装できる機能のうち、必要と思われるものを全て実装します。

○ モデリング言語設計機能開発
・ ノーテーション及びシンタックス
リスクは二つです。一つは、「どれくらい設定できれば十分なのか」、もう一つは「どのような UI が適切なのか」です。

現在は DB に直接 Ruby のコードを入れてこれを実現していますが、4 月末までに、メタモデリング機能の用途を明らかにして、これらのリスクの解決に着手している状態にします。

・ ストラクチャ
リスクは二つです。一つは、「メタモデリングに必要なストラクチャを十分に準備できるか」、もう一つは、「メタモデルの変更点を既存モデルにどのように反映させるか」、です。

4 月末の時点では、前者を解決し、後者の実装を開始したいと考えています。

・ セマンティクス
特にリスクはない(メタモデルの説明を文章や絵で説明できれば OK)ので、4 月末までにセマンティクスを記述する機能で欲しいものを列挙してから実装します。

○ そのほか
・ Web ページの構築
4 月末までには実施します。(できれば、3 月上旬には行いたい。)

・ 国際化
4 月末までは対象としません。5 月以降に国際化及び地域化(日本語、英語)を実施します。

○ 2007/5 ~ 2007/7
・ 積み残したリスクの解決
・ マルチブラウザ対応
・ 国際化
・ 安定化、リファクタリング
・ マニュアル等のドキュメント整備
・ 宣伝活動(?)
・ コミッタの募集
・ 要望の収集

Posted by あかさた
最近、珍しくカプースチンを練習しています。カプースチンはクラシックを勉強してからジャズに転向した作曲家で、ジャズなんだけどクラシックの形式などを取り入れた曲を作ったりしています。楽譜が普通に売り出されていることもあり、クラシックピアニストにとっては、ジャズっぽい曲を弾けるねらい目の作曲家であり、数年前にアマチュアの間でも流行りました。

練習しているのは、8 つの演奏会用練習曲のプレリュードとトッカティーナです。譜面的にはそんなに難しくないのですが、リズムに合わせて手がそのとおりに動いてくれません。(--; 学生中に練習しておくべきだったとちょっと後悔しています。今だと練習する根気がない・・・。(^^;

Posted by あかさた
秋元@サイボウズラボ・プログラマー・ブログによると、世界の経済活動を 3D にしたものがあるようです。日本・・・というか東京が異常に高い。あと大阪。

こうやって見ると、経済大国日本といっても、一部の地域を除けば、経済活動(GDP から計算しているらしい)はそれほど大きくないのが見て取れます。意外とアメリカは分散しているみたいですが・・・。

Posted by あかさた
昨日は、会社の最終日でした。どんな流れだったかざっくりと、記録しておきたいと思います。

午前中:ひたすら仕事
午後一:やはり仕事
午後二:結局仕事
午後三以降:あいさつ回りとあいさつメール
夜:同期と飲み会

最終日なのに、なんか 5 回も 6 回も Subversion にコミットしているんでけど。(--; 最後まで仕事があるとは、、、。おかげで、仕事的にはやり残したことはあまりありません。

そういえば、事務の人に「退職の書類が一発でそろって凄い」といわれたが、5, 6 個しかない書類がそんなにそろわないものか? ・・・と、ちょっと驚いたが、そういうものらしい。

見つからなくてあいさつしきれない人が結構いました。後であいさつ回りをする機会があるといいけど・・・難しいか。たった 4 年間でもお世話になった方は数知れず。皆様、本当にお世話になりました。

夜は同期との飲み会でした。なんというか同期というものはありがたいものです。ひたすら感謝。3 ヶ月くらい返していないお金があったのでそれを払ったら、本当にやることは終了。(笑)

さて、これからしばらくは未踏に注力して、その後どうするかはまた考えます。これから半年間、いろいろなことに挑戦してみたいと強く感じています。これからがんばろう!

Posted by あかさた
朝日新聞のテレビ CM で、ドビュッシー作曲「ピアノのために」第二曲「サラバンド」が流れていました。この曲に銃声が響くと、本当に救いようのない「何か」を感じてしまいます。

サラバンドとは、バロック時代に良く使われた曲の形式で、元々は舞曲だったようです。ドビュッシーは今世紀初頭の作曲家なのでバロック時代より 100 年以上新しい印象派に属しますが、しばしばバロック時代に流行った形式の曲を書いており、この曲もそういった曲のうちの一つです。もっとも、形式が古くても響きがぜんぜん新しいので、私のような素人にはどこに共通点があるのか良くわからないのですが。

さて、「ピアノのために」はドビュッシーが実験的な意味合いを込めて作曲したものらしく、「月の光」や「亜麻色の髪の乙女」などがドビュッシーと思って聞くと、仰天してしまうような曲が含まれています。(第一曲目は、和音の連打にグリッサンドの連続というド派手な曲なのです。)

ドビュッシーのサラバンドは深遠で美しい響きを持った「じっくり聴かせる」曲です。テレビ CM とはいえ、この曲を聴いたのは久々だったので、思わず楽譜を引っ張り出して自分でも弾いてしまいました。いい曲だ・・・。

Posted by あかさた
こちらによると、養老孟司がウェブ人間論を読んだらしく、以下に書評が載っています。ぶっちゃけ、この文章の方が本編よりも面白い・・・というのは冗談にしても、なかなか面白いのでおすすめ。

養老孟司のウェブ人間論の書評。
http://www.shinchosha.co.jp/wadainohon/610193/review02.html

時代というものがあって、いまの時代は年寄りが威張る。そのつもりはなくても、生きている以上、ジャマになるのは仕方がない。そんな時代に若い人はどうすればいいか。いちばんまともな生き方は、年寄りがダメな世界で頑張ること。ならばウェブは格好の分野ではないか。


こういう視点は意外とわれわれの世代よりもかなり上の世代の方が持っている気がします。

関連エントリ
ウェブ人間論を読んだ

Posted by あかさた
昨日、出かけたついでに服を見ていました。冬物最終セールの時期ということもあり、安くなった冬物を買おうとしたわけです。ズボンを見つけました。そこそこ安くて気に入ったので試着したところ、ウェストのサイズもピッタリ。買おっかなーと、思ったところ・・・

ズボンの長さが、まったく足らんことに気づいた。orz

つんつるてんってやつ? ズボンってヤツは、ウェストが小さくなると長さも短くなるものです。確かに、最近やせたような気はしていたのですが・・・さすがにこれまでズボンの長さが短くて買うのを断念した記憶はないです。

あーあ、せっかく半額くらいになってたのにな~。

Posted by あかさた
今日は Rmake のマップエディタのリファクタリングを実施していました。マップエディタを作成する際、マップの描画を行わなくてはなりません。マップの描画機能は、エディタ向けの描画クラスとゲーム向けの描画クラスを準備していますが、処理内容に重複(※)が多く、明らかにコードクローンになっています。そこで、一つにまとめられないか考えていました。

※ 差分を説明すると、ゲームの場合は、キャラクタや文章表示用のウィンドウなどを描画しなくてはならず、エディタの場合はマス目ごとの設定値(例:エンカウント率など)などを描画しなくてはなりません。

結局、C# の Partial 型を使って一つにまとめました。本当は、描画パターンをコンポーネント化して、Ruby みたいに実行時に mixin したいところなんですけど。Seasar とか使えばできそうな気もしているけど、小さなアプリなのでそういう大仰なものを入れたくないとか考えたりして。

Posted by あかさた
トラックバックを受信するコードを実現しましたが、文字コードのことを考えていませんでした。はてなダイアリーなどは UTF8 なのですが、goo ブログは euc-jp らしく、UTF8 で運用しているブログでそのまま受信すると文字化けしてしまいます。そこで、受信したトラックバックの内容を UTF8 に変換するコードを書く必要があります。

Ruby で文字コードを変換する方法はいろいろとありますが、ここでは kconv を使用します。kconv を使用すると、文字コードの自動判別をさせながら utf8 に変換するコードを書くことができます。

例としては以下のようになります。toutf8 というメソッドが文字列を utf8 に変換しています。

require 'kconv'
@trackback.title = @title.toutf8
@trackback.excerpt = @excerpt.toutf8
@trackback.url = @url.toutf8
@trackback.blog_name = @blog_name.toutf8

もっと詳しく知りたい方は、こちらのページを参照することをお勧めします。

Posted by あかさた
昨日は最後の日中ミーティングでした。CCFinderX を使ったコードクローンの分析に関する話を伝える・・・予定だったのですが、途中で Skype が使えなくなるアクシデントが発生しました。(--; 結局話したいことの半分も話せずに時間切れ。

このオフショア開発プロジェクトの性格なのか、最後の最後まで波乱含みでした。もやもやとした気持ちのままこの仕事も終了。ま、人生こんなもんでしょ。

中国との仕事を思い返すと、楽しかったこともあるんだけど、7 倍事件とか信じられないような事件がいろいろありました。そのうち起こった事件をまとめたオフショア談義でも書くか。結構面白いと思うんだけど。(^^;

Posted by あかさた