Monday, July 31, 2006

Work::PartTimeWork - 思い通りの料理

思い通りの料理が提供できるなんてのはなかなかないとは思いますが、納得のいく料理が最近全然提供できていません。モチベーションが上がらないせいもあるような気もします。恐らく、きちんと寝ていないのが原因でしょうけど。いや、それよりも毎日かかさずビールを飲んでいるのが原因のような気が…。

どうも、寝起きが悪く、朝起きても朝食を食べる気分になれず。とかいいつつ、そこまでひどいわけではないので、きちんと牛丼やら豚丼やら、麻婆丼やら食べていったりしているわけですが。

きちんとご飯は食べているはずなのに、頭が回らない。料理も段々適当になってくる。こないだも材料の分量 間違えまくってごめんなさい、の連発です。

4年生向け授業の準備と、増えに増えたバイトの勤務時間、それによる毎日のビールが重なり、体力はともかく精神的に削れていっていたのかも知れません。うーん、病んでいますね。気合いだけでどないかなるもんでもなかったということですね。


と、いうことで、今日はビールを我慢しました。あそこまで欲求に駆られたのは久しぶりです。ビールコーナーの前を通ったとき、激しく心がゆれました。あぁ、ビール買いたいなぁ…あぁっ、キムチとかあるし…豚キムチとビールだったら間違いなくうまいやろうなぁ…揺れに揺れまくりましたが、ここで買ったら明日も死にそうな面して過ごす羽目になりそうだったので止めました。頭がガンガンするとかいう類ではなく、以外と大丈夫?っていう気分なんですが、鏡を見ると、あんまりよろしくない顔をしているわけでして。左眼の目元とか若干腫れてるんじゃぁ…という感じです。…なんか書いてて、大丈夫か俺とか思ってきちゃいました。


元気になれば、前みたく気持ちよく料理が提供できるようになると信じ、今日はぐっすり寝れるようにしようと思いました。

Friday, July 28, 2006

Motorcycle::Customize - グリップ交換

XJRのグリップを、プログリップ ゲル耐震タイプに代えました。 耐震ということで、手のしびれがましになるかなぁという期待の基です。

以前グリップエンドも代えようとしたのですが、グリップエンドを外すためのヘキサゴンレンチが無く、代えようがありませんでした。そこで先日、ヘキサゴンレンチとグリップを買い、実際にエンドも代えようとしました。が、やたらめったら硬いです。

無茶すればなめちゃうんじゃなかろうかと心配し、先日エンジンオイルを交換するついでに、グリップ+エンドの交換をお願いしました。どうやって外すんだろう…やっぱラチェット使うんかなぁ…とか思ってたのですが力任せやしー!と驚きました。うーん、私がびびってやめずに、もっと力を込めれば出来る話だったのかもしれません。

さて、次にグリップですが、webで見てる限り、切り裂くか、中にオイルを注入して外すか、等が書いてあったので、どうやるんだろうと思っていましたら…何やらプシューっとエアを送り込んでいます。サービスマニュアルに書いてあったあのマークはそのエア注入のことでしたか!とびっくり。素人が購入するようなツールじゃないですね…とか思いました。

装着してみて、多少プニプニ感が増して少し変な感じでした。アクセルが若干回しにくくなったような。慣れればなんて事はないですけどね。後はこれで、一度長距離を走ってみるだけです。

Laboratory::Mail - ゴミ文字

研究室で、私宛にメールが届きました。

------------------------------
xx@M1です.
   ~~
4年生輪講の課題を提出します.
~~~
以下、ソースコード
------------------------------

…んー、なんかチルダとかゴミがついてるー。とか思ったのですが、よくよく見てみれば、M1の下と、4年生の下についていたので、送信者であるツッチーは、「M1なのに4年生輪講の課題をやったよ」ということを強調したかったのでしょう。じゃあかしぃわぃ!って話ですけど。なんもインパクトないですし、うざいだけですし。ソースコードも、C++のlistコンテナだけですむところ、vectorバージョンも書いてあるわけです。冗長だっつーの。はいてめぇ100点満点中80点ねー(冗長であるのと、要素全てを出力するのにostream_iteratorを使ってないため)、と心の中で呟きながらウインドウを閉じました。

Programming::ObjectOriented - 研究者 not equal スーパープログラマー

何でそんなこと聞くんですか?知ってるでしょう?と思ったのですが…今日学部四年生向け授業として、オブジェクト指向プログラミングの第二回の授業をやりました。何故か助教授である先生も出席…

デザインパターンとSTLに激しく食いついてきて、果てはC++のテンプレートの説明までさせられました。いや、先生は知ってるでしょう?何でそこまでわかりません口調で聞いてくるんですかぁっ?と思ったのですが、事実、あまり詳しく無かったようです。

