BSD

2002年12月28日 土曜日

IPv6 over IPv4 Tunnel (2)

昨日はローカルからしかping6が帰ってこないと言うところで挫折という感じであったが、今日は状況の切り分けを行うために、FreeBSDを別マシンにインストールし、検証してみることとした。(IPv6に関してはBSD系OSの方がこなれているし、リモート側で設定につきあっていただいているゆうじさんが分かりやすいと言う話もあるので…) 今日やった作業は以下の通り。

別のPCにFreeBSDをインストール。

いかんせんPentiumなマシンにネットワークインストールなので、これが一番かかった。

2002年10月14日 月曜日

僕がJavaを積極的に使わない理由

今日はなんだか議論になってしまったので、一応日記にも書いておこうと思う。今の時点では僕はJavaを開発言語に使っても良いくらいの完成度になってきていると思っているので、以下の議論はだいぶんどうでも良くなっているのだが、何個かの理由があってまだJavaを開発用の言語に選択する気はありません。
僕はJavaに熱狂があった時代(Alpha版からBeta版の時代)を知っていて、そのあとに大きく失望したので使っていない訳だが、大ざっぱに言えば以下の項目に集約される。
仕様の策定がオープンでない
最近は解消された気はするが、仕様の策定がSunで行われていた頃は、信頼に足るコンパイラ供給ベンダがSunだけという感じだった。自分が使うツールの提供元がただの民間企業1社しかないというのは、あまりに脆弱だと思う。いまはThe Java Community Processである程度読みとれるし、コンパイラベンダも複数になったのでまぁいいかと思うのだが。
開発ツールの提供
当時JDKは、SolarisとWindows版しかなかった気がする。当時僕の主要な環境はLinuxだったので、採用すらできなかった。(BSDユーザーもMacユーザーも悔しかっただろう。)
国際化周りの対処の遅れ
JDK1.2でほぼ解決された問題と考えているが、やっぱ母国語が陽に使えないのは痛い。Unicodeをがんがん使うのは良いが、Unicodeを編集できるエディタが当時なかったこと、処理する対象は非Unicodeな文書で、Unicode周りの問題(正規化とか言うんだっけか)があってどうもねぇと思っている訳だ。
動作が遅い
これはJITコンパイラのおかげで解決を見たと言っていいだろう。(同じアルゴリズムでC++とほぼ同じくらいだから問題なかろう。)
僕は過去も今も「オープンソース」側の人なので、プログラムを書くのに最も重要なのは_「プログラムを書く自由」_だと思っている。僕はあくまで職業プログラマではないので、プログラムを書くことはこの上ない楽しみであり喜びであるべきなのだ。それゆえに上記の用件で最も大切だと思っているのは、言語仕様のオープン性とコンパイラの提供が永続的であることである。その条件を満たせない限り、使ってみようとなかなか思い立てないのである。
ただ今となっては時代遅れな意見も散見している気もするので、ぼちぼちJavaを個人的なプログラムの開発に使えるよう準備を整えて良いかと思っている。なにせXML周りはJavaがないと立ちゆかなくなってきているので切実なところであろうか。僕の中のJavaの不運は、_必要な物が必要な時に提供されなかったこと_につきる。(それで仕事する気が失せるんだもの。) 逆にLinuxは使いたい時に使える形で登場したのね。(こっちもかなり偶然性が強い。) まぁ時の運とはこういう物だろうな。
僕のなかでJavaの残りの問題は、C++におけるtemplateがないことくらい。これはJava GenericsがJDK1.5で実現すれば解決される。僕自身はライブラリ設計者ではないので、Genericな型を持つclassを設計することはないのだが、Collection classを使っていると、Collectionから要素を取り出すのに_型キャストが必要_と言うことと、_意図しない型の要素を追加できること_が気になるわけだ。Java Genericにはそれなりの期待をしている訳だ。
議論については、幾ばくかつきあうので、僕にJavaを使わせたい人は建設的なご意見をください。

2002年08月14日 水曜日

僕のものの考え方

