2009年12月31日木曜日

僕歪年末号 2009~ライフ

実家にも帰らず、日を跨ぐようなイベントも無く、年末年始という名の普通の6連休を満喫中のおもくそです。本日もいつもの土日の如き1日でした。

朝起きて布団を干し、1時間後に黒い雲が広がってきたので慌てて布団を取込み、すぐさまケータイで天気予報を調べると雨の恐れは無しじゃねぇかどういうことだ、数分後再び陽が照ってきたので再び干し、友人から借りた村上春樹の『海辺のカフカ』を読み、スーパーに買い出しに行き、日が暮れたらジョギング、シャワー浴びて録り溜めしていた松本人志の番組を鑑賞し、そして現在PCの前でカタカタやっています。

ちなみに晩飯は年越しそばでもなくお雑煮でもなく、先日作ったカレーでした。これを書き終わるのは恐らく23時過ぎ。それから筋トレしてお風呂に入るつもりですが、この調子だと年明けはチ○ポを洗いながら迎えそうです。

今日のふりかえりが終わったので、今年をふりかえってみたいと思います。

1~3月:鳴門の渦巻きで赤潮発生

ったく新年早々…だがしかし『痔』が『寿』に似ている理由が分かったは収穫だった。しかしこの後も度々発生し、生誕祭の日に肛門処女喪失するハメ…じゃなく羽目になった。ちなみに肛門の中は神経が無いのか知らんが全く痛くはなかった。

7月:ライブ処女喪失、そして俺の曲を聴け!

処女喪失ばっかりで申し訳ない。情けない話ですが、この年になるまでミュージシャンの所謂『ライブ』に行ったことがありませんでした。そこまで夢中になれるミュージシャンがおりませんので。ただ唯一の例外が菅野よう子で、比較的手に入りやすいCDは全て購入しており、マジで天才と崇めているのだが、菅野氏はあんまりライブしないんですよね-。2年前に行われた韓国ライブは手が出なかったし…。
そんな菅野氏、今年5月にベストアルバムを発売。



ファンサイトである『菅野よう子さん ねっとわーく』の管理人さんが「シートベルツ名義ならライブあるかも」と言ってたら、本当にライブ開催決定!初めてのチケット購入は電子チケットぴあを利用、先行予約ですんなり当選、しかも最前列!?よっしゃー!…だがしかし『ライブひよこ』な僕ちゃんは喜びと共に戦きも感じたのでした。ど素人丸出し。アリーナ会場なんだから、最前列なんてたくさんあるだろうが。
そして当日、グッズが先行販売されるとの事なので、昼過ぎの到着を目指して出発。道中は「余った時間何してようかな~」と、グッズ購入はすんなり終わると思っており余裕かましていたのだが、到着してみて「何じゃこりゃー!?」。かなり甘く見ていました。2時間もかかるとは思わんかった。しかもあの日は暑かった!
人生初のライブは最高でした。何たってセンターステージ・バックステージの菅野さんが物凄くよく見える位置。この日の余韻は燻り続け、高校生の時以来、約10年ぶりに楽器に手を出した。ついでに菅野さんの楽譜も購入。



購入してから約半年、今どうなってるかって?…えと、その、現在の僕は、上半身が人間・下半身がこたつのいわゆる『オコタウロス』でして…すいません!完全な人間になったら再開します!弾きたい気持ちはホント持続中なんですけど…

8・9月:Twitterとかぬいぐるみとか

8月は取り立てて書くような事は無いな。あ、そういえばぬいぐるみが今月届きました。プロフィール画像のやつがそうです。
9月は…Twitter処女喪失。もう処女喪失はいいっつーの。冒頭で述べている通り、当初はアカウントだけ抑えて眠らせておく予定だったが、取り敢えず使ってみたら意外と面白いじゃないか。始めてから約4ヶ月、現在のフォローワー数は16。「こっちから一切フォローしないで(要はフォロー返しされるの無しで)どこまで増やせるか」というコンセプトでやっているので、まあこんな少数となっています。当ブログ左上に表示していますので、もしよかったらフォローしてやってください。

10~12月:amazon、錬金術師、新型インフル…

10月以降も特に何も無かったな…仕事が忙しかったし。10月にはamazonにまたしても注文勝手にキャンセルされた。菅野よう子の対談が載った雑誌だったんだけど、そう言えば中古で買うつもりだったのに忘れてた!
11月、今更ですが鋼の錬金術師処女喪失。まだ言うか。リンク先で述べている通り、第1印象は「ベルセルクに似てるなー」
12月、濃厚接触者処女喪失。いい加減アダルトフィルタに引っかかるぞ。まあそんなもん。最後の3ヶ月はとにかく仕事が忙しかった。



2009年、一言で言うと『処女喪失』の年だったとさ。
…てか、普通に生きていれば、『初体験』なんて毎年これくらいあるよな。

僕歪年末号 2009~ワーク

我が輩はプログラマである。市場価値はまだ無い。

IT業界に就職して今年で4年目。4年目ともなればSEという肩書きの元、お客さんとの折衝・交渉を行っているのが一般的なキャリアパスでしょうか。僕は冒頭の通り、未だにプログラマです。まあ間接的にSEっぽいことを行ってはいますが(自社の人間を間に挟んでのお客さんとのやりとりetc)。

冒頭の言葉は半分本気で、半分嘘。
「自分は努力してるし、日々の業務もただ漫然と言われた通りにこなすだけでなく『もっと効率化できないか?』等考えながら仕事をし、開発プロセスの改善を提言する等している。それに比べて周りを見てみろ。他にこういう事している人間いるか?殆どいないだろう。オフショアやらSaaSやらの台頭で淘汰の時代に入ったけど、俺なら大丈夫だろう。SEの仕事も多少場数を踏めばすぐそれなりのレベルに達する自信はある。何よりもこれからも努力していくし!」
と、自分に自信を持っている反面、
「そうは言っても、4年目27歳にしてお客さんとの交渉経験殆ど無し。プレゼン経験も無し。工数見積もり自分の作業分以外は無し。基本プログラミング以下の作業のみ。プロジェクトは短期間でころころ変わるので、『経験豊富です!』と胸を張れる業務知識も無し。仕事の殆どがJava案件であるにも拘わらず、オブジェクト指向プログラミングやテスト駆動開発の適用は皆無。フレームワーク経験は商用のマイナーなやつのみ(俺様フレームワークよりはマシだろうけど)。そんな俺に市場価値なんてあるのか?」
と自信の無い自分もいる。

.NETとかFlexとか、トレンドだったり市場価値があったり、そしてブログのネタにもなりそうな仕事がしたいとずっと思っており、上に希望は出してはいるものの、現実は厳しい…確かに前述の商用FWを深いレベルで理解できている人間は僕しかいないのだけど…

そんな状況でしたが、念願叶って、今年前半は.NET三昧でした。幸か不幸か、この不景気によりお客さんも「お金がないから簡単な所は自分たちでやる」と言いだし、前述の商用FWの仕事が無くなってしまったので(そのFWは内製向け。『オブジェクト指向無くても作れる!』が売り。その為OOP経験を積めなかった)。
最初の2ヶ月はASP.NET 2.0のアプリ。WEBサービスクライアントや、パーシャルクラスによるTableAdapterの拡張等、中級以上?の事も行った。市場価値のある技術なので、それはそれは仕事してて楽しかったです。
それが終わると、次は.NET 3.5のC/Sアプリ。当時としては最新の.NET Frameworkで、うちの会社としても初めての技術。そして何より、要件定義から納品までうちの会社が担当するという、これぞシステムインテグレーションという仕事に、モチベーションはだだ上がり。まあ僕はここでもプログラマなので、担当したのは詳細設計以降でしたが、システム環境のセットアップからリリース作業までを任された。これまでは既に用意された環境で個々のプログラムを作成するだけだったが、セットアップ作業を経験することにより、インフラの視点が少し身についた。プログラミング作業に関しても、ReadOnlyのセルにフォーカス移らないDataGridViewを自作したりと、非常に充実したものだった。

そして2009年後半。まあ、再び商用JavaFWの仕事が始まりましたが…
前半の.NETでの経験でエンジニアとして自信を持ったので、前々から参加したいが自信が無くて二の足を踏んでいた勉強会参加を実行。そして玉砕…世間のレベルは高かった。これを機に再び自信喪失…勉強会参加が再び億劫になる。

気温と共に気持ちが落ち込んだ状態で到来した10・11月。過去最悪と言っていい仕事のやり難さ。情報伝達がテキストファイルに追記て、いつの時代だ!?プログラム品質も悪いし。
でも悪いことばかりではなかった。ある金額を計算するモジュールを一から作り直す作業の担当となったのだが、クラス設計を自由にやらせてもらえたので、継承等オブジェクト指向を使用した(多少の制限事項はあるが)。『オブジェクト指向プログラミングをしないうちはJava初級!』と言われているので、この経験を活かして早く中級に上がりたい。また、実業務では初めてJUnitを使用した。ありがちな話ではあるが前述の計算モジュールは仕様変更が多発したので、JUnitでテストケースを書いておいて本当によかった。これが単体テスト仕様書として見なされれば文句無しなのだが…

12月。再び商用JavaFWの案件。結構でかい。来年後半までスケジュールが引かれている。
僕のポジションはPL。PLといっても『Programmer Leader』ですけど。メンバーにはFWの潤沢な経験者が殆どいないので、彼らを導けとの事。ぶっちゃけ今までずっとそんな感じの事はしてきたので特に感慨は無いが、正式に任命されたのは初めてなので、正直悪い気はしない。まあ『プログラマ・リーダー』自体が正式なものではないですが。
一番モチベーションが上がったのが、今回のプロジェクトでは『Trac Lightning』を使用し、これまで行ってこなかった情報共有・ノウハウ蓄積をしていく事。これまで旧態依然とした非効率な仕事のやり方にうんざりしており、ちょくちょく提言を行っていたのだが、ようやく伝わったようだ。あとは、どれだけメンバーが積極的に使ってくれるかだな…

2009年12月27日日曜日

心頭滅却すればいとおかし

今更だが、録画しておいたM-1グランプリを観た。今年も優勝者は誰か知った上での鑑賞となりました。

感想は大体世間と同じ。
一番面白かったのは笑い飯の一本目の鳥人ネタで、二発目のチョイスからして優勝する気は無かったな(単に在庫切れ?)。
ポイントポイントではハライチの『水色のムック』は良かった。
パンクブーブーは確かに面白くて優勝したのも頷けるけど、正直ネタとしては鉄板な感じでぶっ飛んだものではなく、賞取りに走ったかな(それともあれが彼らのスタンダード?)。



家の棚には松本人志のDVD・本・VHSがビッシリで、日常生活でもよく彼の話をする。そのためか、周りからは『お笑い好き』と思われており、「オススメの芸人いる?」等よく聞かれたり、この時期になるとM-1の批評をお願いされる。その度に僕は「僕が好きなのはあくまで『松本人志』であり、厳密には『お笑い』が好きなわけではない」と言っている。彼のみなのです。いや、厳密には彼の周りの一部も好きですが(板尾等)。でもDVDや番組を全てチェックしているのは松本氏のみ。ていうかテレビは彼の番組以外殆ど観ないので、お笑いに限らず芸能界規模で狭い範囲しか知らない。

そんな僕にとっては、M-1はただの若手のネタ番組なのです。こんなこと言ったら怒られるかもしれないけれど、『エンタの神様』等と同じ位置付け(雰囲気とか芸の種類・質は全然違うのだろうけど。てか観てないからよく分からん)。ごはんにかけるふりかけの違いでしかない。

ところで、M-1放送後は『お笑い評論家』が大量発生し、ブログ等で批評してますね。あれってどうなんでしょう?『お笑い』って分析可能なものなんでしょうか?最も観念的で、最も好みの差が激しいものだと思うので、一般化することは難儀だと思うのですが。鑑賞後の感想+αという感覚なのかな。ところで、中には最初から批評する気でネタを観る人いますね。あれは損してると思う。お笑いは頭空っぽにして何も考えずに観るのが一番ですよ。

ところで、何年か前のM-1でのキングコングのネタが「努力した感が出てて笑えなかった」という意見が多かった。この「努力した感が出てて」ってのもどうなんでしょう?努力した感が出てても面白いものは面白いと思うのだけど。お笑いに関しては「○○だから」→「面白い」というロジックは考えない方がいいと思うんだけどなあ。繰り返しますが、お笑いは何も考えずに観るのが一番です。



そう言えば『しんぼる』のDVDの発売が決定しましたね。批評するつもりもなく『何も考えず』鑑賞した結果、面白くなかったです…。一応買いますけど…


それと、『人志松本のすべらない話 ザ・ゴールデン3』DVDが元日に発売…の筈が、先週末に届いてた。何故だと考えた時、楽天ブックスは先週で仕事納めなのかななんて邪推して落ち込んでみたり。
ていうか、楽天で購入しておきながらリンクはamazonでどうもすいません。

2009年12月23日水曜日

僕歪週中号~『ウイルス』の英単語『virus』って中々覚えられないよね!

バーチャル

自宅のPC環境はiMac(OS X 10.5)+Vistaというデュアルブート環境です。今月上旬、Macのウイルス対策ソフト(Internet Security Barrier X5)の期限が切れた。ならばこれを機会に10.6でクリーンインストールしてみようかと思ったが、この場合Vistaは継続して使えるのか?調べてみたけど確信を持つに至る情報は得られず。ただ一つ、時期的にBootCampはβ版の情報のようだが『認識されなくなった』というのを発見。うむむ、不安だ。まあVistaも約2年使って汚れてきただろうから、両方再インストールしますか。

Vista側のウイルス対策ソフト(カスペルスキー)の有効期限は1月6日なので、この翌日をXデーと決定。それまでMacは、1月以降のウイルス対策ソフトをどうするかの検討も兼ねて、体験版をいろいろ試す事にした。で、調べてみたんですけど、Mac用のウイルス対策ソフトも随分増えましたね。いつの間にか3強(バスター、ノートン、マカフィーでよかったけ?)が出揃ってたんだ。Mac界の治安も悪化してきたんだな…だが、パーソナルファイアウォール機能が搭載されているのはインテゴとノートンだけのようだ。ウイルスバスターはWindowsとMac両方にインストール可能という触れ込みだから機能は同等かと思っていたが、インストールして確認してみたところ、滅茶苦茶少なかった。設定ダイアログのタブ数がたった2つですよ。多ければいいというものではないですけど、セキュリティに関しては何かあった時が怖いので、多い方が安心します。
※まあ長いこと使ってきたインテゴも設定項目は少なかったですが。ていうか、Macのアプリは総じて少ない。

さて1月以降はどうするか。
「病気なんて持ってないから生でいいわよ♡」と誘惑してくるMacちゃん。
よっしゃ!生でいくぞ!と喜び意気込んだものの「本当に大丈夫なのか?何か臭いぞ!?」と挿入直前にビビってしまうチキン野郎、俺。
そんな俺にとっては、アンチウイルスソフトという名の性病ワクチンだけでなく、パーソナルファイアウォール機能という名のスキンも無いと、安心してMacちゃんを抱くことはできない。

と言うわけで、ファイアウォール機能が搭載されている、インテゴかノートンの2つに絞った。で、ノートンは相変わらず評判が悪いので、結局今後もインテゴで行くことにしました。

どうせ再インストールするなら、『Flex Builder』の体験版をMacで(Windows版は既に体験済み)、そしてVistaで『Excpression Blend 3』の体験版を使ってみようかなと思ったけど、こんな不況な昨今なのに、幸か不幸か忙しい。月間残業時間の最長記録を更新する勢い…。

リアル

こんばんは、濃厚接触者のおもくそです。この度、超至近距離で会話した先輩が数時間後に発熱、翌日の検査で見事新型インフルエンザ陽性という運びとなりました。その先輩も同じプロジェクトのメンバーであり、プロジェクトは前述の通り只でさえ忙しい状態だったので、もうホント勘弁してくださいとう状況です。ちなみに、うちの会社は感染者のランクでないと出勤停止となりません。当初は大手企業並のコンティンジェンシープランで、流行地区に住んでいる者は家にいる時もマスクしろとか厳しく、当然濃厚接触者は出勤停止だったのですけど、自宅待機者食わせるだけの余裕などある筈もなく、どんどん緩くなっていきました。で、今回なんか結局マスク着用令発動すら無し。まあウイルスばらまくのは道徳上宜しくないので、言われなくてもしてますけど。

そういえば以前、こんな事がありました。僕の目の前に座っている新人が新型に感染した時のこと。マスク着用令が発動されたのですが、対象者は感染者の島及び隣接する島にいる人間のみ。フロア全員じゃないのかよ。インフルエンザウイルスをミサイル扱いかよ。射程距離の概念かよ。ていうか砲台(人間)は動物だから動き回るってば。
…と思っていたのですが、こんな情報発見。
インフルエンザのおもな感染経路は、飛沫感染と接触感染であり、新型インフルエンザも同様だと考えられています。
空気感染は、重症患者のいる医療現場などのきわめて限定された条件で起こりうると考えられています。

飛沫は、通常空気中で1メートル前後の範囲にしか到達しません。少し幅をとって考えると、1~2メートルの距離、といえます。
そうだったのか。全然知らんかった。でもやっぱり何か間抜けな気が…

ところで、接触翌日のノー残業デイ、うっかり同期と一緒に飯を食いに行ってしまった。その彼、見た目や雰囲気がカンニングのお亡くなりになられた方そっくりで、『ホワイティ』の二つ名を持つ男。しかも、見た目に違わず基礎疾患持ちで、さらに運の悪いことに、今月上旬まで長期入院してて病み上がりの状態。こいつの方が絶対ヤバイ。すまん、友よ!死ぬな、友よ!

2009年12月19日土曜日

Trac発車オーライ

強豪チームに入って「俺たち強豪だわ!」と浸るより、
弱小チームに入って強くしていく方が面白い
~おもくそ

言葉のセンスの無さが光ってますね。こんばんは、おもくそです。
上記は僕を形成している哲学というか価値観の一つです。プロ野球のドラフト会議の時期なんかよく思います。阪神やダイエーが弱小だった90年代なんか特に。FA宣言したベテランや、逆指名確実の大型新人に対して「巨人・中日や西武じゃなくて、阪神・ダイエーに入ってあげて!」と。まあ野球の場合は、本人が子供の頃からどこの球団のファンなのかというのが一番大きいのでしょうけれど。

