Monday, March 31, 2008

Code Quality

bk1 のクーポン - 500 円 OFF - が今月 31 日で expire してしまうので、注文してみた。リンク先は amazon.co.jp なり...。

Code Quality

bk1 は、本の名前のアルファベットを全て全角で表示するようで、非常に気持ち悪いし、読みにくい。それだけで注文する気をなくしてしまうくらいだ。

EJ

ENGLISH JOURNAL のバックナンバーを注文した。

2007-11
2007-10
2007-09
2007-08
2007-07
2007-06
2007-05
2007-04

Sunday, March 30, 2008

輸入

国内で購入できないモデルを購入したいなら、輸入という手段も有効だ、ということか。

www.sparco.com

2chThinkPad T シリーズ Part31【輸入もやむなし】 を閲覧していたところ、SPARCO にて注文している人を発見。T61 の SXGA+ モデルや T61p を格安で購入したい人(かつ必ず英語キーボードに変更する人)なら、手間をかけずに済ませられるかもしれない。気になる点は、故障したときの修理だけだな。

水出しコーヒー

最近、休日に豆を挽いてコーヒーを飲んでいる。ところで、コーヒーメーカーを購入したより以前、HARIO 水出し珈琲ポット 8 人用 1000 ml MCP-14 ブラック を購入したが、ずっと使用していなかった。本日、やっと使用してみることに。結論として、非常に簡単だ。80 g の豆を挽き、本体にセットして水を注ぐだけ。飲める状態になるまで約 8 時間かかる。18 時くらいに作業したので、日曜日の午前中に飲んでみる予定だ。楽しみ。説明書に「軟水を使用してください」的な記載を発見したため、いつも飲んでいるミネラルウォーター(コントレックス)でなく、ブリタを使用してフィルタした水道水を使用した。つづく...。

Saturday, March 29, 2008

マシン@自社

来月から自社で仕事をする予定だ。ところで、私へ連絡(相談?)せずに、上司がマシンを注文してくれていたようだ。Dell のデスクトップ。既にモニタだけ配送されたらしい。つまり、まだ本体が配送されていない。どのマシンを注文するか相談してほしかった。まぁ、デスクトップなら、あまり問題ないか。付属されているキーボードとマウスでなく、 ThinkPlus USB トラベルキーボード ウルトラナビ付 を使用する予定だ。マウスより、よっぽど快適だし。日本語と英語の両方を所有しているので、どちらかを。ちなみに、当然ならが Windows の領域を削除して Linux distribution をインストールする予定だ。ほぼ確実に Ubuntu だが。

Thursday, March 27, 2008

ぬこ

この話は有名だが、やや古い。ただし、癒し効果は、今なお健在だ!

郵便猫

iTunes Receipt

Hot : Music Video : Avril Lavigne

Wednesday, March 26, 2008

携帯電話メール

私は携帯電話でメールを送受信する行為を、できるだけ避けたいと考えている。主な理由は、
・携帯電話の操作性が悪い
・メールのデータを保存しにくい
だ。

前者について:
わかりきったことだが、携帯電話の場合、文章を入力しにくい、文章を修正しにくい、長文になると全体を把握しにくい、などで、正直なところ、苦痛を感じている。できればパソコンでメールを送受信したい。昔、現在より迷惑メールのフィルタリングが厳しくなかったころ、携帯電話で受信したメールの返信を、パソコンで実行していた。ただ、現在、メールヘッダに記載された from と、envelope-from がチェックされているはずで、パソコンから from を変更すると、携帯電話のフィルタリングにひっかかってしまう。

後者について:
現行の機種のほとんどは、外部メディア(SD カードなど)にデータを移行したり、または USB ケーブルを直接パソコンに接続することにより、メールのデータをパソコンに保存できる。ただし、パソコンに保存するとき、アプリケーションをインストールしなければならない。たとえば、ソースネクスト 携快電話 ZERO の場合、Widows のみに対応している。最悪だ。そもそも Windows を使用していない。また、このアプリケーションの生産が中止されたら、どうする?また別のアプリケーションをインストールする?異なったメーカの製品の互換性を期待できない。

私は、普段のメール送受信を Gmail に集約しているため、携帯電話のメールも Gmail に集約したいと思っている。そこで、だ。いっそ、キャリアの携帯電話メールアドレスによる送受信をやめてしまおう。こんな構成を考えてみた。

携帯電話 or パソコン <-(https)-> Gmail <-(SMTP)-> 携帯電話キャリア

