マインズ・アイ

尊敬すべきプログラマである私の友人は、普段はFireFoxを利用してWebを見ているが、エロサイトを見るときだけは必ずOperaを使うという。そして、仕事モードになるときは、バシッ!と全てのタブウィンドウを一気に消すのだそうだ。

コンピューターに向かっているとき、人間の意識は身体を離れ、没頭しやすい状況になる。マインズ・アイ(=自分自身の心の状態を内省する人間の能力)が働きにくくなる。僕は特にすぐ周りの見えなくなる性質なので、エロサイトやWikiPediaなど見始めると終わりがなくなっていろいろと困るのである。

そんな時有効なのが、物理的なルールを自分に課すことだといえる。物理的ルールによって、没入状態から身体への意識を取り戻し、マインズ・アイの働きが活発になるというわけだ。

まだ若いのに集中力があって、生産力も高い彼の秘密は、そんな行動ルールを自分で編み出してしまうところにあるのだろう。

というわけで、私も彼を見習い行動ルールを導入した。エロ関係のファイルやWebサイト一切はファイルサーバー用パソコンでのみ閲覧可とし、それ以外のマシンで開くことを禁止したのである。

今のところ効果は抜群と言える。

それにしても、普段好青年で通っている彼が、Operaを起動する瞬間の表情を一度でいいから見てみたいものであるw。

2006年一行日記

  • 1月 仕事で頭をイタめる日々。有名な方にお会いする機会が多かった。そしてハラをくくれと言われた。
  • 2月 仕事と勉強会でテンパる。知り合いの上海出張に便乗する。
  • 3月 数千万のハードをエイヤっと発注した。大学時代の恩師に上海にいるという教え子を紹介してもらう。中国語の資格とれば入学させてもらえるというので、中国語を勉強し始める。
  • 4月 ハードが無事納品。デル様に感謝する。中国語の家庭教師を見つける。
  • 5月 プロジェクト終盤でアセる日々。勉強不足のままHSK(中国語レベル資格試験)を受験。
  • 6月 プロジェクトのリリース。一年ぶりのスッキリ開放感と達成感!
  • 7月 仕事やめる宣言をする。引継ぎ・後片付けおわらず。6年いた職場ですが、最後まで己の至らなさを痛感。HSKのレベルが入学基準に足りないが、なぜか入学許可が降りた。
  • 8月 仕事の後片付け長引く。連日歓送会をしてもらう。ありがたい。無理やり数回ツーリングにいく。上海到着した夜にカラオケに連れて行かれ先が思いやられる。
  • 9月 授業も少なく悠々自適かと思いきや、語学も専門も授業がわからなくてアセる。
  • 10月 バイトに精を出す。禁欲の日々。
  • 11月 なぜか日本の友人・お客さんがまとめて来襲。接待でテンパる。
  • 12月 妻子が来襲。「上海つまんない」という爆弾発言をされてテンパる(その後挽回)。中国語上達せず。

身の程を超える無理をしてアセる日々でした。いつもそうなんですよね。。

まとめ
ライフ(人生)はハックできない。デスマーチだから。

明けましておめでとうございます

やっとネットが繋がるようになった。台湾地震の影響で、自宅回線ではしばらくメールもWebも見えなかった。CDMAでなんとかメールを受信できる程度だったので、窒息しそうだった。

嫁さんの同僚夫婦とか、娘の保育園の同級生一家が遊びに来てくれて、大晦日も新年も上海ガニカニカニ。イイカゲンな僕ら一家にわざわざ会いに来てくれるなんて有難いことです。

皆様今年もよろしくお願いいたします。

WWW::Mechanizeのテスト

Perlの、簡単にブラウジングを自動化できるライブラリ、WWW::Mechanizeのテスト。TypePadに自動投稿できるかどうかを試してみました。いちおうお仕事。Perlが使えて嬉しいです。

use strict;
use utf8;
use Encode;
binmode STDOUT, ":encoding(shiftjis)";

use Data::Dumper;
$Data::Dumper::Indent = 1;

use WWW::Mechanize;

my $username = '******';
my $password = '******';
my $title = 'title';
my $text = 'text';

my $host = "https://www.typepad.jp";
my $start = $host."/t/app";
my $mech = WWW::Mechanize->new();
$mech->agent_alias('Windows IE 6');

# top
&message('[1]top...');
my $response = $mech->get($start);
&abort(Dumper($response)) unless ($mech->success);

# login フォーム submit
&message('[2]login...');
$mech->form_number(0);
$mech->set_fields('username' => $username, 'password' => $password);
$response = $mech->submit;
&abort(Dumper($response)) unless ($mech->success);

# 新規投稿
&message('[3]post...');
$response = $mech->follow_link(url_regex => qr/t\/app\/weblog\/post\?blog_id/i);
&abort(Dumper($response)) unless ($mech->success);

# 投稿の確認
&message('[4]preview...');
$mech->form_name('entry_form');
$mech->set_fields('title' => $title, 'text' => $text);
$response = $mech->click('preview_entry');
&abort(Dumper($response)) unless ($mech->success);

# 投稿完了
&message('[5]finish...');
$mech->form_number(0);
$response = $mech->click('save');
&abort(Dumper($response)) unless ($mech->success);

# 再構築
&message('[6]rebuild...');
my $report = decode("utf8", $mech->content());
if ($report =~ /window\.location\.replace\('([^\s']+)'\);/) {
    $response = $mech->get(URI->new($host.$1));
    &abort(Dumper($response)) unless ($mech->success);
} else {
    &abort("rebuild error.\n".$report);
}

# 正常終了
&message('successfully finished!');

exit(0);

sub message { 
    foreach (@_) {
        print decode("utf8", $_);
    }
    print "\n";
}

sub abort { &message(@_); exit(1); }

あ、Windowsで開発したので出力はshiftjisになっています。

なんだか最近は、僕の力不足で各方面でいっぱいいっぱいになっています。まぁ、いつものことなんですが。ご迷惑をおかけしている皆様すみません。頑張ります〜。

※ここのサイトが参考になりました→http://digit.que.ne.jp/work/index.cgi?Perl%e3%83%a2%e3%82%b8%e3%83%a5%e3%83%bc%e3%83%ab%2fWWW%3a%3aMechanize

ブログ書きます

学校のテストが先週終わったところで、これからはブログをきちんと書いていこうと思います。上海ログというタイトルで、書きたいことを適当に書きます。まずは、書きかけでアップしてなかった過去記事をアップするところから。。

今気づいたけど、はてなダイアリー文字コードEUC-JPですね。簡体字は表示できませんね。イタイ。