冒頭の哲学、それと若い頃はぬるま湯に浸らない方がよいという判断に基づき、「就職するなら中小・ベンチャー」と決断・実行し、現在に至っています。で、現状「やっぱ大手に行っとけばよかったかな…」と、ちょっと負けかけてます。というのは、今の会社、冒頭の言葉で述べている『面白さ』の肝である『強くしていく』という文化が殆ど無いんですよ。PDCAとかKPTふりかえりなんて行っている様子が無し。コードレビューもしないからコードに対するフィードバックが無く、コード品質の向上は完全にプログラマ個人の努力に委ねられている。見積もり作業に対しても然り、工数が妥当かどうかのチェックをしてくれず、結局お客さんに幾つで提出したかはプロジェクトが始まってみないと分からない…
※よって、厳密には『大手』がよかったと思っているわけではない。
※昨年度1度だけKPTふりかえりを行ったことがあったが、それっきり。短いスパンで定期的に行わないと意味が無いのに。ていうか、その時の決定事項が何一つ実行されていない事には、協力会社の人達も呆れていた…

とは言うものの、自分で選んで入った会社だし、愚痴ってばかりで何も変えようとせず逃げるだけなのは駄目だ。そう思い、『カイゼン』の提言をちょくちょく行ってきたのだが、この度ようやく一部が実を結んだ。次のプロジェクトでは『Trac Lightning』を使用し、Wikiを利用して開発情報の共有、技術ノウハウの蓄積をしていきましょうという事が決定。今時この程度の事はどこでも行っていることでしょうが、うちにとっては大いなる進歩なのです。でもタスク・スケジュール・QA管理は従来通りExcelなんですが…。それらは「仕事の遣り方を一気に変えると混乱する」ってことで見送りになってしまいました。しかし、次のフェーズではTrac化していこうという流れなので、まあ良しとしましょう(何様)。

もっと言うと、我が社の上得意であるそのプロジェクトのお客さんは、仕様を中々決めてくれない&やっと決めても変更多発なお客さんなので、ウォーターフォール捨ててアジャイルにしたい所ですが。
あと、個人的には『Trac』より『Redmine』で行きたかったかな。世間的にもこっちの方が評判良いし、PythonよりRubyの方が簡単そうだし(ちなみに現状どちらの言語も使えません)。まあ『Trac Lightning』の方がインストール・設定が簡単だからしょうがないか、と思っていたら、こんなのあったのか!:RedmineLE

ちなみにこのプロジェクト、以前のエントリで述べたやつです。商用フレームワークという事もあり、Web上にノウハウは記載されていない。で、そのプロジェクトでは、潤沢なフレームワーク経験者は僕只一人。しかも、4年以上扱っておきながら、会社レベルでノウハウが蓄積されていない。そしてメンバーの中では僕が一番若い。この場合、今までの業務経験鑑みるに、遠慮せずに質問乱発してくる&同じような質問が別々のメンバーから飛んでくる事は必至。なので、『質問者は、質問した内容をチケットに記録する』『質問する前にチケットを検索する』という規約を設けようと思っています。チケットの分類を『技術情報』とかにして、ノウハウとして蓄積していこうと。チケットの使い方間違ってる気がするし、Wikiに直接書かせればいい話なんですが、Wiki編集するのはさすがにちょっと手間かなと(別に難しいものじゃないですけどね…)。チケット登録なら直感的でお手軽だし、取り敢えずはこれで行こうと思っています。切りのよいところで、Wikiに移すと。

それに、チケットの数はメンバーの評価指標としても使えますし。
多すぎる人間は単純にスキル不足orろくに調査・熟考していないと見なし、別途フォローor鉄槌。
体感質問数>チケット数の場合は、規約を守っていないということで鉄槌。
その他のチケット数少ない人は、質問せずとも自力で解決出来る人=優秀ということなので、質問対応を一部手伝って貰う。
チケット数少ない人の中には、或いは自力で解決できないけど質問しない=問題放置中という人もいるかもしれないので、進捗やその時点での成果物等をちゃんとチェックする…etc。



こんなことを同期と話していたら、「『質問・回答を登録するのはお前がやれ!お前が言い出したことなんだから』って言われるんじゃねぇの?」と言われた。あー…あり得る。
よくよく考えてみたら、『質問とその回答をメモする』という事すらされていない気がしてきた。何度か思い当たる節がある。メモを記録しておく媒体を、紙・ローカルPC内の電子ファイルからチケット・Wikiに移すだけだから、殆ど手間は増えない(使い方覚える最初だけ)からそんなに反発は無いかなと思っていたけど、『そもそもメモを取らない』という、失格社会人にとっては、単純に手間が増える事となり、反発してくるかもしれない…

さて、どうなることやら。

2009年12月12日土曜日

[Java]Calendarクラスは可変オブジェクト

StringやBigDecimalオブジェクトといった所謂『不変オブジェクト』を使っていて、「値が変わらない!」と嘆いたことは、大抵1度くらいは経験した事があると思う(ベテランになってもたま~にやってしまう…)。特に、C言語のポインタの例でよく出てくる、以下のように引数の値を変更する例。

メソッド呼出元の値をメソッド内で書き換えるという作りは宜しくないと思うので、この『不変オブジェクト』という概念はナイスだと思います。引数をメソッド内で弄り倒しても、呼出元の値は何の影響も受けない。
そういうわけで、不変オブジェクトに慣れてくると、何の躊躇も無しに引数をメソッド内で弄り倒してしまいがちです。しかし、『不変オブジェクト』と言われる以上、当然『可変オブジェクト』も存在します。この可変オブジェクトを不変オブジェクトと同じ感覚で弄り倒してしまうと、後で血ヘドを吐く事になりかねませんので、注意が必要です。はい、先月の僕がそうでした(いや、すぐに気付きましたけど…)。

先月の僕が遭遇した可変オブジェクト、それはCalendarクラスです。Calendarインスタンスを引数で渡し、引数と同じ年月・日付はその年月の月末日であるCalendarインスタンスを返すというメソッドを作成しました。初版のソースは以下。


ホント馬鹿です。正しくは以下でした。


不変オブジェクトと可変オブジェクトの見分け方は、そのインスタンスの値を弄くるメソッドの戻り値の有無で大体判別できると思いますが、どうなんでしょう。ていうかドキュメント読めって話ですが。

戻り値有り:不変オブジェクト
戻り値無し:可変オブジェクト


※「値を弄くる」ことができないのが不変オブジェクトなので、上の言い方は適切ではありませんが…

いやはや、前回のBigDecimalといい、4年目にして今更こんな事言っているようじゃ、やっぱり俺まだまだ初級だわ。細かい処理がラッピングされた、某フレームワークのライブラリでばかり組んできたので、基本が抜けてしまっている。フレームワークの功罪というやつか?(勉強不足と言われたら、返す言葉も無いですが…)

おまけというか個人的メモ

月末日付取得
getActualMaximumを利用。Calendar.DATEを引数に指定する事で、その年月が取り得る日付の最大値、つまりその年月の月末日付を返す。使い方は上の例を参照。
日付間日数取得
Calendarオブジェクトが内包しているDataオブジェクトを利用する。Date#getTime()で1970/1/1 00:00:00(GMT)からのミリ秒数を取得できるので、これの差分を日単位に変換すればよい。尚、Date#getTime()の戻り値long型。

[Java]BigDecimalクラス 小数値生成時の留意事項

指定した値のBigDecimalオブジェクトを生成する場合は、以下のようにコンストラクタの引数に値を指定するわけですが

小数値を指定する場合、以下のように数値で渡してしまうと、2進数で表現できない値の場合は誤差が発生してしまいます。

誤差発生を防止するには、文字列として渡さなければならない。

おまけというか個人的メモ

BigDecimal同士の値比較にはcompareToメソッドを使用する。
文字列で比較するequalsと異なり、compareToは値で比較するので、例えば10と10.0は等しいと見なされる。

2009年12月6日日曜日

僕歪週末号~@にまつわるエトセトラ

エトセトラその1 AD

うちの会社の社内システム環境にActive Directoryが導入された。同時に監視ソフトも各端末にインストールされた。これまでは、協力会社の方々が「こんな緩い会社は見たこと無い!」と驚かれる程のゆるい環境。僕は客先常駐が殆どだったので、客先環境のセキュリティと比較してみると、そのゆるさが本当に実感できた。一応IPAのセキュリティ資格持ってる身なので、こんなんで大丈夫か?といつもハラハラしてましたよ。

とにかくこれから、ウィンドウを開いたり閉じたりといったレベルの操作まで監視されることになる。正直いい気はしないが、別に監視されて困るような事はしていないし、何よりこれでサボり野郎は確実に減るだろうから大いに結構。

ただ…やっぱり今までより確実にやりにくいな。ドメインアカウントには管理者権限は与えられておらず、ちょっとしたツールをインストールして試したりとか、デフラグすら自由に行なえない。

そしてPCの動作が確実に重くなった。何かしょっちゅうガリガリいってる。
ログオンもすごい時間がかかるし(特に始業5分前頃)。
ていうか、ログオンアカウントの末尾に一々『@ドメイン名』付けなきゃいけないのだけど、これって省略できなかったっけ?ログオンダイアログの下部の『ログオン先』でドメイン指定すれば、一々付けなくてもよかったような。少なくとも僕が今まで触れたAD環境では、『@ドメイン名』付けなきゃいけないとこは無かったけど。管理者の知識不足か?まあ俺も知識不足なので何も言えないが。

てか、プロキシは相変わらず無しなのか…
追記
ログオンアカウントのドメイン名省略はやっぱり可能でした。
ただ、我が社ではアカウント名のフォーマットが『名.氏』なのですが、『.』は省略する必要がある。
豆知識
Windowsではログオン・ログオフ
UNIX系ではログイン・ログアウト

エトセトラその2 AV

ファイルサーバー上の、僕の所属するグループのフォルダの配下に『個人フォルダ』というフォルダがある。グループメンバーの氏名の名称のフォルダがずらーっと並んでおり、個人資料はそこで管理することになっている。で、フォルダをウィンドウで開くと、フォルダ名でソートされた状態、要は苗字でソートされた状態で一覧表示される訳だが、僕の苗字ではどうしても真ん中辺りに表示されてしまい、探すのにちと苦労する。ある日、その煩わしさを解消する方法を思いついた。フォルダ名の先頭に『@』を付けるのだ。『@』で始まる苗字の人間なんていないので、必ず先頭(or末尾)に表示される。これで俺もライフハッカー。

で、それを見つけた後輩が「そんな名前の巨乳女優いますね~。」と一言。
あーはいはい。目がちょっと離れてるあの娘ね。あの娘の乳は、もろ俺の好みなんだぜ。

私の名はおもくそ。
映画DVD所持数、5。
エロDVD所持数、64。
豆知識
私の映画DVDの内訳は、『大日本人』『イデオン』×2『逆シャア』『F91』です。
ちなみに、松本人志関連のDVDはコンプリートしている。
松本と富野とエロが好きなのです。

2009年11月28日土曜日

狂戦士と錬金術師、ベルセルクとアルケミスト

ある日の夕方にTVをザッピングしてたら、巷で大人気の『鋼の錬金術師』がやっていた。面白いという話は聞いていたけど、少年漫画だし、天の邪鬼というわけではないですが「万人ウケする作品はそんなに面白くないんじゃないか」と思ってて、進んで手を出す気にはなれなかった。それに僕はハードな作品を好むので、『ゆるせない話』が放送自粛に追い込まれる程に視聴者がクソ五月蠅いこの時代において大人気獲得=ソフトな気がして、僕はそんなに好きにはなれないだろうな~と思っていた。

で、その日は暇だったのでちょっと観てたんですけど…あれ?面白そうじゃないですか。テーマはそこそこ重たそうじゃないですか。でも、たまたまその回だけがいいのかもしれないので、一応何度か観てみたり、ブックオフで立ち読みしたりして検討した結果、このたび原作漫画を全巻購入する運びとなりました。いや~やっぱり日本の漫画ってレベル高いですね。



この作品の素晴らしさは散々語り尽くされ倒しただろうし、そもそも僕はこういう作品を批評しうる文化レベルを持ち得ないので、ここでは特に語れる事など無いですが。
ストーリーと関係無いところで言えば、作中のギャグや単行本巻末のおまけ4コマ等を鑑みるに、この作者笑いのセンスも高くね?

ところで、「所々の設定とかがベルセルクに似てるな~」と思った。
ググって調べてみたら、同じ感想抱いた人も結構いるようで。



ちなみに僕が思いつく類似点は以下です。
  • 鋼の義手
  • 血の色をした究極アイテム(『ベヘリット』と『賢者の石』)
  • 『日蝕』の一大イベント
  • 魂とかが還る場所
    (「一なるところへ」「全てのものは一へと帰って行く」)
  • 『生贄』と『人柱』
  • 復讐に燃えるごつい男
  • ホムンクルスは使徒っぽいし(特にエンヴィー)
  • 髑髏の騎士は多分アルフォンスと同じ鎧魂男
  • 世界の仕組みを語るシーン
    ベルセルク24巻の「それが魔道です」
    ハガレン6巻の「それが錬金術」
  • サブタイトル間の挿絵の雰囲気(黒地に白文字な所とか)
他にも何かあったような気がしたけど、まぁこんなもんでしょうか。
ちなみにギャグセンスは『鋼の…』の圧勝ですが。

『鋼の…』の方の原作は既に終末に向かっているようで、何となくどういう終わり方するのか想像がつき、ちゃんと話纏まって終わりそうですけど、問題は『ベルセルク』。10年以上読んでいるけど、この作品の終わり方だけは全く想像つかん。ちゃんと考えているんですかね?大丈夫なのだろうか?
ちなみに僕の最終回予想ですが、何だかんだでハッピーエンド!って思ったらテレジアに復讐されてバッドエンド、というものです。過去に登場したキャラがひょっこり登場ってパターンが割とあるじゃないですか。

ていうか相変わらず休みすぎ!



『鋼の…』みたいなそこそこ重くてそこそこ残虐(僕はそんなに思わんが)な作品が受け入れられるのに、繰り返しになるけど『ゆるせない話』が何で自粛に追いやられてしまうんだ?分からん。
まぁカテゴリ全然違うので比較するのが間違ってるかもしれんが。

2009年11月22日日曜日

スードラの下のバリア、プログラマの下のコーダー

現在社会人4年目、27歳。今のところプログラマとしてのキャリアのみで、SE経験を中々積む事ができておらず、自分の行く末を非常に危惧している。以前からのオフショア化の波に加えて、昨今のクラウドやSaaSの台頭により、プログラミング以下の仕事すらどんどん減少していく状況である。エンドユーザーとの交渉スキル等、SE経験で得られるスキル無しでは生き残れないだろうから。

うちの会社、SEのパイは一応あるにはあるのだけど…少ない。プライム案件で直接エンドユーザと遣り取り可能なポジションであれば尚更(大抵は、プライムであってもお客さんの情報システム部までしか接触できない模様)。さらにその少ないパイは、どうも社員の大半を占めるおっさんCOBOLerに優先して割り振っているみたいなんだよな。実際、上期の中間面談で「枠は無い」って言われたし、同期や1~2年上の先輩の様子見てても難しそう…。周りを蹴落とすぐらいの力がお前に無いからだ!と言われれば返す言葉も無いですが…ただ、一つ言い訳させて貰いますと、

若い社員にSE枠を付与

あぶれたおっさんCOBOLerはプログラマ枠へ

しかしこの人達、年功序列制度のせいで現在高給

さらに、オープン系言語等の再教育コストがかかる。
てか基本的に勉強する気がない。

追加コストを払ってまで、高給取りを単価の安いPGとして働かせるのは利益率悪すぎ

SE枠はおっさんで

…多分、こういう事情もあるのだと思います。
他には、僕はプログラマとしては(うちの会社の中では)かなり生産性が高いので、お客さんやプライムベンダのペースに振り回されるSEとしてより、プログラマのままとしておいた方が全体最適だ、というのもあるかもしれない。

はい、前述の通り、僕はプログラマとしては(うちの会社の中では)いい仕事してきたんです。また、SEが作ってきた仕様・スケジュールに対し「このA機能を先に作った方が、かくかくしかじかで効率いいと思いますよ」とか「B機能の○○ロジックは規模がでかいので、1機能として切り出して分業させた方がよいのでは?」等、周りに比べたら積極的に発言してきた方だと自負していますし。「これでもまだ足りないのか?」「相当パイが少ないのか?」とずっと思い悩んでいた最中、最近ふと疑心暗鬼に取り憑かれた。
「できる人間だからこそ、SE経験積ませて貰えないのでは?」と。

というのは、僕が新人の頃の新人歓迎会にて、つまり歓迎されてた時「できる人間はすぐ辞めるんだよね~」と言われたからだ。新人研修での成績がズバ抜けていたらしく、また入社前にソフトウェア開発技術者資格を取得済みだったこともあり、『できる人間』と見なされたらしい。「何でうち(の会社)来たの!?」ってのもあったな。もうホント度肝抜かれましたよ。新人歓迎会でそんなこと言うか!?
つまり、僕が思うに「いつ辞めるかしれない『できる人間』に、貴重なSE経験を積ませるのは勿体ない」という考えが根底にあるのではないかと。
完全なる僕の思い込みであれば、それは本当に会社に対して申し訳ございません!って話ですが、でもそういう思い込みが発生してしまっている時点で、会社を信頼できていない事が浮き彫りに…

ということで、そろそろ転職を考えないといけないのかなと思い始めている。まぁ、この大不況にSE経験無しが飛び出した所で仕事なんて見つかるわけないだろうから、すぐには動くつもりはないですが。ただ準備だけはしておこうと、最近、これまでの技術経歴の棚卸しをしました。で、それによって発覚した驚愕の事実。

「俺、Java初級じゃねぇか!」

よくよく考えたら、仕事ではオブジェクト指向プログラミング(以下、OOP)した記憶が無く、手続型ロジックしか経験無いことに気付いたんですよ。で、Javaプログラマの初級・中級の定義を調べてみたら、わんくまの方がこう言っています。
「Javaはコーディングができるという初級者と、プログラミングができるという中級者の間に大きな壁があります」
「…クラスを利用できる初級者とクラスを作れる中級者・上級者との間の壁…」

どうやら、OO使ってクラス設計してない内は初級だと。Javaで手続き書いているだけなら初級だと。そういう内はプログラマではなくコーダーだと。
はい、僕、クラス設計したことなく、手続き書いているだけの、コーダーです…

この3年半、様々なJava案件を行ったり来たりしてきたのだが、殆どの案件が「プログラミング不要!」「OO不要!」を謳っている内製向け商用フレームワークを適用した案件だった。OOPの概念は無く、ただ手続きを羅列していくだけの作業。UMLとかの『クラス図』を見た事がないという事実が、OO使ってない事を物語っている。ていうか、FWに依存する画面系はともかくとして、共通部品くらいはOOで作ればいいものを、設計担当者が悉くOOを使おうとせず(そもそも分かってない?)。部品のロジックパターン毎にクラス分割して多態性使って呼出部品切り替えればいいところを、分割単位はメソッド、呼出切替はif文…

