2002年11月の雑感

更新日:2002-11-30
[トップページへ] [10月] [12月] [過去の雑感へ]

11月30日()

 w3m(Vine Linux)

セキュリティホールが見つかったとのことなので、バージョンアップしました。 普段は、cvs update したものをコンパイルして、/usr/local/binにインストールしたものを使っています。 なので、Vineのパッケージと併せて両方とも最新版にしました。


11月29日(金)

 C プログラミング (Cygwin)

諸事情により、本日より、Cプログラミングです。 なぜか、Cygwinの環境でプログラミングです。 エディタは、vim 6.1.263 です。

最終的なターゲットは違う環境なので、気休めではありますが、gccのオプションには、

-Wall -ansi

を追加しておくことにしました。

Cygwin上のcvsも初めて、恐る恐る使ってみました。 今のところ大丈夫なようです。 (昔、RCSを使って、ファイルが消えてしまうという不可解な現象に遭遇したことがあり、 どうしても、そのイメージがつきまとうのでした。)

 Spreadsheet/Excel(Ruby)

Perlにも同じものがあるよなあと思って、 見てみたら、 ずばり移植したもののようです。 ちなみにこのライブラリは、Windows環境じゃなくても動くはずです。


11月28日(木)

 Win32OLE

どうやら私の勘違いだったみたいです。 で、動かない例を送ってもらえないだろうかと聞いたところ、 かなり複雑なので、それは勘弁してくれと言われてしまいました。 OLEサーバーを自前で用意できないから難しいんですよねえ。 どうしたもんだか。

 man strcpy(Cygwin)

Cygwinで

man strcpy

とやっても No manual entry になってしまいました。 試しに cygwin-doc-1.2-1.tar.bz2 をインストールしたら 無事に表示されるようになりました。

 未踏ソフトウェアプロジェクト

平成14年度未踏ソフトウェア創造事業「未踏ユース」の公募について-公募結果を眺めていて、 オープンソースCOBOLコンパイラの開発 というのがあったので、もしやと思って見てみたら、やはり、まつもとさんの会社でした。


11月26日(火)

 Win32OLE

昨日、メールで質問がありました。 どう考えても質問の意味がわからなかったので、質問の意味を確認しようかと考えていました。 (英語のメールだったので、内容を把握するのにも返事を書くのにも時間がかかってしまう。) 1日たったら次のメールが届いていました。 どうやら、このメールの質問が本筋らしいのですが、 私の知識の無さも手伝ってか、まだあやふやです。 結局、ちゃんと内容を理解できているのかどうか確認のメールを出しました。

C#に手を出す余裕はあるのかというツッコミはさておき、 Rubyに手を出す精神的なゆとりがまだ持てない状態です。 仕事に慣れるのと生活していくので手一杯な感じです


11月25日(月)

 C# の Main

ちょっと疑問に思ったのが、C# の Main メソッドが void であることでした。 ある雑誌には、void でも int でも良いと書いてありました。 終了ステータスはどうなるんだろうなどと疑問が湧いてきます。

ということで、ECMA-334 を読んでみました。

それによると Main メソッドは

static int Main(){...}
static void Main(){...}
static int Main(string[] args){...}
static void Main(string[] args){...}

のどれでも良いそうです。 void の場合は終了ステータスは0になるんだそうです。

 Linux で C# (DotGNU編その2)

man cscc で調べると -mjvm で JVM の bytecode を吐き出すらしいのですが 吐き出された結果を java で実行しても java.lang.ClassFormatError になってしまいました。 (Java は Standard Edition の 1.4.1_01 です。)


11月24日()

 OpenOffice 1.0.1(Vine Linux)

OOo_1.0.1_LinuxIntel_install_ja.tar.gz をダウンロードしてインストールしましたが、 メニューやダイアログの文字が???のままです。 フォントをちゃんと設定してやればいいのでしょうが、良くわかりませんでした。 (全部???なので、どのメニューを選択すればいいのか、 どのボタンを押すとどうなるのか、さっぱりわかりません。)

最近、マニュアルを読んだり、調べたりするのが面倒になってきている軟弱な私は、 OOo_1.0.1_LinuxIntel_install.tar.gz をダウンロードしてインストールすることにしました。 こっちは、ちゃんと英語のメニューが出ます。 フォントを指定すれば、MS-Wordで作られた日本語のファイルそのものは、表示できることがわかりました。 (メニューなどの英語は、多分変わらないでしょう。)

