nipotanさんの「はてブ->livedoorクリップ」の使用方法

nipotanさんのはてブのブクマを livedoor クリップにクリップしてみる件のやさしい使用法を。というか自分自身がPerlのど素人なのでやってみたことを書くだけ。OSはFedoraCore5で。(Perl使いの人からみてコラって内容があったらご指摘下さい。修正します。)
デフォルトインストールのPerlではモジュールが足りないのでインストールする。

$ sudo perl -MCPAN -e 'install WWW::Mechanize'
$ sudo perl -MCPAN -e 'install Class::Accessor::Fast'

CPANの場合は最初に対話でいろいろ聞かれるけれど、それほど難しい質問はないのでざっと読んで答えていけば良さそう。次にnipotanさんのPerlモジュールを作成する。任意のディレクトリで

$ vi ./H2L.pm

とかやってここのコードの部分をそのままペタっと貼り付けて保存。次にパーミッションを変更してモジュールを配置する。

$ chmod 444 ./H2L.pm
$ sudo mkdir /usr/lib/perl5/site_perl/5.8.8/WWW/SyncSBS
$ sudo mv ./H2L.pm /usr/lib/perl5/site_perl/5.8.8/WWW/SyncSBS/

最後に実行するPerlコードを書く。ファイル名は何でも良いけれど

$ vi ./execH2L.pl

とかやって以下の内容を書く。

use WWW::SyncSBS::H2L;
my $h2l = WWW::SyncSBS::H2L->new;
$h2l->hatena_id('hatena_id');
$h2l->livedoor_id('livedoor_id');
$h2l->password('password');
$h2l->sync;

シングルクォートで囲まれた「hatena_id」と「livedoor_id」と「password」を自分のものに変更して保存。あとはパーミッションを変更して実行すればOK。

$ chmod 755 ./execH2L.pl
$ perl ./execH2L.pl

実行時間はブックマーク数1000個に対して15分くらいの時間がかかった。自分のマシンは構わないけれど、はてなlivedoorのサーバ負荷が少し心配。
livedoor Readerのときは即座にはてなRSSから乗り換えたけれど、今回のlivedoorクリップは今のところ積極的にはてブから乗り換える気はないかな。しばらくは様子を見てみる。

Omni completioが使えない

先日インストールしたVim7でOmni completioを使ってみたくて試すも虚しくエラー。.vimrcに

autocmd FileType html set omnifunc=htmlcomplete#Complete

と書くと「E764: オプション ‘omnifunc’ は設定されていません」とか言われる。

set omnifunc=htmlcomplete#Complete

と書くと「E117: 未知の関数です: htmlcomplete#Complete」と言われる。みんなこの辺で苦労している素振りがあまりにもないので、Vimの常識とかあるんだろうなぁ。ひょっとして/usr/local/vim7に入れたからかな。
「set」のところを「:setlocal」に変えたりとかいろいろやったけれど、根本的に違うっぽい。/usr/local/vim7/share/vim/vim70/autoload以下にhtmlcompleteとかはあるのだけど、これはどこかに移動しないと使えないのかなぁ。インストールとかいるのかなぁ。はぁ。。

索引って何て読む?

引っ掛け問題ではなくて「さくいん」でいいのだけど、本に「索引」と出てきて読みを20秒ほど思い出せなかった。頭が勝手に「インデックス」と読んでしまうのだ。DB使う人なら分かってもらえるかと。記憶の上書きは恐ろしい。
関係ないけど、応募忘れてたので。当たりますように。
マージンFXのひまわり証券さん、ニンテンドーDS Lite欲しい!

Vim7 インストール

Vim7をインストール。またまたid:spiritlooseさんに釣られて。
とりあえずはインストールのコマンドたちを。OSはFedoraCore5。

