遅くとも動いていれば打開されることもある件

id:coma2nさんの「Booの開発にはSharpDevelopがオヌヌメ」によると、すっかり記憶の彼方に消し飛んでいたSharpDevelopが地味にバージョンアップされてるようなので、総本山を訪問してみることにした。

「Features」を見てみたら、「Multi-framework support (.NET 1.1 and 2.0, Mono, Compact Framework) 」なんて一文もあって、MonoDevelopもこっちと融合しちゃえばいいのに、とか思ったり。どうもデフォルトでBooが使えるようなので、Alexもさぞやお喜びの口かと。

「Download」には追加ソフトウェアとしてF#のコンパイラだのFxCopだのStyleCopだのTortoiseSVNが挙げられていて、なんか結構まともな(というのは失礼ですね)環境に育ちつつあるような。ただまあ、相変わらずWinFormがメインでASP.NET関係はダメっぽいので、あたくしは使わないだろうなあ。WinFormメインのアプリケーションを最後に作ったのは、あれはいつのことだろう(遠い目)。

開発進捗は牛の歩み以上に遅いですけど、止っているわけじゃないところが偉いなあと思うわけです。すっかり止ってしまった案件をいくつも抱えている身としては。

やれやれ。

  • ic#code=http://sharpdevelop.net/OpenSource/SD/

真夏の夜の出来事

というわけで、Mono meeting終了。

前回(Mix07裏meeting)は、オモテのMix07があまりにもあまりだったので大激怒(だったそうです。K.Awasakiさんの話によると ;)し、そのまま帰ってしまったがために参加できず(直前に電話までいただいたんだけどねえ)。

2007年の年末特大Mono Meetingは仕事の都合で参加不可となり、その前(たぶん第4回)のMono Meetingは、会場の冷房が壊れていて、みんな汗だくになりながらの開発与太話だったことを覚えているので、かれこれ1年ぶりかあ……。

今回は雑談がメインで、ネタとしては、

  • Google Street View
  • デラゲーツ(笑)
  • RPC
  • CORBA(!?)
  • Visual Studio 2008 SP1のAA

かな。

まあ、個別に細かい話をしていたとは思うのだけど(特に後半)、アウェイの身としては遠巻きに眺める程度で。

「Google Street View」というか、そっち方面の話題はMIAUのほうでゴニョゴニョするそうなので、興味のある方はそっちを注意するといいと思った。

「デラゲーツ(笑)」は「スイーツ(笑)」みたいなもの(らしい)。JavaとかJavaハウスとかそっちの方面にとんと疎い私には、よく理解できませんでした。残念。

「RPC」は、次の「CORBA」と密接な関係があるのだけれど、詳細はカット。てか、CORBAなんて単語を聞いたのは何年ぶりだ? DDJJやってたころだから1997年から1999年くらいかな。MSがDCOMでJavaがCORBAなんて感じで、分散が合言葉だったような気が。

あとはartonさんの「Visual Studio 2008 SP1のAA」ですね。プログレスバーを補助するAAという発想はなかったわ、と大絶賛。これほどまでに先進的なインターフェイスならMono Developにも実装するべし、ということになり、どうも次のバージョンでは採用されるらしい。

てゆうか、Mono Developの先進機能として、Debug機能が実装されたわけだが、これが凄い。ブレークポイントが設定できるようになったし、エラー発生箇所から[F1]キー(だったかな)で飛ぶと、該当箇所が黄色の矢印で表示される。しかも2行も3行も!

「なんだそりゃ」と突っ込まれると「マルチスレッドなんだよ」とかわけのわからないフォローが入るあたりがMono meetingクオリティ。

ネタ開陳は、誰かが決められた時間で発表するというフォーマルなものではなく、自己紹介の際に“Monoに興味をもったきっかけ”を答えてもらい、それに応じて口を出せるものがint 21を発動するという割り込みイベント駆動型。なので、実際には茶会という感じ。このユルさと濃さがいいわけですけど。

後半、Java MVMネタのテーブルと、正規表現ネタに関するテーブルに分かれて、個人的には「文字列以外にも正規表現を適用する手法」みたいなコトバが聞こえていたほうに参加したかったのだけれど、Alexと悲しくて暗い話に終始する。

躁鬱の差が激しいヒトほど技術者に向いているかもしれないとか思ったり。なんつったって、開口一番「いい転職先はないですかねー」だって。もう、笑うしかない。

あまり活発に動いてないせいでBooも最近は触ってないし、面白そうな言語もないみたいで、燃える対象を見失ってる感じ。とりあえずAction Script+iPhoneネタを提示。

そのままAlexとはIDEの未来を暗く語りつつ、帰宅。あー、おもしろかった。

OnClickが効かないのはなぜだ問題

Form1とForm2を作り、Form1に、

<mobile:Command ID="Command1" runat="server" OnClick="Command1_Click">Submit</mobile:Command>

としてボタンを置いて、これをクリックするとForm2に移動するサンプルを書く。が、動かない。

Visual Studio 2008を使っているので、aspxのデザインビューは使い物にならないことは知っているものの、まさかOnClickが効かないとは!

もちろん、そんな馬鹿なことがあるはずはないので、あっちゃこっちゃ調べてようやく手前のミスを発見。

protected void Command1_Click(object sender, EventArgs e)
{
    if (ActiveForm.ID == "Form1")
        ActiveForm = Form2;
    else
        ActiveForm = Form1;
}

とすべきところを、protectedではなく、これまでどおりprivateとしていたのが敗因。

VS2003、VS2005、VS2008の三世代同居マシンなので、そのせいかとも思ったのだけれど、解決してみればなんてことはないミスでした。ははは。

がっくし。

夏休みの宿題ではまりかけた件

夏休みの宿題にVisual Studio 2008で携帯サイトを作ろうと思ったのだが、なにをどうがんばってもモバイル用のテンプレートが出てこない。

しかたなくgoogleさまにお伺いしたところ、VS2008では作成機能が落とされていることがわかった。WCFも使いたいので、できればVS2008で全面的にまかないたいのだが、フロントエンドはVS2005のお世話にならなければならないらしい。なんだそれ。馬鹿にしてるのか。

悔しいので、さらに検索してみたところ、どうも「Your Websites, Our Passion!」でモバイル用のテンプレートが提供されていた。

上記サイトの「ASP.NET Mobile Templates.zip」てのがそれで、中身はこんな感じ。

右ペインに表示されている各zipを、そのまま(展開せずに)テンプレート用ディレクトリにコピーすればOK。

ただし、

  • 「ASP.NET Web Application」のCSとVBは、「Visual Studio 2008\Templates\ItemTemplates\」のC#とVBに
  • 「ASP.NET Web Site」のCSとVBは、「Visual Studio 2008\Templates\ItemTemplates\」の「Visual Web Developer」に

それぞれ放り込む。

これで、VS2008を立ち上げればテンプレートが表示……、されないので、とりあえず、ASP.NET Webサイトを選択し、ソリューションを作ってしまう。

通常のASP.NETサイト開発ファイル群が生成されたら、ソリューションエクスプローラに表示されている「Default.aspx」と「web.config」を削除し、改めて右クリックから「ファイルの追加」ダイアログを表示させると、

のようにめでたくモバイルサイトテンプレートが表示されるので、ここから「Mobile Web Form」と「Mobile Web configration File」を追加すれば、ASP.NETで携帯サイトを開発できるようになる。

てか、実に“まんどくせー”のである。

銀光で大騒ぎするのもいいけど、こーゆうのを落として平気な顔してちゃマズイと思うんだよね。携帯王国の市場ではさあ。

SQL Server 2005 Driver for PHP

ちょっと前から「ベータがリリースされた」とか「RCになった」とか地味にアップデートを重ねていた「SQL Server 2005 Driver for PHP」が、とうとうVersion 1.0になってダウンロード可能になったみたい。

