2007年12月22日
2007年12月21日
Kinesisさらに購入
この正月休みに家でも快適にプログラミングするため、結局Kinesisキーボードをもう1枚買ってしまった。
購入したのはAdvantage Pro、KB510USB-metだ。エルゴノミクスなcontouredシリーズの最上級モデルになる。

選んだのはそれのRefurbishedモデルで、不良品など返品されたのを工場で修理した製品で新品を買うよりは安くなっている。ちなみに20%OFFだ。359ドルのところを287ドル。修理したと言っても不良箇所のパーツを交換とかだし、ちょっと別の誰かが使ったかもと言ったぐらい。家用は仕事用よりも使用頻度は低いのでそれほどこだわらない。
Linuxメインマシン用にさらにもう1枚色違いを買おうかと思ったけど何とか思いとどまったw
でも送料に60ドルかかるんだったらもう1枚一緒に買っておいても良かったかもなぁ。
2007年12月20日
Kinesisキーボード値下げ中
Kinesisのキーボード全品値下げ中。
> HOLIDAY SPECIAL - 10% off any New Keyboard
家用に買ってしまうか・・・。
最近家でPCを付けることが少ないので、それほど必要性は高くないのだけれど予備の意味合いもかねて。
値下げって言っても30ドル程度なので急ぐ必要もないが。
それよかノートPCを英語キーボードにしたいな。
VAIOならたいてい英語キーボードオプションがあるからちょうど良い。
そういえば今使ってるKinesisで、Ctrlキーを離してるのに押し続けてると認識したり、その他ちょっとキーボード関連でおかしかったのでKinesis社にメールしてみた。Ctrlキーが1週間に1度程度stuckするんだけどこれは正常な発生確率かそれとも不良品かって。個人的にはキーがstuckする時点でクソキーボード決定だ。海外ゲームとかソフトウエア的には結構発生するけどハードウエア的にstuckはダメだ。
すると「とりあえずキーマクロなどのメモリを初期化してくれ。修飾キーのstuckは普通起こらない。小さな確立で一部のユーザが1ヶ月に1回あるかないかぐらいだ」とのこと。
ふむ・・・確かに一度マクロがおかしい動作をしていたことがあった。とりあえずCapsLockにCtrlキーを割り当てているけどそれを解除し、OS側でリマップしてみるか。と言うことでCapsLockのCtrlキー割り当てを解除してみた。そしたらなんかCapsLockキーがバグってCapsLockキーとして機能せず、CapsLockキーを押し続けているとhの文字が出たり消えたりしている。つまり不規則にHキーとBackSpaceキーのキーイベントが出ているようだ。なぜかNumLockのランプもついたり消えたりしている。
あー、これは完全にバグっているなと言うことで一度RemapとMacroの設定を消去。メールでは工場出荷状態に戻す、より強力な初期化をしろと書かれていたが、とりあえず通常の初期化をしてみた。
まだ半日も使っていないが今のところ正常だ。
よって今回得た知識としては「Kinesisキーボードのマクロはバグることがある。そういうときは初期化して様子を見る」という感じで。
2007年12月13日
Python
技術系の本を探していたらアホなエントリーを見つけた。
なつたん
ヤター! 長門Pythonできたよー!
> もうすぐクリスマスなので、PythonのIDLEも長門プロンプトに変えてみました。
> クリスマスは長門とPythonプログラミングを楽しもう!
アホすぐるw
じゃあ俺も長門をインストールだっ!
魔法の言葉
(set! scm-repl-prompt "YUKI.N> ")
を.guileに書けばキミのGuileにも長門が来るぞ!
年末年始は長門とSchemeプログラミングだ\(^o^)/
・・・・無駄な時間を過ごしてしまった・・・・。仕事しよ。
2007年12月10日
SICPの神っぷり
去年ぐらいから毎週やっているSICP勉強会は始めだしてから1年ほどたった。
そろそろある程度自由にSchemeのコードが書けるようになったけど、身につけたのはSchemeの知識以上のモノだった。
以前読んだブログの記事
プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
でもSICPを参考にしたんじゃないかって言うぐらいSICPでの内容と一致してる。
O(n)でしか取り出せないLinkedListしか無い(?)Schemeなのでリストのソート系がSICPには書かれてないけど。
1番目のユークリッドの互除法なんて、Schemeでの四則演算から勉強しだして27ページ目にはもうユークリッドの互除法の事が出てるし、ニュートン法は41ページ目で出てる。Schemeの教科書という皮をかぶった恐ろしい本だぜ・・・ゴクリ・・・。
この記事を読んだ週にちょうどエラトステネスの篩を勉強したところで、SICPでエラトステネスの篩を知ったときは「ふーん」って感じだったけど、実はアルゴリズムの大御所だったんだな。
読み進めてもうそろそろ200ページに達する頃なんだけど、だんだん問題が難しくてきつくなってきた。
ストリーム(コンピュータ用語のストリームとは別)に関するところなんだけど、問題を解くのに必死でその問題の裏に隠された本質を理解するところまで力が回らない。でもストリームはなかなか他の事にも使えそうな概念で面白そうだ。
さらにそのストリームを"並び加速"で加速させ、さらにタブローを使って"超加速"させてより早く収束させるとかまだ理解するところまで行ってないけど面白そうだ。この加速はオイラーが考えたらしいけど特に名前は付いてないんかな。しかし数学者って言うのはすごいな、こんな便利なものばかり考えつくんだから。
ストリームの次は、とうとう第4章の「超言語的抽象」に入る。
一見全く意味不明の"超言語的抽象"と言う言葉だけどどんな"本質"が隠されているのか楽しみだ。
2007年12月05日
コーディング用フォント
プログラマにとってコーディング時に使うフォントはとても重要だ。
ぱっと見て何が書いてあるかが一瞬で判断できないと困るし、ゼロとオー、小文字のLと大文字のIが似ていても困る。
個人的に反アンチエイリアス派で、ぼやけた感じのアンチエイリアスフォントは嫌いだった。
よってビットマップフォントがはっきりくっきりで綺麗なMSゴシックを愛用していたのだけど、このフォントの気になる点はイタリックの文字が見づらい事と、ゼロとオーなど見間違いやすい文字の判断が付きにくいことだ。
そこでプログラマ用に見やすいフォントがあると言うことで試してみた。以下のサイトの「M+2VM+IPAG-circle.ttf」だ。
M+ と IPAフォントの合成フォント
一番重要な半角英数はプログラマに定評がある(らしい)Bitstream Vera Sans Monoを使っているとのこと。さらに数字のゼロに斜線を引く改良もされている。
残念ながらビットマップフォントは内蔵されていないので、小さな文字には向かない。
また、WindowsXPだとアンチエイリアスが壮絶に汚いのでちょっとキビシイ。ClearTypeを有効にすると見れたモノじゃなかった。無効にすると多少マシ。
と言うことで実際に使ってみたのが下の写真。
ゼロに斜線があるのが良いな。
バックスラッシュがちゃんとバックスラッシュなのが良いけど、長いこと¥文化に慣れているとスラッシュとバックスラッシュが時々ごっちゃになる・・・。いや、わかってるねんで?と言うことになる。
とりあえずしばらくこのフォントで行ってみよう。