miau's blog?

| 1 |

2005年 10月 20日 (木曜日)

いい仕事

- Work on miau's blog?
さっき書いたアイテムもそうなんですが・・・

(1) 定型作業をスクリプトやらで自動化
(2) 実際の仕事でどんどん使って、機能不足の点は拡張

という仕事のやり方ができたとき、自分で「いい仕事してるなー」と思ってしまいます。


書くまでもないことですが、作業を自動化すると、
・短時間で
・正確に
作業ができるわけです。

「自動化プログラムにバグがあったらどうするんだ」という意見もありますが、バグがある時って処理結果が大幅に異なることが多いですし、結構すぐ気づくものだと思います。
人間が作業した場合はミスしないように毎回気をつける必要があるのに対して、プログラムのバグは一回直せばそれでおしまいですしね。

その過程でスクリプティングやプログラミングの腕が上がっていく、というのもポイント。


よく仕事で「経験を積む」というけど、時間使ってるんだから経験積めるのは当たり前。
知識も技術も普通にやってれば伸びるでしょう。

そこで同時にスクリプトだとかプログラムという形で資産を残す。
そして、使うたびにその資産に磨きを掛けていく。

これ最強。


逆に、効率悪い仕事している人を見るとかなり苛々してしまいます。
正規表現で一発置換できるのに、手作業で一行ずつ編集したりとか。

つまらない作業に時間使っちゃダメですよ。本当に。
01:20:19 - miau - No comments - No Trackbacks - Permalink

2005年 10月 25日 (火曜日)

CGI.pm を使わずに cookie 取得とか

- Work on miau's blog?
以前のアイテムで、Perl から PHP のセッション情報を読んだりしてましたが。
PHP のセッション情報に保存されたユーザ ID を確認して、ユーザ認証を行うのが目的でした。

ということで、認証が必要な CGI の先頭に、


use CGI qw(:standard);
use PHP::Session;

my $sess_id = cookie('PHPSESSID');
my $session = PHP::Session->new($sess_id);

my $user_id = $session->get('user_id');

こんな感じの処理を仕込んでたんですが・・・この後 cgi-lib.pl みたいな処理で POST データ読もうとしても、読み込めなかったり。

原因調べてみると、CGI::cookie() を呼んだ時点でいろいろ autoload されて、POST データが CGI.pm に横取りされてしまってる模様。

仕方ないから、手動でデータ取得したり。

my $sess_id = '';
my $raw_cookie = $ENV{HTTP_COOKIE} || $ENV{COOKIE};
my @cookies = split /;/, $raw_cookie;
foreach my $cookie (@cookies) {
my ($key, $value) = ($cookie =~ /\s*(\w+)\s*=\s*(.*)\s*/);
if (defined $key && %key eq 'PHPSESSID') {
$sess_id = $value;
}
}

適当に書いたけど、とりあえずちゃんと動作してる様子。

ちゃんと処理全体で CGI.pm 使うようになってれば問題ないんだろうけど・・・妙な共通モジュール使ってるもんでたまに困ります。
08:08:45 - miau - 1 comment - No Trackbacks - Permalink

2005年 10月 27日 (木曜日)

isql の接続エラー

- Work on miau's blog?
なぜか isql で localhost 上の SQLServer 2000 に接続できないとかありましたので、そのお話。
[Read More!]
13:40:29 - miau - No comments - No Trackbacks - Permalink
| 1 |