そういや先日、「おれらが貸しとるサイトでPHPをつことったら、アップグレードせいや」というメールがホスターから着弾していたのだが、もしかしたらこのプロダクトを導入するのか知らん。

いま、過去メールを引っ張り出して見てみたが、どうも違うっぽい。単にカレントの4.3.4を5.2.6に上げることと、4のサポートはあんまり長くないよ、という話でした。

まあ、いずれにせよ、データベースにSQL Server 2005を使っていて、PHPアプリケーション(というのかな?)を走らせてるヒトには、上記Driverはうれしいのかもしれない。

でも、そんな奇特なヒトビトはどれくらいいるんだろうなあ。

ちょっとお手上げな件

LISPのソースをWindowsアプリケーションとしてビルドする方法。

展開したclisp<ビルドバージョン>\base下のlisp.exeとlispinit.memを使用する。LISPソースをhoge.lispとして、

lisp.exe -M lispinit.mem -x "(load \"hoge.lisp\")
 (ext:saveinitmem \"hoge\" :init-function #'main :executable t :norc t)"

これで実行ファイルが出来るんだけどね。できた「hoge.exe」をダブルクリックすると「なんとかdllがねーYO!」と怒られるので、あらかじめclisp<ビルドバージョン>\baseにパスを通しておくか、「libintl-8.dll」と「readline5.dll」(と「libiconv-2.dll」も?)をそれらしきところにコピーしておくと吉。

で、もう一回ダブルクリックすると、今度はCommand Promptも立ち上がってくるという大罠。

どうすればいいんだろうな?

ちなみに、ソースはこんな感じ。

(use-package "FFI")
(def-call-out messagebox
    (:name "MessageBoxA")
    (:library "user32.dll")
    (:arguments (hwnd int) (text c-string) (capt c-string) (type uint))
    (:return-type int)
    (:language :stdc))

(defun main()
  (messagebox 0 "Hello World!" "Message" 0)
  (quit))

たぶんコレは大真面目

このLive.comとiGoogleを足して2で割ったような画像はなにかというと、Omar AL Zabirというヒトが作ったAjaxベースのWebポータルサイトなんだそうで。

見た目だけなら「Ajaxベースというより、iGoogleベースというべき」なんてことも思うわけですが、これ、ASP.NET 3.5で作ってあるんだなあ。そんで、ソースコードもダウンロードできちゃう。そのため、このネタを紹介してくれたBrad Abramsは、「Now you can build your own Ajax portal fun!」なんつって、大喜びなわけです。

本気でセルフポータルサイトを立ち上げる香具師がどんだけいるよ、ちう気がしなくもないですけど、あまっているマシンにWindows Server 2003 R2でも入れてネットワークにつなぎ、IISを立ち上げてVS2008から放り込んであげると、それはそれでシアワセに一歩近づけるような気がしなくもないです。

でも、そうすっと社外からアクセスできないので、結果的にダメなんだけどね。

個人的にはBrad Abramsが紹介している「Cool Features」と「Technologies he shows off...」てのは、どうかと思うんですが、

  • データバインディングにLINQを使っている
  • データアクセスレイヤの構築にLINQを使っている
  • あとビジネスレイヤの構築にWF(Windows Workflow Foundation)を使っている

という3点が気になりました。中身を見てみたい。

あと、あれですね。REST指向になちゃったんですね、やっぱり。

なにがなんでもSOAPだった政治的な季節はさすがに終焉を迎えたわけでしょうか。まあ、そうでもしなきゃYahoo!なんて買えないしなあ。

で、日本にいるマイではじまってクロソフトで終わる某IT企業は、このネタのローカライズを誰に振るんだろうな?

興味の対象はこのあたり

覚え書き

  • OAuth
    • 認可(アクセス制御)
    • 第三者に対して、認証を要求するリソースへのアクセスを一時的に許可するためのプロトコル。サービスプロバイダから、WebサイトやWebアプリケーションの制限付きリソースへのアクセスを可能にする。このとき、サービスプロバイダはサイトやアプリケーションに対して(IDやPasswordといった)秘匿情報を要求しない。
    • OAuth=http://oauth.net/documentation/spec
  • OpenID
    • 認証
    • 分散ID認証システム。エンドユーザーの自己同一(Identity URL)性を保障する方法を提供する。各種認証を必要とするサイトにアクセスする際、たとえばメールアドレスとかパスワードなどの、個的情報を使わなくてもloginできるようにしてくれる。
    • 中央集権型ではなく、ユーザー指向(嗜好?)。

      プロフィール情報(profile information)自体を交換するメカニズムはない。

    • OpenID.net=http://openid.net/
    • OpenID Authentication 1.1=http://openid.net/specs/openid-authentication-1_1.html

顔パスまであと一歩……、なのかなあ。ちょっとよくわからないので動向のみチェックする予定。予定は未定でいつものことだが。

こんなアプリケーションがほしい

ここのところWebの入り口はiGoogleを使っていて、おかげでついうっかり気がついてしまったのだけれど、“Webアプリケーション”とかいいながら(あるいは、だからこそ)Webブラウザの中でしか表現されない(あるいは、できない)んだよなあ。

まあ、いまさら感が漂う話で恐縮ですが、リッチWebアプリケーションとか喧伝されてるけど、よく考えるとリッチじゃなくて単なるデコラティブでしかないわけですよ。しかもIE(とかFireFoxとかSafariとかOperaとか)の表示エリア内でしか有効ではない。それでデコラティブだと、アクセシビリティはそりゃ悪い。もちろん、大画面で解像度がすごい高ければ話はまたちょっと変わりますけど。

まあ、ごちゃごちゃ書いててもしょうがないんで図版を出すと、たとえば下の図はiGoogleに配置したGoolge ReaderガジェットでBlogを読んでるところ。

で、下の図はおれの理想的な“リッチWebアプリケーション”の表示具合。

ガジェットから呼び出された表示エリアがIEを超えているところがミソ。で、この表示エリアを(この場合は読みやすいように)動的に変更できて、記憶してくれるとなおうれしい。なんてことを思ったわけです。

もっとも、すでにこのような要望を満たすガジェットなりアプリケーションなりがリリースされていることは想像に難くないんだけど、とりあえずおれのせまーいせまーい知見の範囲内では見たことがない。

どなたかご存知でしたらご教示くだされ。

.NET Framework 3.5対応ホストリスト

.NET Framework 3.5対応ホスト。

タンスの肥やしは多いほうがいいかもしれない件

hugを使っているのだが、ここにきてコンパイルの必要が生じ、泣く泣くVistaにGHCをインストールする(やや大げさ)。

ところが、

> ghc foo.hs -o foo

などとやると、

gcc: installation problem, cannot exec `as': No such file or directory

と怒られる。なんだそりゃ。GHCの最新バージョンはさすがに安定してないのかなあ、などと、ひとつ前のバージョン(6.6)に戻したりしたものの、状況は変わらず。

エラー表示をそのままぐーぐる様にお供えしたところ、「lang.haskell.glasgow.bugs」を示していただいた。ありがたいありがたい。

このMLのアーカイブによると、なんのことはない、ghcに含まれている(!?)gccのライブラリを環境変数PATHに与えてやらなければならないのだった。ははは。VistaのRC1、RC2から発見されているバグみたいなんだけど、これはいまだに(最新バージョンは2007年の4月26日リリース)修正されていないわけか。うむむむ。

というわけで、VistaでHaskellしてみようというヒトは、ghcのPATHを設定する際に忘れずにgcc-libも一緒に設定するとよいことがあるような気がする。

で、なにしろ、gccまで放り込まれるってのはどういうこと? とディレクトリを覗いていたら、gccだけじゃなくて、perlまで放り込まれていたのことよ。

> cd c:\bin\ghc
> perl --version

This is perl, v5.6.1 built for MSWin32-x86

Copyright 1987-2001, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'.  If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.

> gcc --version
gcc (GCC) 3.4.5 (mingw special)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

いやはや。

IronRubyが姿を見せ始めている件

DLR(Dynamic Language Runtime)ってのは、想像以上に貪欲で、鉄人化の道を歩んでいるといわれていたRubyが、Pre-Alphaとして姿を現しつつあるのであった。

ソースコードもMicrosoft Permissive Licenseで公開されたようで、なんというかマイクロソフト内のRubyな人たちは、さぞかしお喜びの口かと。まあしかし、当たり前だけれど、まだまだ実行速度は遅そうだから、今後JRubyよりも「早っ!」なものにならないと、ツライだろうな。

とはいえ、Scott GuthrieのBlogでは、IronRubyからWPFを使う、なんてことをやっていて、それがちゃんとできてるのがいい感じ。8月末にはRubyforgeにもあげられそうなイキオイなので、期して待ちたい(いじるかどうかは別として)。

てゆうか、上記記事内でも書いてあるけど、MIX 07でアナウンスされたDynamic VBってのが、気になる。要はVBScriptだと思うんだけどさ、先祖返りを起こしてるのかな。そうだとすると、某ユーザーグループもお喜びの口かと。

どうも、マイクロソフトの新しい(けど地味な)プロジェクトは、旧世代が喜ぶものばかりのような気がしなくもない。

銀光ゲーム

おぉ、これはすごい!

ソースもあるのでここから銀光をはじめるのがいいかも。

あと、なぜか銀光のバージョンはAlpha 1.1推奨。Beta 1.0では動作しない。

  • Dr. Popper=http://www.bluerosegames.com/brg/drpopper/
  • Dr. Popper:source=http://silverlightrocks.com/cs/files/folders/sample_games/entry12.aspx
  • Digger=http://www.aisto.com/Roeder/Silverlight/Digger/Default.aspx
  • Digger:source=http://www.aisto.com/Roeder/Silverlight/Download.aspx?File=Digger
  • Zero Gravity=http://zerogravity.terralever.com/
  • Chess=http://silverlight.net/samples/1.1/chess/run/default.html
  • Chess:source=http://silverlight.net/samples/1.1/chess/chess.zip
  • Destroy All Invaders=http://www.andybeaulieu.com/silverlight/DestroyAll/Default.html
  • Destroy All Invaders:source=http://www.andybeaulieu.com/Home/tabid/67/EntryID/75/Default.aspx
  • Silverlight Rocks!=http://www.andybeaulieu.com/silverlight/HelloSilverlight/Testpage.html
  • Silverlight Rocks!:source=http://www.andybeaulieu.com/Home/tabid/67/EntryID/73/Default.aspx
  • Sprawl=http://silverlight.net/samples/1.0/Sprawl/default.html
  • Sprawl:source=http://silverlight.net/samples/1.0/Sprawl/sprawl.zip

銀光についてのメモ

  1. Visual Studio 2007 CodeName "Orcas" Beta 1をダウンロードしてインストール。
  2. Silverlight 1.1 Alpha SDKをダウンロードしてインストール。
  3. Orcasを起動して、新しいプロジェクトを作成する。ちゃんとインストールされていればテンプレート内にSilverlight Projectがあるので、それを選択。
  4. グラフィックは単純な部品をキャンバス上で組み合わせて作る。このあたりの作業はExpression Blendを使うのが王道だけど、もちろんXAMLでコツコツ記述するのも、ありっちゃーアリ。おれはヤだけど。
  5. ソリューションをビルド。出来上がったdllはプロジェクトの指定の場所に落ちている(ハズ)。よくわからなければXAMLページのヘッダ部分をいじるといいかも。元から修正する場合はプロジェクトの「Properties」-「Build」-「Output」とたどって「Output path」を変更すればOK。
  6. <Canvas x:Name="parentCanvas"
      xmlns="http://schemas.microsoft.com/client/2007" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      x:Class="SilverlightProject1.Page;assembly=[ClientBin\SilverlightProject1.dll ...."
    
  7. 出来上がったら、プロジェクトをWebサーバーにあげて、アクセスしてみる。

うまくいったらお慰み。てか、外向きのWindowsサーバーを探すのが、一苦労なんだけどね。

ん? このサイト? ここをOrcas仕様にするのは、当分先の話だなあ(遠い目)。

Orcas Express

年末にOrcas(≒Visual Studio 2007)が出てくるとして、その場合、Expressエディションはどうなるんだっけ、とかウスラぼんやり考えていたら、なんと、すでにMSのサイトに「Codename“Orcas”Express Edition」なんてものがアップロードされていたのでした。

手っ取り早く.NET Framework 3.0(3.5?)ベースの開発を楽しみたいなら、これを使うのもありだろうな。

だからといって、あわててダウンロードしないあたりが、おれの歳を物語っている(様な気がする)。

サービスパックが出てる件

とりあえず、出た。

ベータ版をインストールしている場合は、それをアンインストールしてから適用のコト。

あと、SQL Server 2005向けのSP2も出ているので、こちらも忘れずに。

PowerShell 1.0 for Vistaがリリースされた件

ここで「Vista向けSP1にはPowerShellが含まれるみたい」とか書いてたんだけど、どうも違うっぽい。てのは、PowerShell 1.0 for Windows Vistaがリリースされたから。

まあ、リリースしたもののインストールしないVistaユーザーに、強制的に入れるという目的があれば、SP1に同梱しちゃうんだろうけど。

でも、そこまでして入れる理由がわからんな。コンフィグレーションをいじるようなマネージドなインストーラに対応させるとか? リモートな処理のため?

もちろん、SP1にはPowerShell自体は入ってなくて、入っているのはPowerShellを入れたヒト向けのホットフィックスという可能性もあるわけだから、なければないでノープロブレムなんだろうけど。

XP/VistaのVS2005でWPFを楽しむ

“WPFを使ったアプリケーションを作成するためには、なにをどうすればいいのか”のまとめ。

この順番でインストールすれば(今のところ)問題ない。ASP.NET AJAX 1.0とかWWFは最後に導入すればいいんだろうな。きっと。

順番が大切……、ってのはVisual Studio 5.0/6.0のころと変わりませんねー。サービスパックとか。Officeとか。IEとか。

あのころに比べれば(ベータ版であるにもかかわらず)ラクなんだろうな。

ところでSQL Server 2005 SP1の適用後って、あんなの(インスタンスが増えてる)でいいのだろうか。使えてるからいいのかもしれないけど。もしかしたら、ローカルマシンの管理者権限でインストールしないとまずいのかな。administratorsグループに放り込んだドメインユーザーでインストールしたんだけど。

でも、そう考えるとVS関連のものはすべてローカルマシン管理者でインストールしたほうがいいのだろうしなあ。

……。今週末はインストール大会ですかねえ。

  • Windows XP SP2+Visual Studio 2005
  1. .Net Framework 3.0
  2. Windows SDK for Vista
  3. VS 2005 extensions for .NET Framework 3.0(WCF & WPF), November 2006 CTP
  • Vista+Visual Studio 2005
  1. VS 2005 Team Suite SP1
  2. VS 2005 SP1 Update for Windows Vista Beta
  3. Windows SDK for Vista
  4. VS 2005 extensions for .NET Framework 3.0(WCF & WPF), November 2006 CTP

おかしいと思ったら、その場で質問してこいよ

Vistaの開発をVisual Studio 2005で行なう場合は、SP1とそのサービスパックが必要となります。

詠み人知らず

と某セミナーで言われて「わからーん! ビタイチわからん!」と騒いでいるヒトがいるのだが、「Vistaの開発」ってのは「Vista対応アプリケーションの開発」ということでしょ? たぶん。そのためにはVS2005に、現在リリースされているSP1とそのホットフィックスをあてろ、ってーことじゃねーのかと。いつそのホットフィックスが出るのか知らんけど。

SomasegarさんのBlogには「Bug Fixes in VS 2005 SP1」なんてエントリーがあがっているわけだし。

まあ、ワタクシは親切なので微笑んでいるだけですが。

MS謹製AJAXライブラリ出来

ASP.NET AJAX v1.0がようやくリリースされましたな。

とりあえずダウンロードして放り込んでみるけれど、実際に使ってみるのはいつになることやら……。

Control Toolkitもv1.0になってるんだなあ(当然か)。

VB6.0で.NET Framework 2.0(限定的だけどな)

なんと申しましょうか……。印刷機能を持ったVB6.0のアプリケーションで.NET Framework 2.0の印刷機能を使用できるようにするためのライブラリ。マイグレートが目的なのか、VB6.0から.NET Framework 2.0(の印刷機能)を使えるようにするための方策なのかがよくわからない。必要とする人がいる、ということなのだろうなあ。VB6.0に対する、マイクロソフトの微妙な本気度が伝わってくる逸品と申しましょうか。

まあ、とりあえずメモ。

VS2005 extensions for WCF & WPF, 11月CTP版のその後

ここで迷っていた「Visual Studio 2005 extensions for .NET Framework 3.0(WCF & WPF), November 2006 CTP」を放り込んでみたら、「出直せ。バーカ」(意訳)といわれた。

やっぱり、導入しなくてもいいっぽいな。

なにを導入したらいいかわからん件

原稿が届かないので(というイイワケもどうかと思うが)Vistaに導入したVisual Studio 2005にSP1をインストールしなおし、ついでに(というのもどうかと思うが)「SDK for Windows Vista and .NET Framework 3.0 Runtime Components」をインストールし、さらに「Visual Studio 2005 extensions for .NET Framework 3.0(Windows Workflow Foundation)」などというものも放り込んでみる。小規模ワークフローが、ホントにうまく作れるかどうか試してみたいわけだ。おれのチームは解体してひとりチーム(あるいは独立愚連隊。いずれにせよ、論理矛盾を起こしているなあ)となったので、カッコいい言い方をすると、おれ自身を分散オブジェクト化してフローの中に落とし込んでみようというのが狙い。まあ、そのコトバどおりにパーソナルシステムを構築できるかどうかは不明ですし、どっちかというとOffice 2007(正確には2007 Office Systemだっけ?)でやったほうが簡便だと思うけど。

で、悩ましいのが「Visual Studio 2005 extensions for .NET Framework 3.0(WCF & WPF), November 2006 CTP」。これは、.NET Framework 3.0の機能(とくにWCFとWPF)をVisual Studio 2005から使うためのブツと考えればいいのだろうか。であれば、導入したいのだけれど、11月6日リリースのCTPってのが、すごい引っかかる。Vista(.NET Framework 3.0)が出てもまだCTPかよ。あんなにWCFとWPFを喧伝しているわりにCTPって、どういうこと? みたいな。Orcas(というかCider?)先取りパックなら、.NET Framework 3.0を焦って出した理由って何? もしかしてVistaに“新しい”というイメージを付加したいから、メジャーバージョンをアップした.NET Frameworkを放り込んだだけなんじゃないの? みたいな(あれはホントに.NET Framework 2.5だよなあ)。

まあ、ブツブツ言いながらも、たぶん導入しちゃうわけだが、これで年明けに新版が出てきたらヤだなあ。アバレかねない。

さらに「ASP.NET AJAX 1.0 RC」なんてのも放り込んでみる。

ASP.NET AJAXは、ベータのころに発生していたエラーがきちんと回避されていた。あと、インストール中にVS2005から(相変わらずUACがらみの)メッセージが表示されたけれど、なにも考えずに[続行]ボタンを押した。これが吉と出るか凶と出るか、わかるころには回避策とかその意味とかは、どこかのWebに上がっていることでしょう(←ひどい)。

ところで、SP1を再導入して、VS2005を立ち上げたら、相変わらず「管理者権限でインストールしろ」というようなことを言われたのだけれど、マシンをリブートしたら出なくなったのはなぜだろう。アラートボックスには、「いつでもこのメッセージを表示する」のチェックボックスがあって、そこにはチェックが入っていたはずなんだけど。

よくわからないけれど、とりあえず使えるようになったので、よしとする(←ますますヒドイ)。

ちなみにIIS7.0の設定は一切行なっていない。このstupidGeekが入居しているサイトの大家(ホスター)からは「IIS7.0が使えるようになったよー」というお知らせメールが着弾しているのだけれど、まあ、しばらくは使わないだろうな。

SP1を適用してみた件

Visual Stuido 2005のSP1が(ようやく)リリースされたので(18日)、ダウンロードしてVistaマシンのVS2005に適用してみる。

もっとも、他の作業をしながらだったせいで、老人力が注意力を上回ってネットワークインストールとなってしまった。そのせいか、VS2005と同等かそれ以上の時間がかかったSP1インストールは、どうも失敗したらしい。製品適用後にVS2005を立ち上げると「SP1がリリースされているから、とりあえずそれを適用せい」(意訳)というアラートが表示される。

ネットワークインストールだったので、おそらく管理者権限でのインストールとはならなかったせいだろうなあ。悔しいがいったんアンインストールし、再度インストールすることに。

ところが、SP1のアンインストールにはVS2005のメディア(CDとかDVD)が必要なのだった。果てしなくうんざりして、とりあえず、自宅で作業することにする。まいったな。どうも。

あと、Expressシリーズも適用したほうがいいと思ったが、ひとつひとつインストールするのはクソ面倒くさいなあ。

Mono Meetingの資料

以下は会場で配布されたペーパーを入手できるURL。

で、これに付随した謎リンク集が、主催者のサイトに!

第4回 Mono Meetingに出席した件

4回目となるMono Meetingに出席。

一番乗りだったみたいで、おれの後ろを歩いていたという首謀者のid:atsushienoさんは、開口一番「Microsoftマークのリュックを背負った人がいて、これはもう確実に参加者だろうと思った」。

サプライズはartonさんがいたことで、思わず周囲を見回しK.Awasakiさんの姿を捜す。

「スラドで見てても、ホントにMonoって知名度ないのね」という一言からいかに狭間のテクノロジーが面白いかという話になる。MSフリークから見れば、.NET Frameworkがあるのに、なんでそんな辺境にいかなければならないの? だし、オープンソースな人たちからすると、MSでしょ? ということになるから、誰も積極的に拾いに来ないんだよね。というのが、artonさんの弁。もともとプラットフォームを越えたところで技術者しているartonさんらしいというか。だいたいバッグから取り出したマシンがMacというあたりが、すでにアレゲなわけで。というか「取材ですか?」とか訊かれて答えに詰まるという一幕もあったりして。

集まってきたのは、Linux(含むMac)系Java系をメインにしている人たちばかりで、このあたりはこれまでのMono Meetingと変わらない。ほとんどがハッカーで、実務よりの人はデータベース周りを見ている(らしい)人がひとりだけ。VMで盛り上がっている一群がいたけど、よくよく話を聞いていたら、.NET FrameworkによるTerminalソフト「ゲバラ」を作った人がいて、さっそく名刺交換。さらにセッション中だというのに大声で話をする人がいて、この人はPostgreSQLのコミッター。

したがって、基本的なVisual Studioの機能とか、Windows OSの基本的な機能とかをわかっている参加者はartonさんと首謀者のid:atsushienoさんくらい。まあ、Microsoftのテクノロジーを追っかけて検証して自身のプロジェクトに応用し実装するのが精一杯なんだろうけど、なんと申しましょうか。MSマンセーな技術者はMSの揺りカゴの中で一生を終えるんだろうなあ、などと不埒なことをボンヤリ考える。

結局、こういう人たちがテクノロジーの面白いところをゴソゴソやっているんだよな。中でもOracleデータベースとASP.NETを使用したシステムを構築している現場の技術者の話は面白かったな。そこからFinallyとCriticalFinally(だったっけ? Helpで探してもないんだけど。CriticalFinalizerObject?)の話が出て、どっちが本当のFinalなんだYO! みたいなネタが登場したり。あと、MS謹製のOracleドライバとOracle謹製のDBドライバの実装における思想の差とかね。

いや、MeetingのメインテーマはBoston Mono Meetingのレポートだったんだけどね。

そっちのネタとしては、.NET Framework 2.0への対応がぜんぜんなので、ちょっとなあ。ジェネリック周りが問題になってるらしく、ちょっと厳しい。あと、Windows.FormsもX11ベースなので、日本語は通らない。実用への道はまだまだ遠いというわけだ。じゃあなんで顔を出したのかというと、まあ、Monoを実用的に使うとか使わないとかはともかく、そこから.NET Frameworkを透かし見るのが楽しいというゆがんだ性格のおれにはうってつけなのであった。あはは。

石鹸箱のテスト

soapBoxに放り込まれているBill Gates関連の動画。



ちなみに、

type="application/x-shockwave-flash"

てのがちょっと悲しい。ま、しょうがないか。

廃止されるAPI一覧

とりあえず、メモ。

掲示板を求めてさまよった件

掲示板システムが必要になったのでASP.NET 2.0ベースのものを探しているのだが、なかなかいいのがない。

「AspNetForums JP」なんてのがeXeconnにあがってたっけなあ、なんて思い出していってみたら、これは1.1ベースで開発はストップしている。あわい望みを抱いて本家ASP.NETのサイトに飛んだものの、Starter KitsからはForumアプリケーションは影も形もない。

どうもForumアプリケーションはポータルサイト構築キットだのEコマース構築キットなどに取り込まれて、単体での提供はしないのが流行のようだ。困ったものだ。

で、結局「YetAnotherForum」にたどり着く。こちらはVS2005(ASP.NET 2.0)への対応が終了しており、Stableの表示も出ている。もちろんSQL Server 2000/2005対応済み。ソースとバイナリも拾える。

インストールその他については、(やる気のない)Wikiが立ち上げられていて、そこで読むことができる。まあ、アーカイブに入っているReadme.txtと変わりばえはしないけど。とりあえず「こうしろ」と書かれていても、その方法がよくわからない場合は、その解説が記載されたサイトにリンクされているので、あまりストレスはない(かもしれない)。とりあえずローカルで使用してみて、日本語その他問題ないようであれば(UTF-8だから問題ないような気がするけど)、そのまま本番に雪崩れ込む予定。

それにしても、車輪の再発明を禁じる文化によるものなのか、よいアプリケーションは取り込んでgood enoughを目指すOffice思想に感化されたのか、世界的なEAI思想なのかよくわからないけれど、単機能のアプリケーションを探そうとすると、思いのほか苦労するなあ。COM(というかActiveX)的モジュールはいっぱいあるんだけど。

これがいわゆるMSクオリティだったら、ちょっと悲しす。

もっとも、eXeconnはユーザーが少なすぎてメンテナンスもする気にならなかったというのが、真相だと思われるが。

.NET Framework 3.0関連

リリースされましたですなあ。

なんというか、感慨ひとしお(笑)。

  • .net Framework 3.0 runtime=http://www.microsoft.com/downloads/details.aspx?FamilyID=10cc340b-f857-4a14-83f5-25634c3bf043&DisplayLang=en
  • Windows SDK for .net Framework 3.0=http://www.microsoft.com/downloads/info.aspx?na=40&p=3&SrcDisplayLang=en&SrcCategoryId=&SrcFamilyId=10cc340b-f857-4a14-83f5-25634c3bf043&u=http%3a%2f%2fgo.microsoft.com%2ffwlink%2f%3fLinkId%3d74726
  • .net Framework=http://www.netfx3.com/

AjaxがいよいよASP.NETに取り込まれたようです

ASP.NET AJAX v1.0 βキター!!

って、まだ使いませんけど。

その変数はnullか?

ちょっとしたプログラミングクイズ。

Which would you use to test if a string is blank? And Why?
  1. x.Equals(string.Empty)
  2. x = ""
  3. x.Length = 0
  4. x = string.Empty
  5. string.Empty.Equals(x)

「Code Quiz: That Empty Feeling」(secretGeek)

おれはどれかなあ。2か3だなあ。理由は、1とか4とか5って、あまりお目にかかったことがないこともあるけど、より直感的だから、かな。英文圏の開発者なら、むしろ4のほうが直感的という判断を下すだろうけど。

VBが長いユーザーなら圧倒的に2なんじゃないかと思われる。よくわからんけど。

コンボボックスについて

ちょいと小粋な(ウソ)Windowsアプリケーションを作ろうとしているのだけれど、初手から行き詰ってしまって意気消沈中。

カンタンな話で、コンボボックスを2つ並べ、一方のValueが確定したら、そのValueにあわせて、もうひとつのコンボボックスの中身を取り替えたい。たとえばこんな具合。

ComboBox 1ComboBox 2
Aa、a'、a''、a'''
Bb、b'、b''、b'''
Cc、c'、c''、c'''
Dd、d'、d''、d'''

ComboBox 1から「A」を選択したら、ComboBox 2には「a」「a'」「a''」「a'''」が選択肢として登録され、「B」を選択したら「b」「b'」「b''」「b'''」が登録され(以下ry)という感じ。

なんかVB6.0のころにも似たような処理を書いたような気がするんだけど、もうすっかり記憶の彼方に消し飛んでいる。困ったものだ。

とりあえず、「ComboBox.SelectedIndex」を拾って、switch...caseで分岐させたけど、なんかかっこ悪い。XMLかなんかでテーブルを作ってデータバインドさせたほうが、Valueが増えたときにソースからイヂリ直さなくても済むので、そうしてみようかとか思ったり。

なんかこう、スマートな方法ってないんでしょうかね。ComboBoxそのものをListBoxっぽく拡張してみるとか。

などと誰ともなく訊いてみるテスツ。

vimのバージョンが上がっている件

ご存知のとおり、おれはvimユーザーで、OSを再インストールした際は、なにはともあれgVimのディレクトリを作るのはもちろん、手前のプラグインだのシンタックスファイルを山のように(やや大げさ)突っ込んであるvimfilesを%USERPROFILE%に、.vimrcと.gvimrcとともに放り込まなければ、先に進めないわけだ。

で、メジャーバージョンアップしたvimがリリースされているわけだが、タブ機能とかdiffが自前のエンジンで動いたりという話を聞くだけ(Webベースなので正確には「読むだけ」ですね)では、あまり触手が動かなかった。愛用している香り屋のvimもデイリービルドだったりするし。

というわけで、様子見を決め込んでいたわけですけど、補完機能をビデオにして紹介されている方がいらっしゃいまして、それを見たら、俄然、バージョンアップしたくなりました。

とりあえず、その動画を見よ!

なんかもう、VS並みでしょ? 上も下もナニカが表示されるため、肝心のメインペインがガクガクして使いにくそうだけど;-)。

もともと、dictファイルをフル活用することで補完っぽいことをしていたわけだけど、ここまでやってくれるのなら、バージョンアップしてもいいかなとか思う。動画はLinux上でPythonコードをいじっていて、あとはHTMLとかCSSとかXMLくらいしか対応してないようなのだけれど、おそらく普通のテキストファイルにキーワードを記述していけば、好みの言語に対応する(ハズ)。ということはC#でもVBでも、これまでのdictファイルを再構成すればいいのではないか。なんてことを漠然と考えたり。

WManagerを使って3ペイン状態にし、補完バリバリでコードが書けるなら、GUIを伴わない軽いEXEがわらわら作れる(ような気がする)。

というわけで、香り屋のvim7デイリービルドを落としてきたわけでございます。

お楽しみはこれからだ!

時差に関する悩みについて

とりあえず、次期Visual Studioというか、次の.NET Framework(つまり3.5)を待つと、TimeZoneのコンバートが楽になるっぽい。

この際、わりとメインになりつつある今のVista環境を破棄して、Vista+Orcas環境を作ってみようかと思ったり。OfficeもTRが出てるからなあ。

XPSのサンプルが上がっている件

XPSってのは、

The XML Paper Specification (XPS) makes modern documents possible for all. Simply put, XPS describes electronic paper in a way that can be read by hardware, read by software, and read by humans. With XPS, documents print better, can be shared easier, be archived with confidence, and are more secure.

Microsoft has integrated XPS-based technologies into the 2007 Microsoft Office system and the Microsoft Windows Vista operating system, but XPS itself is platform independent, openly published, and available royalty-free. Microsoft is using XPS to bring additional document value to its customers, its partners, and the computing industry.

「XPS」(Windows Hardware Developer Central)

だそうで、まあPDFに対するMicrosoftの回答だと思えばよろしいか。

Office 2007には保存形式にデフォルトで搭載されているので、たとえばおれがWord 2007で記述した文章を適切なセキュリティ設定を行なったうえでXPSで保存すれば、Webにそのまま公開することもできるわけだ。

それを新作でやっているのがsimplegeek(a.k.a. Chris Anderson)。

もしも、.NET Framework 3.0をインストールしたマシンがあれば、「introduction」ページをIEで見に行くとよろしい。「そんなもの入れたくねえ」というヒトはViewerが提供されているのでMSのサイトからダウンロードするといいかも。もっとも、viewerすら入れたくないヒトもいるだろうけど。

ダウンロードしてエディタで中を覗くとバイナリっぽいのだけれど、拡張子を「zip」に変えれば、xmlドキュメントのアーカイブだということがすぐわかる。ではWord 2007でオープンできるかというと、実はできない

PDFに取って代わることができるかどうか、とくにデジタル媒体における著作権方面において有効なソリューションを構築できるかどうか、生温かく見守る所存です。

Webサービスが加速している件

本日、価格.com WEBサービスの第一弾として、価格.comから商品検索とアイテム情報取得用のAPIと、食べログ.comから、レストラン情報を取得するAPIを一般公開しました。

「価格.com WEBサービスを公開しました!!」(価格.com)

id:naoyaさんKU。

これは楽しいなあ。Yahoo!のWebサービスさえ楽しみつくしてないおれがそういうこと言ってもいいのかどうかという疑問は残るにせよ、これは楽しい。こういう動きが加速されないと、PCで楽しいことなんか、ほとんどないもんね(それは言い杉)。

さらに楽天のアンオフィシャルなWebサービス提供サイトも存在するようです。この動きがどんどん加速するといいなあ。

その上で、Mash Up! Mo Mush Up!!

VB6でWCFを使う

リリースされたばかりのinterop Toolkitを使うと、レガシーなVB6のアプリケーションを活用できる、というお話。ソースをリライトするより楽でしょ? というわけだけど、個人的には書き直すほうにシアワセになれる可能性があるような。

  • Interop Toolkitをインストールする
  • VS2005を起動し、InteropFormのプロジェクトテンプレートを使って新しいプロジェクトを作成する(こうしないといけないわけじゃないけど、これが一番カンタン)
  • フォームからサービスの参照設定を使う
    • 「ツール」-「インターロップラッパークラスの生成」
  • プロジェクトをビルド
  • VB6を起動
  • VB6プロジェクトに参照設定で先ほどビルドしたdllを追加
  • これで他のVB6フォームを呼び出すのと同様に、InteropFormを呼び出すことができる

ネタ元は「Ali Pasha's WebLog...」から。誤訳のご指摘は随時受け付けております。

なかなか思うように逝かない件

ローカルにホストされたガジェットを作ってみようと、「Windows Liveガジェット SDK」にあるような設定をIE7に施すと、そもそもwww.live.comにサインインできないという大罠にはまる。

最初はSoapBoxとかと同様に、なんかあったのかと思ったのだけれど、ふと思いついてXPのIE6で逝ってみたら、普通にサインインできるし。

「Trusted sites」の設定か、Internet Zoneに対するセキュリティ設定の影響か、はたまたファイルキャッシュの設定か。どうもTrusted Siteの設定とInternet Zoneに対するセキュリティ設定のせいのような気がする。

前途は果てしなく多難なのであった。

IIS7とVS2005とわたし

Vista RC1にVS2005を突っ込んで、IIS7の上で走るWebアプリケーション(もどき)を作ろうと四苦八苦していたのだが、cassiniで動作を見て、いざlocalhostに配置しようとしたら、IIS7に、

お前なんかに配置の権限はない。metabaseをいじって出直せ。

的なことを言われ、茫然自失状態にあったわけだ。

しょうがないので泣きながらinetmgrを立ち上げて該当しそうな項目を調べてみたり、「aspnet_regiis.exe -i」してみたり、当然googleさまはもとよりLive Searchも動員してWeb漁りに精を出していたら、すっかり夜になっていてびっくりした

で、結局、「プログラムの追加と削除」(になるのかな? 英語版では「Programs and Features」(などとさりげなく自慢))で「Turn Windows features on or off」を開き、要は「導入した/してないコンポーネント」から、

「Internet Information Services」
   |
「Web Management Tools」
   |
「IIS 6 Management Compatbility」

とたどり、「IIS Metabase and IIS6 configuration compatibility」にチェックを入れてインストール。おれは、そのまえに「aspnet_regiis.exe -i」していたので、「ASP.NET」にもチェックが入っているけれど、もしかしたらデフォルトでは入ってないかもしれない(そんなことはないだろうなあ)。

これでOK……かと思いきや、なんたることか、Visual Studio 2005をAdministratorモードで起動しなければならない。

たとえば、Administratorsグループに追加されているユーザーのまま、VS2005を立ち上げてアプリケーションをパブリッシュしようとしても、やっぱり「お前なんかに(ry」といわれるのだ。

というわけで、VS2005のアイコンを右クリックし、「Run as Administrator」で起動する。まことに面倒くさい。とはいえ、これでテストアプリケーションがIIS7の上で(という言い方でいいのか?)走るようになった。何はともあれめでたい。

まあ、たしかに非常にセキュアではあるわけですけど、それにしてもなあ……。

ちなみに参考にしたのは以下のサイト。心から御礼申し上げます。

[追記]

いちいち起動対象を右クリックして「Administratorで実行する」のが面倒なので、プロパティの「Privilege Level」の「Adminisitratorで実行する」をチェック。これで今までどおりに使用できるざんす。

ついでに、というか忘れずに「XKeymacs」も同様の設定。こうしとかないと、Administrator権限で起動したアプリケーションには、そうでない権限で起動したアプリケーションからの影響が及ばないため。

Atlas、その後

思い余って帽子に訊いてみたら、

Windows SDKをインストールしていれば自動的に入るようです。

などという回答メールが着弾した。

「えー。だってWindows SDKを導入してからVS2005を立ち上げたけど、テンプレートには表示されてなかったぞ」と首を30度ほどひねりながらVS2005を起動してみたら、Atlas Web Siteテンプレートが表示されて驚倒する。なんでやねん。

どうもWindows SDKを導入した後、一度、マシンを再起動したほうが確実かもしれない。再起動せずに、いろいろなものを導入できる日は、果たしてくるのだろうか。

てか、RC1にそんなことを期待しちゃダメなわけですけど。

VistaにAtlasが導入できない件

Windows Vista RC1にVisual Studio 2005を突っ込みながら、Windows SDKのISOイメージをダウンロードしてDVDに焼いてインストールしたら1日が終わってしまったのでびっくりした。

SDKを放り込んだ後、AtlasのJuly 2006 CTPを放り込もうとしたら、C#用のプロジェクトテンプレートがErrorを起こしてインストールできない。何度やってもVBしか導入できないため、眠ることもできず台風の進路を見ながらのインストール大会となってしまう。

C#とVBを同時にインストールしようとするからダメなのかと思い、C#だけのインストールとか、リペアインストールとかいろいろ試みるが、結局ダメ。原因の追究とか同様の事例がないかどうかは、明日(というか今日)、検索サイト(Live Search)をフル活用して探してみる予定。まあ、予定は未定なんですけどね。

なんだそりゃ? な件

MSDN Subscription では、会員様へのベネフィット提供の一つとして MSDN サブスクライバ ダウンロード サイトより、Microsoft プラットフォームにおける開発に必要となる製品の提供を行っております。この ダウンロード サイトにおいて提供を行っている製品のうち、Microsoft® Java Virtual Machine (以下MSJVM) を含む製品の提供に関しては2005 年 12 月より、順次提供終了の処置を行わせていただいてまいりました。この提供停止は、MSJVM の配布に関するSun Microsystems, Inc. とMicrosoft Corporation との間の和解合意に準拠するため実施するものです。

これに関連いたしまして、日本語版 Visual Basic 6.0 につきましては 6 月 30 日で一旦提供を中止させていただきました。しかし、Visual Basic 6.0 で開発されたアプリケーションは現在でも数多く存在し、それらのシステム メンテナンスのために提供が望まれております。そのため、多くのお客様からのご要望があったことを受け、この度 MSJVM への依存性を排除した形式を作成しなおし提供を再開する運びとなりました。現在、日本語版 Visual Basic 6.0 は MSDN サブスクライバ ダウンロード サイトよりご利用いただけます。 どうぞご利用ください。

MSDN サブスクライバ ダウンロードサイトからの日本語版 Visual Basic 6.0 提供再開に関するご案内

うわー。.NET最大の敵であるVB6.0を、再サポートする気なのか。

もうこうなったら、VB6.0はこのまま独自の進化を遂げて欲しいですな。マネージドな世界でアプリケーションを作りたいなら.NET(C#)で。お手軽アンマネージドなアプリケーションならVB6.0で。とか。

この措置をマイクロソフトならではの“優しさ”ととるのか無謀ととるのか、なかなか難しいところだなあ。

あと、再サポートにあたって「この度 MSJVM への依存性を排除した形式を作成しなおし」とあるんだけど、どの程度、これまでのVB6.0と違うんだろうな。依存性って、そんなにあったっけ?

てか、やっぱりVisual Basicマガジンってのは、アリだったんだよなあ。まあ、いまさらですが。

言語シンポジウム

こんなことをやっていたのかあ。へぇ。

基調講演はやっぱりAnders Hejlsbergだったのね。まあ、当然といえば当然か。

Paul Vickの「VB: Where are you going, where have you been?」は、ちょっと見てみたかったな。いや、それよりもGilad Brachaの「Dynamically Typed Languages on the Java Platform」とJohn Goughの「Dealing with Ruby on the CLR」ですかね。Jim Huguninの「Dynamically Typed Languages on the Common Language Runtime」はF#だからパスかなあ(←勘違いしてる)。面白そうだけど。まあ、見たところでどうなるわけでもないのだけれど。

それよりもPolita Paulusの「BLINQ」ってなんだろう。

仕事そっちのけでVS2005と戯れる

平井さんのPowerPointとサンプルをダウンロードしていろいろ遊んでみる。ついでに拡張しようとスクラッチで作り始めたら、動かない。

結局、古いWSDLを使うと、ItemLookUp()が効かないので、新しいバージョンを使わなければならないという、くだらないことにはまっていた。てゆうか、お前、どんだけふるいの使ってんだ、と。

どうもApp_Codeディレクトリを作ってWSDLをぶっこんどけば、勝手にProxyを作ってくれるので、使いまわしちゃうんだよね。ははは。

ま、これでおれも懲りてちゃんとWeb参照を使うようになるでしょう。

想定していた動作をするようになったのでパチパチいじっていたら、通りかかった上長が背後から覗き込み「書影が出るんだー」と声をかけてきた。

「Amazonに行けば同じ画像が見られるけどねえ」。

……。大きなお世話です。

  • WSDL and Schema Locations=http://docs.amazonwebservices.com/AWSEcommerceService/2006-06-28/ApiReference/ServiceVersioningArticle.html

他力本願モード絶賛展開中

先のエントリ(「Googleがカッコよく見える件」)を書いて思いついたんだけど、キーワードに合致する動画がYouTubeに放り込まれたらアラートが出て[OK]ボタンをクリックすると動画内容を表示するガジェットって、よくね?

だれか作ってくれないかなあ。

VS2005雑感

2.0ベース計画のために、Visual Studio 2005を立ち上げる機会が増えているわけですけど(ぉぃ)、なんというか、コードビハインドだのデザイン部分の分離だの、個人が楽しみで使うには見通しの悪いファイル構成になるのはどうにもなあ。

PHPやレガシーASPはHTMLの中にスクリプトを埋め込むことで、アプリケーションを実現していたわけだけれど、どうもそのほうがスキルの高くないユーザー(たとえば、おれとか)にしてみると、自分が何をやろうとしているのかが手に取るようにわかるからありがたい。

以前「海女さんレベルにならないと顧客が満足するUIをJavaScriptでは作れない」という話を耳にしたことがある。「JavaScriptでAjaxなんてのは“どれだけ息を留めていられるか”が出来に影響する」みたいな裏話(?)で、要は息を殺してそこに集中しなければならないくらい労力を要するということ。

おれぐらいのへタレプログラマだと、たいしたUIなど作れないし作る気もないから、25メートルプールを息継ぎなしで潜水できればいい。海女さんになるつもりはないのだし。そうすると、下手したらレガシーASPでも十分だったりするわけだ。

そういうユーザー向けに(Expressも含めた)Visual Studio 2005が作られているわけではないことくらい重々承知の上だけれど、実際に、ローカルでWebサービスを使ったバカアプリを作ろうと思うと、とたんに短いソースが書かれたたくさんのファイルが雨後の筍のごとくプロジェクトファイル内に散らばるのはいかがなものかなあ、という気が強くしたので書いてみました。

まあ、馴れればなんてこたないんだろうけどね。

Amazon Web Servicesに関する覚書

「stupidGeek」のASP.NET 2.0ベース化を着々と進めているわけですが、AmazonのWeb Serviceがうまくなくて、いろいろ悩む。

なにしろ、マイグレート後のファイルの位置関係、とくに「App_Code」以下に格納されるファイル群がナゾ杉。旧Webrefrernce関連のファイルが放り込まれたり放り込まれなかったり、別プロジェクトのソースコードが放り込まれたり放り込まれなかったり。

さらに「Migrated」ディレクトリ内にもソースコードが放り込まれていて、これはどうも削除してもよさそうなんだけど、それなら「.bak」とか拡張子名を変えろよとか憤ったり。いや怒ることはない。

まあ、基本的にどのような目的を持ったファイルが「App_Code」以下に格納されるのかがわかってないゆえの混乱ではあるのだけれどね。単純にソリューションエクスプローラを眺めているだけだと、同じファイルがあっちゃこっちゃに転がっていて、どれを使用しているのか、サパーリわからん、ということになる。

というわけで、個人的な“Web 2.0”は、果てしなく遠いような気がしたりしなかったり。

とりあえず、下のblogと大本のドキュメントをよく読むといいかも。

それよりもなによりも、日本版のAmazon Web Services Blogである「Amazonアソシエイト・プログラムブログ」はひどすぎる。バナーの紹介ばっかりで開発向け情報は皆無になってしまった。デザインもひどいし、どうしたものかなあ。アルファギーク;-)は英語を嫁ということか。

当サイトに関してちょっとわかったこと

VPCでASP.NET 2.0環境を構築しておいて、1.1ベースのstupidGeekをそのままコピー&ペースト。各ディレクトリのパーミッションをinetmgrで設定する。この状態で改めてホストOSからアクセスすると、普通に表示されて、書き込みその他も問題なく動作した。

そのうえで、www.nardis.orgのアプリケーションエラーを見ると、やはりどうもセキュリティ関係をホスト側でいじってるくさい。おかげでVS2005/VS2003.NETからのアクセスもできなくなってるっぽい。FTPは有効なので、Explorerからファイルを放り込むことは可能だし、おそらくVS2005からFTPを使ったアプリケーションのアップロードも可能だと思われる。

なので、あとはサイト管理者に各ディレクトリに対するパーミッションの設定一覧を送るなどして、適切に運用してもらえれば、現行のサイトはそのまま表示されるに違いない。

とはいえ、もうなんか、飽きてきたしなあ。どうしたものか。

学術論文検索 2.0 β

いつの間にできてたんだ?

Windows Live学術論文検索では、学術雑誌や記事を検索して、記事のタイトル、著者名、概要、および会議の議事録を探すことができます。

Windows Live学術論文検索を使用すると、無関係な情報を検索して時間を無駄にすることなく、目的の論文や記事をすぐに探し出すことができます。検索結果を著者、日付、雑誌、または会議別に並べ替え、プレビュー ウィンドウを確認すると、マウスを上に移動するだけで記事の概要と引用情報を参照できます。

このサービスは、現在はベータ版です。まだ正式にはリリースされていませんが、多くの機能をすぐに利用できます。現在は、情報科学、物理学、電気工学、およびそれらの関連分野の記事がインデックス登録されています。

Academic(Windows Live Search)

ということだそうで。

面白そうなのは「検索マクロ」。早い話がフィルタを作るわけだけれど、それを保存しておいたり、他人様が作ったマクロを「ギャラリー」という形で参照/活用できる。これをクライアントから呼び出して“英和辞典”みたいに使えるようなアプリケーションというのはどうか。誰か作らんか。

もっとも、ストアされている論文だったり雑誌や会議(!?)はすべて欧米のものなので、一介のバカ編集者には関係ないといえば関係ない。てか、Academicじゃねーしな。

プロトコルの拡張をしてみたい

いまさらながらのネタで恐縮だが、高木ではじまって浩光で終わる、その筋では有名な方のエントリを読んで、いたく感銘を受ける。

感銘を受けるったって、全然本筋じゃないところで「やるなあ」と唸ってるわけなので、その筋系の話を期待されても困る。

なにが面白いって、2006年6月11日付の「Winny可視化のため、WebブラウザにWinnyプロトコルハンドラを」で取り上げたアイデアを、6月25日付けの「Java用「winnytp://」プロトコルハンドラを作ってみたら簡単にできた」で、具体化し、さらに7月1日7月8日と、日を追うごとに拡張されてゆくところ。

これは面白い。というわけで、C#で似たようなこと(WebRequestの拡張)を書きはじめたわけだが、よく考えたら、サーバー(というか相手PC)のURLとポートがわからなければ、リクエストの投げようがないわけだ。

Winnyからすると、ノード情報を手繰ってサーバーに行き着き、めでたくP2P接続が可能になるわけだが、ノードを手繰るなんて面倒くさいことはしたくない(ダイレクトに相手PCとおしゃべりしたい)。とはいえ、そんなことができたら、Winnyの売りである「匿名ファイル共有」が根底から崩れてしまう。

んじゃ、高木さんはどうやってるわけ? 彼の日記を見る限りではサーバー(というか相手PC)とポートが特定されてるし。

デッドマン二世に話を聞きに行ったら「とりあえずWinnyを導入して、ファイルの流入が始まったら、ダンプとればいんじゃね?」というサジェスチョンをいただく。

えー、そのためにWinnyいれるのはヤだなあ。

というわけで、この場を借りて、すでに(いまだに)Winnyを使っていて、TCP/IPのダンプ情報をお持ちの方を広く募集させていただきます。応募者とダンプ先のPC情報は一切表に出しませんので、どうぞよろしくお願いいたします。

情報が入手できるまでは、リアルオーディオのストリーミングプロトコル(という言い方でいいのか?)とおしゃべりできるかどうか、やってみることにする。

おれとしては「プロトコルの拡張」ができればいいので、まあWinnyじゃなくてもよかったりはするのだけど。

Oracle Expressのこと

そういや、Oracleも「Oracle Database 10g Express Edition」などという$freeのDBを出していて「Expressはfeeの代名詞かよ」とか思ったわけだ。

これはまあ、日本語は使用できるけど(Oracle Database 10g Express Edition (Universal)を選択する)日本語のドキュメントもないし、用意する予定もないっぽいので、お金のないOracle対応システムを構築する開発者しか使わないだろうなあ。

で、ダウンロードプロダクト選択の前に、エンドユーザーライセンス同意書が表示されるわけだけれど、最初の輸出規制条項がある意味すごい。なんというか、過去にテロ組織が使用していたことがあって、過敏に反応しているような気がしないではない。もっとも“バイオ系データベースにはOracle”なんて言ってた時期もあったし、同時にバイオテロの脅威も(局所的に)盛り上がっているわけだし。

そういう類の文言って、Microsoftにもあったっけな? ちゃんと読んでないことがバレバレですが、たぶんあるんだろうな。どこかに。北朝鮮やキューバ、スーダン、リビア、シリアの人たちへは輸出できません、とか。そうすると、それらの国々にはMSDNユーザーはいないということか。

そらまあ、そうだろうなあ。「Your potential, Our Passion」の可能性が「テロ行為」じゃあ、パッション萎え萎えですものね。

……いや、それはそれでパッション燃えまくりなヒトもいたりして。

SQL Promptが残念だった件

某所で知って「これはいいかも」とか思っていたのだが、実際に使おうとしたらぜんぜんダメ。

VS2003/2005で動作しないこともさることながら(次のバージョンでは対応するらしいけど)、気がついたら「9月1日までは$free」なんて但し書きになってるし。

もっともSQL Server Managemant Studio Express CTP版から使うことはできるので、データベースをいじりたい“だけ”のユーザーにはいいのかもなあ。SQL Server Express+SQL Server Managemant Studio Express CTP版+SQL Promptで、清貧SQLプログラミング。

ある意味、地味すぎて最強。

  • SQL Prompt=http://www.red-gate.com/products/SQL_Prompt/index.htm

FSデベロッパーズプラットフォームEx

某著者との間で「AtlasだWPFだ言っても、Windows Serverの無償ホスティング業者が現われない限り、LAMPの芝生のほうが青く見えるよねー」などとメッセージが飛び交った翌日、無料ホスティングが登場した。しかも日本国内。もっとも無料なのは先着順らしいので、1か月後にどうなってるかわからない。

とはいえ、独自ドメインはないしメールアドレスも取得できないし、それvwdhosting.netと、どう違うの。という気がしなくもないのだけれど、まあ、30日限定じゃないし、DBもvwdhosting.netより20MBほど多いし、なによりも日本語なので、アリなのかもしれない。

というわけで、さっそく登録。

「評価・検証目的」の利用オンリーで「商用」は不可、SMTPは未提供(提供予定はないみたい)、定時メールアンケートへの回答がなければアカウント削除、3か月間FTPアクセスがない場合もアカウント削除などとなっていて、ますますvwdhosting.netと同じようなシステム。

アンケート一発目にメールアドレスとかパスワード設定入力とかあるわけだが、「サービス、イベント等の情報を」受け取るか受け取らないかのチェックボックスがあって、デフォルトでチェックオフになっていたから、そのまま進んだら、「受け取らなきゃダメ」と警告を受ける。そんならデフォルトでチェックしとけよ。

アンケートに答えていったら、読んでいる雑誌のリストがあって、今はなき「dotNETマガジン」が、今にも亡くなりそうな「Windows Developerマガジン」と併記されていてぐったりする。てゆうか「.NETマガジン」になっていたので、もしかすると別雑誌かもしれない。まあ、いいけど。

それよりもなによりも一番気になったのが、無料ホスティングの大元が“ファーストサーバ”であるということ。あの例のYahoo!jpの子会社にしてヨセフアンドレオンとともにACCSの名を天下に知らしめ