英語のプレゼンしなきゃならなくて、原稿をかいてみたりとかしたりとか。
こういうときって、メモ帳とかワードパッドとか使って書き散らすことが多いのだけど、 英語の文章が浮かばずに、何でMeadow使わないんだろうか?という疑問が浮かんだ。
という理由により、文章書いてみると、M-qで文章を文字数で折り返す機能がやたらと便利なことに気づかされた。でもM-x refill-modeはかくかく感がいまいちナ感じ。自分の好きなタイミングでM-qするのが楽だった。
英語のプレゼンしなきゃならなくて、原稿をかいてみたりとかしたりとか。
こういうときって、メモ帳とかワードパッドとか使って書き散らすことが多いのだけど、 英語の文章が浮かばずに、何でMeadow使わないんだろうか?という疑問が浮かんだ。
という理由により、文章書いてみると、M-qで文章を文字数で折り返す機能がやたらと便利なことに気づかされた。でもM-x refill-modeはかくかく感がいまいちナ感じ。自分の好きなタイミングでM-qするのが楽だった。
02042008 jython processing
今日のお題は座標系を変える

def setup(self):
self.size(200, 200)
self.colorMode(PApplet.HSB, 120)
self.background(119)
self.noStroke()
self.smooth()
self.rectMode(PApplet.CENTER)
self.angle = 30
self.margin = 40
def draw(self):
self.translate(120, 30)
for i in range(12):
self.fill(i*10, 100, 119, 60)
self.rect(0, -10, 10, 10)
self.rect(0, 0, 30, 30)
self.rect(30, 30, 60, 60)
self.rotate(self.radians(self.angle))
self.translate(self.margin, 0)
02042008 bioinformatics plagger
えと、僕とボットしかいない職場のircですが、それだけだとさびしいので、smilesを打ち込んだらInchiを返す人口無能でもいれたろかと思ったがそれはあまりにも孤独すぎだろうと思いとどまった。むしろ、黒い独り言を垂れ流して、負のオーラで仲間をひきつけるチャンネルを作ろうとか(謎)
というより、頻度の高いニュースサイトなんかを流すと、にぎわっているようでよいのではないかと。というわけで、ちょっと前に見つけたnikkei_btjをircに流してみた、plaggerで。
plaggerの設定はirc.yamlを参考に書き換えるだけだった、お手軽!そしてnikkei_btj調子いいっす。感謝!
02042008 perl
昨日の続き
use strict;
use warnings;
use Socket;
use threads;
use threads::shared;
use Thread::Queue;
my $thread_num =10;
my %cache : shared;
my $DataQueue = Thread::Queue->new();
for (0..$thread_num){threads->create(\&getaddress);}
while(<DATA>){
chomp;
$DataQueue->enqueue($_);
}
for (0..$thread_num){$DataQueue->enqueue(undef);}
$_->join for threads->list;
sub getaddress {
while(my $DataElement = $DataQueue->dequeue()){
my $address;
if ( $cache{$DataElement}){
print "[cache] ",$cache{$DataElement},"\n";
}
else {
($address) = gethostbyaddr(inet_aton($DataElement),AF_INET);
if ($address){
print "$address\n";
{
lock %cache;
$cache{$DataElement} = $address;
}
}
else {
{
lock %cache;
$cache{$DataElement} = $DataElement;
}
print $DataElement, "\n";
}
}
}
}
__DATA__
222.228.235.193
157.113.18.68
これで結構オッケーなんだけど、アクセスログだとIPアドレスが連続してるのでキャッシュされてない且つ逆引き出来ないアドレスが続いてるとすべてのスレッドがそのアドレスを問い合わせにいってしまって遅かったりする。
どれかのスレッドが問い合わせ中のアドレスは問い合わせにいかないというような処理を入れたくなったけど、どういう風にしたらよいのかわからない。
01042008 perl
javaの入門書を読んでいたら突然スレッド処理が気になりだした。そういえばどう書くにスレッド処理の問題あったな。
あった。
pythonだとthreadingとかtwisted使った解答があって参考になった。というかtwistedは興味があるけどよくわからん。今度また改めて。で、thread使ったperlの解答がなかったので少し考えてみた。初めてのthreadプログラミング。
use strict; use warnings; use Socket; use threads; use Thread::Queue; my $DataQueue = Thread::Queue->new(); my $thr1 = threads->create(\&getaddress); my $thr2 = threads->create(\&getaddress); my $thr3 = threads->create(\&getaddress); my $thr4 = threads->create(\&getaddress); while(<DATA>){ $DataQueue->enqueue($_); } $DataQueue->enqueue(undef); $DataQueue->enqueue(undef); $DataQueue->enqueue(undef); $DataQueue->enqueue(undef); $thr1->join(); $thr2->join(); $thr3->join(); $thr4->join(); sub getaddress { while(my $DataElement = $DataQueue->dequeue()){ my ($address) = gethostbyaddr(inet_aton($DataElement),AF_INET); print "$address\n" if $address; } } __DATA__ 74.6.16.244 203.104.98.219 219.111.208.65
ログの順次読み取りはThread::Queueをつかってキューに突っ込みつつそれぞれのスレッドがdequeueをしながら必要なデータをとってくようにすればよさげだけど、終了のさせ方がいまいちアレ。これだとスレッド生成の数だけundefをqueueに突っ込まないと終わらないですよな。
あとキャッシュを共有化してDNSサーバの負荷を軽減させないといけない。ロックかけないといけないのかな。perlthrtutあたりをじっくり読む必要があるな。
WEB+DB PressのPerlスレッドプログラミングのところもかなり参考にした。というかこの号は色々読みどころが多くて好きだ。
29032008 電子工作
近所のホームセンターでハンダーライセンスゲット。
はんだごて買ってきた。あとワニ口クリップの小さいやつ。
しかし、フルカラーのLEDは売ってなかった。単色じゃなくてフルカラーのが欲しいのよ。
26032008 English
英語が鬼門だなぁと長いこと思ってたのだけど、これじゃいかんなと、最近まじめに取り組んでる。
で最近U隊長がフルハウスをみるんやとか言い出して、DVDを買った。
で、これがまた笑いどころが分からないことが多いのでガヤがもどかしい。
25032008 Meadow
家にサウンドロップが幾つかあったので、Gainerから鳴らしてみるという。事前の調査で要は3Vにすればいいんでしょ?と軽い気持ちでチャレンジ。
今回分解されたのはこのカメハメ波。

カバーをはずすと基盤。

上の方にある基盤のショートをさせる位置で鳴る音が変わるらしい。これをGainerと対応付けてキーボードかなんかで制御してやるのがゴール。 が、ハンダとか工具がないので、とりあえずは、USBの電源から音が鳴るようにすればいい。Gainerの出力が5Vだから、200kの抵抗を間にかませばいいと思うんだけど丁度いいのがないから320kの抵抗かましてつないだら音がなったけどなんか変。
か か か かめ かめ
とか断続的に音は鳴るんだけど、、、
とかいいながらいじってたらそのうち音が鳴らなくなってしまった。
いろいろ調べたらコンデンサをかますらしいんだけど、よくわかりませぬ。ブックオフか図書館でもいって電子工作関係の本を漁る必要があるな。
あと、みのむしクリップとかもないと配線できなくて困るなぁ