フレームワーク特有のスキルはかなり身についたが、スキルって言っても『可能・不可能なこと』『向き・不向きなこと』は何かとか、あとは設定パラメータをどれだけ知ってるかってなもんで、とてもスキルなんて言える代物じゃない。それに何より、マイナー(※1)。上司は「マイナーだから競合相手がいなくて良い!」って言ってたけど…単純に情けない話だと思うし、それに繰り返すが『内製向け』FWなので、お客さんも徐々に内製にシフトしており、確実に発注減ってきてますよ!今年夏の現場なんか、詳細設計すらやらせてもらえなかったんですけど!
※1:懇親会とかで聞いてみるんですけど、まあ知ってる人いませんね。唯1人知ってた方は「使いにくい!」って仰ってました…

実務経験   :3年半
経験言語   :Java 約3年 ※但しOOP、クラス設計、5.0以上の経験無し
他は.NET系を少々
フレームワーク:それどこの?

何てこった、俺、空っぽじゃねぇか。市場価値なんて無いに等しい。SEはおろか、プログラマですらなく…スードラの更に下に実はバリア(アンタッチャブル)という最下層階級がある事を知った時並の悲しみ、と言ったら大袈裟だけど…

果たして俺は這い上がれるのだろうか?



そんな俺にも、やっと中級者へのステップアップのチャンスが。今月仕事はピュアJavaによる計算ライブラリの基本設計~単体テスト。基本設計にはクラス設計も含まれている。バージョンも初めての5.0。よっしゃ!計算ロジックは5パターンあり、全パターンで共通のロジックもあるので、これは継承と多態性の使い処だ。計算パターン毎にパラメータが異なるので、それらはそれぞれBeanクラス作って…といった感じで、今月はいつになく張り切って楽しんでいます。

ただなぁ…プロジェクト規約でクラス名を『ABCDX(0~9の連番)』とIDみたいにしなきゃいけないんですけど、その『0~9の連番』ってあるように、クラス数10個以下に抑えないといけないっぽいんですよ。前述の通り、計算パターンで5あり、それぞれのパラメータ用のBean作ったらもう在庫切れちゃうんですけど…『規約』というより『制約』だなこりゃ。全く。制約があって燃えるのは恋愛だけだっつーの。
あと単純に、Beanのクラス名がIDみたいな名前だと、分かりにくいったらありゃしない。『囚人クラス』と呼んでますよ。

ちなみに、JUnitも初めて仕事で使いました。やっぱり再テスト時は物凄く便利ですね。心置きなくリファクタしまくれる。けど、テストコードは単体テスト仕様書とは見なされない…

2009年11月8日日曜日

『しんぼる』レビュー~TVでできない事やるのでは…

松本人志のラジオ『放送室』をしょっちゅう聴いている。mp3化してiPodに入れて、通勤中・ジョギング中に聴くのが主だ。聴いてたら顔がニヤついてきたり、場合によっては吹き出しそうになってしまい、近くのストレンジャーからストレンジに見なされる事がしばしば。『今の時代、気持ち悪がられている方が安全だ』というのが持論なので、僕にとっては一石二鳥。実際、電車でニヤついていると、僕の周りが少し空く事があり、『安全』とは違うが『得』。いや、周りが空く事により『痴漢冤罪の可能性が減る』って考えると『安全』に繋がるか。いやいや、ニヤついている奴なんて怪しすぎるから、むしろ間違えられる可能性高いだろ。

電車だけに話が脱線したが、先月また第1回から聞き始めた。番組が始まったのは2001年秋、アメリカのあのテロの余韻冷めやらぬ頃だ。『ごっつ』の秋スペが低視聴率だったといったような懐かしい話、現在の松本氏の状況考えると何か新鮮に聞こえる結婚トーク等、再び楽しんでいる。そんな感じで楽しんでいると、ある回で「TVでもう面白い事できない」から「VISUALBAMを再開する」と言っていた。あー確かにそんな事言ってたなー、ところで何で再開しなかったんだっけか?と思って回を進めていると、「映画撮ります。だからVISUALBAMは一先ず置いておく」、あーそうだっけか。つまり「TVではもうできないようなぶっ飛んだ事は映画でやる」って事ですね。

で現在、そんな事を言っていた氏も既に2作撮りましたが、当時の決意は果たして実現できたのか?・・・プチ信者の僕としては、正直どちらも物足りなかった。ぶっ飛んだレベルではない。実際、本人も「大分レベルを抑えた」とか「海外でも伝わるように台詞を抑えた」とか言って、思いっきり大衆向けに作っているような事言ってたし。それでも『大日本人』は普通に面白かったですけど。とは言っても、『面白い』というハードルは越えてはいるが、氏が今まで創ってきた多くの作品の中で特別上位に入るようなレベルではなかったというのが正直な感想ですが。純粋な『面白さ』で言えば、『HEY! ×3』の遠藤久美子とのトークの方が上だったりする。

では、この秋公開された『しんぼる』に関しては・・・という事で、ちょっと遅めのレビュー。
と言っても、そんなに文化レベル高くないので、大した事言えませんが。
尚、殆どTwitterの焼き回しです。
注:ネタバレあり。ていうかもう公開終了してるか?



正直、笑えるものではなかった。この世の仕組みをこんな風に捉える創造力は流石だと思ったが。

笑いの要素が転がっていたのは(僕の中では)『修行』パートのみなんですが、全てベタなんですよ。ドリフのコントみたいに(別にベタがいけないとかドリフが面白くないと言ってる訳ではない)。素人の僕でも笑いの展開が大体予想でき、実際予想通りになったことがしばしば(醤油の件とか)。ベタと言えば、氏が『放送室』で特に多用している『一周回った笑い』というのがありますが、そう捉える事も出来なかった。

『修行』パートの『しんぼる』押下時の現象、真っ先に頭に浮かんだのは『マイクロフィルム』。それが浮かんでしまってからは、ひたすら『出前一丁』が出てくるのか待ってる自分。帰宅してからググってみたら、みんな同じ感想を抱いたようで。他には、ドアに向かってダッシュの件は、雰囲気は確かに『引っ張る男』。まあそんな感慨を抱いたというだけ。

『実践』パート以降は何にも無かった。これ以降の『しんぼる』押下時の現象は、『お笑い共通一次』の理科の問題「アルコールランプで加熱したら」「ハムが飛ぶように売れた」みたいな感じで、現世に発露するんですけど、その現象が『首が伸びる』とか『火炎放射』とかいった感じで(悪い意味で)ぶっ飛んでいるんですよ。ここはベタな感じの方が良かったんじゃないかな?前述のハムのような。ど素人の僕が思いついたのだと、押す度に「メガ牛丼一丁!」。世界向けにするなら「メガマックプリーズ!」とか。
それと、このパートだと天使が大人じゃないですか。なんで、『しんぼる』も大人仕様にして、その上にモザイク被せるなんて演出はどうだろうか?なんて思った。『大日本人』の娘のように。



以上、やっぱり大した事書けなかったな。精進せねば。ちなみに世間の酷評とは裏腹に、僕の周りの客は結構笑ってた。前述の醤油や腰打ちの件とか。一番最初の絶叫(CMでもやってるあれ)のシーンで笑っているのは訳分からんかったが。

プチ信者としては、世界や大衆無視して、本当にぶっ飛んだものを創って欲しかった。キャシーのコントのようなものを。公開前のたけしとの対談でも「TVで面白い事出来ないから映画に逃げてきた」って言ってたのに・・・。でもそれだとスポンサーが金出さないんだろうな。これまた放送室で言っていた「この世のトラブルの原因の殆どは金」、トラブルの原因に限らず、何するにしても結局金か?

ゲームがファミリー・大衆向けになってきたのと同様、松本氏の笑いもそうなってしまうのだろうか(既になってる?)。正直、氏の場合は結婚しても子供産まれても路線変更のような事はまあ起こらないと思ってきたが、分からなくなってきた・・・。あぁ、人生の楽しみが・・・

ちなみに、就職前に僕は夢を描いていました。
『物凄く稼いで、松本人志のスポンサーになり、視聴率とか売上とか一切気にしない好き勝手な作品を創り続けてもらう』
という夢を。
そんな僕の現在の手取りは20万にも満たず・・・

(後記)
ずっと思っている事だが、ポップコーンやドリンクは無しだろ。ガサガサ音とかがとにかく鬱陶しい。あと携帯はバイブでもNGだっつーの。

2009年11月3日火曜日

システム開発アンチパターン~旧バージョンのロジックを残すな!

『旧バージョンのロジックを残す』とはどういう事か、まあ大体想像つくと思いますが、一応説明させて頂きますと『新ロジックの側にコメント化して残す』という事です。
僕の会社の例では、以下に示すような定数CONST_Aの値を変更する場合(言語はJava)、

従来のロジックはコメント化し、その上に修正ID・修正者・修正日付等の情報をこれまたコメントで追加し、旧ロジックの下に新ロジックを追加します。


修正前後の差分がソースコードだけで確認できるので一見良さ気です。そのソースコードの修正が絶対に1回までしか発生しないのであれば、これでも良いでしょう。でも現実はそんな訳ありません。長い間メンテして何回も修正されていくと、以下のようにカオス化し、ソースコードが見にくく(醜く)なっていきます。

例ではただの定数宣言部でしたが、計算等を行っているような業務ロジック部分が例のような状態になっていたらもう最悪です。現バージョンのコードが旧ロジックの中に埋もれてしまい、ロジックの流れを追ったりするのに非常に邪魔になります。今年夏に担当した、当エントリを書くきっかけとなったシステムでは、ソースの総行数7000行中旧ロジック3000行という超大作がありましたよ。そのままだと現バージョンのロジック追うのが大変だったので、コメント行の色を深紅のバラ色に変更して追いましたよ。そしたら目がチカチカして堪りませんでしたよ。

今時、Subversion等のバージョン管理ツールという非常に便利な無償ツール使えば、ソースの修正履歴・差分の確認行えるので、旧ロジックは残さず排除すべきです。さらにRedmine等のプロジェクト管理ツール(厳密にはBTS)とバージョン管理ツール連携させれば、修正要件との紐付けもバッチリです。

ちなみに、そのシステムはバージョン管理ツール導入してたんですけどね。2007年にCVSを(遅っ!しかもSVNじゃないのかよ!)。弊害しか生み出さないこんな運用を、何で未だに行っているのか分からない(実際、担当したプログラマは全員が「間違ってる!」と言ってたし)。恐らく『修正IDでgrepして修正箇所を一括確認したい』要するに『楽して確認したい』というのが理由ではないかと僕は予想してました。

4年以上もこんな運用してきて誰も改善してこなかったのが非常に悲しい。いや、改善提案してきたけど通らなかっただけか?とにかく、僕は上司に改善を申し入れました。すると以下のの答えが返ってきました。
「ピンポイントでそのロジックの修正者、修正日付、修正理由を調べたい」
つまり『ソースコードからの修正要件の逆引きがしたい』という事のようです。うーん、結局『楽して確認したい』って事ですよね。ソースコード見るだけで修正要件確認したいと。一々修正台帳やCVSのコミットログからトレースしたくねえよと。そりゃそちら側としては楽で良いかもしれませんが、その為だけにソースコードを醜くし、修正難易度を上げ、それにより修正工数・デグレ発生度アップし、品質低下させるなんて、馬鹿げている。そもそも『ソースコードからの逆引き』なんて、多分バグった時の責任追及時に行うのでしょうけど、そんな機会しょっちゅうあるもんなんですかね?

やっぱり結局は『修正IDでgrepして一括確認』したいのが本音のような気がする。でもこのやり方では修正コメントに修正ID含めるの忘れた場合、確認漏れが発生してしまいます。ていうか実際にありました。しかもその修正が原因でデグレ発生してやがんの・・・。結局、修正箇所の確認は一つ一つバージョン比較して行うしかないと思います。そして確認の際は、前述の様にデグレが発生していないかも確認するため、修正した部分だけでなくメソッド単位で確認すべきだと僕は思います。

ただ、このシステムの場合メソッドの行数が数百~千行だという・・・

2009年10月31日土曜日

仮面ライダー ブラック・アマゾン

ちょいちょいamazonアフィリエイト広告載せておきながら言うのも何ですが、Web通販は主に楽天を利用しています。amazonを選択しなかった理由は、数年前、注文した商品の発送を散々待たされた挙げ句、入荷不可能だからと勝手に注文キャンセルされたことがあったので。まあ有名な話ですが、当時の僕はこんなことが起こり得るとは知らなかったので、ま~腹立ちました。無いなら無いで早く連絡してくださいよ。でないと、別のお店で探すとか、次のアクションを起こせない。

そんなことがあったので僕は楽天に移りました。特に限定版商品は絶対amazonで購入しないようにしています。しかし、古い商品なんかはamazonの方が品揃え豊富なので、それでもちょくちょく利用しています。そんなこんなで、前述の出来事から数年経った今月・・・再来。まだやってんのか・・・
ちなみに注文の品は以下です↓



もう大分前に発売された商品です。正直僕も忘れてた。アニメ好きの方は表紙を見れば大体想像がつくでしょうが、これ発売されたのは確かまだ蝉が鳴いていた頃だったと思います。ちなみに僕の目当ては菅野よう子の対談。対談載ってるのを知ったのは発売してから結構経ってたんですけど、駄目もとで商品ページ覗くとまだ在庫あったんですよ。今思えば、商品の発送期間がやたら長いことに疑問を抱いて即キャンセルすべきだったな。まあとにかく中古で買います。

今回久しぶりにこんな目に遭って現状調べてみたんですけど、レビューに関しても黒い部分があるんですね。何ら問題の無い文章でもいつまで経っても掲載されなかったり、勝手に削除されたりと。レビューで言うと僕も幾つか書いてますが、僕の経験では5つ星評価のものは全て即掲載されてますね。4つ星以下だとヘルプの通り数日待たされますが。5つ星にしておいて「本当は1つ星です」的なレビューの場合は一体どうなるのだろうか?

↓僕がレビューを書いた商品

2009年10月10日土曜日

犬猿雉も、きびだんごをあげたから付き合ってくれた訳で・・・(後)

10/3(土) 第1回ExpressionTech.jp勉強会

Silverlight目当てで参加しました。Expressionは全く触った事ありませんが、「Expressionって何?な人から、Expressionに興味のある人、導入を検討している人を含め、すべてのExpressionユーザーを対象としています。」とあったので、懇親会も含めて気楽に参加登録しました。しかし・・・ここも猛者ばかりで、自分の持ち物の無さに凹むことに・・・



1つめのセッションは「ExpressionWeb 3を 選択するメリット」。前述の通り、Silverlight目当ての為、正直そんなに興味は無かったので、「ふーん」って感じでした(ごめんなさい・・・)。僕はデザイナではないので、Webオーサリングツールに必要な機能の程度は全く想像つきませんが、十分必要な機能は兼ね備えられているような気はしましたけど、実際の所どうなんでしょうね。ツールの使い勝手はすごい良さそうでした。流石Microsoftです。あと、ASP.NETとの連携という点はセールスポイントじゃないですかね。.aspxファイルって、Visual Studio以外からでは結構扱いが難しいということを聞いた事があるような無いような。個人的には、この点もデモして欲しかったです。

2つめは、僕の本命「Blend 3で設計するSilverlightアプリケーション」。デモで実際Silverlightアプリが出来ていく様子を見せてくれたんですけど・・・目茶苦茶面白そう。新機能等の詳細は、先人の方の情報が腐る程あると思うので割愛しますが、とにかく目茶苦茶欲しくなった。ただ一つ気掛かりな事があったんですよね。この日の何日か前に、Excpression 3パッケージ版のラインナップが発表されてましたが、Blend 3の単体が無い!Blend 2はあったのに・・・。僕はCreative Suite持っているので、1万円台のアップグレード版買えるから、冬のボーナスで買おうと思っていたのですが・・・。念のため質問してみましたけど、やっぱり出ないとの事・・・。うー・・・申し訳無いけれど、Blendはしばらくは評価版を使う事に決定。OSの再インストールを今年度に行う予定なので、それ前後に入れれば4ヶ月は使える。それ以降は、年末ジャンボの結果次第。或いは、プログラマらしく、Visual Studioでの開発に専念するかな。評価期限切れる頃、Visual Studio 2010リリースされてるかもしれないし。

3つめは「Expression Encoder 3」。これも申し訳無いですが「ふーん」でした(度々すみません)。ただ一番面白かったです。笑えるという意味で。僕、当勉強会の申込をGmailで行ってしまったので、Microsoft系の勉強会にこれはまずかったかなと思ってたのですが、全然大した事無かったですね。ホームページがiGoogleて。まあ勉強会用のネタで、実際は違うのかもしれませんが。

最後に質疑応答。前述の通り、僕はBlend 3の単体パッケージは出ないのか?という質問をさせていただきました。で、やっぱり出ないと・・・



そして懇親会。正直喋るのは苦手ではないと自負しているので、気楽に参加したのですが・・・冒頭で述べた通り、自分のレベルの低さに凹む結果となりました。技術・ビジネスに関する話についていけない&上手く喋れない。何人かの方と名刺交換させて頂いたのですが、取締役や主任クラスの方や、@ITや雑誌に記事を書いているような猛者・有名人多数。僕なんかとはもう格が違います。必然的に聞いてばかりになり、何も与えられず、「僕なんかと喋っていても面白くないのでは?」なんて思い始めてしまい、何か申し訳無い気持ちで一杯でした。僕なんかの相手をしてくださった方々、お時間取らせてすみません・・・。



「横のつながりを作りたい」そう思って、先月から勉強会・懇親会に参加し始めたのですが・・・ちょっと今後は懇親会出席が億劫になりそうです。与えられるものが無い今の状態では。某商用Javaフレームワークなら結構語れるのですけど、何分マイナーなもので・・・。



そんな感じで凹んでいる時に、こんな記事にたまたま遭遇しました。
「自分にも何かできないかと自答」
「『勉強会活動を盛り上げること』ぐらいはできるのではないか?」
「体験談を語ってハードルを低くする」
「『わたしみたいな半端な知識しかなくても参加できるんだぜ☆』
ということを多くの人に知ってもらえれば・・・」

・・・俺、ハードル上げちゃったかなぁ・・・(とさらに凹む)。

まあ兎に角、やるべき事ははっきりした。こういう場で周りの為になるような事を語れるだけの力をつけなくては。

