諸君、私はIEが嫌いだ

2007/10/20雑記

諸君、私はIEが嫌いだ
諸君、私はIEが嫌いだ
諸君、私はIEが大嫌いだ

デフォルトで入っているのが嫌いだ
アンインストールできないのが嫌いだ
シェルに組み込まれているのが嫌いだ
Windows Updateで使わなければならないのが嫌いだ
バグが多いのが嫌いだ
セキュリティホールが多いのが嫌いだ

95で 98で Meで 2000で
XPで Vistaで MacOSで Unixで

世の中に存在するありとあらゆるIEが大嫌いだ

綿密に入り組んだHTMLとCSSが IEによりいい加減に解釈されるのが嫌いだ
CSSファイルのセレクタ毎に並べた属性と値がページ保存でバラバラにされたときなど心が沈む

OSと密接に関連しているのが嫌いだ
悲鳴を上げてIEに読み込ませたWebサイトが
OSごとクラッシュさせたときなど 胸がすくような気持ちだった

悪徳な業者により放たれたJavaScriptが私のシステムを蹂躙するのが嫌いだ
恐慌状態に陥った初心者がポップアップを何度も何度も消している様など嘔吐すら覚える

IEのみ利用出来るActiveXが嫌いだ
ActiveXの脆弱性が 吊し上げられている様などはもうたまらない

不安定なIEが私のクリックしたページと共に金切り声をあげるOSにばたばたと薙ぎ倒されるのは最低だ
哀れな抵抗者達が雑多な小細工で健気にも立ち上がってきたのをOSがシステムごと木端微塵に粉砕した時など絶頂すら覚える

CSSまわりが無茶苦茶な実装なのが嫌いだ
必死に作成したcssファイルが蹂躙され
IEだけでレンダリングが崩れてしまう様はとてもとても悲しいものだ

MSの物量に押し潰されて 殲滅されるのが嫌いだ
IE7に追い回され Lotus 1-2-3の様に地べたを這い回るのは 屈辱の極みだ

諸君 私はIE撤廃を 天国のようなIE撤廃を望んでいる
諸君 私のブログを読むWindowsユーザ諸君
君たちは一体 何を望んでいる?
更なるIEを望むか?
情け容赦のない糞の様なIEを望むか?
鉄風雷火の限りを尽くし三千世界の鴉を殺す嵐の様なIEを望むか?

Firefox!!
Opera!!
Safari!!

よろしい ならばIE撤廃だ
だがこの窓の中でインターネット普及以来耐え続けてきた我々にただのIE撤廃ではもはや足りない!!

Outlook Express撤廃を!!
Windows Live撤廃を!!

我らはわずかに30%に満たないシェアにすぎない
だが諸君は一騎当千の古強者だと私は信仰している
ならば我らは諸君と私で総力70%のネット廃人となる

IEを最高と信じて眠りこけている連中を叩き起こそう
彼らの髪の毛をつかんで引きずり降ろし眼を開けさせ思い出させよう

連中にIEのひどさを味あわせてやる
連中にIEの危険さを知らしめてやる

天と地のはざまには奴らの哲学では思いもよらない危険がある事を思い出させてやる

一千個のIEのセキュリティホールで
連中のOSを燃やし尽くしてやる

「XSSコマンド発動開始」
「バッファオーバーフロー発動」
「最後のIEユーザにバックドアを」
目標microsoft.com

第二次 ブラウザ戦争 状況を開始せよ

征くぞ 諸君

追記 2008/05/25

元ネタ: 諸君、私は戦争が好きだ

2007/10/16(火)あるプログラマの憂鬱

XMLを処理するプログラムならXMLパーサを使って欲しい。
なんで1行にタグしかないということが前提なんだろうか。
しかも処理するXMLタグのハードコーディングはやめていただきたい*1
処理するXMLの中にあるデータをなんでユーザが指定してやらなければならないのか…
ファイルに書き出すときも\t\t\t<tagname>なんて感じになってるし…
フォームの要素をデフォルト名のまま*2ではなく、判りやすい変数名を付けてよ
メソッドは機能ごとに分割していただきたい。。。長い、長すぎるよ。っていうか、同じような処理が1つのメソッド中に何個もあるし…
スコープが広すぎて変数多すぎ……デバッガで追っかける身にもなってくれ
というか、何でプログラム作成者じゃなくて自分がメンテしてるのだろうか。隣に座ってるのに。。。
メンテするのはいいのだけど、仕様書は?

この記事はフィクションであり実在する人物、団体、事件、ソース、その他の固有名詞や現象などとは何の関係もありません。嘘っぱちです。どっか似ていたとしてもそれはたまたま偶然です。……フィクションなんですってば!!

*1 : sampleStr.IndexOf("<tagName exAttr=")みたいな。属性の並びまで固定ですか。

*2 : checkBox1とか

コンソールアプリで実行ファイルのパスの取得

C#でアプリケーションの存在するディレクトリのパスを取得するには以下のプロパティを利用する。

System.Windows.Forms.Application.StartupPath;

コンソールアプリではデフォルトではSystem.Windows.Formsが利用できない。
これを回避するには参照設定で"System.Windows.Forms"を参照設定に加えればいいらしいのだが、パスの参照をするだけでこれを加えるのはなんだか微妙。

と、いうことで"System.Windows.Forms"を利用せずに実行ファイルのディレクトリのパスを取得する方法。

FileInfo exePath = new FileInfo(Environment.CommandLine.Replace( "\"", "" ));
// "C:\foo\bar\baz.quux -i "C:\hoge\fuga\quux"の場合
// exePathには「C:\foo\bar\baz.quux -i C:\hoge\fuga\piyo」が入る

Console.WriteLine( exePath.Directory );
// この場合の出力は「C:\foo\bar」となる

参考

startuppathについて