企業にいた頃などは、研究してプログラムを作ることになったとしても、研究者はアルゴリズムを考えるのが重要なのであって、プログラミング言語に詳しい必要はなかったようです。アプリケーション化するときなんかは、実装屋さんじゃあないですけど、雇ったプログラマの人に作らせたのだそうです。大学でも無理をすればそれが出来るのだそうですが。

ということで、別にC言語ぐらいが使えれば、仕様書や要求をプログラマに提出することが出来たので、C++などが使える必要がほとんどなく、さらに言えばデザインパターンやSTLなどを使って効率的にアプリケーションを作る事なんて研究者のすることじゃない!のだそうです。

情報の学生ならばプログラミングが出来て当たり前で、院に進むならばいくつかの言語が使えて、抽象的な考えにのっとったプログラミングが出来て当たり前だと考えていたのですが…情報の研究者といえど、プログラミングがバリバリ出来る必要はないのかと思わされました。

ちなみに先生は先生で、プログラミング言語に対する意識の違いを垣間見て、ジェネレーションギャップを受けたそうで。イテレータをインクリメントすることは、連続メモリ空間のアドレスをすすめていくこととは必ずしもイコールにならないということを説明しなければならないことに、私は驚きを受けましたけどね(先生、演算子オーバーロードを知らないんすかっ?と)。

Thursday, July 27, 2006

Programming::ObjectOriented - 学部生向け授業

学部生向けの授業、というか輪講なんですが、オブジェクト指向プログラミングを二週連続で木曜日にやることになっていました。先週が一回目で、二回目が今週。今日もちょうど一週間前もやっつけ仕事のごとく、もりもりスライドを作りました。先週はオブジェクト指向プログラミングをやる上で知らないと訳がわからなくなる用語を教えました。そして今週は実践編ということで、プログラムのテクニックのようなものを教えることにしました。

教えるとはいっても、プログラムが組めるイコールプログラムを教えられるとは限りませんから。頭じゃなんとなく分かってるということを、一つ一つ言葉にして説明できる状態にまで自分を持っていかなければなりません。

しかしながら、何を教えたいかというのはある程度決まっていました。Iteratorの概念は教えたかったのです。加えて、関数オブジェクトやらデリゲートらへんの話をしたいなぁと思っていました。さらに言えば、デザインパターンも少し話したいと考えていました。

デザインパターンは私は以前ちらっと見た程度で、何が嬉しいのかも理解できず終いでした。ということで、今回の授業のためにお勉強することになりました。

詰まるところ、いかにしてクラス間の依存度を減らし、再利用生を高め、保守性を高めるか、ということですね。Iteratorはやりたいと思っていたのでIteratorパターンと、関数オブジェクト使ってアルゴリズムの切り替えなどの話はStorategyパターンが近いのでStorategyパターンをちゃんと勉強し、スライドを作り上げました。もう少し時間が在れば、ProxyパターンかAdaptorパターン、Abstract Factoryパターンらへんもやりたかったのですが。

そして課題も作らないといけません。6人中4人が前回の課題の一つであるプログラムをやってくれました。一人、ちんぷんかんぷんなC++のコードを書いていましたが(ちゃんと勉強してねーだろてめぇと思いました)。二人C++、もう二人がPerlで書いてきましたので、今度の課題はC++かPerlに搾ることにしました。

PerlだとC++ほど型の制限が強くないので、課題を出しづらいです。数字も文字列もインスタンスも全てスカラーに入れますので、C++でのテンプレートプログラミングと近いものがあるので、継承やインターフェースのメリットが伝わりにくいです。ということで、Iteratorを実装してもらうことにしました。ダイアモンド演算子でループ毎に値を取り出し、処理を行うっていうものです。<>をoverloadすれば楽勝ですが、見てると4年生の子はoverloadとか使ったことなさそうなので、スキルアップしてもらえるかな、と勝手に期待しています。

C++の課題は、モリモリSTL使ってもらうことにしました。イテレータも使いますし、関数オブジェクトも使うかもしれないという感じです。ちょっと酷かな?とか思いましたけど。

私は私でデザインパターンやUMLの勉強が出来ましたから良かったです。

Sunday, July 23, 2006

Programming::DynamicHTML - 簡易HTMLエディタ

アルバイトの関係で、今ブラウザ上で操作するWYSIWIGな簡易HTMLエディタを作っています。私が利用しているbloggerなんかもHTMLエディタ搭載で、これを利用してブログを書いています(が、勝手にタグが挿入されるのが嫌なので、あまりHTMLエディタが機能していませんが)。実際の所、どうやって実装するのかがちんぷんかんぷんだったので、今日で色々調べました。