犬猿雉も、きびだんごをあげたから付き合ってくれた訳で・・・(前)

前回エントリで書きかけた所で眠くなってきたので、後で書こうと一旦筆休めのつもりが既に1週間経過。というのも、これまた前回エントリで触れましたが、現在のプロジェクトが曲者でして、平日は書く暇が無かったもので・・・。という事で1週間以上前の話で全然タイムリーじゃないですが、最近勉強会行ってきました。FlexユーザーグループのFlex勉強会と、第1回ExpressionTech.jp勉強会です。どちらも凹んで帰ることになったのですが・・・

9/29(火) Flex勉強会第85回@東京

一つめのセッションは、「SDK for FeliCa」の紹介。えーと、「ふーん」としか言いようがありませんでした(すいません・・・)。というのも、僕の会社、組込・モバイル開発しておらず、Flex案件自体皆無なもんで・・・。まぁこれからはどうなるか分かりませんが。これ利用してどんなサービス作れるだろうかと考えてみたが、何にも思いつきませんでした。モバイル開発経験ゼロ&お財布携帯を使ったことが無いからだと思いたい・・・。

次は、某ERPベンダの「メタデータ中心開発」活動の紹介。データベース定義からFlexのソースコードを自動生成するツールを独自に開発し(AIR製)、それ使ってこんな感じで開発してますよ〜といったものでした。やっぱり、単純作業の自動化というのは必ず行き着く所ですね。このセッション聞いてて、僕の会社の手工業的な仕事の進め方が本当に嘆かわしく思われた。

例えば、ちょっと前にこんな事がありました。僕の会社では今まで、開発者の技術スキル情報をデータベース化していませんでした。なので、プロジェクトにアサインする人間を集める際、例えば「Javaフレームワーク○○の経験者」とか「ASP.NETの上級者」を探す場合、情報源は『口コミ』なんですよ(苦笑)。本当に呆れてしまいます。一応、これではあまりにも非効率で情報の正確性に欠けるので、データベース化しようという声は大分前から挙がっていたらしいのですが、中小のくせに大企業張りの腰の重さで中々実行に移されず。今年やっと重い腰を上げ、データベース化する事になりました。

そんなこんなで入れ物となるシステムを作り、次に全開発者から技術スキル情報を収集する為に、Excel形式の収集用ファイルが送られました。しかしこのファイル、体裁はある程度凝っておきながら、セルの入力規則とか、値をリストから選ばせるような工夫が全くされてなく、非常に入力が面倒。さらに、入力したデータをCSV形式等にエクスポートする機能も無し(ていうか、マクロ何にも使ってない)。なんで、システムへの登録は手作業で転記ですよ。恐らく今年の新入社員にやらせたんでしょうけど、不景気でなかったら、こんな事させてたら辞めてしまうぞ!ちなみに後日、こちらが提出したデータと、システムに登録したデータに誤りが無いか確認してくれと、システムが出力したファイルが送られてきました。「入力内容の確認は入力時に入力者が行ってくれよ!」「自動化してればこんな作業不要なのに・・・」と思いながら確認してみると、何と4割くらい間違ってる!バージョン間違いが特に多かった。



えー話を元に戻します。某ERPベンダが独自に作成したソースコード生成ツール。そのツールには、掲示板機能も搭載されていました。開発時の情報共有・意見交換の場として使っているのでしょう。いやホント、それらは大切ですよね。僕の会社、その文化も弱いです。情報共有に関しては、共有フォルダにExcelファイル置くだけ。共有対象は、コーディング規約等の必要事項に限定。技術ノウハウに関しては、質問&回答の遣り取りは口頭orメールベース。それらの情報の共有はおろか、個人的に文書化・蓄積する事すら殆ど行われなていない。なので、同じ質問を複数人からor何度も受けるという状況が発生するのは必至です。基本的に、納品物に含まれない物の作成や、ウォーターフォール開発に未定義の工程(ふりかえり等)はしたがらない文化なんですよ。は〜・・・

ちなみに、過去エントリ、そして当エントリと、愚痴ってばかりで周りの所為にして何にもしてないみたいですが、一応カイゼン活動行っています。直近で行った事は、Wikiサーバー構築の提案ですね。以前のエントリでも述べましたが、次にアサインされるプロジェクトでは、ちょっとマイナーなフレームワーク使用しているのですが、僕以外のメンバー5人は漏れなく未経験or低経験値。今年頭に、同じフレームワークを使用した、製造担当が一人のある小さなプロジェクトでは、製造担当は同じく未経験者だったのですが、その一人のフォローだけで一月当たり数十時間にも及びました。これ鑑みると、次のプロジェクトは単純計算×5ですから、このままのやり方では間違いなく、僕の作業時間ありません。そういう兆候もあるので、これを機会にWikiサーバーを構築して、技術ノウハウを共有・公開していきましょうと提案しましたよ。Excelより優れている点等ももちろん添えて。結果はNGでしたが・・・。「使い方を覚えるという手間を掛けてまで、Wiki化する必要性を感じない」とか言われたら、もうどうしようもないです・・・。使い方なんて、最初だけじゃん・・・。昔からのやり方・意識を変えさせるのは、本当に難しい。




また大脱線しました。とにかく、勉強会中そんな事思い出して嘆いて勝手に凹んでました。結局、Flexに興味はあるものの、Flex Builderの試用期限が切れて以来碌に触れていない身では、何も語れるものが無いです。そう言う理由もあり、懇親会は逃亡。もう80回以上も行われている勉強会なので、猛者だらけのような気もしましたし・・・。実際、MacBook持ち込んでマインドマップでメモ取ったり、Twitterでリアルタイムにつぶやいてたりといった、何か格が違う感じの方々がちらほら。プログラマになって4年目、いろんな現場でいろんな方々に会いましたが、あんな大人見た事ありません。ならば尚更出席して接触してみるべきなんでしょうけど・・・やっぱり僕なんかの相手に時間取らせるのは申し訳無いです・・・



第1回ExpressionTech.jp勉強会に関しては後半でお送りします。
まあ、当エントリと同じような締めですが・・・

2009年10月4日日曜日

僕歪週末号~凹&凹

小っちゃい人間です

前回のエントリで述べた通り、10月から自社に出戻り。
9月まで常駐してた某大手メーカーの勤務と比べて、
  • 昼休みが短い(60分→45分)
  • 昼食が不味い上に高い(平均300円→390円)
  • ネクタイ着用必須
  • 自席の後ろを人が通る度に椅子を引かなくてはならない
という現実にイラつく。
良くなった事と言えば、インターネット利用に関する規定が緩いので、昼休みにRSS消化を行えることくらいか。これで帰宅してからの自由時間が少しは増える。凸。

過去最悪の仕事環境

今月の仕事は、外部から隔離され、お客さんのネットワークに接続された高セキュリティブースで行う。ネット接続・外部記憶媒体使用禁止。という訳で、フリーツールの導入すら行えない。どうしても欲しい場合は、客先に常駐している自社SEに連絡すれば、こちらからもアクセスできる共有フォルダに置いてくれるので、一応手に入れることはできるのだが…とにかく面倒くさい。

ちなみに、プラットフォームはJSP・サーブレット。今更な感じだが、数年前に作ったシステムだから仕方が無い。ソースコードの中身を見てみると、数千行のメソッドあり、7階層ネスト・1ブロック数百行のif文あり、マジックナンバー満載…。クラス名は『ABCDX(0~9の連番)』みたいな機械的な名前だし(命名『囚人クラス』)。プログラマになって4年、いろんな企業のいろんなJavaのコードを見てきたが、「美しい!」ソースに出会った事は殆ど無い。ちなみに、「数千行のメソッド」等からお分かりだと思うが、我が社にテスト駆動開発やリファクタリング、コードレビューの文化は無い。

さらにしんどい事に、ローカルデバッグできない。APサーバーは商用の聞いた事の無いやつなのだが、開発版みたいなのが無いようで、開発端末で動かせない。ソースコードが前述の通りなので、ブレポで止めて確認できないのは滅茶苦茶きつい。

他には、作業指示を出してくる客先常駐の自社SEとのコミュニケーションが取りづらい。何と、電子メールアカウントが与えられていない。理由は、ファイル添付による情報漏洩を防止する為とのこと。これは流石にやりすぎじゃねぇのか?
伝達事項がある場合は、メッセンジャーか電話。それらでは伝えにくいようなものの場合は、FTPサーバー上にある「掲示板.txt」を利用。利用手順は、
  1. FTPサーバーに接続し、掲示板.txtをダウンロード
  2. ダウンロードしたファイルに伝達事項記入
  3. FTPサーバーにアップロード
すっげえ面倒。凹。

以上が今月の私の仕事です。10月は毎年厄介なプロジェクトですよ。そう言えば、アーナルーに異常が発生したのは去年の10月だったな。ちなみに、前述の通り4年間数多のJavaのシステムを見てきたが、今回初めて5.0に出会えたよ。それまでは1.4ばっか。

システム基盤を決定する際は、『ローカルデバッグできるかどうか』ということも考えた方がいいのかもしれないね(今回の例ではAPサーバーの選定)。
ていうか、プログラミングを勉強し直せっつーの。1メソッドは100行前後!マジックナンバーは定数化!
※オブジェクト指向プログラミングでは100行でも多いけどね。一般的には20行程度だけっか?

やっぱり俺は雑魚だった

今週は2つの勉強会に行ってきた。FlexユーザーグループのFlex勉強会と、第1回ExpressionTech.jp勉強会。はいそうです、僕はRIAに非常に興味があります。

感想とかですが、何か異常に眠たくなってきたので、後日追記します。
結論を言うと、両方共、自分の技術者としてのレベルの低さに落ち込んだ結果となりました…。凹凹。

2009年9月26日土曜日

僕歪週末号~僕と悪魔と交通費と朝の星

黒い悪魔、再び

黒い悪魔、3匹目現る。もはや人の手には負えないと判断し、化学の力を借りる事を決意。ということでコンバットを買いに行った。化学は人の力だよ。
売り場に直行して陳列棚の前に立つ。結構減っていた。人類の逃れられない宿命を感じた。

ところで、やかんで湯を沸かす際、ふと思ってしまった。悪魔が中にいたら最悪だなと。もうこれ以降、使用する際は毎回中身をチェックせずにはいられない…。あー面倒くせえ。

↓こちらは黒い剣士。今巻では出番全く無いですが。


献血帰りに車にはねられ、出血多量で死ぬタイプ

定額給付金の申請を放置していたら、役所から申請書が再び送られてきた。政権変わったし、何より役所のやる事だから「督促」や「回収」とは逆の性質を持った給付金に関してはフェードアウトされるかと思いきや、珍しく一生懸命な事で。


でも、折角送ってくれたのに申し訳ありませんが、申請するつもりはありません。つまらない意地ですが、やっぱりこの制度は認めたくないので。
そんな僕ですが、この連休中に通勤定期の期限が切れていたのに気付かず、連休明け初日に自腹切る事になったしまった時、「2食分が…」とマジでヘコんだとさ。

モーニングスター・プログラマ

1つ前の段落にてマジでヘコんだ僕ですが、神風が吹いた(※1)。
※1:「良い事が起こった」と同義。別にタカ派ではありません。むしろチキン。

10月の勤務先は自社に変更となったので、定期更新は不要で、今月の残りは立替精算でとの事。よっしゃ!2食分が返ってくる!(右手は握り拳、肘は鋭角)

それはそれで良かったのだが、相変わらず自社からの連絡が遅い。10月まで1週間切ってから言う事か?危うく、月跨ぎのスケジュールを組むところだった。そして、10月の詳細も全く不明。何をするのか、10月からいつまでなのか…。以前にどっかのエントリでも書いたが、11月以降に割と大きめのプロジェクトが現在の常駐先で控えているはずだが。

まぁとにかく、今月一杯は途中下車できねぇな。(だったら給付金貰っとけ!)

↓ちなみにモーニングスター。何が言いたいかというと、「振り回されています」

2009年9月22日火曜日

VS Active Directory

過去のエントリで何度か触れている「.NET Framework 3.5」のプロジェクト。
このプロジェクト、.NETに関する深いノウハウを持ったメンバーがいませんでした(僕も然り)。その低レベルさときたら、以前に書いたインストーラの依存DLLに関するエントリが示すように、危うくライセンス違反を犯してしまう程ですが、もう1個、呆れてしまうようなものがあったのを最近思い出しました。その時の教訓です。

既存のWindows Server上にシステムを追加する場合、Active Directoryを利用しているかどうかを確認しておくこと

もうね、低レベルすぎて笑っちゃいます。ホントすいません。



プロジェクトの概要は、既存のWindows Server 2003環境に、新たにC/S型のシステムを追加するというもの。プラットフォームは「.NET Framework 3.5」。クライアントアプリは「Visual Basic 2008」のWindowsフォームアプリで、データベースは「SQL Server 2008」。

実行環境のセットアップは僕が行う事になった。SQLServerのセットアップを、設定手順をメモしながら進めていく。すると、認証モードの設定の所にきた。「Windows認証モード」か、「混合モード」か。この辺は有名な話だし、昔.NETのお勉強で自宅にSQLServerの無償版インストールしたことがあったので、それぞれの意味や、MicrosoftはWindows認証を推奨している事等、僕はちゃんと把握していた。C/S型の場合、Active Directoryを使用しているのであれば、Windows認証を選択すべきという事も。
と言う訳で、顧客との窓口であるSEに聞いてみる。渡されたプロジェクト概要資料には、現在のサーバー環境のOS・利用アプリ等の情報があるが、Active Directoryの利用の有無が記載されていなかったので(この時点で駄目だよな・・・)。

僕「SQLServerの認証モードですけど、『Windows認証』か『SQLServer認証』か、どっちにします?」
SE「どう違うの?」
僕「(うわっ、ご存じないのか・・・)『Windows認証』というのは、・・(解説)・・という訳で、Active Directory利用しているなら、Windows認証の方がアカウント管理が楽ですし、セキュリティ的にも安心です。」
SE「Active Directoryの話は無かったから、『SQLServer認証』でいいよ」

「話は無かったから」てことなので、この遣り取りだけでは、利用の有無はハッキリしない。この時、ちゃんと確認を依頼しなかったのは僕の不覚・・・。ただ、顧客との打ち合わせには、.NET案件の経験が豊富なマネージャが一応同席していたので、その辺はちゃんと確認済で、「利用してれば明記する。してなければ明記しない。」というスタンスの資料なのかな?なんて結論づけてしまい、追求を止めてしまった・・・。ったく、無いなら無いで明記しなきゃいけないよな。クライアントアプリのコード・設定にも絡んでくるような事だから。

ちなみに実際はどうだったかであるが、「不覚」とか言ってることからもお分かりですね、実際はActive Directory利用されてました。発覚したのは、製造フェーズが7割程完了した時期。発覚の仕方がまた低レベルだった。このシステムではクライアントからReporting Servicesにアクセスするので、アクセスの際にサーバーのURL(IPアドレス)が必要になる。このURLはDBの環境変数テーブルに格納することにしたのだが、顧客環境と当社開発環境ではIPアドレス体系が全く異なるので、同一の値を設定することができなかった。これでは、納品時にIPアドレスの変更作業が生じる(別に大した作業では無いですが、納品作業を行うのは初めてだったので、少しでもリスクを減らしたかった・・・)。ところで、もし顧客環境のサーバーにDNSドメイン名が割り振られているのであれば、URLはドメイン表記で登録しておき、IPアドレスの違いは開発端末上のhostsファイルで吸収してあげることによって、納品時の変更作業が不要になる。僕はその旨をSEに伝え、DNSドメイン名の有無の確認を依頼した。・・・数日後、確認したとのメールが送られてきた。添付ファイルを開くと、「システムのプロパティ」ダイアログのハードコピーが。・・・すいません、これDNSドメインじゃなくて、Active Directoryドメインなんですけど!

添付ファイルのイメージ

※ちなみに、この程度の確認事項の返事に数日かかっているのは、SEが別の炎上プロジェクトに拉致されてしまったからです。こちらに帰ってくるのは、1~2週間に1回。実質、SE不在・・・

欲しい情報は手に入らないわ、前提条件が違うわ、踏んだり蹴ったり。アプリの方は、前述のSEとの会話があったので、SQLServer認証を行う形で実装してしまっている。しかし、DBアクセスに関しては、アクセスできなくなる訳ではないので、このままでも一応問題は無い。app.configにパスワードが丸見えだったり、管理するアカウントが増えたり、何より「最適」でない作りがエンジニアとして非常に歯痒いが・・・

それでも、Windows認証に変更する事で、SQLServerやReporting Servicesの設定・運用が楽になるので、SE宛に、Windows認証使用する方向に変更するかどうか・変更した際の長短所・追加作業等を記載したメールを送信。結果、返事無し。もう、知らんぞ!(この時もっと粘らなかった事も不覚・・・)。そしてこれが結局仇となった。

Reporting Servicesの設定で問題発生。発覚したのは納品作業中。恐らく、20代で一番焦った。
Active Directoryを使用してないという話だったので、Windowsサーバー上にReporting Servicesアクセス用のローカルアカウントを作成し、それで基本認証を行う作りとしていた。ところが納品時、Windowsサーバー上にアクセス用アカウントを作成しようとしたところで、手が止まった。ローカルユーザーを作成できない!そう、この時の僕は(というかプロジェクトメンバー全員が)、ドメインコントローラ上には、ローカルアカウントは作成できないことを知らなかった。焦りで手の平に汗が噴き出てきた。僕の作業の監視役を務めていたもう一人は「取り敢えずドメインアカウントを作って進めてみたら」と言うが、こういう時僕は妙に慎重になりすぎてしまう。頭を抱えて考える。仮にWindows認証の設定にした場合、正常に動くのか?いや、動かないと思う。VBのコードは基本認証用のクラス(NetworkCredential)を使ってしまっているから。どうする?どうする?・・・

結局、作成する予定だったローカルアカウントと同じ名称のドメインアカウントを作ってみたら正常に動いたので、「顧客に頭を下げて徹夜作業」という最悪の事態は回避できた。しかし、「ドメインアカウントで基本認証」という、何とも不細工なシステムとなってしまった。

2009年9月20日日曜日

[フリーソフト]かざぐるマウス~Windowsエクスプローラにマウスジェスチャ機能を

WindowsでファイルをGUI操作するためのアプリである「エクスプローラ」。
仕事でWindows使用していると、階層化されたフォルダを行ったり来たりすることがよくあります。この時、ブラウザでもお馴染みの「進む」「戻る」ボタンを多用することになるのですが、カーソルをわざわざボタン上まで持って行くのが非常に煩わしい。ボタンがたくさん搭載された多機能マウスが使用できれば楽ちんなのですが、マウス交換がNGの職場ではどうしようもありません。