なんだか誤解している人がいるみたいなので、それなりに僕の立場を説明しておいた方がよいかも知れないと思って、今日書き起こしてみる。
僕の物に対する考え方は、**「与えられた状況で便利な方法論を採用することをためらわない。」と言う物であって、「不便だからと言って存在自体は否定しない」と言う物である。(これで間違ってないと思うけど)
たとえばずいぶん前にデジタルカメラ擁護論を何度か書いてみたが、別にデジタルだけが良いという立場で書いている訳ではない。フィルムが便利だとは思わないが、フィルムにはフィルムにしかできないことは今のところはある訳で、うまい具合に使いこなしましょうと言うことなんです。だから
「デジタル画像万歳!」**と言うデジタルにいっちゃった人の意見にも全面的に賛同しない。逆にフィルムを使えと言うことにしている。
僕はLinuxのユーザーであるが、お仕事ではWindows2000+Office2000という組み合わせを迷わず使う。別にLinuxでOffice環境が欲しいとは思わないし、家で使っているWindows環境でOfficeを使うこともないから、ライセンスを持っていてもインストールは絶対にしない。まぁお仕事関係の文書は会社でWindowsでやるのが手っ取り早いし、家でやりたいと思わない。逆にメールを読むのは、Emacs+Wanderlustなんだし、Webを見るのはMozillaで十分な訳だから、Emacsが動けばどうでも良いんだわと思うし、プログラムを書くのはLinuxの上の方が何かとやりやすいと思う訳。
また僕はLinuxユーザーであるが、元SunOSユーザーだし、FreeBSDを使っていた頃もあるし、HP-UXも使うことはあるので、BSDとPOSIXとかBSDとLinuxとか言ったこだわりもない。(だいたいハードに近いプログラムを書けないので、BSDとLinuxで違いがでるプログラムを書けない訳だから、この見方に拘る必要もないのよね。) と言うことで、IPv6で遊びたいなぁと思って、やっぱKAMEだよねと言うことから、BSDに回帰する可能性は十二分にある。(MacOS Xで遊びたいなぁと思う心もあるんだし。)
こだわりも持つのはそれなりに重要だと思うけども、僕はこだわりを捨てて、いろんな物を受け入れるという広い物の見方を保つことが大切だと思っている。それはフリーマン・ダイソンやリチャード・ファインマンの著作の影響だったり、Linuxを作ったLinusの言葉の影響を多分に受けていると思う訳だが、そうあろうと努力しているつもりだ。
あと世の中の見方については、どうなんだろう? 最近は厳しい状況に立たされる場面が多く、不満を持っていることは事実であるから、今の境遇に言いたいことや日記で書いていることは多いけども、変えられることは変えていきたいと思っているし、昨日や今日の常識が、明日も明後日も永劫に常識たり得るかと言うならば、今日で駄目だったら見限ってしまえと思っているのは事実かも知れない。無論しがらみもあって簡単ではないけども。
なかなか人に考え方を伝えるのは難しい。と言うことで、思いついたときに書こうと思う訳だ。分かっていただけるものだろうか? 文章が下手くそなので、幾らでも誤解して読むことは可能であるが…

2002年08月11日 日曜日

Macが欲しいなぁ

Mac OS Xで遊びたいので、Macが欲しいなぁと思う今日この頃。確かにBSDでPhotoshopが使える環境はこれしかないと思うのである。さらにAquaな環境で使えるEmacs21.2も登場しているし、IPv6でも遊べそうだ。ただハードを買うお金だけが出ない。(遊ぶ時間も出ないかも知れないけれど。)

今日は疲れた

先週までのギャップのせいか、疲れが残っているようだ…

2001年11月28日 水曜日

書いてあるとおりにもできないのか…

昨日、用があってWindows版のGhostscriptとGhostviewをインストールすることとなった。Ghostscriptってやつは、主にプリンタに図形を書かせる言語であって、知る人ぞ知るAdobeのもっとも有名なプロダクトであるPost Scriptの互換インタープリタ(とビュアー)である。(PhotoshopなんてPost Scriptに比べればカスのようなプロダクトなのよ。その辺の至る所にあるんだよね。空気みたいなもんです。)
で、必要なのでインストールしたいという話があったので、ダウンロードサイトとNifty TeXフォーラムのGhostscriptのインストール方法を解説しているページを紹介してやった。TeXフォーラムのインストール解説はどの記事もわかりやすいと思うので、忙しかったせいもあり、「記事を参考にチャレンジしてみて」と言ってみた。(まぁまっとうな話でしょ。)
で、「うまくいかない!」という連絡がきたので、ちらっとみてみたんだが、ライブラリの場所・フォントの場所を指定する環境変数を設定していないせいだった。記事にはAUTOEXEC.BATにそのまま書き足すようにとわかりやすく書いてあるのだが、その作業をしていなかったためだ。ちゃんと動かないのは当たり前である。
まぁ理由が分かったので、すぐに動くようになったのであるが、インストールしてもらった彼の僕に対する対応がもうだめだめなのある。「AUTOEXEC.BATがどこにあるのか分からない。」「書いてあることが何のことだか分からないので、できない。」ときたものだ。さすがに僕はこの言葉に頭にきてしまった。前者に関しては分からなかったら、ファイルをファイル名で検索すればいいものである。そんなこともできないのか。さらに後者の意見はもっといただけない。誰にでも初めての時はある。だから、ここに書いてあることはよく分からないが、どういうものか教えてほしいと言うのであれば、話は分かる。でも、書いてあることを理解しようともしない、人に頼む。不注意でHDDをクラッシュさせたときも僕が再インストール? 僕がやらなかったら途方に暮れるだけかぁ。さすがにあきれてものもいえない。で、せっかくインストールしてあげてもお礼の一言も言えない。もうなんていえばいいか。(涙)
と言うことで、もう二度とやってあげない。やり方も教えない。やり方を書いてところも教えてあげない。自己解決できるはずなのに、その努力をしない人に力を貸す気にはなれないと言うことだ。
とはいえ、Windowsのユーザーであっても、すでにMS-DOSの知識もなく。コマンドラインで有用であった環境変数だのパスだのと言ったものの意味や設定の仕方なんて知りもしないし、知りたくもないんだろうな。GhostscriptのようなUnix起源なツールを使いこなすのは難しかろう。大学ではせめてWindowsやらMacみたいに「サルでも使えそうな」OSを「コンピューターリテラシー教育」なんかに使わせるんではなくて、叡智の詰まったUnixを使わせて勉強させるべきなのかもしれない。やっぱ道具に使われてはならない。道具は使いこなしてなんぼであろう。で、その割には大部分のWindowsユーザーって、自分でCOMオブジェクトを組み合わせて使うなんていう多少なりとも高尚な使い方もできないんだろうなぁ。そこが唯一のWindowsらしいWindowsの使い方ってものなんだろうになぁ…