Vine Linux で MS Word の文書を読みたかっただけなので、今のところ、これで十分です。

...負け惜しみに聞こえますか?

 sort

作成日順で並べ替えるのなら、 わざわざ sort を使わなくても

ls -lAtr

で十分じゃないでしょうか?

あっ。そういう意味じゃなくて、sortが使えるという説明の例なのか。 すいません。雑誌を読まないまま、反応しています。

-Aというオプションは知りませんでしたので、偉そうなことは言えませんが。

 Linux で C# (DotGNU編)

Linux で C# をということでDotGNUのPortable.NETを試してみることにしました。 まずは、Portable.NETをダウンロードできるサイト からファイルをダウンロードします。

pnetをコンパイルする前に、treecc をインストールしておく必要があります。

tar zxvf treecc-0.1.8.tar.gz
cd treecc-0.1.8
./configure
make
make check
make install

続いて pnet

tar zxvf pnet-0.4.8.tar.gz
cd pnet-0.4.8
./configure
make
make check
make install

とりあえず、ここまでインストールして C# で Hello World プログラミングをしてみます。

hello.cs という名前のファイルを作ります。ファイルの中身は次のような感じです。

using System;
class HelloClass {
    static void Main() {
        Console.WriteLine("Hello World!");
    }
}

では、コンパイルしてみましょう。何もオプションをつけないで、csccを実行します。

cscc hello.cs

すると a.out.exe というファイルができます。早速実行してみましょう。

ilrun a.out.exe

見事に Hello World! と実行されました。

とは言え、まだまだ不完全な状態のようですね。

ところで、この a.out.exe をそのまま、Windows 環境へ持っていけば、動くんでしょうか?

続けて pnetlibをインストールしておきましょう。

tar zxvf pnetlib-0.4.8.tar.gz
cd pnetlib-0.4.8
./configure
make
make check

うーむ。なんか2ヶ所テストで失敗してしまいました。 とりあえず、無視して、そのままインストールしておきます。

make install

次はmonoを試してみましょうか。


11月23日()

 binutils 2.13.1 と gcc 3.2.1(Vine Linux)

バージョンアップしました。

まずは、binutilsから。

tar jxvf binutils-2.13.1.tar.bz2
cd binutils-2.13.1
./configure
make 
make install

続いて gcc

tar zxvf gcc-core-3.2.1.tar.gz
tar zxvf gcc-g++-3.2.1.tar.gz
mkdir gccobj
cd gccobj
../gcc-3.2.1/configure --enable-languages=c,c++ \
--with-system-zlib --enable-sjlj-exceptions --enable-threads \
--disable-version-specific-runtime-libs --disable-nls \
--without-included-gettext --without-catgets
make bootstrap
make install

Ruby 1.7をコンパイルしたら、拡張ライブラリのコンパイルのタイミングでコアダンプしました。 が、

cvs update -dP

で、Ruby 1.7 を最新の状態にして再挑戦したところ、無事、コンパイルできました。


11月22日(金)

 『心とろかすような』(宮部みゆき)

読んだことがあるような気がします。 「マサの弁明」には、思わずニヤリとしてしまいました。

ここのところ、宮部みゆきが続くのは、会社の先輩からまとめて文庫本を借りているからです。 次は『天狗風』です。これは間違いなく未読です。

 XP

Java technology : エクストリーム・プログラミングの神秘を解く:「XPの真髄に立ち戻る第2回」より。

いつからプラクティスは19に増えたのでしょうか? (原文も参照してみましたが、 同じく19なのので誤訳では無いようです。) プラクティスが増えていくと、だんだん Light weight (Agile)な開発手法じゃなくなってしまうように思います。

ひょっとすると、誰かが 12 と 19 を間違えただけですか? (手書きで慌てて2と書くと9を間違えるような字になるかも知れません。)

そう言えば、最近では14のプラクティスと言っているような気もします...。


11月21日(木)

 アップローダの続き(Java)

なんか、自分のコードに間違いがあったらしく、気分新たに書き直したら動いてくれました。

readLine()であっても

バイナリデータCR    ← readLine()で読み込んだbyte列
LFバウンダリ文字列  ← 次のreadLine()で読み込んだbyte列

となる可能性はある(と判断した)ので、結局、その点を考慮したコードにしました。