$ cd ~/download
$ wget ftp://ftp.vim.org/pub/vim/unix/vim-7.0.tar.bz2
$ wget ftp://ftp.vim.org/pub/vim/extra/vim-7.0-extra.tar.gz
$ wget ftp://ftp.vim.org/pub/vim/extra/vim-7.0-lang.tar.gz
$ cp vim-7.0.tar.bz2 /usr/local/src/
$ cp vim-7.0-extra.tar.gz /usr/local/src/
$ cp vim-7.0-lang.tar.gz /usr/local/src/
$ cd /usr/local/src
$ tar -jxvf vim-7.0.tar.bz2
$ tar -zxvf vim-7.0-extra.tar.gz
$ tar -zxvf vim-7.0-lang.tar.gz
$ cd vim70
$ ./configure \
--prefix=/usr/local/vim7 \
--with-features=huge \
--enable-multibyte
$ make
$ make test
$ sudo make install

これでとりあえずは/usr/local/vim7/bin/vimが使用可能になる。でも自分ユーザーとしては通常時に使用したいので.bashrcに以下を追記しておく。

alias vi='/usr/local/vim7/bin/vim'
alias vim='/usr/local/vim7/bin/vim'

そしてid:spiritlooseさんの自動実行権限付与(スクリプト限定)な奴を.vimrcに追記。内容はVimで shebang 付ファイルを保存時に実行権限を自動で付加するで確認すると良し。こういうのは、「毎回やるなら自動化しようよ」の精神に則っていて、とても素敵。
Vim7環境が整ったというところで、id:secondlifeさんがvim7の新機能 Omni completionで書いてる新機能なんかを確認しながら試してみることにしますか。

FedoraCore5 PHP5をインストール

MySQL 5.0 インストールにてMySQLがインストールされていることが前提のPHP5インストール。ついでにApacheのインストールも貼っておくと。尚、/usr/local/srcに対する権限が必須。
Apache 2.2.2

$ cd ~/download
$ wget http://sunsite.tus.ac.jp/pub/apache/httpd/httpd-2.2.2.tar.gz
$ cp httpd-2.2.2.tar.gz /usr/local/src/
$ cd /usr/local/src
$ tar zxvf httpd-2.2.2.tar.gz
$ cd httpd-2.2.2
$ ./configure --enable-shared=yes
$ make
$ sudo make install

libxml2 2.6.26

$ cd ~/download
$ wget ftp://xmlsoft.org/libxml2/libxml2-2.6.26.tar.gz
$ cp libxml2-2.6.26.tar.gz /usr/local/src/
$ cd /usr/local/src
$ tar zxvf libxml2-2.6.26.tar.gz
$ cd libxml2-2.6.26
$ ./configure
$ make
$ sudo make install

PHP 5.1.4

$ cd ~/download
$ wget http://jp.php.net/distributions/php-5.1.4.tar.gz
$ cp php-5.1.4.tar.gz /usr/local/src/
$ cd /usr/local/src
$ tar zxvf php-5.1.4.tar.gz
$ cd php-5.1.4
$ ./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/usr/local/mysql \
--enable-roxen-zts \
--enable-zend-multibyte \
--enable-track-vars \
--enable-mbstring \
--enable-mbregex
$ make
$ sudo make install
$ sudo chcon -t texrel_shlib_t /usr/local/apache2/modules/libphp5.so
$ sudo cp php.ini-dist /usr/local/php/lib/php.ini
$ sudo vim /usr/local/apache2/conf/httpd.conf
# 以下の行を追加
AddType application/x-httpd-php .php
# 以下にindex.phpを追加
DirectoryIndex index.html index.php

ハマリ所としてはlibxml2が必要なことと、SELinuxな人はPHPモジュール(libphp5.so)をApacheが読み込みできないこと。libxml2はパッケージからインストールしようとすると、他のモジュールがあれやこれや要ると言われるので、ソースからインストール。SELinuxを使っていなければ、chconコマンドの行は不要。configureオプションは毎度ながら適当なので、当てにしないこと。

FedoraCore5 ハードディスク増設