では、ハードが駄目ならソフトは無いか?例えば、Firefox等に搭載されているマウスジェスチャ機能をエクスプローラ上で実現できるツールは無いのか?探してみたら、ありました。結構前からあったみたいですが、知らんかった・・・ IEでも使えるのは嬉しいですね。現在の仕事はIE6向けのWebアプリなので(はぁ~・・・)。
あとGoogle Chromeにも使えます。残念ながらSafariは未対応の模様。
詳細な解説は、別の方が書いたここを参照してください。

ちなみにこのソフト、マウスジェスチャ以外にもいろいろと便利な機能があります。個人的なお気に入りは、『シェル操作』や『ウィンドウ』タブで設定できる以下の機能です。
  • スタートボタン上のホイール回転ですべて最小化/元に戻す
  • タスクボタン上のホイール回転で最小化/元に戻す
  • ホイール回転でファイルの表示方法を切り替える
  • タブコントロールをホイール回転で切り替える
僕はWindowsはVista使っているのですが(殆どMacですが…)、こいつのお節介機能でファイル表示方法が勝手に切り替わってしまうので、3番目のファイル表示方法切替機能は重宝してます。
他には、『タスクバーのボタンをドラッグで並び替える』機能なんてのがありますが、ウィンドウをたくさんオープンしたがる人には便利かも。

念のため述べておきますが、マウスジェスチャの使い方は、右ボタンを押しながらマウスを動かすんですよ。マウスジェスチャ未経験者に結構聞かれたことがあり、またヘルプに明記されていないようなので、念のため。

2009年9月19日土曜日

我が社における、Flex VS Silverlight の行方

今週はFlexの勉強会行ってきました。勉強会という名目のものは初体験。
@IT勉強会「FlexとJava研究会」

僕がFlexに興味を持ったきっかけですが、原点は「Flash職人への憧れ」。お洒落で格好いいなぁ~という単純なものです。そんな中、何かのIT系雑誌で紹介されていた「UIにFlashを採用したFX取引システム」の記事を読んで、「Flashが使えるプログラマ」というのもアリだなと思い、学割が使える間に「Flash 8」を購入しました(確かその頃AdobeがMacromediaを買収)。で、結構やる気あったんですけど、Visual Basicというぬるま湯に浸っていた身にはやや取っ付き難く、また社会人の忙しさを甘く見ていたこともあり勉強する時間を十分に確保できず(他にもやりたい事は一杯あるし)。仕事で使う機会があれば良かったんだけど、Flash使うようなコンシューマー向けの案件はそもそも皆無。他にはお絵かき能力の低さとかもあり、結局フェードアウト。嗚呼、宝の持ち腐れ・・・

そんな僕の前に「Flex Builder」なる物が現れたら、そりゃ食いつかない訳が無い。ファーストコンタクトは2年前くらいだろうか、体験版をダウンロードし(当時はバージョン2)、同梱されてたサンプル(確か「携帯電話販売サイト」「フォトビューワ」..etc)を動かして、その美しさに感動したのを覚えています。これを生業にしたいと本気で思った。が、社会人経験を積んで多少は仕事の現実を知った立場として、やっぱり開発事例や情報がそんなに無い技術に投資するのはリスクが高いな~なんて思ったもので、深入りはしませんでした。でも動向はちゃんと追って、上司には定期的に提言することくらいはやって行こうと。

ColdFusionみたいに開発用無償版があれば、個人的に勉強・研究してたと思うんですけどね。SDKだけで頑張れって話ですが、とにかくIDEというぬるま湯に浸っていたもので・・・。そう言う訳で僕のFlex経験は、Flex Builderの体験版が使えた計60日程度です(当然、毎日触れていた訳では無いので、さらに短い)。

そしてファーストコンタクトから約2年、時代はRIA化の流れへ。Flexの開発事例や情報は大分増えたし、開発ノウハウはAIRに流用できるので、そろそろ本気で取り組もうかなと。その一環として、当勉強会に参加した次第です。Flexのキャリアは上記の通り殆ど無いので、実装レベルの技術的な話にはついていけないだろうけど、同じ興味・志を持つ方々との人脈が築けたら良いなと。

以下、レポートというか感想です。



やっぱり出た、VS Silverlight に関する質問。この手の記事は何度か読んだ事があったので、まぁ予想通りの回答でした。ただ、一点だけ目から鱗というか、盲点だったので成る程な~と思った回答がありました。Adobeのデザインツールとの連携のし易さという点(つまり、デザイナさんとの連携)。Webサイトの80%だか90%はDreamweaverで作成されているという話なので、これは大きなアドバンテージでしょうね。

他には、ASコードとJavaコードのデバッグ連携。Flex Builderはeclipseプラグイン版を選択した方がいいのかなと思いました。ていうか、そもそもスタンドアロン版のFlex Builderとeclipseのデバッグ連携できるのか?くそ、質問タイムではそこまで考えが及ばなかった・・・

質問しておきたかった事はもう一点。話が戻りますが、Silverlightに対する優位性として、Flash Playerが既に98%のPCにインストール済みということに関して。その98%という数字は、果たしてバージョン8以下を除外したものなのか。Flexの言語である「Action Script 3」は、Flash Player 9以上でないと動作しない。ブラウザにおいては、IE6のシェアが未だに20%を超えているという現実もあるし(リンク先記事はちと古いですが・・・)。
もしバージョン8以下も含めた数字であれば、僕が質問(というよりお願い)した「Flash Playerの自動更新チェック間隔が長すぎるので何とかして!」という事は、本当に何とかすべきでしょう。
※ちなみにチェック間隔のカスタマイズ法はこちら

で、質問できなかったので自分で調べてみたら、Adobeご自身がシェアを公開してました。これによると、今年6月の時点でバージョン9は98.8%、バージョン10は86.8%との事。であれば大丈夫ですね。ただし、バージョン10でしか使用できない機能(3Dエフェクト等)を調子に乗って実装してしまうと、12%のユーザーは利用できなくなってしまいますね・・・



ちなみに、僕個人としては、Flex VS Silverlight はハッキリ言ってどうでもいいです。僕は暫くは両方を追っていくつもりです。空気悪くなるかもしれなかったので黙ってましたが、10月にはSilverlightの勉強会に出席予定。まぁいつかはどっちかに絞ることになるかもしれませんが。

ちなみに、僕の会社でこれから扱っていくとなると、Silverlightの方が優勢。というのは、前述したFlexの優位点(プラグインインストール不要、デザイナとの連携)なんですけど、僕の会社ではECサイト等のコンシューマー向けシステムの案件は皆無なので、ぶっちゃけ決め手にはならないんですよ。デザイナが絡んだ仕事なんて聞いた事ありません。そうなるとスキル習得や開発ツールの導入コストが一番の決め手になってくるのですが、Microsoft文化の会社だし(VBメイン。JavaソースもVSSで管理しようとする)、MS公式の無償開発環境もあるので、多分Silverlightに軍配が上がります。

とにかく、僕は両方追っていこうと思っています。



ちなみに会場はAdobeの会議室だったのですが、いい椅子使ってました。現在の僕の職場の椅子は、ガス昇降式ですらない・・・

ターンじゃないAガンダム

2009年9月13日日曜日

リアルタイマーにはなれない

以前のエントリでも書きましたが、Twitter始めました。とにかく投稿の敷居が低いので、割と更新できてるかなと思っていましたが、他の方と見比べると全然ですね。皆さん、本当につぶやいており、膨大。それも結構昼夜問わず。僕の場合、利用は帰宅後自宅のPCで気が向いた時にしか行わないので、もしその時間帯以外に「友だち」につぶやかれたとしたら、プロフィールに書いてある通りリアルタイムに反応できません。携帯使ってまで利用したいとは(今のところ)思いません。要するに、全然使いこなせていません。

そもそも、移動中にまでネット接続したいとは思わないんですよね。まず、歩いている場合ですが、携帯見ながらは単純に危険だし、移動速度ダウンしてしまいます。そういう場合は1秒でも早く到着するよう、移動に徹したいです。電車の中など動かない領域では、iPodさえあれば十分事足りる。第一、満員電車で携帯や雑誌やゲーム機掲げて余分にスペース確保してたり、掲げた物の先っちょが背中やら腕、酷い時には頭に当たっているのに全く引っ込めようとしない輩は死んだらいいと思っている感覚の持ち主なので、iPodくらいしか選択肢が無い。

そう言う訳で、僕の中でのTwitterの位置づけは、リアルタイムコラボツールでは無く、単なるミニブログとなっています。ブログに書くまでもないような事を記録しておくにはうってつけですね(このブログのクオリティも大したことないですが・・・)。或いは、後でブログで書く事のメモ書きとか。でも、僕のブログの場合、この通り愚痴が大半を締めているので、メモ書きに使ってると向こうも同じような事になってしまいそう・・・。でも本来、Twitterの方が愚痴るのには向いてそうだな。

一時期iPhoneがすげー欲しくて本気でキャリア乗り替えようかと思った時期があったのですが、上記の通り使いこなす機会が無さそうなので却下しました。でもデザインはホント格好いいんだよな。あと携帯とiPodを一つにできるから荷物減るし。

2009年9月12日土曜日

おもくそゆるせない話

松本人志も「たま~にヒット打ちよる」と絶賛する番組『探偵!ナイトスクープ』。
東京ではMXで金曜23:30から放送してるのですが、録画していたTV番組やDVDを見ようとDVDレコーダーを立ち上げ、立ち上がるまでの間(東芝の第1号モデルなので1分程かかる)のザッピングでふと立ち止まり、そのまま見入ってしまうという事がたまにあります。昨日はまさにそうでした。依頼内容は、54歳男性の「乳首が感じすぎて車のシートベルトが締められないので何とかして!」といったものでした。くだらなすぎて笑った。

この番組の好きな所は、『くだらなさ』もさることながら、『シンプルな演出』ですね。具体的に言うと、テロップやナレーションを殆ど使わないこと。はいそうです、僕には昨今のテロップ多用は馴染めません。正直うざったいです。あの『ガキの使い』ですら、いつの間にかそれらが当たり前に使用されている現実には本当にガッカリです。90年代の頃はいい感じだったのに・・・。

ちょっと前までは『すべらない話』『ゆるせない話』が健闘してたんですけど、『○○な話』としてレギュラー化されてからは『ゆるせない話』も堕ちてしまいました。第3回目以降の「あと何秒」なんていらねぇよ!その他の話も、常に四隅に何か出ている・・・

ちなみに、番組がテロップ等多用しだし始める事を、僕は『めちゃイケ化』と呼んでいます。この流れは『めちゃイケ』以降に頻繁に見受けられるようになった気がするので。

2009年9月6日日曜日

システム開発アンチパターン~メソッドのパラメータに配列使うな!

この秋の情報処理技術者試験ですが、「システムアーキテクト」試験を受験します。論文書かなきゃいけないので、ネタ探しにこれまで携わったプロジェクトに関しての個人メモを見返しました。えっと、1年目から愚痴ってるなぁ~(悲)。一部紹介しますと
  • 「ながら」仕事をする。音楽聞きながら、メッセンジャーしながら、2ch見ながら・・・。そういうことしながら仕事するギークがいるらしいが、それとは訳が違う。だって低品質だもの。
  • 残業時、夕食に出かけて1時間半近く戻ってこない。しかし我が社の勤怠制度では、休憩時間は見なしで固定45分(残業時は+30分)であり、5時間休憩しても休憩無しでもその時間で固定。当然、1時間以上夕食してても、その間の残業代はきっちり支払われる。ふざけんな!
  • 今時(当時2006年)、オープン系システムの開発&デバッグ端末でメモリ512MBってどういうこと?
  • 共通部品で「すべて置換」されたせいでデグレ発生。
...etc。
また殆どのプロジェクトにおいて、エビデンスの見てくれに無駄に手間を掛けさせることへの不満や、他人のソースコードの低品質に対する悪態をついています。今従事しているプロジェクトで苛つかされてるのと全く同じ嘆きもあり。

ちなみに、現在のプロジェクトのシステムは別の会社が作ったものであり、僕の会社作ではないです。余所でも同じ事をしているということは、結構やってしまいがちな事なのかな。であれば、同じ過ちを繰り返させないためにも、過ちによる悲しみを増やさない為にも、ここで一部ご紹介します。アンチパターン(やってはいけないこと)として。

メソッドのパラメータ数が多いからといって、パラメータにHashtableやString[]を使用してはいけない

※これはオブジェクト指向言語に関してです。
商品情報をDBに登録するメソッドがあり、登録値をパラメータとして渡すのですが、それの作りが以下のようになっていました。ちなみに言語はJavaです。

もうね、訳が分かりません。何番目に何が入っているかなんて分かりません。せめてインデックスを定数化しておけと。いや、そう言う問題じゃない。配列で渡しては駄目(ArrayList等も同様)。この他によく使われるのがHashtableなのですが、これも良くない。存在しないキーでget()しても、コンパイルエラーも実行時エラーも発生しないので。
折角オブジェクト指向言語使っているんだから、クラスの形で渡しましょう。これならメソッド名見ただけで何の値か分かる。


return値に関しても同様です。要するに、値の受け渡しにはクラスを使いましょうということです。

以上、超弩級低レベルな話でした。
もう一つどうしても紹介しておきたいことがあるのですが、それはまた別の機会に。

2009年9月5日土曜日

つぶやき痔ろう

こんなこというのはBloggerに失礼かも知れないですけど、本当は「はてなダイアリー」でブログ書きたかったんですよ。技術者多いですし。何でこっちに来たかというと、しょうもない拘りかもしれませんが、「omokuso」アカウントが使用済みで取得できなかったからです。Googleではそのアカウント取得できてたので、じゃあBloggerで書くかとなったのですが、その前に、はてなの「omokuso」さんを調べてみることにしました。だってもし超人気ブロガーだったら、同じハンドル使う訳にはいかないですからね。で、調べた所、3ヶ月で放置モード突入の模様。アカウント譲って!

ところで、最近話題の(ていうかスタンダード?)の「Twitter」。正直、サービス内容聞いた時の感想は「しょうもな!」であり、何が面白いのか理解できませんでした。しかし、ブログなんかは同じく昔は「しょうもな!」と思っていたにも拘わらず、こうして書いている。また、もっと古いのだと「携帯メール」なんかもそうで、今では欠かせないものとなっている。他にはmixiなんかもそうで、絶対流行らないと思っていたが、現実は皆さんご存じの通り(単に俺の見る目が無いだけか?)。ということで、Twitterに関してもこの先どうなるか分かったもんではないので、「omokuso」アカウント押さえておこうとユーザー登録してみました。まあ当ブログの更新だって覚束ないし、使うのはまだまだ先になるだろうけど。

とは言うものの、折角登録したことだし、使う気ないのにアカウント押さえていたのでは、第1段落の僕と同じ悲しみを誰かに与えてしまう事になり申し訳ないので、ちょっと使ってみました。…えっと、意外にいいですね。何か気楽で。成る程流行るわけだ。ということで、あっという間にレギュラー化決定。今月からちょくちょくIT勉強会に顔出す予定なので、名刺等に記載するのはTwitterにして、当ブログは愚痴・考察・技術メモに徹することにします。


このブログも愚痴さえなければ名刺に載せたいのですけどね。自分で書いときながらですけど。リアルでの飲み会とかで愚痴るのは周りの人間に悪いので、ブログで愚痴っている訳です。愚痴をこぼさずに済む人生なんてあり得ないから、はき出す場は絶対必要ですし。はき出さないで内に溜めてたら、うつ病にもなりかねなません。正直、自分では絶対精神を病まない自信があるのですが、同じく絶対病まないだろうと思われていた人が、把握している限りでも今年だけで3人病んでしまったので(2人休職、1人は一時失踪の末に退職…)、この先どうなるか分かったもんじゃない。

しかも、今年の後半は、プロジェクトがデスマーチ化する可能性大。僕の会社は基本設計フェーズから参加し、7月中に基本設計完了、8月製造開始で12月リリースのスケジュールなんですけど、9月現在になっても上流会社担当の要件定義が未完了。つまり、現時点で約3ヶ月遅れている状態です。12月リリースを延ばしてもらえなければ、死ぬ。アーナルーだけでなく、普通に口から血を吐く事になるかもしれない…。幸か不幸か、僕は今までデスマーチの経験が無いので(勤続3年半にして、一月の最大残業時間は40時間。それも1回だけ)、乗り越えられるかどうか非常に不安。

さらに、製造・単体テストフェーズは約240人日と見積もってあり、6名×2ヶ月(40人日)の内訳で進める予定なんですが、現時点でアサインできてるのが僕含めて4人。単に製造フェーズの開始日が確定していないからなのか、Java使える人間が余っていないのか不明ですが、取り敢えず足りてません。ただでさえ人数が足りていないのに、アサイン済みのメンバーは、当プロジェクトで使用するフレームワークの経験が碌に無い人間ばかり…。それ以前に、単純にプログラミングスキルが低い人間がちらほら。一例を挙げると、5年目にして数百行に及ぶIfブロックを平気で書くようなレベルです。

リリース日が延長されることを祈って…

2009年8月30日日曜日

最近読んだ@IT~常駐者のフリーダム

以下、てんじゃ氏のコメントの抜粋
・与えられたテストの仕事をきっちりこなしてください。
・余った時間で、テスト環境の効率化について考えてください。
--手作業でしてる作業を自動化できないか?
--テストの情報を管理するツールは必要ないか?
・余った時間で、テスト支援用の小物ツールを作る。

僕の会社は客先常駐派遣がメインです。今までに何カ所かに派遣され、キャリアの半分以上の期間、常駐作業をしてきました(現在もまさにそう)。
そんな常駐作業で共通して言えることの一つに、「『余った時間』を作れない!」というのがあります。
頑張って仕事してスケジュールを前倒ししたとしても、当初のスケジュールに無い作業を勝手にぶち込まれるんです(今年の6月にも似たような事が発生)。しかも、その作業というのは、契約したプロジェクトの作業に限らず、別の会社が担当している全然関係無いプロジェクトの作業も多々ありました(最近はさすがに無いけど)。一度、客先の営業か総務かが使っているExcelファイルのデータ入力といった、完全なる事務作業をやらされたこともありましたよ。

「いろいろな経験を積むことができるので、良い勉強になる」と最初はプラスで考えてましたが、時を経るにつれ、正直「いいように使い回されている」感が大きくなっていきました。それに「いろいろな経験」と言ったところで、使ってるフレームワークはどのプロジェクトも一緒だし、プログラマで契約してるから基本設計にはタッチできないし、高パフォーマンス発揮しても単価はプログラマ一律で上がらないし(SEで契約してもらうしか方法は無い)、しかも、僕の会社が特定派遣事業の届け出する前だから委任契約だった筈だけど、直接指示されてたし・・・
※ちなみに、ある客先では『レンジャー部隊』って呼ばれてました。呼んだ後「一人なのに」とツッコむのがお決まり。