うーむ。readLine()を使っているメリットが無いような...。

このようなコードの実装が面倒なのは、Javaと言えどもCと全く変わらないように思いました。 (もちろん、socketなど低レベル(?)のネットワークプログラミングを 意識する必要が無いという点では、はるかにJavaの方が楽です。)

 JSP と Servlet

何かちょっとだけわかってきたような気になってきてます。


11月20日(水)

 原田さんのアップローダ

うーむ。ダメなんですか。 コードそのものは流用しようとは思ってなかったので、別にどちらでも構わないのですが。 とりあえず、概要をつかみたかったのです。

紹介していただいたサンプルも読んでみます。

ところで、どうしてダメなんでしょうか? 8 * 1024 byte 以内に1行が納まることを前提にしているところですか?

 アップローダの続き(Java)

ServletInputStream#readLine()

がちゃんと動いてくれていないようでハマってます。 しかも、だんだん自分が書いているコードが複雑怪奇になってきてます。 ちょっとまずい状況です。 頭を冷すため、今日は、さっさと仕事を切り上げてきました。 明日、気分新たに頑張ってみます。

ところで、気になるのが、バイナリデータ(ファイル)の部分をreadLine()で読むと、最後のところで、

バイナリデータCR    ← readLine()で読み込んだbyte列
LFバウンダリ文字列  ← 次のreadLine()で読み込んだbyte列

みたいな読み方になってしまわないのか疑問です。


11月19日(火)

 関西OF 懇親会(Ruby)

[ruby-list:36530]より。 引越しちゃったので、関西は遠くなってしまいました。

 本日買った本

 本日見つけた本

みかままさんの『入門 CVS 第2版』。 今度は表紙が赤になってます。 私が持っているのは青の表紙の第1版です。


11月18日(月)

 RFC 1867

を調査。

さらに、サーブレットでファイルをアップロードする方法を 見つけて読んだり。 ...と思ったら原田洋子さんのページでしたか。

 Java2 SDK Standard Edition 1.4.1_01

自宅のPC(Vine Linux 2.5)にインストールしてみました。 Hello World プログラムがコンパイルできて、実行もできることを確認しました。


11月17日()

 JavaScript

久野さんて誰だろうと思って、Google で 「久野 JavaScript」で検索したら 『入門 JavaScript』が いきなり見つかりました。

久野靖さんてどんな人だろうと思って、Googleで「久野靖」で検索したら ご本人のページが見つかりました。 写真を見て、どっかで見たことある人だなあと思ったのですが、 松江か東京かどっちかのシンポジウムでお見かけした人だということに気づきました。 (まつもとさんの出たセッションの司会をされていたんじゃないかと思います。)

本屋で『入門 JavaScript』を 探してみようかと思います。

あと、オライリーのJavaScriptの本も探してみようと思います。 友人が「JavaScriptの本で、まともな本はこれ(オライリーの本) ぐらいしか知らない。」 と話していたのを思い出したからです。

 本探し

早速、書店に行ってみましたが、見つかりませんでした。

 『ボーン・コレクター』

テレビで放映していたので(途中から)見てしまったのですが、早まったかも知れません。 ジェフリー・ディーヴァーの書いた原作をまだ読んでないのです。


11月16日()

 フレッツ ADSL モア

に対応したモデムが届きました。 今度は縦型です。 横にすることはできません。 あれっ。電源のスイッチが見当たりませんよ。 電源アダプタを抜くしか無いみたいですね。


11月15日(金)

 IDE 環境

なかなか慣れきれません。 Cygwinのvimで編集して、コンパイルだけIDEとかやってしまってます。 vimがいいのは、画面分割してソースを見比べながら作業できる点です。 まだ JSP だの JavaScript だの Servlet だのに慣れないので、 どうしても他のソースを参考にしながらの作業になってしまうのです。

 JSP と Servlet と JavaScript

JSPとServletとJavaScriptとの使い分けの方針があることを聞きました。 (今回の仕事の中の話です。一般的かどうかは、わかりません。) ということで、その方針に従い、JSPで書いていたコードをJavaScriptに書き直しました。 JSPで書いてもいいかなあと思いながら書いちゃったのですが、その前に方針を確認しておくべきでした。


11月14日(木)

 JSP と Servlet プログラミング

(マウスを使わなくてはならない)IDEの環境にも慣れつつあります。

 tail と less