やりながら手順をまとめなかったので、とりあえずどんなことをしなくてはいけないのかを列記しておく。以下をヒントに調べれば解決するだろうということで。

  1. 本体にハードディスクを接続。ハードディスクを購入するときには、UltraATAなのかSATA(シリアルATA)なのかなど注意する。また同じ形式の中にもバージョン違いがあるのでケーブルと共に注意する。
  2. BIOSに認識させる。使わないハードウェアをOFFにしている場合があるので、ちゃんと認識できるように設定する。
  3. OSが認識しているか確認する。/dev/hda、/dev/hdbというふうに増えていくので、普通にlsで確認。但しSATASCSIとして認識されるようで、/dev/sda、/dev/sdbという感じで認識される。
  4. フォーマットしてパーティションを設定する。コマンドは「sudo /sbin/fdisk /dev/sdb」でOK。fdiskは対話式で、mを入力して何が出来るのか確認しながらやると良い。具体的にはフォーマット対象、ファイルタイプ、パーティションの開始・終了ブロックなどを指定する。fdiskの設定は最後にwを入力して書き込んで終わること。
  5. 起動時のマウントを設定する。設定の実体は「/etc/fstab」で最終行にでも追記しておく。今回書いたのは「/dev/sdb1 /mnt/hd160 ext3 defaults 0 0」で左からファイルシステム、マウント先、ファイルシステムの種類(Linuxはex2とかex3)、オプション、dump実行対象か、fsckの順番指定という意味。因みに、マウント先のディレクトリは先にmkdirしておくこと。
  6. OSを再起動。「df」で新しいハードディスクの領域が追加されていれば成功。

補足として、現在のディスク状態の確認は「sudo /sbin/fdisk -l」で見れる。

上司が部下を怒る法則

最近、自分の周りで上司が部下を怒っていることが多い。聴くつもりがなくても耳に入ってしまい、なんだかいつも決まったパターンだなと感じるようになってきた。大体の順序は以下のような感じだ。

  1. 起 (問題点を探す)
  2. 承 (見つけた問題点を徹底的に叩く)
  3. 転 (見つけた問題点を別の問題の原因にする)
  4. 結 (見つけた問題点を最初から言いたかったと結ぶ)

解説しよう。1.は「ここはどうなってるの?」とか「○○の進捗は?」とかいった感じで状況確認を装って問題点をサーチする。ここで問題点が見つからなければ良いのだが、現実にはほぼ確実に見つけることができる。それは時間の制約、立場の制約、個人的意見の制約などから誰も非の打ちようがない行動をとることが不可能に近いからだ。ここでの問題点は非常に些細なことでも良い。(メールのCC忘れたとか、客先に傘忘れたとか)
次に2.だが、1.で見つかった問題点を「普通はこうする」とか「何を考えたらそんなことをするのか」など、非常識のレッテルを貼って責め立てる。この2.のステップでは上司はほぼ部下の言い分を無視する。圧倒的に責める。
そして、3.で現在本当に問題となっていること(取引上の問題や売り上げなど)を2.のせいにする。「そんなこともできてないから」とかが定型分か。
最後に4.では「最初からこういうことが言いたかった」とか「前から言おうと思ってた」とか自分は全て予想済みであったということを発言する。
三者として聞いていると、一体何のために何を怒りたいのか意味不明だ。また、百歩譲って意味不明に怒っていることを無視したとしても、何の解決策も提示しないのが不思議だ。普通、4.は答えだろうに。要は現状の問題を誰かのせいにしたかったのだ。でも無意味に「お前のせいだ」といっても周りはおろか自分も納得できないので、もっともらしい理由をつけようというのが主旨かと思われる。
このように、そもそも自分が納得できるようにこんなステップを踏んでいるので、怒っている当人はまず気付かない。全うに怒っているのに何故部下は納得できないのか?と疑問に思うくらいだろう。
正しく怒っているかどうかの見極めは、最初に問題点を述べれるかどうかだと思う。本当に怒りたいなら「これが悪い。理由はこうだ。」と先に説明できる筈だ。「話しながら何に怒りたいか気付いた」と感じたなら上記パターンに嵌っていると疑うと良いかもしれない。最初に問題点を提示していないのに、あたかも「それだ」と怒るから、4.の言い訳が必要になる。
それにしても、こういう人目に付くところで怒る人というのは周りの人間に対する影響を考えないのだろうか。怒る行為のメリットよりも、怒る雰囲気の為に周りの人のモチベーションが下がることの方が余程大きなデメリットに思えるのだが。(怒ること自体がダメとは思っていないけれど)

