vim力が少しアップした

こん棒から錆びた剣程度に。

sshした先でvimを使うことが多いので、使わないからと譲り受けた小綺麗なvimの本を読んでみた。

ProductName ViIMproved‐Vim完全バイブル
Steve Oualline
技術評論社 / ?円 ( 2004-05 )


で、メモを取っておいた

設定ファイルをいじくらなくてもいい範囲で覚えれば効率的でよい。

テクニカルエンジニア情報セキュリティ受けてきた

久しぶりに受けてみた。

ProductName 平成20年度 テクニカルエンジニア 情報セキュリティ試験によくでる午前・午後問題集 (情報処理技術者試験対策書) (情報処理技術者試験対策書)
濱本 常義/上野 宣/杉谷 智宏/園田 道夫/根津 研介/宮本 久仁男
技術評論社 / ¥ 2,919 ()
通常24時間以内に発送

この問題集を一週間ほどかけて一通りやって臨んだ。dekidasはキーボードショートカットがないのでちょっと使いづらかったが、採点は勝手にやってくれるので便利。あと、出来なかった問題はネットで調べたりとかしながら。

試験場は静岡大学。初めての静大潜入。

1208687300

っていうか、なにここは?山寺か?情報セキュリティの試験会場は人文学部棟とかいう山を登りきったとこにあってちょっとしたセキュリティな感じ。

すっかり息切れした。

1208687298

さらなるセキュリティ。

試験のほうはたいして感想がない。しいて言えばperlのsysopenを知らなくて困ったくらい。文意から判断してよろしく解答しといたけど。

受からないと物欲が満たされないので困る。

TWIPS

RTF::Writerで画像の大きさを設定するのに使われてた。

Twip

Microsoft Windows の標準のシステム解像度である 96dpi の環境下では 15Twips で 1ピクセル、120dpi の環境下では 12Twips で 1ピクセルの長さと等しい。

ややこしい。

FSWIKIをプラグインからコード変換できるように

FSWIKI3.8.2の話だけど。

RTF::Writerの出力プラグイン書いてて、最初にソース全体をsjisでエンコードしたかったので、WIKI/Parse.pmのparseメソッドをちょっと変えた。

ProductName Rtf Pocket Guide
Sean M. Burke
Oreilly & Associates Inc / 937円 ( 2003-07 )


というメモ