調べていると、どうもdesignModeの値をいじったらいいらしいようで、サイトのソースを見ながら勉強させてもらいました。これを使えば、ブラウザからドキュメントの入力が可能となる、つまりbody要素の子ノードとしてTextノードをワシワシ記入可能になるわけです。

が、WYSIWIGなHTMLエディタにするためには、フォントをboldにしたりitalicにできなければいけません。どうするんやーと思っていたら、mozillaのサイトで、リッチテキスト編集の仕様なるものがあり、ここを参照しながら作ってみたらいとも簡単にフォントのスタイルが変更できることがわかりました。他にリンクを張ったり、画像を挿入したり。

…で、実際にHTMLソースに落とすにはどないすんねん?って話になるわけでして。タグ名やらスタイルシートのプロパティの値なんかは取得できるようなので(node.tagName、node.styleを見る)、それからHTMLソースを作っていけ、と。ぐはーめんどくせー…しかしまぁ、子ノードを持たないbrやらimgやらをのぞけば、後は単調な作業なので、HTMLソースへ戻すコードを黙々と書きます。スタイルシートなんかはプロパティの種類が結構あるので、javascriptのeval関数大活躍です。メンバ名を格納した配列から動的に、プロパティが入っているかのチェックおよびタグの属性値を作る処理を作って実行。数十もいちいち手書きでif文書いていられませんしね。(注:今調べたら、node.innerHTMLでソースが取得できることがわかりました。私の苦労って一体…(;´д`))

今のところ、MozillaとIEの違いを気にすることなく書けているのでいい感じです。しかし、DOMの事を意識して書いていると、なんかブラウザって一つのインタプリタであって、ブラウズするためだけのソフトウェアじゃないんやなぁって感じがしてきました。Webブラウズするためにブラウザを使っていても、本領が対して発揮できて無くて、DHTMLによる一つのアプリケーションを作り上げて動かして、ってとこまでやると、ブラウザの機能を使ってるな、って思えるんじゃないかとか思いました。

Tuesday, July 18, 2006

Cocktail::WhiteLady - バーで飲んだホワイトレディ

スタンダードレシピで作ると、こんな味だったかなぁという感じがしました。先日、サークルを卒業した先輩が結婚するということで、飲み会がバーで開かれたんですが、そこでホワイトレディを頼んでみました。メニューには載っていませんでしたが、まぁできるでしょう?というノリで頼んでみました。

驚いたのが、レモンの果肉入り。うわぁ、凝ってるなぁ、と思ったのですが、グラスは冷えていません。しかも、このサイズ、ダイソーで売ってるやつとちゃうんか!とか思いました。私の家にあるグラスの方がよっぽどいい形です。

味はというと、思ったより温かったのに加え、辛口という感じがしました。私が作るホワイトレディは甘口で、私自身甘口が好きなせいもあって、ちょっと微妙な印象を受けましたが。これでグラスが冷えていて、カクテル自体ももっと冷えていたら…と悔やまれました。

バーでバイトしている後輩がいるのですが、バイト生はみんながみんなカクテル作りがうまいわけでもなく、聞いている分にはかなり素人臭いです。後輩がバイトしているバーの話を聞いている限りで、ですが。

こんな味でバー開けるのなら、客に出すカクテル作りとか簡単なもんだな、とか思ってしまいました。氷も、中の方が白くなってますし。後輩がバイトしているバーではどんな感じなんだろう、と、ちょっと興味が出てきました。

Monday, July 17, 2006

Work::PartTimeWork - チャレンジ精神と開発期間のトレードオフ

自分の知らない、できない、やったことがないことにチャレンジしたくなるのは前々からなんですが、そのせいで周りが見えなくなるとやばいことになります。

今Webアプリケーションをアルバイトで作っていますが、無駄にサーバと通信して、サーバに負荷をかけないようにしたいという欲求から、DHTMLの導入に走りました。しかし、IEとMozillaとの違い(オブジェクトに定義されているメソッド名が違うなど)を吸収すべく、クロスブラウザ対応のため作業量が倍化してしまいました。20時間ほどかけて、文書編集(読み書き、データの削除)機能を作ったわけですが、DHTMLにせず、何も考えずにサーバとバシバシ通信していれば、これくらいの機能1時間もかけずに出来たんじゃねぇの…?って気がしてきてガッツリ凹んでしまいました。

給料が時間給なので、お金がもらえる分には良いんですが、その分開発期間は伸びるわけでして、社長からギャーギャー言われそうです。

ともあれ、この一週間でDOMの扱いについて勉強できたので、悠長なことを言えば財産的なものは残りました。が、現実問題、早く仕上げて欲しいという社長の要求もあるわけでして。率先して人柱的なことをやり、メンバーが楽できるようライブラリ構築や新しい知識をまとめてドキュメント化するなど、もりもり作業していかないといけないです。バグで苦しんでいるメンバがいれば、今考えればデバッグしてあげた方が全体的に効率がいいはず。私はバグで苦しんでいるわけではないので、一人でも作業が進みますが、バグで引っかかっているメンバはバグがとれないと先へ進めません。何だか、キッチンのバイトにおけるお互いのフォローの仕方とオーバーラップするものがあります。

明日はキッチンのバイトが朝からあるのですが、明後日はないので、明日は徹夜覚悟でやるしかないかもです。今週、4年生向けの輪講(授業)を私がやる番ですので、そっちのスライドも作らないといけませんし、大学経由で企業から受けたバイトもありますし、私自身の研究のためのコーパス収集や実験、論文書き、既存手法のサーベイもありますし。あぁっ、明日はカテキョが。一口飲めば、8時間の睡眠を摂ったのと同様の効果が得られる薬が在ればいいんですけどねー(寝なくてもいい体は無理そうなので…ってこんな薬も無理でしょうけど)。

Saturday, July 15, 2006

Motorcycle::Customize - 雰囲気変わったXJR

午前のバイトが、案の定延長食らってなかなか帰宅できませんでしたが、かえるなり早々に洗車をし、ブリッツェンビキニカウル装着へと向かっちゃいました。

フロントのライトのビスを使って付けるものだと思いこんでおり、最初はライトまわりのビスをごちゃごちゃといじっていました。サービスマニュアル要るかな?と思いつつ、持って駐車場に行かなかったのがまずかったかもしれません。ライトの角度が変わってしまいました。修正してみて、ぱっとみ、そんなに変わらないので良しとします。

ライト部分をばらし、どんな感じではまるのかな?と思ってカウルを持っていって見ると…思いっきり隙間が空いていて、とてもじゃありませんがビス止めできません。も、もしかしてスペーサーを別途買えと?ガーン!…と数秒凹みましたが、よくよく思い出してみると、カウルに何かビスらしきものが袋詰めで添付されていたのです。多分それを使うんだろうと思い、急いで部屋に戻り、とってきました。やはり添付されていたビス類を使いました。元々ライトを固定していたビスを交換する形になりました。

分解して、代替のビスを装着した写真です。ビスのヘッドがソケット(?)になっていて、さらにビスをねじ込むことが出来るようになっています。なんとか装着できそうな雰囲気です。で、実際に装着してみました。

…いやー雰囲気変わりました。お前XJRかよとかいう印象を受けましたが、雰囲気が変わって何だか新鮮です。普段見るのは正面からではなく、シートからか、斜め後ろからになりますが、なんていうかキリッとした感じがしていいです。

で、実際の防風効果ですが、夜になってから走行テストしてみました。感想ですが、時速80kmちょっとくらいまでは防風効果が体感できました。腹部に感じる風圧がだいぶ緩和されました。90、100km近くになると、付けていないときよりはマシですが、やはりそれなりに風圧を感じます。加えて、私自身首が長いほうだからかもしれませんが、胸部から上は相変わらずの風圧で、首周りが特に風を感じます。ジェットヘルだと余計に、かもしれません。まぁ日中の街乗りじゃあ高速走行する機会は少ないでしょうし、長距離ツーリングの疲労軽減としては、カウルの装備はすごく効果がありそうです。が、余計に転倒できなくなりました。転倒したら、カウルがイッパツで逝ってしまいそうです。

加えて、夜に走行したということで、当然の事ながらロービームでライトを点灯しながら走行するわけですが。明らかに視認性が落ちています。照らしている範囲が狭くなっています。それが、ライト角度を誤ってかえてしまったせいなのか、カウルをつけたせいなのか、微妙なとこですが。照らせている範囲の形が変形していることから、おそらくはカウルの影響でしょう。先が見えなさすぎて、相当怖かったです。後ろの車も煽ってきますし。昼間なら突っ込んでいける速度でも、夜間は怖くてスピードダウンです。バルブをより視認性が高くなるものに交換するのも考慮に入れなければ。

あと発注したバーグリップですが、グリップエンドが外せず、今回の交換は保留に。ヘキサゴンレンチのサイズはぴったりだったのですが、とてもじゃありませんが、グリップエンドが外せません。無理にやれば、確実になめてしまうんじゃなかろうかという不安に襲われます。

ネットで調べてみれば、ラチェットを使えば外せるような事を書いてあったので、ラチェットを買おうかとか思いました。外すのに必要なので在れば、おそらく装着時にも必要だと思われます。交換するグリップエンドに適合するレンチのサイズは、今付けているものと全然違います。…ラチェット二本買わないといけないんでしょうかね、やっぱり。

Laboratory::Member - 隣の女の子

研究室の先輩が、私の隣の席の子にプログラムを送付し、実行してもらうことがありました。先輩はVC6でビルドしていたのですが、そのせいかは未だはっきりしていませんが、隣の子は実行できませんでした。DLL周りのエラーでもないようで、実行してもうんともすんとも言わず、意味不明でした。

ですので、隣の子の環境でソースコードからビルドしたらどうかという話をし、先輩はソースコードを隣の子に送付しました。

数日後、どうなったか気になったので、

私「ソースからビルドしてみた?」

と聞いたのですが、

女の子「ソースって何ですか?」

と聞き返されました。

私「いや、こないだ先輩が送ってきたプログラムのソースの事やって。」

と言ったのですが、

女の子「これですか?」

といい、実行ファイルを見せてきました。

私「あ、いや…ソースコードのことやって。」

女の子「んー…ソースコードってプログラムのことじゃないんですか?」


…絶句。

いやーだからね…といいながら、ビルドだのコンパイラだのリンカだの単語がいくつも浮かびつつ、これを一つ一つ説明せにゃならんのかー!とあっけにとられたのですが、VCのプロジェクトファイルを見つけるなり、なんとかソースコードとは何なのかを理解した様子。

そういえば、以前にもknpとCabChaの処理速度比較を、ほぼ同時に実行させて終了する時間を目で見て行っているところをみたことがあります。このときCaboChaが後に終了してしまい、

女の子「CaboChaって遅いですよね」

とか言い出しました。適当な説明が浮かばなかったので、

私「うーん、そうかなぁ…」

と適当に濁しておきました。実際、OSによるページングやOSのスケジューリング、もっといえばハードウェアレベルでのメモリキャッシュなどの制御なども絡んでくるので、同等の処理を何千回も行わせたベンチマークを行った方が良いような気がするのですが。比較の仕方があまりにもプリミティブで、安直な結論を出すのでびっくりしたことがあります。

大学院行くんだったら、もうちょい基本的な事を勉強してくれよとか思いました。

Friday, July 14, 2006

Motorcycle::Customize - 思ったより早かったビキニカウル

来月の中旬になるかなと思っていたビキニカウルの納期ですが、なんともう納期になってしまいました。で、明日になるかと思っていたのですが、今日届きました。飲み会を早々に切り上げて帰ってきてみればコレですからびっくりでした。

箱から開けた図がこれです。4万円という香りがあまりしませんが(笑)防風やらを考慮しているからだろうと考えつつ、裏面も見てみました。


手作り感満載でした。いや、手作りだからこそ、手間が掛かるからこそ高いんだ、と変に納得。よくわかりませんが、裏面を見る限り、千円ちょいで作れそうな雰囲気はなさそうな作りと素材感ですし、あとは装着してみて外観と機能性が良ければ満足といったところです。

ついでにアタックザックとグリップ、工具も買いました。工具はグリップとグリップエンド交換のためにかったのですが、いまいち径がよくわからないので適当に買いました。前回も適当に工具買ってみたのですが、サイズが合わず。それだったらこれくらいだろうという目星をつけて買ってみたので、サイズがあっていることを期待しつつ。明日午前のバイトが終わればすぐにでも次のバイトに向かおうと思っていたのですが…洗車+装着してからになるかもしれません。

GroupActivity::Event - 飲み会のテンションの上がり方

前にも書いたかもしれませんが、何だか研究室に入ってからというもの、というかここしばらく、ずいぶんと飲み会のテンションの上がり方が右肩下がり。ちーっともテンション上がらず。少人数での飲み会ならまだしも。サークルの飲みとかになると、数十人単位で飲むわけですが、一気コールがどこかであってもいまいち着いていけず、一応コールは一緒にかけてあげるわけですけど。

色んな人にからみにいけばいいんですが、行く気になれず。何でだろうと考えると、別に飲み会にすごく行きたかったわけでもなかったことに気づき。研究室の、よく話す後輩と飲む方が全然楽しいよなぁとか思ったりするわけです。

他の研究室の、学生の飲みが好きじゃない先輩状態になってしまったのだろうかと思ったりしたのですが…よくよく考えてみれば、ちっともサークルのメンバーと顔を会しませんから、話題が合うはずもなく、むしろ研究室のメンバーと飲む方が話題が出やすいです。飲み方も、サークルみたく線形的な激しさの増し方ではなく、二次関数的な(笑)増し方になれちゃいましたし。前半ゆるーく飲んで、後半ガツンと、ですから。

なんだかんだ言っても、結局は自分の気分次第なのかもしれませんけどね。働きまくって他人に体調心配されるくらいの顔してるようなテンションじゃあ楽しめるモノも楽しめないのかもしれません。あまりの表情のひどさ+風邪引き具合に、昨日は30分早めにバイトを上がらせてもらいましたし(二度も、本当に大丈夫?と聞かれたら、そこは素直に受け止めて置きます)。

Wednesday, July 12, 2006

Work::PartTimeWork - 社長の要望

今日、ソフト開発のバイト先の社長から電話がありました。要するに、はよ作れ、っていう催促の電話だったのですが、

社長 「(開発中のPHPプログラムに)アクセスしたらプログラムが表示されるんやけど。」

私  「多分エラーが除去出来ていない状態のままになってるんでしょう。(っていうかプログラムではなくてエラーメッセージだと何回言えば)」

社長 「いつになったら出来るん?」

私  「こないだおっしゃった(大量の)機能を実装するには、今月いっぱいかかるかと。」

社長 「前の会社が作ったやつを使こてくれてもええんでよ?」

私  「仕様書がない以上、ソースコード解読といちから作るのとではどっちが早いかなと考えると、いちから作った方が(良いと社長もおっしゃったでしょうに)。」

社長 「こんなんやったら前の会社に任せた方が早かったで。」

私  「…(あなたの判断ミスですはい)」

社長 「もう少し魂詰めてやってもらわんと困るでよ。」

私  「…(これ以上魂詰めたら死にます)」


まぁ早く作れっていう雰囲気は伝わってくるわけですが、前の会社が作っていたプログラムの仕様書が無い以上、一から作ることになったもんですから。前の会社が三ヶ月以上かけて作ったモノを一月程度で仕上がるとでも思われていたのでしょうか。環境設定でだいぶタイムロスが発生したのも考慮してもらえてない…んでしょうねおそらく。

なんか我々とのやりとりの過程もぼんやりとしか覚えてらっしゃらない様子ですし、駄々こねられてるようにしか見えなくなってしまい、あげく「もう少し魂詰めて」とか言われてかなり気を悪くしてしまいました。言っても、本業があるわけですから、一日中このバイトをやっていられるわけではありませんし。社長からしてみれば、我々の進捗状況を見るには出来ているプログラムの動作をチェックする以外ないから、仕方ないことかもしれませんが。やる気を削ぐようなこと言わんでくださいよって感じです。

Monday, July 10, 2006

Motorcycle::Customize - スタビライザの効果

昨日遂にスタビライザが届きました。午前のバイトが終わってご飯を食べ、早速付けようと思っていたのですが、ここのところの疲労のため眠ってしまいました。

夕方5時半頃に、お隣のチャイムで起きたのですが、このまま寝ていては多分付けられる日がずれ込むと思い、栄養ドリンクを飲んで起きあがりました。

いざ付けようと思い、購入時、間違ってフロントフォークに付けようとしてしまわへんかなぁとか思っていたのですが…やっぱりやろうとしてしまいました。サイズが違いすぎて固定できないので、すぐに間違いだとは気づきましたが。っていうかフロントフォーク固定したらヤバイですもんね。

装着後、テスト走行がてら80kmほど走ってきました。先週はバイクに乗れなかったので、なんんだか久しぶりに乗ったような感覚です。感想は、街乗りでゆっくり、ストレートを走っている限り、あんまり違いが分からなかったのですが、90km以上出してくると、なんだかフロントが素直な動きを見せてくれているように思えました。詰まるところ、フロントが安定しているということになります。コーナリングも安定しているように思え、イメージ通りにトレースできました。

まぁ、免許を取って1年ちょい程度の技量ですから、スタビライザの効果によるものなのか、私の技量によるものなのか違いがわかるはずもないです。主観的に見て、乗りやすくなっていると感じただけで、思いこみの部分もあるかもしれません。高速走行時やコーナリング時の、フロントフォークやシャフトの歪みの実データがあり、スタビライザを付けたときの改善具合がデータとして見ることが出来れば、思いこみだけじゃないというのが実感できるのですが。

後は後に届く、カウルとグリップに期待です。カウルで高速走行時の猛烈な風圧は軽減されるでしょうし、耐震グリップによりハンドルの振動から来る手のしびれも改善されると思われます。あと、やっぱりバックステップが欲しいなとか思いました。どうにもやっぱり足に変な力が入ってしまいます。このステップの位置がもう少し後ろに来てくれれば、楽になりそう、っていうのがあるので。ただ固定式だと車検がキワドイかもしれないのと、転倒時ステップとその周辺をやってしまう可能性があるので、可倒式を選ばないといけないんですけどね。

Internet::Flash - 絶望的Mario Brothers

以前こちらで、ファミコンのスーパーマリオブラザーズの画像を使ったFlashを見ていて、PartIVまで見れていました。久々にサイトを見ていると、最終章のPartVが出ていたので、早速見てみました。

最後の最後まで絶望的な展開にちょっと衝撃を受けちゃいました。すごく凝った作品だとは思いますけどね。

Thursday, July 06, 2006

Programming::C# - 実は取っつきやすかったりして

C#とか何?C++の++が増えてC#って言うてもJavaっぽくて全然違うやん!とかいう印象をずーっと持っていたわけですが…昨日、5時間ほどさわって簡単なGUIアプリケーションを作ってみたら、すんなり手になじんで(?)驚きました。

とはいえ、Javaは随分さわって無くて、昨年度はC++ばっかりさわっていたため、クラスの宣言に対してpublicの付け忘れを連発してしまって、色々と怒られてしまうわけですが。

C#にして嬉しい点は、readonlyがあったり、out、refがあったり、Partial Classが作れたり、delegateが使えたり、foreachが使えたり、MFCよりもさっぱりとしたGUIのライブラリが揃ってたりとかですね、今のところ。

MFCよりもさっぱりとした印象を受けるのは、Win32APIを無理矢理ラップした感があるMFCとは作りが異なるからでしょうね。具体的にどう違うねんと言われると、すっきりとしたライブラリに作り直したからとか?とかいう曖昧な答えしか今は思いつきませんが…(要調査ですね)。Partial Classがかなり良いと思いました。これでGUIアプリに必要な、ごたごたした処理が簡単に隠蔽できます。意味不明なおまじないとか。

あとIDEもかなり良かったです、Visual C# 2005 Express Edition。ボタンとかのコモンコントロールとかの配置も綺麗に配置できるよう位置を揃える機能だとか、他にもコーディングしなければ設定できなかったような項目も簡単に設定できるような機能が備わってました。言語仕様もC++に比べすっきりしていますし、これはC++なんかよりも遙かに生産性が良い、という印象を受けました。

大学で、コーパス作成を支援するツールを作ることになったので、GUIアプリケーションを作らなければならない状況になりました。MFCを使うことを考えたのですが、どうにも使いにくい、というか使い方がわからないコントロールがあったり。Win32::GUI::Loftを使って書くにも、速度が遅くなるのがどうにも嫌。てなところに、以外に取っつきやすかったC#を使うと、ほいほいとGUIアプリが作れそうと来ましたから、ちょっとテンションが上がった昨日今日でした。

Work::PartTimeWork - 顧客と開発者

ソフトウェア開発のアルバイトをして、早一月と二週間近く経とうとしています。想像していた図柄通り、依頼主である社長があれこれ要求を出し、それにこちらプログラマが応えるという状態になっています。こちらのすすみ具合にあまり関係なく。

頃合いを見計らって要求を出されるのはかまわないんですが、以前言ったことと違うことを言うのは御免被りたいわけでして。主旨や目的が変わった、というのも厄介と言えば厄介ですが、社長の話しぶりを見ていると、どうも以前の話の流れをあまり覚えていない点が垣間見えまして。我々が今作っているソフトを、以前別の会社が請け負っており、その会社の開発続行が困難になったため、我々に話が回ってきたと言う状態です。

その開発途中のソフトウェアを引き継ぐ形にしたかったのですが、いかんせん仕様書が皆無に等しく、ソースコードを解読してから開発に着手するのか、それともフルスクラッチで書いた方が良いのか、という選択に迫られました。

ソースがPHPで書かれていたのですが、なにぶん我々のメンバーは4人中3人はPHPをさわったことが無いという状態でした。Perlであれば、私は使えたのですが、全員がPerlの方が良い!という状態でなければ、Perlにするメリットがあまりないようにそのときは感じたので、結局PHPで行くことにしました。(それにPHPの方があれこれモジュールを使うことで処理が早くなりそうな感じがしたので)

仕様書が無い以上、フルスクラッチで行く方が良いという事になったので、PHPを勉強しつつ、開発を進めていくことになりました。PHPやらPerlやら、そこら辺の話は社長は知りたがらなかったので、ともかく仕様書がないため、最初から書いた方が早いという旨だけを伝え、了承を得ました。

そして今にいたり、開発がやはり遅れてしまっているわけですが、その状況をみて社長が「何だったら前のやつ(引き継がなかったソース)を使ってくれてもええんでよ」と一言。あー…あのですね、元はといえば仕様書がですね…という説明を再びしないといけないわけですか。がーん…

あと社長からの要求を先日聞きに行ったわけですけど、どうも考えがまとまりきってらっしゃらない様子。しかも、今回開発しているソフトウェアは、社長の特許を実体化させるようなものなのですが、どうも社長が特許の範囲を誤解しているような気が…まぁ正直、これってどうなん?っていう内容の特許をいくつか出してて、その中の一つを今回実装するわけですが、これもまたどうなん?って感じなので。うーん、社長は特許について詳しい人なんだろうか。

顧客と開発者の関係って、こんなもんなんでしょうかね。

Sunday, July 02, 2006

Motorcycle::Customize - スタビライザーで安定性アップ?


COERCE:コワース/ハイパフォーマンススタビライザー

COERCE:コワース/ハイパフォーマンススタビライザー XJR400/S/R/RII
をWebikeにて発注しました。本当はシルバーの方が欲しかったのに、マグアルマイトの方を注文してしまい、訂正メールを送る羽目に…

高速走行時には強風により、車体が不安定になっている…というより精神的に圧迫感があるため、結果的に不安定な走行になっていると思いこんでいるところが多いような気がします。実際不安定になっているのかもしれませんが。

月末に入手できるビキニカウルと、このスタビライザにより、高速走行時やコーナリングも安定した、シャープな走りが出来るといいなぁと期待してます。先に入手できるのがスタビライザなので、付ける前と付けた後で、気持ちを尖らせて違いを探ってみたいと思います。

Laboratory::Event - 餃子パーティの餃子

今日は研究室内恒例イベントの、餃子パーティがありました。昼過ぎまではバイトがあったので、最初の方は参加できなかったのですが…今日は体調が悪く、正直餃子が食べたい、酒が飲みたい気分ではありませんでした。おそらく、昨日の夜20時から25時過ぎまで、エアコンをつけながらビールを飲み続けたのが原因のように思います。

バイト中も鼻水が止まらず、頭もぼんやりしていました。バイトが終わって帰ってきたら15時ぐらい。これくらいには餃子パーティの方には行く、と言っていたのですが…鼻水が出る上熱っぽいので、元気になってから行こうと思い、しばらく寝ることにしました。

しかしながら、一行に元気にならなかった…のですが、一応顔出すだけだそうと思いました。部屋に近づくに連れ、猛烈なニラ+ニンニクの香り。誰がやるんだこの消臭は…と思いつつも。何せ借りている場所なわけですから。

熱っぽいからすぐ帰るーと友達につげると、「その方がいいって。っていうかこういうときに休みとらなヤバイって。っていうか寝とけ!」と、なぜか逆ギレ紛いな口調で返されました(笑)「働き過ぎで死なんときよー」と普段から声を掛けてくれてたのですが、ついに体調を崩したということで、強めなセリフをくれた様子です。

餃子を一個食べ、先生らに挨拶をして帰ろうかと思ったのですが。教授に速攻でビールをつがれました。友達が、餃子めっちゃうまい!と言っていたのですが…

ま、そのときは口にしませんでしたが、正直…あんま美味しくなかったんですよね、餃子もビールも。やっぱり餃子の皮は分厚く、口の中の半分近くは皮だという状態。一杯になるのは別にいいんです、薄ければ。ワンタンみたいな感じになれば良いんですが、なんせ分厚い。今年はいいお肉にしたそうですが、いまいち肉のうまさが生かされてないような気が…ビールに至っては、紙コップで飲み、ビールも温すぎ、泡多すぎ。見た目は美味しそうだったんですけどね、餃子。

この餃子もそうですし、実家の姉の作った茶碗蒸しにも突っ込んだんですが…バランスが大事ですよと。皮が分厚ければ良いわけでもないですし、茶碗蒸しも具がでかくて具だくさんであれば良いわけでもありません。それが好みであるならまだしも。部分的に具材が主張しすぎれば、メインがなんなのかが訳分からなくなってしまいます。

それに私が行ったときの、会場の若干のダラダラ感。研究室のイベントはコレだから…酒も大量に余ってたようなので、瓶ビール二本を持って帰りました。餃子も持って帰ってと言われつつ、好きなようにして、と付け加えられたので持って帰りませんでした。酒は、まぁ私が飲まずに帰ってきたせいもあって余計に余ったのでしょうが…餃子は、餃子は分量考えようよ…一人何個ぐらい食べて、餃子一個くらいこれくらいの分量になるから、ちょっとだけ多めに見積もってこれくらい、とか。何だあの余り具合は。去年も大量にあまりましたよね?捨てましたよね?もったいないですよね。

こんだけブーブー言うなら、準備の段階から色々口を出した方が良かったのかなぁと今更ながらに思いました。来年はしゃしゃり出て見ようかと思います。