N2 ToolBox(跡地)

跡地です。引っ越しました。http://d.hatena.ne.jp/nosen

LiQ Container 1.0-rc1 リリース

2008-02-15 07:29:55 | LiQ
しました。ダウンロードはこちらから
APIが beta1 から相当変わってますので、ユーザガイドも完全に
書き直しました。

今回の出来栄えは、自己満足度 100% 。
Guice とかとも違う、一風変わった世界を作り出せたのではないかと思っております。
アピールしたいところは、

1. 超軽量
2. 拡張が容易
3. 設定の仕方が変

の3点です。

1. の軽量であることには自信があって、メインになる Container というクラスなんて
インスタンス変数に ArrayList 1個もってるだけなのです。
コンテナ生成のコストが低いので、リクエストごとにコンテナ作ったりとかしても全然問題ないと
思います。

2. の拡張が容易、については、ドキュメントにまだ書ききれていないので、よくわからない
かもしれません。でもソース読めば分かるはずです。

3.の設定の仕方については、ユーザガイドに書いたので、そちらを参照願います。
基本的には Fluent Interface ぽい感じなのですが、何かが変です。

仕事の方では立場上マネジメントに手一杯でコードを書く機会に恵まれない昨今ではありますが、
せっかく好きこのんでIT業界に転職したんだから、ひとかどのプログラマになりたい、
という気持ちは、まだ捨てていません。

LiQ はそんな気持ちのはけ口になっていて、beta1からrc1にいたるまでの長い間、
好きなだけ時間をかけて、心から楽しんで作りました。
そんな思い入れのあるソースコードをいろいろな人に読んでもらって、批評して
もらえたら、それ以上うれしいことはありません。

なので、今回はJXRのレポートを生成して、公開しています。
ぜひ、さまざまなご意見を下さいませ。

今回のリリースでようやくAPIはFIXして、あとはバグフィックスとドキュメントを手直しして、
1.0をリリースしたいと考えています。

時間がとれたら性能なんかも測ってみたいなぁ。


Click 使ってます

2008-02-14 07:10:55 | オープンソース
今回のプロジェクト、実はフレームワークとして、Click を使っています。
使い勝手は...正直微妙です。 試行錯誤の結果、Click の持っている
機能をあまり使わないで、自分たちでいろんなものを作り込む方向に
倒さざるをえなかったので、それなりに手間がかかる印象。

ソースコードがシンプルなので、色々と手は入れやすいですが、どうもかゆいところに
手が届かないところが多く、かゆいところに手を届かせるためには、結構
自分で頑張らないといけないという印象。

粒度の大きいUIコンポーネントは結果のHTMLがどうなるか想像しづらいために
プログラマが混乱してしまったみたいなので、
結局 Velocity で HTML をたくさん書く方がうまくプロジェクトが回ったりとか、
Validationも微妙に要件に会わなくて結局自作したりとか、
まぁそういった部分です。

最近思うのは、JavaのWebアプリケーションフレームワークは以下の3つのことができれば
OKで、それ以上の機能は冗長なのではないか、ということです。

1. HTTPリクエストをJavaオブジェクトに変換する
2. リクエストURLから、呼び出すメソッドを特定し、実行する。
3. 処理結果をHTMLに変換する。

上記 3ステップがなるべく楽にできるのが、良い Web アプリケーションフレームワーク
なのではないかと。Servlet + JSPも上記の3ステップをそれなりにサポートする
フレームワークではあるのですが、いまいち面倒臭い部分が多いために、
その他もろもろのフレームワークが必要になってくるのではないかと思うのです。

年度末救世主伝説

2008-02-13 07:13:54 | その他

というのは、先週からうちのプロジェクトに参加したWebデザイナさんのことなんですが、
貧弱だったデザインを見事に刷新してくれて、感謝しきりです。

今までの経験では、良いデザイナさんというのは、救世主のように
貴重で、代わりの効かない存在です。

私は、Webアプリケーションの品質においてデザインの占める割合はかなり大きいと
思います。どんなに機能的にしっかり作ってあっても、見た目がしょぼければ
品質悪そうに見えるし、多少問題があっても見た目が綺麗ならば、なんとなく動きそうに
見えるものです。

デザインはユーザからのフィードバックの多寡にも関わってくると思います。
あまりにも見た目がしょぼいと、ユーザは何を言う気もなくなるのではないでしょうか?
実際、今回デザインを刷新して、始めてユーザからのフィードバックが得られるように
なった面があります。

さらに、プログラマのモチベーションも変わってきます。
きれいにデザインされた画面の方が、頑張って動かしてやろうという気になります。

だから、最初にHTMLの紙芝居を作る段階から、なるべく実績のあるデザイナさんを
プロジェクトに参画させるべきだし、プログラマに払うお金を減らしてでも、
デザイナさんにかけるコストをけちるべきではないと思います。

Audacity

2008-02-12 07:08:36 | その他
週末は某所で学生時代の仲間と金管アンサンブルをやってきました。
演奏をRoland のちっちゃいレコーダを使って録音したのですが、
それをちょっと編集してアップロードする必要があって、
ためしに Audacity というサウンドエディタを使ってみました。
やりたいことは、一つの大きなMP3ファイルを複数の小さなMP3ファイルに
分割することと、全体的にGAINを調整することだったのですが、
特に迷うこともなく、さくっと目的を達成することができました。

簡単なことは簡単に、それなりに難しいこともそれなりに出来そうな感じです。

一昔前は Linux で音声ファイルを編集するなんて、それなりに難しかったのに、
よい時代になったものです。

チャレンジ:朝Blog

2008-02-08 22:40:40 | その他
プロジェクトマネージャ的な仕事をしていると、
業務時間中はつい誰かと話をする時間が多くなってしまって、
自分が一人で考えるべき作業がなかなか進まない、というのが
最近の悩みだったりします。
そこで、朝起きてBlogを書いて、早く会社に行くというチャレンジを
しようかと思います。

いかにも一瞬で挫折しそうなチャレンジですが、とりあえず、来週から
始めてみます。

何日続くことやら。

こころの病を考える

2008-02-04 23:45:42 | 意見
きょうび、だれでも身近に一人や二人は心を病んで仕事を休んでいる
人がいるのではないでしょうか?

専門的なところは分かりませんが、
私の感覚的には、自分の知的な能力の限界を越えた状況下に置かれたとき、
人は己の無力に絶望して心を病んでしまうのではないかと思っています。
そして、現代の社会で生き延びていくためには、とても人間の知力で対処
できるとは思えぬ複雑な問題に対処せざるを得ないことが多々あるため、
こんなにも心を病んでしまう人が多いのではないかと。

最近、少なくとも日本では、餓死したりする人も少ないようだし
(僕のまわりでは一人もいません)、身体的に厳しい状況におかれることは
2,000年ほど前に比べるとだいぶ少なくなって来たようですが、
しかし、心の痛みは、飢餓のような身体的な苦痛よりも大きい場合が
あるように思います。

身体的な苦痛の行き着くところは多分死なので、行き止まりがありますが、
精神的な苦痛は、それがどんなに激しくても身体が生きている限りは
ずっと続くからです。

そう考えると、物質的には豊かになっても、必ずしも生きやすい世の中に
なったとは言えないと思うのです。