sub parse {
       my $self   = shift;
-      my $source = shift;
+      $self->{source} = shift;

       $self->start_parse;
-      $source =~ s/\r//g;
+      $self->{source} =~ s/\r//g;

-      my @lines = split(/\n/,$source); 
+      my @lines = split(/\n/,$self->{source});

これで、プラグインのほうでstart_parseメソッドに文字コードの変換処理を書いとけばパース処理が始まる前に変換されてよい。

ProductName 入門Wiki―みんなで投稿/編集できるWebの作りかた
竹添 直樹
毎日コミュニケーションズ / ?円 ( 2006-07 )


学生時代の話

そういえば突然思い出した。

栃木の学校教員は脳味噌腐ってるとしか思えない

栃木の教職員はわざと脳味噌腐った人材を登用してるとしか思えなくなって来た。

小学校の1年か2年の頃のことだったと思うが、下校時に教師がすごい形相で走ってきて近くの女の子を突き飛ばしたのを覚えている。豪快に田んぼに突っ込んで泣いてたな。 程なくしてその教員は休職したというか精神病棟に入れられたとか。

で、その後に入ってきた男性の臨時教員も最初からちょっとなんかおかしくて、授業中に突然怒りだしたりとか平手打ちしだしたりとかしてた。2ヶ月くらいで消えたと思うけど。これまた精神的に病んでたとかそういうオチ。

精神的に病んでいるってのはアレすぎなんだけど、他にも今考えるとヒトとしてちょっとなとかいう教員に出会った確率は多かったような気がする。もちろん、人間的に尊敬する人も何人かはいたんだけど。

結局のところ、ちょっとおかしげなのを多少混ぜてトータルで若干駄目な感じ?に仕上げてるのが義務教育の妙味じゃないのかなとか思っていたし、それはそれで楽しい思い出だったりするんだけど、他は違っているのだろうか。

とか書いといて、娘が自分と同じような扱いをされたらぶちぎれるわな、多分。あとこっちのほうでも、うっかり子供が集団でやる部活に入ったりとかしたら、大きい車買わないと気まずかったりとかするらしいという噂を聞いて「めんどくせーなー」とか言ったら、それが普通なんだよとか言われたとか言われなかったとか。

WiiコントローラーでPyMolを制御する

ずいぶん前に加速度センサでPyMolを動かしてみたことがあるんだけど、案の定、

細かい制御が出来ないから使えねーよな、プレゼンだったら別にいいんだけどよ

みたいなコメントが入っていて、やっぱワイヤレスなセンサーバーが欲しいなあと買ってしまった。

これで、PyMolいじりだ。今回使用したMoleculeはMolecule of the MonthにのっていたAdrenergic Receptorsだ。ちなみに、僕はTopoisomerasesとかが気に入っているが。

IRセンサーのほうが位置を決めやすいので動かすのがやっぱ楽チン。

IRセンサーと加速度センサーの入力を取りたいだけだったらbluetoothでやりとりできるWiiコントローラのほうがGainerよりも楽だな。

jython+processingでマウスの入力を受け取るサンプル

list 3-4-aをjythonで。

ProductName Built with Processing [改訂版]
前川 峻志,田中 孝太郎
ビー・エヌ・エヌ新社 / ¥ 3,570 ()
通常24時間以内に発送

書いたコード。

from javax.swing import JFrame
from processing.core import PApplet

class Sketch(PApplet):
    def __init__(self):
        pass

    def getField(self, name):
        return self.class.superclass.getDeclaredField(name).get(self)

    def setup(self):
        self.size(800, 600)
        self.colorMode(PApplet.HSB, self.width)
        self.background(self.width-1)
        self.noStroke()
        self.frameRate(10)

    def draw(self):
        self.fill(self.mouseX, self.width*0.5, self.width-1)
        self.ellipse(self.mouseX, self.mouseY, self.mouseY/2, self.mouseY/2)


def run(applet):
    frame = JFrame(title="Processing",
                   resizable = 1,
                   defaultCloseOperation=JFrame.EXIT_ON_CLOSE)
    frame.contentPane.add(applet)
    applet.init()
    frame.pack()
    frame.visible = 1

if __name__ == '__main__':
    run(Sketch())

Caatalystの6章と7章読んだ

なんとなく今日も読んでいる。

  • 6章は、独自のモデルを作ろう
  • 7章はRESTとAjax

ProductName Catalyst: Accelerating Perl Web Application Development
Jonathan Rockway
Packt Publishing / 3545円 ( 2007-11-30 )


6章はファイルシステムをCatalystのモデルにするサンプルだが、Catalyst::Model::Adaptorを知ってしまうとあまりそそられなかった。

7章はJemplateが楽しそうなんだけど、ググっても、実際に使われているという例が出てこないのが気になった。なんかデメリットでもあるんだろうか?

WebService::AudioscrobblerをCatalystのModelに

Catalystのモデルを書くの面倒だなーと思っていて、Catalyst::Model::LastFMがあると便利な気がしてたんだけど、微妙に放置してた。

が、Catalyst::Model::Adaptorを使ってみたをみて、コレだーって思った。

Catalyst::Model::Adaptor

$ script/drkcore_create.pl model LastFM Adaptor WebService::Audioscrobbler new

とやるだけで、WebService::AudioscrobblerがCatalystのモデルになる。らくちんだ。

last.fmのチャートを表示するようにしてみた。

おーblur意外に聴いてんな。On The Way To The Clubヘビーローテしてたからかな。

ProductName Think Tank
Blur
Virgin / ¥ 1,986 (2003-05-06)
通常24時間以内に発送

Catalyst本の第5章を読んだ

久しぶりに。

ProductName Catalyst: Accelerating Perl Web Application Development
Jonathan Rockway
Packt Publishing / 3545円 ( 2007-11-30 )