以上より、もし僕が冒頭のリンク先記事の方の立場に立ったとして、引用のアドバイスを実施しようとしても、まあ無理です。テスト自動化ツールの作成等、間接的に作業効率の向上につながるようなことであったとしても。余程説得力のある資料や話術でもって、定量的効果を示すことでも出来ない限り。で、結局資料作る時間が無いという・・・

したがって、残された唯一の方法は、スケジュール前倒しして早めに完了させた上で、「完了してないです」と嘘の進捗報告をし、そうして確保した時間を使って、こそこそと内職するしかない。まぁこれも、プロセス監視してる所ではアウトですけど。前述の『レンジャー部隊』の客先では、プロパー社員が定期的に見回りしてディスプレイ覗いてくるし(信用されてねぇー・・・)
そしてそれ以前に、因果応報を座右の銘としている僕としては、このような嘘をつくのは気が引けてしまうので、不向き。そして、もし「本当に?」といった感じで突っ込まれた場合、平然としていられる自信が無い。

現在の僕は、さらに広い因果応報の考えでもって、「自分の『余った時間』を犠牲にして他の人手伝っているのだから、その内言い事あるさ」と頑張っている次第です。
※別に仏教徒ではないです

2009年8月29日土曜日

最近読んだ@IT~新入社員のメリ&ハリ

今年、新入社員研修のVisual Basic教育にサブ講師として参加した。といっても、教育カリキュラムの策定には参加していないが。

会社としては数年ぶりに新入社員の人数が2桁ということもあり、1人くらいは「自作ツール公開してます」「Linuxカーネル読んだことあります」レベルがいるかなと少し期待していたが、さすがにおらず。それくらいのレベルの人間は、やっぱり大手or有名処ベンチャーに行っちゃうのかな?
全体的なレベルとしては、Integer型変数に実数や文字列セットしているロジックを指差し「エラーの原因と直し方が分かりません」質問してくる人間が10数名中数名いるという状態。VBの前にC言語教育行っているので、変数の型については教育済みの筈なのだが・・・この10数名中数名という割合、業界一般的にはどうなんですかね?多い?少ない?

ところで、上記の質問を受けて思ったことがある。「ちょっとは予習しようという気にはならなかったのかな?」と。これは僕が新入社員の頃に、同じく10数名中数名いた、前述の新人と同レベルの同期を見た時にも思ったことだ。

SE・プログラマ職の募集要項には、大抵「文系理系不問」「プログラミング経験不問」を掲げている。実際、入社前の経験有無で仕事の品質・スピードに差が出るのは、最初の半年~1年程度だと思う。という訳で、未経験者も遠慮せずにどんどんWelcomeである。ただ、入社を決めたなら、「未経験者でもきっちり教育しますので大丈夫です!」といくら謳ってはいるものの、これからプログラマとして働いていく訳なんだからさ、ちょっとは入社前に手を出してくれてもいいのにと思うんです。完全に受け身にならないでよと。
まあ見方を変えればメリハリがある人間だと言えるので、配属後もそれを遺憾なく発揮して、勤務中はしっかり仕事をしてくれればそれで良いのだが。

あと、
言語などの場合は演習を入れます。演習もただ、考えて作るだけでは面白くないので、お題を出して作成してもらい、何人かの人にそれを発表してもらいます。それを材料に全員で良い部分、悪い部分などを討論します。ここで気づいたと思いますが、これはソースコードレビューです。
コードの発表と討論。これはすごく必要だと思う。ちなみに我が社の研修では、行っていません・・・
ソースコードの添削はもちろん行っているが、フィードバックするのは基本的に作った本人にだけ(もちろん、多数が共通して躓いてる箇所があった場合等は、ちゃんと全員に向けてフィードバックするが)。また、理想的なソースコードの紹介・配布等も無し。

時間的な制約があるので、討論まで行うのは難しいかもしれないが、せめてサンプルソースの配布は行うべきだと思った次第であった。
※上記の事、実は自分が新人の頃に、研修完了報告書で指摘したんですけどね・・・

2009年8月27日木曜日

しんぐる

松本人志第二弾監督作品「しんぼる」であるが、コラボやらグッズが盛り上がっているようで。知らない間にあのパジャマが発売されてるし。プリンスホテルとのコラボはびっくりしましたよ。
詳細情報へのリンクは以下サイトが網羅しています。特にさんまや鶴瓶との番組共演は必見。

ちなみに僕は、以前のエントリでも述べていますが、好きなのは飽くまで作品や生き様であって、グッズにはそんなに興味沸かないんですよ。テンション上がったのは以下くらいでしょうか。

厳密にはグッズではなくDVDのおまけ

したがって、僕がプチ松本信者であることを認識している周りの皆様方、わざわざ知らせてくれなくて結構です。

そんな僕なんですが、一つだけ、心を動かされたグッズがありました。
ハローキティーのぬいぐるみです。公式サイトによると、完全受注生産で9月12日より受け付け開始とのこと。お値段6500円也。ちなみに僕、『僕』という一人称が示す通り、♂です。

いや、別に♂でぬいぐるみが好きだというのは全然いいじゃんと思ってますよ。車やジーパンが好きなのと別に変わらないと思う。
ただ僕の場合は、ぬいぐるみ買うことなんてあり得ないと思っていたので、自分でもびっくりしている。どうやら、長いことシングルな生活が続いているためか、ちょっと寂しさに参ってきてる模様。同じくあり得ないと思っていた『占い』にも、ちょっと行ってみたいなと思い始めている今日この頃。

こんな調子が続くと、最高にあり得ないと思っている『ドラッグ』とか『カルト宗教』といったものにも、そのうち手を出してしまうのだろうか?
こうして人は堕ちていくのだろうか?
いかん、気を強く持たねば。

2009年8月23日日曜日

AIRとPILESの積集合

今週は、Adobe AIRのセミナーに行ってきました。情報元は、ご存じIT勉強会カレンダーです。管理人様、ありがとうございます。

勉強会ではなくセミナーという名目なので、双方向バリバリという形のものではありませんでしたが。ただ、能動的にこういうイベントに参加したのは初めてだったので、取り敢えず新鮮でした。

印象に残ったこととして、講師がとにかくイキイキしていたこと。まぁ、仕事なんだから当たり前っちゃあ当たり前ですが(どんよりしたインストラクタなんかに仕事来ないよね)。とにかく、仕事が楽しくて楽しくてしょうがないって感じでした。やりたいこと・好きなことを仕事にできているようで。正直、あんなに楽しそうな社会人は久しぶりに見ましたよ。僕の会社は、何年か前に辞めた先輩が言うには「客先常駐すれば良く分かるよ。俺らの会社が如何に『なあなあ』で、『どんより』しているかが」ような会社ですので(僕は正直「どんより」は感じませんが。というより緊張感が無い。悪い意味で)。講師は実際、「楽しい!」を連発してましたね。「AIRは楽しい!」と。

その「楽しい!」という言葉が、僕の心の琴線に触れました。
元々、僕がプログラマを、IT技術者を志したのは、学生時代にあるきっかけで触れたプログラミングがとても「楽しい!」かったからではなかったかと。
その「楽しい!」ことを仕事にできれば、どんなに素晴らしいことかと。
そしてプログラマとして仕事をしている現在、実際「楽しい!」か?と。
正直、圧倒的に「楽しくない」仕事の方が多い。もちろん、自分の好きな・望んだ仕事ばかりに従事できるとは思ってはいませんし、自分なりに楽しくしようと頑張っているつもりではありますが・・・
具体的に述べると、実務に就いて約3年2ヶ月中、「楽しい!」かった期間は約5ヶ月間です。これって、多い?少ない?

そんな事を考え出してしまい、結局、沈んだ気持ちで帰路に就くことになってしまいました。
ただ、あの時の「楽しい!」という初心を思い出せたのは良かったなあと。
今後もいろいろと積極的に参加していきたいなあと思った次第です。


セミナー最後の講師への質問タイム。やっぱりこういうイベントに来る方達はやる気があるようで、挙げ手数多でした。折角なんで、僕も質問してみました。
「Flex Builderみたいな開発ツールで、フリーのものってないんですか?」
・・・すみません。実は僕、知っていました。Aptana StudioFlashDevelopの存在を。
ただ、セミナーで紹介されていたのは「Flex Builder」「Flash」「Dreamweaver」だけだったので、この質問をすることにより、講師の口から上記開発ツールの名前が出ることによって、他の方達の一助になればこれ幸いと思い。
しかし、返ってきた答えは
「僕の知る限りは、無いですね」
あれっ!?俺、勘違いしてたか?いや、勘違いではなさそうだが・・・
それとも、「GUIエディタが付属しているもの」と捉えられたのかな?


AIRのロゴに関して(以下)

ものすごいどうでも良い(且つ下品)な話になるが、こいつが今週の俺のアーナルーそっくり(詳細はこちら)。レッドカラーだし。
「アドビ」という発音も、
「ア(ーナルーから血)ドバーッ!」と聞こえなくもない。聞こえないけど。
ひょっとしたら、俺はAIR開発に従事するべきかもしれないという、ちょっと運命的なものを感じた。感じてないけど。

ところでさっきから「アーナルー」って何だって話ですが、そのままでは放送コードに引っかかる気がしたのと、やっぱりその単語を使うと思い出して「キィーッ!!」となってしまうので、ちょっとオードリー風にデフォルメしただけの話です。
ちなみに、オードリーと言えば「トゥース!」ですが、あの指の感じが、僕の中に入ってきた肛門科医のおっさんの指を思い起こさせ、結局「キィーッ!!」となってしまったというのはここだけの話です。まさに墓穴を掘った結果となりました。

2009年8月22日土曜日

赤い太陽、黒い悪魔

過去のエントリでも何度が触れている、私の肛門事情。
この度、お盆明けの仕事始めの3日間において、月一の女の子状態であった。
しかも、今回はレベルが違う。私が産み落としたものが、便器奥の「たまり」に至るまでに辿ったと思われるルートに、赤いラインが描かれている。恐る恐る、我が太陽に紙を当てがってみると、チキンナゲットのケチャップかと見紛うものが。
今年の正月といい、疲れやストレスとは無縁(という訳では無いが)でリフレッシュ済の連休明けなのに、何でこうなるんだ?賞味期限を1週間過ぎた卵を絡めたチャーハンか?
以前も述べたが、「加熱すれば何でも食える」が私の料理哲学である。

とにかく、再びおっさんに指突っ込まれてきます・・・


時を同じくしての出来事。
ついに黒い悪魔が我が家に出現。こちらは2日連続、計2匹。
この部屋に引っ越してきて約3年半。最後に戦ってから、約4年ぶりのバトルである。以前住んでいたアパートは、毎年2桁出現するような物件であったので、対戦経験は豊富な筈なのだが、どうしても慣れることができない。怖じ気づいてしまう。
幸い、生まれて間もないためか、大きさは小さく、さらに動きも遅かったので、「かみのつるぎ」で簡単に倒すことができた。レベルは上がらなかった。

・・・ん?「生まれて間もないためか・・・」って、全然「幸い」じゃねぇよ!俺の部屋で生まれてるんじゃねぇか!運転免許証の「本籍」欄が俺の部屋の住所ってことだろ!?寅さんやらせたら「私、生まれも育ちも」の後に俺の部屋の住所言うってことだろ!?

手取り1○万にも拘わらず、家賃9.1万の部屋に住もうと決心させた要素の一つが、「黒い悪魔」との遭遇を少しでも抑えたいというものであった。隙間だらけの木造アパートに比べれば、気密性の高い鉄筋コンクリート造りのマンションの方が、遭遇確率は低いだろうと(以前のアパートでは、壁と床の間等、隙間だらけで、最終的にそこに逃げられてた)。まぁ実際、3年半で2匹という実績なので、十分願いは叶えられたのだが、完全に逃れることはやはり不可能なのだろうか・・・

ゴキブリだけに後記

  • テーマの区切りにいつも使用している「*」を見て、イラッとした。
  • 黒い悪魔(以下、「奴ら」)に関して、ウィキペディアの「対処法:直接攻撃」の記事がちょっと面白かったので、リンク張っときます:直接攻撃
  • 奴らへの攻撃のベストな力加減が未だに見いだせない。今回も、「フローリングで良かった~」と感慨にふける結果となった。
  • 奴らに関する松本人志の名言を紹介:「俺は、一人暮らしがしたいんや」

2009年8月12日水曜日

200ccとか400ccとか言ってないで、全部抜いてしまえ

献血に行ってきた。お盆だから空いているかと思いきや、普通のいつもの土日並。みなさんも僕と同じく、不景気で旅行行ったりする余裕無いんですかね?

ちなみに、今回で74回目。18歳の頃から、1~3ヶ月に1回のペースで通って約9年。27歳でこの回数は多い方なのだろうか。ちなみに、以下の写真は、今年の春に70回達成記念として赤十字より頂いたものです。


花挿しなのかコップなのかオブジェなのか、よく分からん

献血を始めた動機ですが、完全に「見返り」を期待してのことです。ホントすいません、弱い人間なんです!
といっても、僕の場合、ハーゲンダッツのアイスでもなく、ミスドのドーナッツでもなく、図書券でもなく(何年か前に廃止されましたが)、
「善いことしたから、何か善いことあれ」
という、抽象的なものですが。要するに因果応報です。

というのも、低いユーモア力、低い運動神経、天然ハゲ・・・といったコンプレックスにより、決して楽しいとは言えない学生生活を送ってきたものでして。もちろん、克服しようと自分なりに努力はしてきましたが、簡単に克服できるのであれば、「引きこもり」なんて存在は生まれません。自分の力でどうしようもならなければ、もう神頼みしかないと考えてしまうのは、当然の成り行きです。

そんな感じで献血(それ以外にもいくつかのボランティア)を始めて数年、現在の生活は楽しいか?御利益によるものかどうかは分かりませんが、まあ、人並みくらいには上昇してます。・・・ううむ、本当に人並みか?正直、収入の人並み以下だしな。「地味で人から心配されないが、意外に厄介な症状」ってのも幾つか抱えているし。
  • 飛蚊症:もう、青空を爽やかに眺めることはできない
  • 尿漏れ:何故か中学の時から
  • イボ痔:まあこれはポピュラーですが
  • 入れ歯宣告:「このままだと30代で総入れ歯」。要するに歯周病。ちゃんと磨いてるんだけど。年々歯間ブラシの通りがよくなってる。
  • 皮膚炎:僕の背中は、ある意味ヤクザのそれより怖い。
・・・別に不幸自慢している訳ではありませんが。ただ、自分としては日頃の行いは善い方だと自負しているので、ちょっと納得いかないなと。それとも、皆さん平均的にこれくらい何か抱えているものなんですかね?やっぱり見返りを期待してるのがいけないのか?正直、無欲の境地に達するのは、僕のような凡俗には無理です。


ちなみに、前述のコンプレックスは、環境・時間が解決してくれました。

高校卒業すれば、体育の授業・強制参加のスポーツ大会等は基本的に無いので、運動神経を気にすることはないです。

天然ハゲに関しては・・・社会人になれば、ハゲは周りに一杯いるので、あまり気にならなくなります。とは言っても、もちろんそのような人達は大抵中年世代以降で、僕の周りでは20代では皆無ですが・・・。尚、学生時代の生活は真っ黒です。頭部には黒さが足りないというのに。よっぽど何か秀でているもの持ってないと、青春時代は辛いですね。今「秀でている」と入力した際、ハゲの漢字「禿」に似ている事にイラッとしました。

最後にユーモア力。これ、ある程度鍛えられます。僕の場合、テレビのバラエティー・お笑い番組を片っ端から見て、笑いが起こった箇所の前後をノートに書いて「何で面白いのか?」を考える。そうこうしてる内に、幾つかの「笑いのパターン」のようなものが見えてきて意識下に蓄積されてきたので(もちろんパターン化できないものもありますが)、過去の滑ってしまったシチュエーションにおいて、そのパターンを使ってこう返してたら・・・という風にイメトレ。もちろんリアルの世界でも実践。そんな事繰り返してたら、いつのまにか人並み程度には喋れるくらいになっていました。まあ、さすがに紳助や松本人志並になるには才能が無いと無理でしょうが、一般社会で人並みにやっていく程度には、誰しも身につけることができるのではないかと思った次第です。
ちなみに、松本人志のプチ信者になったのはこの頃です。この時いろいろな芸人を片っ端から見ていた時に、他の芸人との格の違いを認識し、夢中になり始めて現在に至ります。


最初の方で述べている通り、献血したら見返りがあります。まず、ドリンク飲み放題、お菓子食べ放題。それらに加えて、成分献血(400もだっけか?)を行った場合は、さらに以下の特典が(献血ルームによりますが)
  • ロッテリアのハンバーガー
  • ハーゲンダッツアイスクリーム
  • ミスドのドーナッツ
  • ケーキもあったような・・・
なんですよ。ところで注意点というかルールというか怒りなんですが、成分献血の追加特典って、選べるのは1種類且つ1個だけですからね。よくブログの写真や実際の献血ルームで見かける、2種類以上・2個以上持ってってる輩。あれ、ルール違反ですからね。ああいうのを見ると、200ccとか400ccとか言わずに全部抜き取ってしまえと思う。いつか見た渋谷献血ルームでの献血者インタビューや、ブログの記事を見ていると、どうも「暇つぶし」や「くつろぎ」目的の人間が増えてきてる気がする。僕はとても心配です。
というのは、献血するにはいくつかの条件をクリアしなければならないのです。詳細は以下参照。
3日以内に歯科治療してたり、ピアスの穴開けてたり(場所によって1ヶ月~一生献血禁止)、海外渡航歴あったり(これも場合によっては1ヶ月~一生×)、そういった場合は献血できません。新宿献血ルームではハンバーガー貰えるからといって、歌舞伎町からヘルス帰りに寄ろうぜなんて以ての外です。心配というのは、ああいうくつろぎ目当てで軽い気持ちで来ている奴らは、ちゃんと正直に守っているのか?という事。下手すりゃ、人の命に関わることですからね。
確かに年々献血者が減っているとはいえ、あんまり持て成しすぎるのも・・・これでいいのか赤十字?

2009年8月9日日曜日

無適凡人 アフター5

キーボード購入してからちょうど3週間が経過しました。リンク先のエントリで述べている通り、結構でかくて置き場所に困ったので、結局専用スタンドも購入しました。



