健右)むしろ、ノンフィクションなだけにおもしろさはより大きいかも知れない。宇宙飛行士の就職試験+訓練ものという意味で先鞭をつけたのは途中で切られてしまったとは言え、やはり度胸星だよな。芳裕)ただ、よくよく考えてみると宇宙飛行士という職業が特殊(というよりも門戸が狭いというべきか)だからおもしろいのではなく、就職試験そのものが、それだけでおもしろいジャンルなんじゃないかという気もしてくる。[「度胸星」ってなんか中途半端な終わり方したなーと思ったけど、あれ、打ち切りだったんですね。[なんか、誌面刷新の一環として打ち切りになったと話題になっていましたね。妻がロジクールマウスのセンターホイールが調子悪いと言い出した。試してみると、確かにスクロールしたりしなかったりで調子が悪い。カーソルやボタンクリックは普通に動くので、電池切れとも思えない。買ってからそんなにたってないはずだし、壊れたとも思えない。壊れたのなら、結構気に入っているのでもう1個買おうかなぁとか予定していたけど、それは無しだよなぁ。M505BK良くわからないので、とりあえず電池を見てみるかと、ひっくり返して裏蓋を開けて電池を抜いた。すると、それまではどうにも見えなかったセンターホイールが結構良く見えることに気付いた。いうことは、たとえば綿ボコリとかがひっかかっていたら、電池の挿入口から強く吹いたらどうにかなるかも、と気付く。息を吹き込んだら、でっかな綿ボコリが表から飛び出してきた。したら、ちゃんと動くようになった。中でホコリがセンサーを邪魔していたのだろう。なんで、そんなものが中に入ったかわからない(ことにしておくけど、表面についているのに気付かずにホイールをまわして中に押し込んだんだろうな)けど、とにかく、もしセンターホイールだけが不調になったら、裏蓋開けて電池出して吹いてみるという対処方法が確立されたのだった。VBでWCFサービスこれまでDCOMのサーバとして動かしていたVB6のプログラムがあるのだが、ファイアウォールの向こうに設置する必要が出てきたので、Webサービスに変える必要が出てきた。プログラムそのものは、1つのfrmと1つのclsから構成されていたのだがどうもfrmは使っていないらしく、単なる空っぽのフォームだ。外部COMサーバとして利用するから、とりあえず簡単に起動可能アプリケーションとするためにフォームを作ったのだろう。clsの中はなんかごちゃごちゃしたプログラムなので全面書き換えは避けたいところだ。VS2010のVBに変換しようとしたら、なんとVS2010はVB6の変換ツールが搭載されていない。いや、まだVB6から移行していないユーザがここにいるのだが。思ったけどしょうがないのでしばらく困っていたが、VS2008をアンインストールしていないことを思い出して、VS2008を立ち上げたら、こっちには移行ツールが載っていた。変換しようとしたらエラーになる。参照しているCOMコンポーネント(これはDCOMではなくローカル)が開発PCに登録されていないからだ。しょうがないので登録してから変換する。このCOMコンポーネント(当然32ビット)は、運用ホストではそのまま利用することにする。その昔、16ビットVBを32ビットVBに変換するツールがあって、これっぽっちも役に立たなかったのだが、さすがにVB6からVB2008への変換は問題なくできた。ディレクトリ構成が1段階なのは(今となっては)気持ち悪いが、まあ許容範囲だ。32ビットCOMコンポーネントを参照しているからか、.NETのコンパイル構成でターゲットはx86に固定されていた(Anyになっていたらおそらくはまるところだ。いうのは運用サーバは64ビットWindowsだからだ)。そのプロジェクトをVS2010で読み込んでVS2010へ変換。Interopに関する属性を削除して、単なるクラスに変えてみる。それから、WCFサービスを追加した。App.configに変更が入り、WCFサービスの実装ファイルとインターフェイスファイルが追加される。次に、WCFサービスのインターフェイスファイルを元のclsだった名前にIを付けたものに変えてからメソッド定義を元のclsのほうからコピペした。元のclsのほうのメソッド定義をインターフェイス実装に変える。追加したWCFサービスの実装ファイルのほうは削除。ここまでで、こんな感じになる。ClassApp.configはざっくり大ナタを振るってserviceBehaviorだけ残す。この時点でWCFホストにするつもりだから本当はApp.Configはいらないのだが、httpGetEnalbedだけは既定で欲しいからだ。</system.serviceModel></configuration>それから、DCOMサーバだったときは全く意味がなかったfrmのほうに手を入れて、WCFサービスをホストできるようにする。'ホスト名は、クライアントPCからのWSDL取得用HTMLに埋め込まれるので正しいものを設定する。'認証とか不要なのでWSHttpBindingは使わない。HTTPアクティブ化を使えば、起動しておかなくてもオンデマンドで起動できるのかな?)サービスリクエストをポート80で受けられる。Serverの場合、役割の設定でアプリケーションサーバーのWebサーバー(IIS)サポート機能をインストールしておく必要がある)。フォームがあるのだから、普段は最小化か通知エリア押し込みにしておいて、表示すると呼び出し回数とかメソッド平均実行時間とかの統計情報を表示するようにしておくと良いかも。クライアントはサービス参照で、"http://ホスト/VBService"を指定して(ここではVBServiceReferenceという名称で取り込み)以下のようになる(面倒なのでC#で例)。"/VBService");MessageBox.Show(svc.Hello("boofoowoo"));実行時にサービス参照したホストではなく、稼働しているホストに変えるのは、イントラネットでは当たり前(開発用サーバと運用用サーバは異なる)なのだが、例があまり出ていない。普通にあるユースケースだと思うのだがなぁ。URIのホスト部だけを入れ替えられるようなコードを生成してくれれば良いのだが、自動生成されるServiceClientクラスのテンプレートには、ホストのみを交換できるコンストラクタが無い(ようにおれには見える)。そこで、エンドポイント構成名(「バインディングタイプ_インターフェイス名」の形式)とリモートアドレス(参照先のURI)を指定する。実際は、クライアントもVB6のプログラムなのだが、同じくVB2010にVB2008経由で変換。CreateObjectしているところを上のサービス参照して生成したClientクラスの作成に変更。それにしてもWCFについて調べるのは意外とやっかいだ。導入事例は多いと思うのだが、MSクラスターはどうも情報公開がいまひとつな気がする。LOC)やはり、このあたりは持っておくべきかも。上野にベルリンバレエを観に行ったのだが、微妙に時間に余裕があったので、早めに行って国立西洋美術館でも寄るか、と子供を誘う。訊くので、しらねぇから調べてくれと答えたら、美術館のサイトを調べてなんか白黒のやつなんで興味ないとか言い出す。覗くとデューラーの版画/素描展だった。言っても版画ってのは結構おもしろいし、この野郎は妙な題材を取り上げてるし(と、ギリシャ神話から題材をとった画をさして)いいじゃん、行こうと連れ出した。家にいてもだらだら過ごしてしまうわけだし、今ならお前は無料で観られるんだからラッキーじゃんとか。したら、むやみとおもしろい。最初、版画で受難を題材にしたやつが、大きいの、ばらばらなの、小さいの、それから聖母伝とか、そういったのが並んでいる。おれは適当につまみ眺めしていたら(混雑はしていないが、精緻な作品が多いだけに列はゆったりとまるで草を食む羊のようにしか進まないからだ)、子供はしっかりと列の中に入ってじっと眺めている。乗り気じゃなかったわりにマジメに観てたじゃんと訊くと、そりゃ題材を良く知ってるからおもしれぇとか答える。最後の晩餐で皮袋を腰につけてるのがユダだよね、とか言い出すから、え、そりゃ気付かなかったと観直してくると、確かにユダ去りし後の1枚の不在の席に、他の2枚では腰に皮袋を下げた野郎が腰かけている。ああ、金貨の袋か、とか知ったかしたら、銀貨だよ、と修正されたり。最初のやつには14人いたとか言うので数えると確かに14人いる。訊くと、そりゃ一番愛されているんだからヨハネに決まっているとか。すると顔回の役回りなんだなぁとか言ったらさすがにそれは知らないようだが、なかなかの教養人になっているようで、他にもお祈りのところとかいろいろ教えてもらう。訊くと、日本語で言うと足を洗う+手を切るになるけど、せっかく余計な処刑をしなくてすむようにとりなしてやったのに民衆がそれを望むなら、おれは知らんという宣言の意味だとか。時間切れとなったので、次のフロアの素描とかはスキップせざるを得なくなった。駆け足で、想像で描いたという写実的でありながらまるでからくり仕掛けのような突起がある犀とか、不思議な建築物の形式のすごろくみたいなやつとか、布陣図のようなやつとか、眺めて、はて、メランコリIIという画の前でこれはなんだか不思議だぞと立ち止まる。いえば、署名があれだよね、とか言い出すので確かに三角だし、技術者同盟人のような、とか、で思い出した。敏弥)子供に借りたロストシンボルでネタにされていたのだった。いうわけで、えらくおもしろかったので来週ちゃんと観ようとか決めたのだが、残念、1/16が最終日だったのであった。1490年あたりから活躍ってことは、以後涙の室町幕府なんだから応仁の乱のあたりの人だな。グーテンベルクの直後の人なので、自身、民衆用の受難画の本を売りさばくべく小受難劇を出版するとか。おお、つまり、ニューメディアにすぐさま順応したアーティストってことだな、とおもしろく思う。芸術的感動とか感慨のようなものとは無縁だが、大量の情報を埋め込んだ作品によって知的な興奮を与えるタイプの作家だった。機会があったら、こんだ、じっくり観てみたいものだ。ストック実践F#を読み進めているのだが、やっとOOPの章に辿り着いた。こた、リストとタプルを使ったコードは書けるはずだな、と実戦導入についてちょっと画策。ちょろいインストーラあたりなら外れても影響無いし、いいかな。いげ太)以下、タイポ。sglへ束縛するように打つべきだと思うと、F#を読んでいるところに、正月っぽく山野さんから、獏をいただいた。Haskellとか)の真打ちだから、Scalaの紹介フェーズが終わって、アーリーアダプターが実戦投入(今は未だイノベーター支配期だとおれは見ている)しようとしている今にふさわしいタイミングだと思う(つまり、イノベーターが実戦投入し終わった振り返り期なので、こういう書籍が出て来る)。DSLとしての利用やアプリケーション設計についての独立した章がある。バージョンは2.7メインだけど、2.8について訳注や補章を入れてある。章立てで気付くのはOOが関数より先に来るところ(章数も多い)。いうのは些細なことだが、ちょっとした意外感があるので、F#のほうを読んでいるから細かく読むのは後回しだけど、読むのが楽しみだ。後、水島さんがチェックを入れたそうなので、訳には問題ないと思う。Squirrelをいただく。読んでないから内容についてはわからないけど、Luaに乗り損なったゲームスクリプターならこっちに乗ってみるのがおもしろいんだろうと思う(と、Luaオルターナティヴ言語だと、おれは考えてるんだけど、実際のところはわからない)。[型推論と握手は、駄洒落じゃないです。型推論をうまく活かしましょうという意図で「握手」となっています。[お、そうなんですか。今日の食あたりなんか良くわからんけど、おそらくJDBCのResultSetあたりから自動的にHashMapを作るものらしきユーティリティークラスがあって、そいつのコンストラクタを呼ぶ場所がこんな感じになっている。RSUtil(props);とりあえず、これについてはまあ良いとして、そしてpropsが50要素くらいあるのもまあ承知しているし、かつそこに追加で20要素くらいおれが付け加えるというのも良いだろう。追っかけると、とんでもないものに出会った。";ああ、と、ここまで読んで、これからえんえんとpropsの50要素をループで詰めるんだなと想像して、StringBufferとかにしようか、いや、固定数だからそのままにしておこうか、とか思いながら下を読む。";...わが目を疑うこの惨事。(スクロール2回分のところには「ほぼ同上」な行が)50行続くのだな、これが。えーと、さっきあったpropsっていうのは一体なんなんだ?いや、答はわかっている。nvlをぐにゅぐにゅとかもごるんだろう。バグがあるから、続くいや、本当はこれでも不快なのだが、それでも50行えんえんと(しかも、おれはそこにさらに20行も追加するのか?)並べるより200光年くらいましだ。'を黙々と変更していたのだろうという、その底冷えのする仕事風景なのだ。(自動生成ですらないのは、それっぽい元ネタやスクリプトが残っていないから間違いなかろう。propsの配列の中身も何かをひたすら写経したのであって、Metadataから生成したとかではあるまい。いうか、Oracleなのに全部大文字ではないから、写経以外とは思えない)その作業風景は、まさにコーダーという言葉から想像される職業の人そのものだ。どこにも意思決定のかけらもない、機械的な繰り返し作業だ。z"というカンマ区切りの文字列を作るとする。array);で出来てしまうが、Javaには今のところそういうメソッドはStringにもArraysにもない。この2つになければきっとないだろうと思う。C#だって、zipしながらじゃできないのではなかろうか。思ってSystem.Arrayクラスを眺めていたらAsReadOnlyっていう便利なやつがあるんだな。