携帯電話に搭載されている Web ブラウザを使用して Gmail を閲覧し、メールを送受信する。だが、私は、携帯電話キャリアが携帯電話に搭載させている、いわゆるフルブラウザに魅力を感じていない。Web 標準を意識した Web ブラウザを選択したい。となると、ほぼ必然的に Opera を選択することになる。そこで、Opera が搭載されている携帯電話は...、ない。私が知らないだけ?なお、PHS なら WX330K が Opera を搭載している。

もし PHS を契約すれば、残りの課題は、自分が所有するドメインを Gmail に適用するか?だ。キャリアでないドメインを使用すると、相手のホワイトリストに登録してもらうことになる。確かに面倒だが、Gmail のドメインを使用するにしても、いずれにしても登録してもらうことになるので、それほど大きな問題でないかもしれない。

検討の次は、実行だ。

そろそろ寝るべ。

Tuesday, March 25, 2008

感謝

前に勤めていた会社の知り合いから案件を紹介してもらった。Windows ベースな開発の案件であるため、自分は出番なしかもしれないが、案件を紹介してもらえるだけでも本当に感謝している。人と人とのつながりの重要さを改めて実感した日だった。

SPAM

ここ最近、急激にスパムメールの数が増えはじめているようだ。300 通/day くらい受信しているなぁ、きっと。自動的にフィルタされるけれど、まれに重要なメールもフィルタされてしまうから困った困った。WHOIS に登録されているメールアドレスが対象とされているようだ。

Sunday, March 23, 2008

Made A Donation

Today I made a donation to the Python Software Foundation, though it's only 10 USD. Anyway, I appreciate their efforts.


Donate to the PSF

Friday, March 21, 2008

Installing Carbon Emacs on Mac OS X

The first thing that you have to do is to open this web page,

Carbon Emacs Package

and then, download the Carbon Emacs Package at the same web page. It's so easy to install it. You just drag and drop the Emacs icon into the Applications directory. That's all.

User-defined functions in Lisp

外部ファイルに記載されている関数を読み込み、実行する例:

$ cat sample.lisp
(defun sayHello ()
 (format t "Hello, world!"))
$
$ cat run.lisp
#!/usr/bin/env clisp
(load "sample.lisp")
(sayHello)
$
$ chmod +x run.lisp
$ ./run.lisp
Hello, world!
$

Reading a file one line at a time in Lisp

Lisp を実行して、ファイルを 1 行ずつ読み込む処理を記述してみた。Web を検索して発見したサンプルを実行してみただけ、だが。やはり英語で検索すると、多くの情報を発見できるようだ。英語で検索することを、おすすめする。

(with-open-file (stream "/etc/passwd")
(do ((line (read-line stream nil)
(read-line stream nil)))
((null line))
(print line)))

I've decided to learn Lisp.

このごろ Java を勉強しているが、アホな自分は、なかなかデザインパターンを理解できずにいる状態だ。そこで、息抜きに Lisp を勉強することにした。だいぶ前から Lisp を勉強したいと思っていたが、ついに開始することに。この言語を勉強すること、に、興奮してしまう。Java の勉強も面白くなりつつあるので、かなり危険だ。体調を気にするようになったといえ、寝る時間を削ってしまう傾向にある。

たしか去年、amazon.com において Lisp の書籍 """Successful Lisp""" を購入していた。当時、amazon.co.jp において取り扱われていなかったからだ。そういえば、船便を選択したので、配送されるまで 3 weeks くらいかかったはず。だが、この書籍を読まずに、これ """Practical Common Lisp""" を参考にしてみることに。オンラインであるため、書籍を持ち歩かずに済ませられるからだ。って、どこで勉強するつもりだ、俺は。とりあえず普段、自宅において MacBook + VMware Fusion な環境で作業をしていて、インストールしたゲスト OS のひとつ Ubuntu Linux に、勉強する環境を用意することにした。

Lisp は、複数の実装が存在するらしい。実装ごとの差異を理解することを後回しにして、とりあえず実行してみたかった。GNU による実装を発見したので、これをインストールしてみることに。いつもどおり APT を実行してパッケージをインストールする。

$ sudo apt-get install clisp


インストールされたバージョンは、2.41 だ。GCL - GNU Common Lisp を確認するかぎり、最新のバージョンは、2.6.7 であり、Ubuntu のパッケージは、しばらくアップデートされていない?ようだ。