この3週間の練習の成果は以下の通り。
  • きらきら星
  • ちょうちょう
  • 聖者の行進
  • くるみ割り人形 ※前半のみ
  • プレリュード第7番イ長調Op.28-7 ※最初の1フレーズ(太田胃散のあれです。「イ長」と「胃腸」をかけてるんだとさ)
う~ん、3週間でこれだけって、遅いよな。まぁ3週間と言っても、毎日練習できていた訳では無く、大体2~3日に1回で、1回当たり30~60分であるが。でも小中学校の頃の音楽の授業なんかでは、楽器の飲み込みは結構早い方だったし、リコーダーなんて誰よりも美しく「トゥートゥー音」奏でてたんで、もっとスムーズにいくと思っていたのだが。「二十歳過ぎればただの人」とはよく言ったものだ(元々「神童」「天才」とか言われたことないっつーの)。

何が難しいかというと、やっぱり「左右の手を異なるテンポで動かす」時ですね。片一方にもう片一方がしょっちゅうつられてしまいます。PCのキーボードと決定的に異なるのは、左右同時押しが盛りだくさんという点でしょう。PCでの文字入力なんかはリニアですからね(Shiftキーの同時押しなんてたかがしれてる)。情報工学的に言うと「シングルタスク」と「マルチタスク」の違いですね。

ちなみに、キーボードを始めたことで、脳の今まで使ったことの無かった部分が活性化してきているのか、気持ち、日常での頭の回転が速くなってきている気が。最初の2~3日は頭が冴えて中々眠れませんでした。

やる気はあるし楽しいし、本当はもっと練習時間をとりたいのだけど、何か時間無いんだよな。この不景気で毎日定時帰りにも拘わらず。普段、定時で引き揚げてどこにも寄り道せず帰宅し、誰とも遊ばない場合のタイムテーブルは、大体以下のような感じです。
19:00 帰宅
 ~  着替え、夕食、休憩
20:00
 ~  RSS消化、ブックマーク記事再読
21:30
 ~  自慰行為
22:00
 ~  筋トレ・柔軟等
22:15
 ~  風呂
22:45
 ~  自由時間
00:30 就寝
ご覧の通り、自由時間が2時間足らずなんですよ。この2時間で読書、音楽・映像作品鑑賞、勉強も行わなくてはならない訳です。キーボードだけに毎日費やせやしません。前述の通り、定時ダッシュ1人ぼっちの場合でこれですので、寄り道したり遊んだりした場合などはさらに減ります。

何か削れそうなものは無いだろうか。一番時間掛かっているのは「RSS消化」ですが。以前は昼休みに一部消化できてたので、こんなに時間掛かってなかったのですけどね。今の職場では業務上必要な場合以外のネット閲覧が禁止(非常に良くないですね。知識が広がらない)なので、こんなに増えちゃったんですよ。さらに、前日に遊んだりして消化しきれなかった場合なんかは持ち越し分もありますので、どうしたってこれくらい掛かってしまいます。
次掛かっているのが「着替え、夕食、休憩」か。う~ん、準備・後片付けもあるので、これ以上の短縮は無理。さらに、何日か毎に洗濯の時間も必要だし。
「風呂」。男で30分は長い方なのだろうか?僕の場合、新品Yシャツの襟が1日で黒ずむ程の脂性なので、人より入念に洗わないとすっきりしない。また、気兼ねなく『しんぼる』丸出しにできるこの至福の時、考え事しながらゆったりしたい。ということで、30分くらいは掛けたい。無理。
「筋トレ・柔軟等」。元々15分しかとっていないので、無理。
「自慰行為」。無理。むしろ、足りない。

2009年8月5日水曜日

Flash更新ダイアログに逢いたくて

ちと古い話になりますが、Flash PlayerとAIRのアップデートが公開されてましたね。

ニコニコ動画やYouTubeでもお馴染みのFlashですが、普通にネットサーフィンしていれば、まぁ1日1回は必ず遭遇します。
RIA(リッチインターネットアプリケーション)の話題で良く出る「Flash VS Silverlight」といったテーマで、Flash派が必ずと言っていい程押してくる「全世界の98%のPCにインストール済み(改めてインストールする手間要らず)」という意見が、普及率の高さを物語っています。

そんな彼ですが、意外とセキュリティ・ホールが多く、割と頻繁にアップデートされています。特に怖いのが、Webページを見ただけでウイルスに感染してしまうというものです。「GENOウイルス」とか呼ばれてますね。怖い怖い。
※Flashに限ったことではありませんが


ところで皆さん、Flash Playerのアップデート通知を見たことがありますか?僕はありません。上記リンク先のブログやニュースをチェックして、毎回手動でアップデートしています。
そもそもアップデート通知機能は付いているのでしょうか?さすがにそれは付いています。98%のPCにインストールされているようなものですから。ただ、アップデートが提供されているかをチェックしにいく間隔が、デフォルト値で「30日」という、信じられない値となっているんです。ウイルス対策ソフトのウイルス定義ファイルが1日に何度も更新されるこの時代に。
出会いのチャンスは30日に1度…前述の通り、毎回手動アップデートしている僕にとっては、アップデート通知に出会うことは、あの子を口説き落とすことよりも困難です。

ということで、一度は通知ダイアログに出会ってみたいという貴方の為に、本日は自動更新間隔のカスタマイズ法を紹介したいと思います。まぁこれって超有名な話なので、ググればわんさか見つかりますが。

1.グローバル通知設定パネル

ブラウザで以下のリンク先を開いてください。ちなみに私、これ知りませんでした。


右から3番目のタブを選択すると、以下のような表示に切り替わり、通知間隔の設定が行えます。ご覧の通り、ここでの限界は7日間です。まだまだ甘いですね。


2.「mms.cfg」ファイルの作成

Windwosの場合、Windowsフォルダ配下のSystem32\Macromed\Flashフォルダに「mms.cfg」というファイルを作成します。ファイルの文字コードは「UTF-8」か「Unicode」を指定してください。


ファイルの中身ですが、以下のパラメータを記述してください。
AutoUpdateDisable = 0
AutoUpdateInterval = 0

パラメータの意味するところは以下の通りです。
  • AutoUpdateDisable
    ・・・自動更新チェックを行うか否か(0:行う, 1:行わない)
  • AutoUpdateInterval
    ・・・チェック間隔(0未満の数値:デフォルト(30日), 0:Flash Player起動時, 0より大きい数値:その数値の日数)
ということなので、AutoUpdateDisableは0とし、AutoUpdateIntervalは0か1としておけば、いつの日にかきっと二人は出会えるでしょう。

※現在のFlash Playerのバージョンを知りたい場合は、以下ページで確認できます。

2009年7月30日木曜日

お使いの携帯端末ではご利用いただけません

~都市鉱山~
都市鉱山(としこうざん、英語:urban mine)とは、都市でゴミとして大量に廃棄される家電製品などの中に存在する有用な資源(レアメタルなど)を鉱山に見立てたものである。
日本の都市鉱山に存在する金の総量は6,800トンで、これは全世界の現有埋蔵量の約16%にあたる。・・・日本の都市鉱山には全世界埋蔵量の一割を超える金属が多数存在する。

何度も述べていますが、僕は菅野よう子が大好きです。当然、今年4月に発売された「CMよう子2」も予約して購入しました。で、その中にCMよう子特設サイトオープンのお知らせ冊子が入っていました。何でも着うたもGETできるとか。早速、QRコードを翳して訪れてみました。すると、僕を待ち構えていたものは、

「お使いの携帯端末ではsynclのサービスをご利用いただけません」

という現実でした(泣)。
ま、まあでも、僕の好みでは、CMよう子シリーズには目茶苦茶いい!!最高!!って曲は正直無かったので(大好きな方々すみません…)、まぁ別にいいか…ていうか、これだけの為に、まだ使える携帯を買い替えるなんて、そんなこと菅野さんは望んでいない!みたいな妄想理屈繰り広げたりして、泣く泣く諦めました。
※一旦は買い替えを決断したんですけどね。もう3年使ってるし写真粗いし。で、ショップに行ってみてビックリする訳です。携帯ってこんなに高かったっけか!?
ちなみに僕の着うたは「inner universe」っす。攻殻のサントラで初めて聞いた2003年以来6年以上、Myオリコンランキングで不動の1位です。


そして月日は流れ7月7日。ファンなら言わずと知れたあの日です。そこで購入したパンフレットを見て、初めて「ハイヒールジニー」の存在を知る訳です。携帯で閲覧できないのは前述の通りなので、PCで情報調べてみると、「222個限定」なんていう、認めたくない情報が。さらに調べてみると、PCで表示した特設サイト入り口からは辿れない、実際の商品ページを発見。当然、在庫なんて残ってません(大泣)

うーん…でもまぁ、ただのグッズですからね。限定CDとかだったらそりゃ躊躇せず貯金はたいて携帯買い替えるところですが。僕が好きなのは、あくまで彼女の作品ですから。音楽ですから。
…まぁグッズも作品といえば作品ですが。それに前段の僕は少し嘘をついている。好きなのは作品だけでなく、人間性とか生き方とかもだ。やっぱり欲しかったよ…


分野は変わって、僕がリスペクトするもう一人の天才、松本人志。
そんな彼の第二弾監督作品「しんぼる」
先日、ファミリーマートで前売り券を購入しました。何でも、前売り券購入特典として、前売り券に記載されているIDナンバーを入力して遊べる「しんぼるスロット」で遊ぶと、「デジタルおまけ」をGETできるとか。公式サイトのQRコードを携帯に翳して訪れます。すると、僕を待ち構えていたものは、

「しんぼるスロット」はFLASH対応機種のみのサービスになります。

ま、またかよ…
でも今回は、代替手段として「しんぼるおみくじ」というのが用意されていました。親切親切。早速遊んで、表示されたダウンロードリンクをポチっと押してみました。すると、またしても「対応していません」的なメッセージが…(一度接続切ったら二度と表示されなくなったので、正確なメッセージ忘れた)

まぁ、松本人志の方に関しては、芸人という職業柄か、グッズとかおまけとかの類は本当にどうでもいいから、そんなに残念では無かったですが。恐らくただの待ち受けFLASHとかのレベルだろうし。放送室CDのおまけレベルのものであれば話は別ですが。

ただなぁ…携帯を大事に使っているだけなのに、上記のような目にあって損するわ、周囲のバカに「古っ!!」とか言われるわ…
あっ、これって、今現在でも大事に「Windows 98」搭載PC使ってる人が味わっているのと同じような感覚なのかな?ひょっとしたら、僕が某電器屋でアルバイトをしていた頃、「(Windows)98なんて使ってないで、最新モデルに替えましょうよ!最近のすごい速いですよ!」というような事を言ってきたことの報いか?

2009年7月28日火曜日

下降するのはエレベータだけではない

エレベーターマナーの常識・非常識


08:00 at 自宅マンション

玄関を出て扉を閉める。すると、ちょうどエレベータが到着して扉の開く音が。
鍵を閉め、小走りでエレベータへと向かう。
そこで見たものは、中に男を抱いたエレベータ、閉じゆく扉。

12:05 at 某ビジネスビル

本日は所用で都内の某ビジネスビルを訪問。計5棟から成る、大変立派なビルだ。昼休み、エレベータに乗り込む。一番手だ。多くの者が続いて乗り込んでくるので、最初に乗り込んだ私は「開」ボタンを押下する。全員乗り込んだ所で、「閉」ボタンを押下。エレベータは満杯だ。全員、目的階は1F。
1Fに到着する。操作パネルの前にいるのは、当然最初に乗り込んだ私だ。「開」ボタンを押下する。満杯の空間から、人が次々と降りてゆく、降りてゆく、降りてゆく…
私以外の全員が降りた所で、私もようやく降りる。そしてふと気付く。
誰一人、「すいません」はおろか、会釈すら無かったと。

16:35 at 某ビジネスビル

その日の作業は完了。ビルを出ようと、エレベータに乗り込む。今回は、1人だ。1Fへ。
1Fに到着する。扉が開く。年配のキャリアウーマン然とした淑女が立っている。
私はエレベータを降り…られなかった。そのババアは、私が降りようとしていることを認識しながら、乗り込んできた。



えー本日のエントリも完全なる愚痴です。さらに本日は「やっかみ」も加わります。

僕の住んでるマンションって家賃9万オーバーなんですよ。ちなみに僕手取りは20万にも満たず、家賃で手取りの半分以上を持って行かれます。ホント毎月が火の車です。
一般的には、家賃の目安は手取り収入の約3分の1と言われていますから、僕と同じマンションの住人は月々約27万は手にしていると思われます。ということは、僕より10万近く多く稼いでいると思われます。明らかに後から人が乗り込もうとしているのに、待たずに扉を閉めてしまうような人間が、僕より10万近く多く稼いでいると思われる訳です。

昼間のビルもそうです。それはもう立派な立派なビルでした。そんな所に居を構えることができるのは、当然上場企業な訳です。そんな所で働いているビジネスパーソン、手取りが20万に満たないなんてことは無いでしょう。会釈なんてしなくても、僕より稼いでいるのでしょう。

この程度の気遣いというかマナーを持ちえない人間が、果たして平均以上の収入を得る程、仕事できるんでしょうか?大抵の仕事で「お客様の気持ちになって考える」ということが重要(というか仕事に限らずそもそも『必須』)だと思いますが、「エレベータで『開』押している人間の気持ちを考える」ことができない人間に、お客様の気持ちを推し量って満足させることなんてできるのか?それとも、お客の前ではものすごい気遣い屋へと変貌を遂げるのだろうか?

僕の人生のバイブルは、手塚治虫氏の「火の鳥」です。
その作中で繰り返し現れる「因果応報」という概念。
良い行いをすれば良い報いがあり、悪い行いをすれば悪い報いがある。
僕はそれを信じて、今まで頑張ってきたし、これからも頑張っていきます。
アホ呼ばわりされながらも、音楽CD、映画のDVD、さらにはエロDVDも、違法コピーなんてせず、真面目に購入しています。「省エネ」なんて言葉が一般的になる前から(ガキの頃から)電気のムダ使いはしてないし、ゴミの分別だって…
「温暖化とCO2の因果関係ははっきりしていない」とか「分別しても実は無意味」なんて詭弁です。



…いかん、やっぱり火の鳥のくだりいらんかった。グダグダだ。何か教訓めいたことが言えそうな気がしたのだが…
別にそこまでムカムカしてはいないですが。耐性は並です。このくらいのレベルのことなんて、悲しいけれど日常的にあることですし。ただ、1日にエレベータ関連だけで3つもというのはちょっと珍しかったので、今日の出来事を大袈裟に嘆いてみました。

2009年7月26日日曜日

[.NET]EXEと依存DLLは同じフォルダに配置せよ+ライセンス違反に注意!

久しぶりに技術ネタを。といっても非常に低レベルですが。
Visual Studioのセットアッププロジェクトにて、.NETアプリのインストーラを作成した時の話。

そのアプリではLineShapeやReportViewerコントロールを使用していたので、依存DLLとしてVisualBasicPowerPacksやReportViewer関連のDLL等がくっついてきました。こいつらEXEと同じ位置に配置されるのですが、結構数が多く見にくかったので整理整頓したい欲求に駆られてしまい、「lib」ってフォルダを作成しその中に全部移動させました。

総合テスト時、テスト実行端末にインストールして起動してみると、問題なく起動・実行できました。ところが、その後のクライアント環境インストール作業のリハーサルでは起動しませんでした。エラーメッセージは「ライブラリが見つかりません」的な内容。どうやら「VisualBasicPowerPacksのDLLが見つからん!」とお怒りのようだ。そういえばスタートアップフォームでLineShapeコントロール使ってたな。でもインストーラには含めているのに、何でだ?PATHが通ってないのか?
起動しなかった理由は、当エントリのタイトルで既に言っちゃってますが、
「DLLをEXEと同じフォルダに配置していなかったから」
でした。

でも何で総合テストの時は起動できていたのだろうか?
このプロジェクト、元々スケジュールに余裕が無かったので、結合テストと総合テストを一緒くたに行うことになっていました。つまり、モジュール間の動作検証と、実業務に即した流れでの動作テストを同時に行うということです。これで良く無事に済んだな(今の所、リリース後のバグ報告無し)。
という訳で、総合テストはユーザーと同じ環境の端末ではなく、開発端末で実施することになりました(結合テストで検出したバグをすぐ直さなきゃならないので)。開発端末なのでVisual Studioがインストールされており、前述のDLLはPATHの通っている場所に配置されています。よって、総合テストでは問題無く起動し、気付かなかった訳です。

ちなみに、ReportViewerに関しては、ツールバーの表記等が英語になってしまったので、結局クライアント環境に再頒布パッケージと言語パックインストールすることになったんですけどね。

<後記>
ところで、クライアント環境のインストール作業のリハーサルは、元々行う予定ではなかった。大したことないと見なされていたので(サーバー環境のはさすがに行う予定でしたが)。僕が勝手に裏でこっそりやったことだった。もし高を括って予定通りにリハーサルを行わず客先に行ってたら…と考えたら、冷や汗ものでした。

2009年9月27日 追記

コメントにて「redist.txtを読め」とのご指摘を受けました。果て何のこっちゃ?と調べてみた所、どうやらインストーラに含めてよいファイルが記載されているとの事。つまり、このファイルに記載されていないDLL等は、インストーラに含めてはならず、含めて配布してしまった場合はライセンス違反になってしまう!

あ、危なかった…前述のプロジェクトでは、結局含めなかったんですよ。前述した通り、ReportViewerで問題が発生したので、VBPowerPacksも知らない所で問題が発生すると厄介だなという事になり、結局どちらもクライアント環境でセットアップするという形を取ったので。

尚、このファイルの場所ですが、Visual Studio 2008の場合、「C:\Program Files\Microsoft Visual Studio 9.0\1041」内にあります。

ここで言い訳を。インストーラ作成にはここ参考にVisual Studioのセットアップウィザードを使用し、(確か)「プライマリ出力」にチェックしただけの筈ですが、ReportViewerとPowerPacksのDLLは(確か)勝手に追加されていました。Microsoftの正規ツールを使用して勝手に追加されたこいつらが、配布してしまうとライセンス違反になってしまうなんて、思ってもみないですよ。配布してはいけないものは除外してくださいよ、Visual Studio。

ところで、プロジェクトメンバー全員がこの事全然知らなかったんですけど、これって有名・当たり前なレベルの事なんですかね?

2009年7月25日土曜日

「無」から「有」への育成は?

@IT:「教えない」というIT人材育成法