Cygwinの tail -f が大活躍しております。 less で F キーが使えるともっと便利なんですが、なんかうまく動いていないような気がします。 もう一度、明日試してみよう。


11月13日(水)

 JSP と Servlet

やはり、GUIが絡めば、JSPなんですね。

でも、

<% if (x == y) { %>
XとYは等しい。
<% }else{ %>
XとYは等しくない。
<% } %>

みたいに混在するようなのは勘弁してほしいです。

 『堪忍箱』(宮部みゆき)

読了。新潮文庫版を読みました。絶対にこの本の解説を先に読んではいけません。 「敵持ち」、「お墓の下まで」、「謀りごと」が好みです。 小坂井や又右衛門を主役にした話が読んでみたいです。 それにしても、味のある作品が並んでいます。うまいです。さすが。


11月12日(火)

 JSP と Servlet

実際のコードを触り始めて2日目の感想です。

個人的には、JSPでJavaのコード片がちらばるのは好きではありません。 最小限にした方がコードの見通しは良いのではないかと思います。

多分、開発するときにはJSPを主にした方がてっとり早いのでしょう。 ですが、保守のことを考えると、望ましくないのではと思います。 HTMLとJavaが混在するとコードの見通しが悪くなりますから。

これは、Javaを混ぜるから、見通しが悪くなるというのじゃなくて HTMLに別の言語を混ぜるから、見通しが悪くなるということです。 Javaに限定される訳ではありません。


11月11日(月)

 JSP と Servlet

今さらですが、私は、基本を知らないので、ちょっとまずいような気がしてきました。 ここは、JSPの方で処理して、これは、Servletで処理して、などと頭の切り替えがスムーズにできません。 やっぱりちゃんと1冊ぐらいServletやJSPの本を読んだ方がいいかも知れません。


11月10日()

 『その死者の名は』(エリザベス・フェラーズ)

読了。 本格ミステリのパロディのような作品です。 トビーとジョージに関して予備知識が無い人だと、もっとびっくりするんでしょうけど、 他の作品を読んでいる私は、さほど驚けないのが残念です。 最後のどんでん返しのスピーディーさ、鮮やかさは見事。

 『幻色江戸ごよみ』(宮部みゆき)

「神無月」が好み。 前に読んだことがあったような気もします...。

 文庫本カバー

ようやくビニール製の安いのが見つかりました。220円です。

...厚い文庫本だとカバーできないことが判明しました。

同じ値段、同じビニール製でも CONCISEのステーショナリーのクリアカバーだと 厚さ調整ができることを買ったあとで知りました。 かなりショックです。 前に持ってたやつは、多分、ステーショナリーの皮革調ブックカバーのようなタイプです。

...オンラインで購入できるみたいなので、申し込もうかと考え中です。

前から気になっているのは、銀河通信で知った モニデー 文庫本カバーの会という カバーなのですが、(会員にならずに)どうやって入手すればいいのかさっぱりわかりません。


11月8日(金)

 Mozilla (Vine Linux)

Vine Linux の Mozilla を1.1 0vl6にしました。 やっぱりADSLだとダウンロードが速いです。

 ERb 2.0 (Ruby)

標準添付向けERb 2.0が公開されたのでダウンロード。


11月7日(木)

 フレッツADSL

の環境になりました。 プロバイダはそのままniftyにしちゃったのですが、DNSのIPアドレスに何を指定すればいいのか わからなくてGoogleで探し回りました。

@nifty:フレッツ・ADSL」のページには どうすれば簡単にたどりつけるのでしょうか?

 フレッツADSLモア

NTTから連絡がありました。18日に変わる予定です。 順調に移行できれば、フレッツADSLの使用期間は、7日から18日の12日間で終わりそうです(笑)。 今、レンタルしているADSLモデムは、玄関に出しておけば、引き取ってくれるそうです。

レンタル料は日割計算なんだろうか?


11月6日(水)

 引越し

しました。 まだ疲れてます。 これから、徐々に生活のリズムを作っていこうと思います。 ぼちぼちやります。(←何故か関西弁(ふるさとの言葉)がしっくりきます。)


11月1日(金)

 『とむらい機関車』(大阪圭吉)

読了。 「あやつり裁判」と「坑鬼」が好み。 そのトリック、プロットは現代でも十分通用します。


[トップページへ] [10月] [12月] [過去の雑感へ]