$ clisp --version
GNU CLISP 2.41 (2006-10-13) (built 3371956393) (memory 3415019986)
Software: GNU C 4.1.2 20061103 (prerelease) (Ubuntu 4.1.1-18ubuntu2)
/usr/bin/gcc-4.1 -g -O2 -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2 -fexpensive-optimizations -falign-functions=4 -DUNICODE -DDYNAMIC_FFI -DDYNAMIC_MODULES -I. -x none libcharset.a libavcall.a libcallback.a /usr/lib/libreadline.so -lncurses -ldl -L/usr/lib -lsigsegv
SAFETY=0 HEAPCODES LINUX_NOEXEC_HEAPCODES GENERATIONAL_GC SPVW_BLOCKS SPVW_MIXED TRIVIALMAP_MEMORY
libsigsegv 2.4
libreadline 5.1
Features:
(ASDF CLC-OS-DEBIAN COMMON-LISP-CONTROLLER CLX-ANSI-COMMON-LISP CLX READLINE REGEXP SYSCALLS I18N LOOP COMPILER CLOS MOP CLISP
ANSI-CL COMMON-LISP LISP=CL INTERPRETER SOCKETS GENERIC-STREAMS LOGICAL-PATHNAMES SCREEN FFI GETTEXT UNICODE
BASE-CHAR=CHARACTER PC386 UNIX)
C Modules: (clisp i18n syscalls regexp readline linux clx)
Installation directory: /usr/lib/clisp/
User language: ENGLISH
Machine: I686 (I686) localhost.localdomain [127.0.1.1]
$

実行してみる。`clisp' コマンドを実行すると、次の行に > が表示されずはずだ。ただし、プロンプトの表示は実装により異なるかもしれない。

$ clisp
>

この > のプロンプトに続いて、命令を入力し、エンターキーを押下すれば、式が評価され値が生成される。簡単な式を実行してみる。`<ENTER>' は、エンターキーを押下するカーソルの位置を意味している。

$ clisp
> (+ 10 20)<ENTER>
30
> (- 10 20)<ENTER>
-10
> (* 10 20)<ENTER>
200
> (/ 10 20)<ENTER>
1/2
>

ちなみに、正しい終了のしかたを確認していないが、^D を何度か押下すれば exit できるようだ。



眠いので、これにて今夜の学習を終了する。早すぎ。

Thursday, March 20, 2008

Yes, I am a one liner.

昔々、AWK を使用して 1 行で処理(テキストとか)する人を

一行野郎

とか呼んでいた?のかもしれないが、私の場合、単に shell を実行するときも - shell スクリプトを書くことを面倒に感じてしまうため - 1 行で実行してしまうときもある。その例:

$ while read line ; do echo $line ; done < /etc/passwd

/etc/passwd を 1 行ずつ読み込んで単純に echo するだけ。echo を任意のコマンドに置き換えて、簡単な処理なら対応できるでしょ?

参考までに、for 文を使用した loop の例:

$ for f in `ls /etc/` ; do echo $f ; done

It's a rainy day in Tokyo.

一日中、雨が降るようだ。先ほど、豆を挽いてコーヒーをつくった。すてきな香り。これを飲みながら、まったりと SJC-P の勉強をしよう。iTunes で音楽を聞きながら。

iTunes Receipt

iTunes で購入した曲のリスト。いくつか古い曲が...。

三日月
万里の河
男と女
ひとり咲き

Wednesday, March 19, 2008

I bought a CD today.

本日、CD を購入しました。JR 品川駅の shop にて。

HEART STATION

Someone made a mistake?

先月、クレジットカードの利用(12/16/2006 - 12/15/2007)で貯めたポイントを、ポイント移行により biccamera のポイントとして移行した。年間の利用で、5,000 ポイント近くまでしか貯められなかった。ちなみに、クレジットカードの 1 ポイントにつき 5 biccamera ポイントに交換できる。全てのポイントを交換したため、ポイントが 0 に戻っていた。本日、クレジットカードを利用した履歴などを Web で確認していたら、なぜか約 23,000 ポイントが加算されている...。おおよそ 115,000 円のポイントとして移行できそう。間違いじゃなかったら、おいしすぎるぜ。ちなみに、12/16/2007 から本日までに決済した金額は、836,866 円なり。

Tuesday, March 18, 2008

What is a good SECOND programming language?

Eric の How To Become A Hacker を読んでいたら、現在、

"""C または Lisp を学んだ後に Java を学ぶべき"""

と記載されている。以前、Java は 2 番目(1 番目は Python)に位置していた。

理由は、STSC CrossTalk - Computer Science Education: Where Are the Software Engineers of Tomorrow? - Jan 2008 を参照のこと。

Learning Design Patterns in Java

本日より、Java プログラミングにおけるデザインパターンの勉強を開始した。まず、この書籍を参考に基礎を習得する。

Head First デザインパターン