「育成方法よりも、能動性を喚起するための環境作りを行っている」
「機材は好きなものを提供し、本も買い放題の環境を整えているが、一切教えることはない。だから技術者たちは皆ずっと勉強している」
(サイボウズ 佐藤学氏)


いやー羨ましい。僕の所属課では、技術書の購入は現在進行中のプロジェクトで使用する技術に関するものしか許してくれません。個人的に興味があるとかいうようなものに関しては、時間も金も自分のものと使えと。日中のセミナー・勉強会参加など以ての外。そんな訳ですので、ハードウェアはもちろん、既存サーバーの空きリソースの利用すら夢物語です。
※でも何故か、新入社員教育や社内システムのお守り等をしている課はOKだったりする。それってどうなの?
※その他、書籍の管理単位は事業部単位で、しかも蔵書データベースを作成してない為、同じ本が複数存在という現象が発生。置き場所も部署毎のロッカーだったりキャビネだったりとバラバラ…図書室作ろうよ…


新人の頃、他部署ではどうなのか気になったので、他部署の人間に何人か当たってみた。もしOKな部署があれば、異動も考えようと。で、聞いてみた所、そもそも勉強しているという人間が皆無なんですけど(泣)。だから仕事以外の技術本の購入をお願いしたことが無いと。家帰ってまで勉強やプログラミングなんてしたくねぇよと。
…たまたま…たまたまですよね?聞いてみた人間がたまたまこういう「職業プログラマ」ばっかりだったんですよね?

たまたまではなかったようだ。プロジェクトの合間で時間が空いている時でも、勉強している人間を見たことない。そういう時に勉強するようなやる気のある者(必然的に仕事はできる)は「無償ヘルパー」として駆り出され、それ以外の者は放置。ずっとネットサーフィンしている。先月の僕は前者だ。月後半2週間ぐらい空いたので、.NET3.5のTips纏めやActive Directoryの研究、少しばかり有給消化したかったのに、現在の常駐先に先行して入場させられた。契約は7月からなので、6月の間は無償作業。また、無理矢理頼んで先行入場させてもらったので、有給は勘弁してとのこと。ああ…(怒)
※さらに最悪なことに、元々7月からの予定だったので、端末やアカウント等の申請が間に合っておらず、最初の3日間は何もできず。全く…

少々脱線したので育成の話に戻る。仮に僕の会社でサイボウズと同じ環境・ルールを作ったところで、きっと効果は出ない。まず、僕の会社は客先常駐派遣がメインなので、Googleやサイボウズ・ラボのように業務時間を自由研究に割く事は基本的に不可能。だから、勉強するにはプライベートの時間を割かなければならない。「プライベート割いて勉強する気はある。ただ、勉強に必要な本を買う金が無いから、全くしてない」なんて人間には効くのだろうが、そんな中途半端な志の人間いないだろうし。今の時代、本無くてもWebでたくさん勉強できますからね。真にやる気のある者は、本の有無に拘わらず既に何かしている筈です。

よって、僕の会社においては、元々「やる気の無い」者が勉強しだすことは見込めず、会社の底上げは期待できない。まぁ元々プライベート割いて勉強している「やる気の有る」者にとっては、とても有り難いことですが。
政治に興味のない人間に如何に興味を持たせて選挙に参加させるかというのと同じで、やる気の無い者に対して如何に(プライベートの時間を割ける程の)やる気を喚起させるか。悲しいけれど、まずそれを考えなくちゃならんのです、僕の会社の場合。
ではどうすればよいのか?まぁそれは分かり切ったことなのですが。離職者のほぼ全員が給与への不満を言ってましたから。僕だって抱いています。



以上、あくまで僕の会社・僕が接触した範囲の要素から感じたことです。ひょっとすると、僕が知らないだけで、ちゃんとしてる部課もあるかもしれません。常駐してると内実分からないんですよ。情報下りてこないし、定期的に帰社して懇談するとかも無いし。ていうか客先常駐派遣企業の殆どが同じような状況?

愚痴なんて書きたくなかったけど、営業がお客さんに商品券渡しているのを見てしまい、久しぶりに心が折れてしまったので…
技術力で勝負しようぜ…
それとも、ビジネスってこういうものなのかな?「接待」なんて言葉もあることだし。俺が世間知らずなだけか?

「出来る人はみんな辞めてくんだよねアハハー♪」
3年前、新入社員歓迎会で言われた言葉。
こんな事言っちゃ駄目でしょ。アハハじゃねぇよ。

2009年7月20日月曜日

The Beachku Boys

バーゲンセールでスーツを買いに行きました。
ついでにYシャツも補充しようと物色。スリムタイプのものとノーマルタイプのものと、どっちにしようか体に当てたりして見較べていた所、女性店員さんが「試着してみますか?」と言ってくれました。

僕「(Yシャツの下に)肌着、着てないんですよ」
店員「あぁー…(一瞬、汚物を見るような目)。着た方が、汗吸って…(世間一般的に言われている理屈を述べる)」

うーん、やっぱり世間一般的には着ろ!ってか?

この論争は至る処で巻き起こされており、「着る派」が多数なのは承知しているが、僕は夏はYシャツの下に肌着は着ません。
※ていうか「論争」って程大きなテーマでは無いと思うけど…

かといって「着ない派」という訳ではありません。「夏は」と修飾している通り、季節によっては着ます。
結論を述べると「寒ければ着る。寒くなければ着ない。」という、至極単純な理由です。
ちなみに、冬に着る時は普通のカジュアルTシャツ(ビビッドなレッドカラーetc)着ちゃってます。
※「着ない派」は冬でも着ない人達のことですよね?

まぁ流石に乳首やTシャツの色・プリントが透けるのはみっともないと思うので、薄い・白い生地はなるべく選ばないようにしていますが。「汗かいた時にベチャっと張り付く」って意見も有名ですが、下着つけてたって張り付くでしょ?程度の差はあろうけれど。その差が生死を分けるのか?

僕の美的感覚では、下着のラインが透けて見える方がみっともないと感じてしまう(特に袖)。

まぁ確かに透け過ぎ!ベチャつき過ぎ!って人いますけどね。あれは確かにみっともない。
でもパッと見でわからない程度なら別に良くないか?

ちなみに「Yシャツはそれ自体が肌着だから、その下に更に着るのはおかしい」とかいう意見は、何か理屈に振り回されている気がして嫌いだな。欧米では着ないのがスタンダードだという意見もまた然り。気候なり容姿なりの前提条件が違う。そういえば、いつかのダウンタウンDXのスターの私服コーナーで、元サッカー選手武田がジーパン靴下inを酷評された時に「欧米ではこれがお洒落!」って言ってたな。「欧米では…」なんて言ってる時点でダサいと思うぞ。浜田の「このセンス分かんねぇな!」に至極同意したもんだ。

「俺は流行になんか乗らないよ」と言って、意地でも流行に乗るまいと常に逆方向を向こうとする者がいる。流行が東を向けば自分は西を向き、北を向けば南を…それって、方向が逆なだけで、結局流行に振り回されているのだということに気がつかないのだろうか?
流行がどの方向を向いていようが、自分は好きな方向を向く。時には流行と同じ向きであることもあるだろうが、それが真なる「流行に左右されない者」である。
※ま、最近はそんな極端な人間は見てないですが。

2009年7月19日日曜日

僕歪週末号~顔でかいからか?

先週一番幸せだと感じた瞬間が、Amazonで購入した鍋が届いたことであるという、そんな非常に充実した1週間を過ごしておりました。不景気不景気なこの世の中、この夏はボーナスカットされた企業も多い中、僕の会社では一応支給されました(激減ですが…)。今年度に入りいくつかの手当廃止、給湯室の使用禁止などが発令されりとコスト削減の嵐が吹き荒れたこともあり、正直絶対カットされると思っていたため、特に消費の予定は入れてませんでした。まぁうれしい誤算でした。それでさぁ何を買うか?と考えて真っ先に思い浮かんだのが鍋だった訳です。要するに安い男な訳です。こんな自分が好きでもあり嫌いでもあります。

とにかく第3週をハッピーエンドで締め、さあ第4週である。幸せを感じるために私が選んだ物はこいつだ!


一気に普通というか、ありがちな品物となってしまいましたが。ていうか最近この辺のブームらしいですね。
僕の場合、近年の動画投稿サイトでの演奏動画を視聴して格好いいなー俺も何か挑戦しようかなーと思っていた時分、今月の菅野よう子ライブで完全に火が点いてしまいました。ちなみにキーボードを選んだ理由は、PCのブラインドタッチが結構上手いから向いているんじゃね?という的外れも甚だしいものです。

購入に際して早速Webで商品情報を調査・吟味し、家電量販店に行き実物を見てみる。結構でかいな…。恥ずかしながら、鍵盤ハーモニカ程度の大きさかと思っていました。まぁでも部屋には十分置ける程度であることを確認。帰宅後、ヨドバシのネット通販で早速購入(ポイント分考えるとAmazonよりお得。すまん…)。そして本日午後、宅配業者の呼び鈴が鳴った。昨日の夜注文してもう到着か?Amazonお急ぎ便並だぞ。

玄関を開け、宅急便のお兄さんが差し出した段ボールの端を掴む。90°回転させて壁に立て掛けようとした所、お兄さんさらに「グググッ」…ま、まだ押してきますか?まだリーチ伸びますか?えっと、思った以上にでかいぞ!店に実物見に行った時はこんなに大きいと感じなかったのだが。横にFUJIWARA藤本でもいたのか?

あんまりにもでかいんで、いろいろ比較してみました。

iMac20インチ



こたつ



ジェットターン


取り敢えず暫定的にこたつに配置し、早速レッスン機能を試してみる。1曲目は「銀河鉄道999」。これなら多少は知ってるから、まぁ大丈夫だろう…は、速い!ついていけん!曲変更!
…こんな感じで曲変更を繰り返し、流れ着いた曲は「荒城の月」。まぁド初心者なんだから当たり前か。でも、小学生の頃は、初めての楽器・曲でもこんなに全然ついて行けないってことは無かったと思うんだけどな。老いか?気長にコツコツ頑張ろう。

↓当然これも購入。開くのは大分先になりそうだ。恐らく「gravity」から入るんだろうな。


↓ちなみに先週一番の幸せ




ていうか、巷のブログに比べて、写真の画質の悪すぎだな…
3年前の1円モデルの限界か?新ケータイやデジカメ購入の潮時かな。

2009年7月11日土曜日

ブラウザ界の自民党・民主党がそろって不祥事(未解決)

Windowsという圧倒的市場シェアを占めるOSに標準搭載されたため、必然的に圧倒的シェアを獲得、しかし天狗になったためか長期に渡る機能停滞・セキュリティ問題という不祥事により支持率低下の一途を辿る
Internet Explorer

マルチプラットフォーム、アドオンによる追加・カスタマイズが可能、高いレンダリング速度・Web標準準拠度・セキュリティを誇り、急速に支持率が上昇している新興勢力
Firefox

現在、ブラウザ界における2大政党である両者であるが、最近最新バージョンがリリースされたので(IE8は最近ではないが)、バージョンアップしてみた。すると、どちらにおいてもちょっとした不具合が発生。調べてみたが解決法はおろか、同一例の発生報告すら見つからなかったので、ブログにメモした次第である。

という訳で、タイトルでも言ってる通り未解決なので、ご了承ください。

Internet Explorer 8:GmailでHTMLメールの画像が表示されなくなった

以下の図の通りです。ここで言ってるような凡ミスでもなし。インターネットオプションの「画像を表示する」設定も確認済。
まぁIEあんまり使わないし、僕の支持政党のFirefoxでは大丈夫だからそれ程気にしていないが。


Firefox 3.5:アプリ終了時、マスターパスワード入力ダイアログが表示されるんですけど

アップグレードした場合、保存していたパスワードが消えた!という現象が発生しているようですね。何でもプロファイルデータを退避させておくべきだったとか。僕もそんなことは露知らずアップグレードしてしまったのですが、無事でした。正常に動作しています。
ただ、終了してウィンドウが閉じた後、時々パスワード入力ダイアログが表示されるようになってしまいました。Mac版の場合はさらに、この時点でFirefoxが応答なしとなり強制終了させられる羽目になります。


Firefox 3.5(Mac版のみ):Googleツールバーの検索ボックス幅をドラッグすると、Firefoxウィンドウがランデブー移動

アドオンをアップデートしたりすると、時々検索ボックスの幅がデフォルトに戻ってしまうのですが(この現象もMac版のみ)、デフォルト幅は狭いので毎回広げています。
3.5になった途端、ドラッグしたベクトル分ウィンドウが移動するようになってしまいました。



繰り返しますが、未解決です。
同一の症状が発生しているという情報が見つからなかったので、バグフィックス提供されるかどうかも不安(日本語のサイトしか探してませんが・・・)。
どなたか情報ご存じの方いましたら、ご一報下さい。



もうすぐ総選挙ということで政党と絡めてみた。我ながら・・・浅い。
当然IEが自民党で、Firefoxは自民党を脅かしているということだけで民主党に据えてみたが、シェアを見るとまだまだIEがダントツです。ブラウザ界での政権交代はまだまだ先のようだ。

2009年7月8日水曜日

「平日にもかかわらず、こんなにたくさん来やがって…」

行ってきました。

YOKO KANNO SEATBELTS『超時空七夕ソニック』(略して『た・な・ソ・ニ』)

この梅雨の時期に青空天気(ていうか猛暑)。グッズ買うのに2時間行列(ポスター買えなかった…)。
やっぱりあなたはすごいです。

予定終演時刻を30分程オーバーの3時間のライブであったが、「それでも足りねぇよ!」マジで。改めて、菅野よう子氏はとんでもない数の名曲生み出してるなーと思った次第。

ちなみに私、前回のエントリで「最前列じゃねぇか?」と9割9分の歓喜と1分の気まずさを吐露しておりました。最前列なのは確かでしたが、2階席でした(といっても、最前列は1階席《いわゆるアリーナ席?》に対して段差1つ分高いだけでしたが)。ていうか「さいたまスーパーアリーナ」のWebページに座席表あったんですね。ライブひよこ丸出し…

メインステージからの距離は1階席に比べればやや離れているものの、高さはちょうど良いし距離も十分表情が見えるレベルだ。1階席は一番低い位置であるため見上げる形となり首が疲れそう&ステージの真ん中から奥が見づらい&列毎の段差が無いので後方列は見づらそうだという事情を考慮すると、高さ・距離の観点では満足であった。

ただ、角度がちょっと…。メインステージに対してやや後方だったんですよね。前にグイグイ出て来られるであろうボーカルの方々は、基本斜め後ろから見る形となりそうで、少し残念…。しかしそんな気持ちは開始早々吹き飛んだ。

「トルキア」のメロディーと共に歌姫の皆様方登場。
そして菅野さん登場。
沸き上がる会場。
菅野さんは手を振り一回りした後、ピアノに座る。
位置は何と、俺の正面。菅野さんの右90度直線上に、俺がいる。
右横姿が、ピアノを弾いてる姿が丸見えだ!!!
うおぉーーーよっしゃーーーっ(幸)!!
メインステージ前方だったら、ピアノに隠れて見えない所だっただろう(そうでもなかったのかな?)。

それにバックステージのワルシャワフィルもよく見える。当然菅野さんの指揮姿も。そしてバックステージがよく見えるということは、最後の最後に大いなる喜びを与えてくれることになるのだ。もう既にブログ等でたくさん書かれているしWikipediaも更新されているからご存じのことと思うが、Gabriela Robinがステージに立ったのだ。曲は「Moon」。鳥肌が立った…

ところで「トライアングラー」が無かったのは意外。メンツからして絶対曲目に入っていると思っていたが。個人的には「妖精」も聴きたかったな。
ちなみに「ブレンパワード」は不人気なのか?1曲も入ってなかったし、アニメ映像が流れた時も、他の作品に比べて心なしかあまり盛り上がらなかった気が。「Light of love」「Waver」なんかは非常に素晴らしいと思うのだけど…

ガブちゃんの正体が明かされたことだし、Ilariaもそろそろ見てみたい。

そんな事考えながら会場の外に出ると、目に飛び込んできたのは「Moon」。何つー演出だ。

(携帯写真なんでよく分からん)


次回公演は22世紀とのこと。
宇宙を光速以上の速度で移動するか、逆精神と時の部屋を利用するかして、絶対生き延びてやると決心した次第である。

最後に

終演のアナウンス、噛みすぎ

2009年7月5日日曜日

ひよこ親衛隊

本日7月5日(日)。もうすぐですよ。何がって

YOKO KANNO SEATBELTS『超時空七夕ソニック』(略して『た・な・ソ・ニ』)

ですよ。

菅野よう子氏は、僕にとってはミュージシャンの中で唯一の天才です。あれだけのクオリティの楽曲を結構なペースで量産し続けてますからね、常人じゃない。僕が本格的に好きになったのは割と遅めの2003年辺りからですが、その頃から比較的入手しやすいCDは全部買っています。さっき彼女関連のCD数えたら54枚ありました(この数はファンとしては妥当?少ない?)。まぁ盗作疑惑挙がっていますが、インタビュー拝見するに「曲が降りてくる」というどうやら本物の『天才』系列のお方のようだからきっと違うと思うし、そもそも成果物の素晴らしさ自体は不変だし。受け手としては真偽のほどを断定できないし断定する必要もないので、何も考えず純粋に楽しむのみ。

で、場所は「さいたまスーパーアリーナ」ということで全席指定なわけですが、席番が以下のようになってまして



「1列」って、これって所謂「最前列」ってやつですか?情けない話、何分「ライブひよこ」なものでして、ライブのノウハウ全く無いんですよね。もし最前列を表すのであれば「よっしゃーーー!!」が9割9分、残り1分が

「き、気まずい…」

どうも最前列と聞いたら、所謂「親衛隊」が陣取っており、ライブを盛り上げるために振りとか声出しとか頑張らないと白い目で見られるイメージがありまして(古い?それとも大いなる誤解?)。あと、菅野氏は前述の通り膨大な数の曲を作っておられるので、単純に曲名や歌詞を全て覚え切れていないんですよね(ファン失格?)。全部が全部好きってわけじゃないし…。覚えていない曲で「へーい!!」ってマイク向けられたらどうしよう…ってな不安からくる1分の気まずさです。

まぁ別に全然気にすることないでしょうが。俺十分ファンだし!純粋に楽しんできます。取り敢えず「SMS小隊の歌」くらいは復習しとこう。合唱するかもしれないとのことなので。

同じ志を持つ皆様方、がんばりましょう。

※以下、私用リンク。相変わらずジョークもお上手なことで。
ところで「あの人」って、やっぱりGabちゃんですかね?
ついに正体カミングアウトか?