マイクロソフトの開発製品開発部からのプレゼントにより、急遽参加することにしました。
VS2005 のときも、同様のプレゼントがありました。そのとき、某さんから「これを勉強会に参加してもらうことのネタにしたくない」というお言葉がありましたので、「じゃぁ、個人的に配っちゃおう」と、3人決めたのが前回のエントリ。その後、某所に「提供して」とのメッセージが流れていることに気がつくorz
私の分は、1つは「Silverlight を囲む会」に提供しました。「どう使ってもらってもいいです。」とお渡ししましたが、代表さんががめてしまったと思われます。
1つは、画伯にお渡ししました。画伯の、「おにょれ、敵か!」リストから削除していただくための賄賂でございますです。だって、ナメクジの被害が、本当にひどくて...想像してみてください。
1つは、Ognacさんにお渡ししました。前回、VS2005 のときに期待を持たせてしまったので、そのお詫びです。
ではみなさん、Visual Studio & .Net Framework プロダクト フィードバック センター へ登録の上、そうですね、3つ以上のフィードバックをすること!!(MUST)よろしくお願いします。
そんなこんなで、750万円相当の「権利」が集まっていたことになりますね。
今回のグダグダ。借りたプロジェクターの、緑が死んでた。「部屋を暗くすれば・・・」って、そんなので、「鮮やかさ」は変わっても、「色合い」まで変わるわけないじゃないですか(白い蛍光灯なので、そう変わらない)。
部屋によって、電波の善し悪しが変わります。建物の仕様です。
セッションの方ですが、黒龍さんのマジックに期待していたのですが。。。1つですか、そうですか。いや、楽しめました。じゃなかった、勉強になりました。「空気読め」じゃなく、「距離を読め」ですね。・・・激ムズですorz
酢酸さんのセッション。なんで「加速度センサー」なのに、常時数値が出ているんですか?!わかりません、教えてください!!それと、小さいものを持つときは、カメラのことを考えてください。おながいします。
お昼。午後から教室が移動になります。荷物は持って、お昼ご飯に出かけてください。ただし。今後、LT 話者と司会者はお昼に出かけないでください。お願いしますです。
お昼ご飯買い出し隊が、お昼を食べられなかった件について、一言。「 」←ここに当人のコメントが浮かびます。見えない?気愛が足りません。
「イカロス」というと、お父さんの注意を聞かずに太陽に近づきすぎ、蝋が溶けてしまい、墜落するのですが、それでいいのですか?!それより何より、大鷲、コンドル、ミミズク、白鳥、ツバメという組み合わせは、タツノコプロじゃないですか!!
ライセンスの有効期限は、前もって調べておきましょう。前日動いたからって安心していたら、当日切れていて大変な目に遭います。
浮動小数点が、なにげにおもしろかった件。なんて仕様だ!!→Microsoft
画伯が2枚目な件。さらっとスルーする件。「ぶっちょめす」な件。
羽の生えた人が、途中でハムスターに変身する件。この辺で、睡魔にとらわれてしまった件。
twitter で、中さんがいなくなると、英語 SPAM が割り込んでくる件。センサーを付けられてる?!
おみやげは、ちゅきさんが写真に撮られています。今回、私からはシアトル土産を提供いたしました。大外れを引いた黒龍さん、期待させてごめんなさい。
USB メモリ付きボールペンを持って帰られたのはどなたでした?256MB なんです、ごめんなさい。
懇親会1次会場での話題。
ハーブを育てる技術。いや、難しいんですよ、これが。雑草のくせに!こんど、ローズマリー持って行きますね。
画伯の呪い。上に書いたのでもういい。
花子さんによる、じゃんぬさんの感想。必ず出るよね、じゃんぬさん。
でっかいプロジェクトのコンパイルについて。某、掲示板の話題。
聞き方っちゅうもんがあるだろ、ってことについて。某、掲示板の話題。
とりこびっちがぴえろっちに勝った件。
「毎晩パスタです」な件。
無謀にもりょーいちさんに退行する件・・・なんでこんな漢字に変換する!(T^T)>ATOK でも、植物は、動物ほどおもしろくないのよね。ひっそり公開中→Live Space 上のアルバム
なんだか、MSDN のサブスクライバ登録がうまくいかない人が多いようですね。どこかで集中して、情報交換しましょうか。
Vista の UAC、ホント、評判悪いですね。このブログへの検索エンジンからの参照は、「お待ちください画面」、「なからいさえさん」、「ボタン押下」などに並んで5強に入ります。
でも、私は、そんなにじゃまだと感じたことはありません。家で1台、会社で数台、Vista をインストールしています。家では Users グループ、会社では Administrators グループで使っています。ここ最近、UAC 画面を見たことは、家ではありません。会社では、レジストリ エディタを起動したり、インストーラの試験をするので、しょっちゅう見ています。
それで、「鬱陶しい」といわれる UAC ですが、通常の使用で本当に鬱陶しいですか?
開発やテスト業務に使う分には、確かに鬱陶しいです。先述のように、レジストリ エディタやインストーラは、起動するごとに表示されますからね。
でも、家のマシンで鬱陶しいと思ったことは、初期設定がすめばありません。いえ、家のマシンも鬱陶しいです。でもそれは、Vista ではなく、AV ソフトが、です。
私は今、Kaspersky を使っています。おそらく、設定によって変わるとは思うのですが、鬱陶しい。
このソフト、何かのソフトウェアがインターネットにアクセスしようとすると、「**が DNS サーバにアクセスしようとしています。許可しますか?」と聞いてきます。その次に、「**が、アドレス xxx.xxx.xxx.xxx にアクセスしようとしています。許可しますか?」と聞いてきます。
Windows Messanger の場合は、もっと鬱陶しい。どこかのバージョンで、PtoP になったのですか?おそらくオンライン状態を送信するためだと思うのですが、登録している人の数だけ「許可しますか?」が出てくるorz
また、MicrosoftUpdate などでアップデートすると、「最後に検査してからファイルの内容が変わっています。実行しますか?」と聞いてくる。鬱陶しい。。。
でもね、思うのです。本当は Vista も、これくらいやるべきなんだろうな、と。
Vista の UAC は、今のところ、ファイルのマニフェストで「管理権限が必要」とマークされているものを実行する場合に、「管理者として実行しますか?」と聞いてきます。では、「管理権限が必要」と判断するのは、誰ですか?
そのソフトウェアの開発者です。では、管理権限が必要とするそのソフトが、どんなことをするので管理権限を必要としているか、ご存じですか?
期待する以外の動作(取扱説明書に書いていないこと)をしないことは、我々にはわかりません。署名されていなければ、ウィルスにとりつかれる可能性もあります。この場合、我々にはウィルスがとりついていることはわかりません。
「開発者の自己申告である」、つまり「羊の皮をかぶったオオカミを防げない」という意味で、UAC は(全く無用とは言わないが)無用の長物だと思います。ここは、「開発者の意図」ではなく、「コードの意図」を警告しなければならないと思うからです。
「コードの意図を警告する」とは、どういう事でしょうか?そのために、Kaspersky の動きをあげました。このソフトは、レジストリに対する書き込み、チェックした後に変更がある実行可能コードの実行、ネットワークに対する応答用ポートの設置、ネットワークの彼方へのデータ送信などの「動作」を検知し、使用者に許可を求めてきます。
以前にもエントリしていますが、はっきり言って、鬱陶しい。
しかし、「何を許可しようとしているか」を理解すれば、使用者にとっては安心できる環境となり得ます。
とはいえ、重要なことなので繰り返しますが、鬱陶しい。この鬱陶しさと安心の妥協点。それが、UAC が向かうべき点ではないかと思います。
ネタもと:なぜこうもレビューされてないコードを記事に書く?(がるの健忘録)より
ん、、、すごいです。この、勘違い、すごすぎます。おもしろいネタをありがとう>がるさん
えと、なんか、ネタの元ネタ、注記が入っています。それでも、だからこそ、ネタにする・・・ネタができた。
わずか数行で"ものすごいテーブル"に! - jQueryプラグイン「Flexigrid」(マイコミジャーナル)より:
ここではPHPを使用し、MySQLから郵便番号データを取り出してJSON形式で返すサンプルファイルを作成してみた。
function sanitizeTag($var)
{
if ( is_array($var) )
{
$var = array_map("sanitizeTag", $var);
}
else
{
$var = htmlspecialchars(trim($var));
}
return $var;
}
$postdata = sanitizeTag($_POST);
(以下略)
で、この、sanitizeTag 関数を通したものを、MySQL に、文字連結で渡している、と。
なんていうか。。。だからさぁ、「サニタイズ」という言葉だけで括るのやめようよ。
がるさんところに書いてあるように、また、注記が入っているように、この sanitizeTag 関数は、HTML に出力するためにはサニタイズしているけど、SQL としてはサニタイズしていない。単に「入力は、サニタイズしてから使う」などというから、こういう間違いをする。また、HTML としてのサニタイズも、おそらく不完全(なんだよね?>がるさん)。
「サニタイズ」は、使う対象に対して、使う直前に行う必要があります。もう一度書きますよ。「サニタイズ」は、使う対象に対して、使う直前に行う必要があります。
また、最近は「ハンガリアン使うな」が言われ出していますが、これ、正しくは、「型によるハンガリアン(システム ハンガリアン)使うな」です。そうではなく、変数の目的によるハンガリアン(アプリケーション ハンガリアン)は、大いに使うべきです。
変数 $postdata を、アプリケーション ハンガリアンによって改名してみます。たとえば、$htmlEscapedPostdata だったら。こうしておけば、HTML に対しては比較的安全に出力できるが、SQL に対しては安全ではないことがわかるでしょう。もちろん、「HtmlEscaped」だと長いので、適切に短くするのは可。ただし、ルールを決めて、そのルールを守りましょう。このように、アプリケーション ハンガリアンで変数を記述しておけば、「使う直前に」サニタイズすることの必要性は薄れます。
もっとも、この「使う直前」の元々の意味は、「ウェブアプリケーションで、ユーザ入力をサニタイズして、ユーザに確認させる画面に送付し、確認画面から戻ってきたものを使う」事に対する警告なので、ここで書いたこととは意味が違います。