Head First シリーズの表紙、および中身をチラっと見ただけで「ふざけている」と判断することなかれ。


ところで、Kathy Sierra が執筆した書籍を、できれば原書で学習してみたいと思っているが、しばらく先の話になるだろう。

Monday, March 17, 2008

連休

今週の金曜日に仕事を休む予定だ。4 連休なり。

MacBook cannot start without AC adapter

自社から貸与されている MacBook が、電源をバッテリーのみで供給している場合、起動しなくなってしまっている。電源アダプタを使用して電源を供給してやれば、正常に起動できる。はて、修理だろうか。

Sunday, March 16, 2008

契約の更新

本日、賃貸マンションの契約を更新した。2 年後までに引っ越しをしよう。次の物件の条件に、「ペット可」を含める予定だ。

Why do you make me feel so bad!?

あまりにも花粉症の症状がひどいため、コンタック 600 ST を購入してみた。

私の症状は、以下のとおり。

・目のかゆみ
・くしゃみ
・鼻水
・鼻づまり
・頭痛

I Love Coffee

自宅の冷蔵庫の扉を開けると、コーヒー豆の良い香りが漂ってくる。数回、深呼吸して扉を閉める。


普段、私はコーヒーを飲む。会社でも自宅でも。ある時期まで、会社において缶コーヒーを、自宅においてインスタントコーヒーを飲んでいた。まぁ、正直、どちらもおいしくない。そのように思うようになった時期は、コーヒーショップのコーヒーを飲むようになってからだ。最近、現場の会社は引っ越しをしたが、引っ越す前、駅から現場までの途中にいくつかコーヒーショップが存在し、主に EXCELSIOR CAFFE においてコーヒーを購入していた。ゴクゴク飲める。またコーヒーを飲もうと思い、続いて缶コーヒーを飲んでみると...、まずい。途中で飲みたくなくなるくらいだ。そのため、できるだけコーヒーショップのコーヒーを飲むようになった。コストが x3 であっても。おいしいコーヒーを飲むことにより気分を転換でき、仕事の効率を上げられるなら、コストが倍以上であっても問題ないだろう。

ところで、自宅においても、おいしいコーヒーを飲みたいと思うようになった。インスタントコーヒを飲んでいたが、いまいち後味を悪く感じていたこともあるため。それで、どうすればおいしいコーヒーを飲めるか考えていた。たまたま現場においてコーヒー好きの人間がいて、その人は豆を購入して自宅で挽いている、とのことだった。やはりインスタントのコーヒーと異なり、おいしいとのこと。それで、自分も同様にコーヒーを飲もうと思った。

まず、機材をそろえることにした。初心者でもあることから、高価でなく、簡単な機器を購入しようと思った。仮に失敗したとしても諦めやすいだろうし。幸い、頻繁に利用する amazon.co.jp において、コーヒーストアなるカテゴリが用意されていた。そこで、上位にランクされており、かつ良いレビューが登録されている機器を注文することにした。最終的に、以下の商品を注文した。

Melitta アロマサーモ ステンレス ダークブラウン JCM-561/TD
Kalita 電動コーヒーミル KCM-45
Melitta フィルター ナチュラルブラウン バンブー 1x2

続いて、豆を注文しようと思った。しかし、これがまた難しい。どこの豆を選択すべきだろうか。Web を検索すると、かなりの数の情報がヒットしてしまう。そこで、無難に楽天市場で検索することにした。当時、上位にランクインしていた加藤珈琲店が販売していた """おもいっきり珈琲福袋セット""" を注文した。この商品は、時期により豆が異なると思われる。私が注文したころ、冬バージョンが販売されていた。

現在、休日になると必ずコーヒー豆を挽いてコーヒーを飲んでいる。少なからず不満もあるが、ほぼ想定したいて不満であり、費用対効果を評価すると、まったく問題にならない。ちなみに部屋がコーヒー臭くなってしまうが、コーヒー好きなら問題ないだろう。およそ 1.5 万円の出費をしたことで、満足できるコーヒーを飲めるようになった。もし、あなたがコーヒー好きなら検討に値するだろう。

Friday, March 14, 2008

ぬこ

言葉にできない 子ねこ篇

Why I don't use a screen name.

SNS や The Internet の世界において、私が実名(顔写真つき)を公開している理由は、fj の伝統を尊重しているため、だ。また、Eric のおしえにも従っているため、でもある。引用しておく:

The problem with screen names or handles deserves some amplification. Concealing your identity behind a handle is a juvenile and silly behavior characteristic of crackers, warez d00dz, and other lower life forms. Hackers don't do this; they're proud of what they do and want it associated with their real names. So if you have a handle, drop it. In the hacker culture it will only mark you as a loser.