MySQL 5.0 インストール

なんとなく、FedoraCore5にMySQL5をインストールしてみた。同じ5だし。ということで、インストールのコマンドログをメモ。

$ sudo /usr/sbin/groupadd -g 501 mysql
$ sudo /usr/sbin/useradd -u 5001 -g mysql mysql
$ sudo /usr/bin/passwd mysql
$ cd ~/download
$ wget http://ftp.iij.ad.jp/pub/db/mysql/Downloads/MySQL-5.0/mysql-5.0.22.tar.gz
$ cp mysql-5.0.22.tar.gz /usr/local/src/
$ cd /usr/local/src
$ tar zxvf mysql-5.0.22.tar.gz
$ cd mysql-5.0.22
$ ./configure \
--prefix=/usr/local/mysql \
--with-charset=utf8 \
--with-charset=ujis \
--with-extra-charsets=all \
--with-mysqld-user=mysql \
--with-mysqld-ldflags=-all-static \
--with-unix-socket-path=/tmp/mysql.sock \
--with-innodb \
--enable-local-infile \
--enable-assembler \
--enable-thread-safe-client
$ make
$ sudo make install
$ sudo chown -R mysql:mysql /usr/local/mysql
$ sudo vi /usr/local/mysql/bin/mysqld_safe
# 以下の行をコメントアウト
echo "Starting $MYSQLD daemon with databases from $DATADIR"
$ su - mysql
$ cd /usr/local/mysql
$ mkdir var
$ cd var
$ ../bin/mysql_install_db
$ exit
$ sudo cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.conf
$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &
$ sudo /usr/local/mysql/bin/mysqladmin -uroot password root
$ sudo /usr/local/mysql/bin/mysqladmin -uroot -proot reload
$ sudo /usr/local/mysql/bin/mysql -uroot -p
mysql> set password for root@localhost = old_password('root');
mysql> use mysql
mysql> delete from user where user='';
mysql> flush privileges;
mysql> quit

内容はかなりいい加減。/usr/local/srcに書き込み権限があるのは自分マシンのお約束。Starting $MYSQLD…の行をコメントアウトするのは、起動時にメッセージを表示させないためだけ。あと、インストール後にやってるのは、旧パスワード対応と無名ユーザー削除。
configureオプションがMySQL4.0のときから引きずっているので無駄が多いけれど、自分マシンなのでほとんどそのままでインストール。業務でやるときはちゃんと調べましょう(To:自分)。

新居昭乃 ライブ版DVD付きのCD

sora no uta(DVD付限定盤)

sora no uta(DVD付限定盤)

空とか森とかに神秘さを感じる人には強く新居昭乃さんの楽曲をお勧めできる。どこか遠いところへ連れて行ってくれる感覚がなんとも癒しだ。菅野よう子好きの人は既に御用達かと思われるけど、種ともこザバダックなどが好きな人にもお勧めしたい。因みに、種ともこライブでは新居昭乃がコーラスで出演していることが多い。
曲目を見ると古い曲もあるのでファンには少々物足りないラインナップかもしれないが、ライブ映像を納めたDVDの付いた限定版は必見だ。今でもAmazonから限定版の購入が可能。
ライブ版の印象としては、CDのままの声を出す人だなと思った。ライブだと下手でがっかりした、という経験はたくさんあるけれど、彼女の場合はCDと同じクオリティーだ。歌い方がとても丁寧な印象を受けた。
新居昭乃さんはラジオだとお茶目でハスキーボイスな人なので、最初聴いたときは少々ギャップがあったけれど、今ではそんなキャラクターと音楽のどちらもファンだ。今度、是非ライブに行ってみたい。