Thursday, March 13, 2008

射撃しつつ前進

青木靖氏が Fire And Motion を翻訳していなかったら、私は、怠けエンジニアになってしまっていただろう。


このタイトルに気づいた人もいるだろう。そう、あのタイトルからコピーしている。Joel のオンラインドキュメントを発見した時期は、ずっと過去で、それは彼の本が出版される前だ。私は彼ほど intelligent な人間でないので、彼が伝えようとしたことの全て理解していないだろう。ただし、彼のドキュメントは私の人生に大きな影響を与えた。そのひとつを書いておこう。このタイトルのドキュメントを読んだ後、私はあることを実行し続けている。それは、毎日の勉強だ。実際、勉強できない日もある。体調不良で倒れている日もあるし、年に数回のアルコールが強烈に脳の機能を麻痺させた日など、だ。だが、そうでないなら、私は勉強する。試しに勉強しないでいると、ひどくムズムズして気持ち悪い。かといって、毎日、血を吐くほど勉強しているわけでなく、試験の勉強をしているなら、テキストを 1 ページだけ、ひどいときなら数行だけ勉強して終了するときもある。ただ、ここで強調しておきたいポイントは、毎日の勉強を欠かさないこと、の重要さだ。彼の言葉を借りるなら、
・have time on your side
・move forward every day
だろうか。そう、毎日、私が勉強するなら私は成長し続ける。いつか時が見方するだろう、きっと。

Tuesday, March 11, 2008

インナーケース

傷つきやすいみたい。MacBook の話。特にリンゴのマークの面だ。相手が金属だと簡単に傷ついてしまうようだ。私は USB の金属の部分で傷つけたんだと思う。大切にしようと思っていたのに...。とりあえず、IN-MAC13BK を注文した。

Monday, March 10, 2008

ついに

ついに MacBook を起動した。起動する前にメモリを交換(1 GB -> 4 GB)した。年末に購入した iPod nano も、ついに起動した。放置しすぎ。。。いくつかの CD をインポートしつつ、iPod と同期した。ちなみに、通勤で聞いている ENGLISH JOURNAL の CD も、明日から iPod で聞くことに。

スルー力

自分に必要だ!ついつい反応してしまう、いろいろなことに。

スルー力

Saturday, March 08, 2008

新入社員の相手をしていたら疲れた。口先だけのヤル気なんか不要だ。もっと理解してほしい、自分の状況を。

Thursday, March 06, 2008

宝くじ

グリーンジャンボ宝くじを 10 枚バラで購入した。

Purchased A Memory

まだ放置されたままの MacBook に装着するメモリ - A2/N667-2GX2 - を注文した。iodata か transcend のメモリを購入したかった(永年保証であるため)が、どちらも製品情報を確認できなかった(メーカの Web サイトから MacBook の型番 MB402 を指定して検索)のでパスした。BUFFALO の場合、MacBook の型番から製品を検索できた。BUFFALO のメモリは 6 年間の限定された保証であるためパスしたかったが、まぁ、6 年も同一のマシンを使用しないだろうし、たまたま Amazon.co.jp で安く販売されていた - 16,480 円 - ので、注文することにした。kakaku.com での最安値は、20,209 円だった。

Wednesday, March 05, 2008

今日

現場を休みました。

Tuesday, March 04, 2008

来た!

本日、クロネコが MacBook を配送してくれた。この時間からセットアップを開始したくないので、とりあえず放置。どのメーカのメモリを注文しようか。

Monday, March 03, 2008

教材

Google Sites を使用して教材(若手が勉強するための)を作成している。慣れると簡単に操作できるな、これ。

Renewed Weekly ST

すっかり忘れていた、週刊 ST を購読(継続)する申し込みを。先月 29 日で終了だった。幸いにも、Web から簡単に手続きできた。

Saturday, March 01, 2008

Google Sites

Google がリリースした Google Sites を利用してみた。自分も会社も Google Apps を利用しているが、とりあえず会社のアカウントで利用してみることに。ちらっと操作してみた感想として、Wiki ですな。社内でも Wiki を利用しているが、PukiWiki を日本語で利用しているので、ちょっとウザいと思っていた。いや、かなり。Google がリリースする各種サービスは、多言語に対応しているし、デフォルトの英語のままで利用できるので非常に便利。というか快適。さっそく同僚に紹介してみよう。

FreeBSD 7.0-RELEASE

FreeBSD 7.0-RELEASE Announcement


久々にインストールしてみるか、と。