2010/05/31  |  Written by  |  under Blog

というわけで、Go!肉の日(5/29)に無事開催してきました。今回も事前準備から機材の用意まで多くのスタッフの方々と共に作り上げ、そして当日はなによりも参加者の手によって盛り上げていただきました。酒と食べ物にまみれたのは前回と同じなのですが、今回はより酔っぱらい度合いが上昇したためか、歌ありエロありと、ほんと何でもありの様相を呈してしまいました。私は前回同様、司会をしてきたのですが、どうまとめればいいのかわからないぐらい、場は盛り上がったのではないかと思います。参加者のみなさん、本当にありがとうございました。そしてスタッフのみなさん、本当にお疲れ様でした!

次回も是非開催したいと思ってますので、スタッフになりたい方は普通のTokyu.rbにもぜひお越しください。

以下、軽くまとめを。

  • MacBookがビールまみれになる。とりあえず動くが、キーを打つとバキバキ鳴る。なんかやばい感じに。
  • 酒が入った状態だと、事前の決めごとの有効性が乏しい気がした。アドリブ重要。
  • 前半からしつこく言っていたせいか、食べ物の消化率は高かった。
  • Tokyu jpmobile 会議開催。1.9対応パッチの取り込みとRack化を進めることが決まる。
  • カリスマは蔑称なので、当人を前にしては言ってはいけないらしい。
  • TokyuRubyKaigiは日本で一番話しやすい場所らしい。LTデビューにぴったり。
 
このエントリーを含むはてなブックマークはてなブックマーク - TokyuRubyKaigi02を開催してきた この記事をクリップ!Livedoorクリップ - TokyuRubyKaigi02を開催してきた Googleブックマークに追加 Digg This
Tags: , , ,
2010/05/29  |  Written by  |  under Blog

というわけで、リマインダーがてら記事に。

 
このエントリーを含むはてなブックマークはてなブックマーク - 今日はTokyuRubyKaigi02です! この記事をクリップ!Livedoorクリップ - 今日はTokyuRubyKaigi02です! Googleブックマークに追加 Digg This
Tags: ,
2010/05/23  |  Written by  |  under Blog

どうやらDTIのVPSではvm.memory.size[free]とかは使えないらしい。実際には使えないのではなくて、ホストの方のメモリが出てくるようなので、計測には使えないと言うこと。で、どうすればいいのかというと、/proc/meminfoの値を使う。具体的にはこんな感じ。

1
2
$ grep 'MemFree' /proc/meminfo | sed -e 's/^[^:]\+:[^0-9]\+\([0-9]\+\)[^0-9]\+$/\1/g'
363892

んで、この値はkBなので適宜どこかで補正してやればいい。大まかで良ければ1000倍するなど。

 
このエントリーを含むはてなブックマークはてなブックマーク - ZabbixでVPSのメモリを監視するには@DTI-VPS この記事をクリップ!Livedoorクリップ - ZabbixでVPSのメモリを監視するには@DTI-VPS Googleブックマークに追加 Digg This
Tags: , ,
2010/05/21  |  Written by  |  under Blog

rvmを使っていると、「いま何のRubyだっけ」と思うことがあったので、プロンプトに表示するようにしてみました。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
autoload -Uz vcs_info
zstyle ':vcs_info:*' formats '(%s)-[%b]'
zstyle ':vcs_info:*' actionformats '(%s)-[%b|%a]'
precmd () {
    psvar=()

    # for vcs_info
    LANG=en_US.UTF-8 vcs_info
    [[ -n "$vcs_info_msg_0_" ]] && psvar[1]="$vcs_info_msg_0_"

    # for rvm
    [[ -n "$rvm_ruby_string" ]] && psvar[2]="$rvm_ruby_string"

    # for gemset
    ind=$(expr index $GEM_HOME $rvm_gemset_separator)
    if [ $ind -ne 0 ]; then
        length="$(expr length $GEM_HOME)"
        sub_length=`expr $length - $ind + 1`
        gem_spec=`expr substr $GEM_HOME $ind $sub_length`
        [[ -n "$psvar[2]" ]] && psvar[2]="$psvar[2]$gem_spec"
    fi
}
VCS_PROMPT="%1(v|%F{green} %1v%f|)"
RUBY_PROMPT="%2(v| %U%B%F{magenta}(%2v)%f%b%u|)"
PROMPT=$'%{\e[32m%}$LOGNAME@${WINDOW:+"[$WINDOW]"}%B:%b%{\e[m%}[%~]$RUBY_PROMPT$VCS_PROMPT\n%% '

上記のように設定すると下の画像のように表示されます。これでいろいろ迷うことが無くなりました。

追記

rvm-promptというのがあるそうで、それを使えばいろいろ表示できるようになるようです。でもまあせっかくやってみたので、gemsetも表示できるようにしてみました。

 
このエントリーを含むはてなブックマークはてなブックマーク - zshのプロンプトにrvmのRubyを表示する この記事をクリップ!Livedoorクリップ - zshのプロンプトにrvmのRubyを表示する Googleブックマークに追加 Digg This
Tags: , ,
2010/05/20  |  Written by  |  under Blog

Emacsも23.2になったということで、そろそろ移行してみることにしました。下記の参考文献をもとに、各種パッチを当ててビルドしていきます。

1
2
3
4
5
6
7
8
9
10
11
12
% wget http://ftp.gnu.org/pub/gnu/emacs/emacs-23.2.tar.gz
% wget http://jaist.dl.sourceforge.jp/macemacsjp/47194/inline_patch-23.1.96-b2.tar.gz
% wget http://github.com/downloads/typester/emacs/feature-fullscreen.patch
% tar zxvf inline_patch-23.1.96-b2.tar.gz
% tar zxvf emacs-23.2.tar.gz
% cd emacs-23.1
% patch -p0 < ../inline_patch-23.1.96-b2/emacs-inline.patch
% patch -p1 < ../feature-fullscreen.patch
% ./configure --with-ns --without-x
% make bootstrap
% make install
% open nextstep/Emacs.app

あとはここを参考にフォントの設定をして完了。あとはちまちま設定を追加していくのみですかね。

参考文献

 
このエントリーを含むはてなブックマークはてなブックマーク - Emacs 23.2 on Mac OS X この記事をクリップ!Livedoorクリップ - Emacs 23.2 on Mac OS X Googleブックマークに追加 Digg This
Tags: ,

まあたいしたことではなく、単にシェルスクリプトを使うだけです。例えばTokyoCabine Ruby APIだと、

1
2
3
% ruby extconf.rb
% make
% sudo make install

などとするわけですが、これを下記のように実行すれば、それぞれのRubyにインストールされます。

1
2
3
for version in ree ree-1.8.6 1.8.6 1.8.7 1.9.1; \
  do rvm use $version; make clean; ruby extconf.rb; make; make install; \
done
 
このエントリーを含むはてなブックマークはてなブックマーク - rvmで拡張ライブラリを複数のRubyにインストールする方法 この記事をクリップ!Livedoorクリップ - rvmで拡張ライブラリを複数のRubyにインストールする方法 Googleブックマークに追加 Digg This
Tags: , , ,

Twitter献本というのでしょうか、@takeuchさんのつぶやきをRTして見たらなんと本が届きました(ちょっと違う)。ありがとうございます。

ツイッター仕事で役立つ即効ワザ57

  • 著者/訳者:日経PC21
  • 出版社:日経BP社( 2010-04-29 )
  • 単行本(ソフトカバー):136 ページ

さて本の内容ですが、一言で言うと「これから始めるなら、とりあえず読んでおけ」という内容です。アカウントをとるところから、iPhoneや携帯電話での利用方法、投稿やフォローの仕方など、一通りのことが記載されています。

これは良いなと思ったのが、「とりあえずX人程度フォローしてみよう」という下り。それとつぶやき方のコツ。このあたりって始めたときに何して良いのか分からなくなって、そのまま止めてしまった人に是非読んで欲しい。そんな内容でした。

また企業アカウントについても書かれているのも、この本の特徴です。これからTwitterを始めようと考えている会社にとっては、手引きになる内容です。うまくTwitterを広報に使おうと考えている方は、一度読んでみることを強くお勧めします。

まあ実はReplyとMentionの違いをよく理解してなかったので、非常に助かったりしました。「Twitterのことはもう知ってるよ」という方も、「ほー」と思うことがあるのではないでしょうか。私にとってはそれくらい充実した内容だったりしました。

 
このエントリーを含むはてなブックマークはてなブックマーク - ツイッター仕事で役立つ即効ワザ57 &#8211; これからの人の入門書 この記事をクリップ!Livedoorクリップ - ツイッター仕事で役立つ即効ワザ57 &#8211; これからの人の入門書 Googleブックマークに追加 Digg This
Tags: , ,


最近ネットが重い感じがしていて、どうもルータの性能不足かなと思い始めました。そもそもFFXIとかやると、3台、PS3、サーバ1台が繋がるため、安いルータでは性能不足気味になるようです。自宅サーバを解説しているのとMMORPGを安定してやりたいと言うことで、上記ルータを利用することにしました。

で、導入して一月ぐらい経過しましたが、すこぶる順調です。相手のサーバが重いときはどうしようもないですが、謎の接続不良とかはなくなりました。最近ネットが重くて、と言う方は、一度いいルータを利用してみるのはいかがでしょうか。

 
このエントリーを含むはてなブックマークはてなブックマーク - NetGenesis SuperOPT100E &#8211; 複数台接続ならちゃんとしたルータを この記事をクリップ!Livedoorクリップ - NetGenesis SuperOPT100E &#8211; 複数台接続ならちゃんとしたルータを Googleブックマークに追加 Digg This
Tags: ,
 |  Written by  |  under Blog

と言うわけで、Go!肉の日に開催される、02の参加者募集のお知らせです。

TokyuRuby会議02 -参加登録- : ATND

すでに20名もの方が登録されているのですが、まだまだ募集中です。酒・肉が好きな方であれば、Rubyを知らなくても全然問題ありません。とりあえず来ると良いと思うよ。

 
このエントリーを含むはてなブックマークはてなブックマーク - TokyuRubyKaigi02参加者募集中! この記事をクリップ!Livedoorクリップ - TokyuRubyKaigi02参加者募集中! Googleブックマークに追加 Digg This
Tags: ,
2010/05/13  |  Written by  |  under Blog

以前の記事はDebianだったのですが、それをCentOSに設定したので、そのメモ。

ここを参考に、FastCGI用daemonのスクリプトを作成。

1
% sudo vim /etc/init.d/php-fastcgi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/bin/sh
#
# php-cgi - php-fastcgi swaping via  spawn-fcgi
#
# chkconfig:   - 85 15
# description:  Run php-cgi as app server
# processname: php-cgi
# config:      /etc/sysconfig/phpfastcgi (defaults RH style)
# pidfile:     /var/run/php_cgi.pid
# Note: See how to use this script :
# http://www.cyberciti.biz/faq/rhel-fedora-install-configure-nginx-php5/
# Source function library.
. /etc/rc.d/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
 
spawnfcgi="/usr/bin/spawn-fcgi"
php_cgi="/usr/bin/php-cgi"
prog=$(basename $php_cgi)
server_ip=127.0.0.1
server_port=9000
server_user=nginx
server_group=nginx
server_childs=5
pidfile="/var/run/php_cgi.pid"
 
# do not edit, put changes in /etc/sysconfig/phpfastcgi
[ -f /etc/sysconfig/phpfastcgi ] && . /etc/sysconfig/phpfastcgi
 
start() {
    [ -x $php_cgi ] || exit 1
    [ -x $spawnfcgi ] || exit 2
    echo -n $"Starting $prog: "
    daemon $spawnfcgi -a ${server_ip} -p ${server_port} -u ${server_user} -g ${server_group} -P ${pidfile} -C ${server_childs} -f ${php_cgi}
    retval=$?
    echo
    return $retval
}
 
stop() {
    echo -n $"Stopping $prog: "
    killproc -p ${pidfile} $prog -QUIT
    retval=$?
    echo
    [ -f ${pidfile} ] && /bin/rm -f ${pidfile}
    return $retval
}
 
restart(){
    stop
    sleep 2
    start
}
 
rh_status(){
    status -p ${pidfile} $prog
}
 
case "$1" in
    start)
        start;;
    stop)
        stop;;
    restart)
        restart;;
    status)
        rh_status;;
    *)
        echo $"Usage: $0 {start|stop|restart|status}"
        exit 3
esac

今回はspawn-fcgiを使うので、そのパッケージもインストールします。そして実行権限をつけて、自動起動するように設定。

1
2
3
4
% sudo yum install spawn-fcgi
% sudo chmod a+x /etc/init.d/php-fastcgi
% sudo /sbin/chkconfig --add php-fastcgi
% sudo /sbin/chkconfig php-fastcgi on

次にnginxの設定。CentOSではDebianのように個別の設定に分かれていないので、/etc/nginx/nginx.confを直接編集します。今回は変更した部分のみ掲載します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
    server {
        listen       80;
        server_name  stnard.jp;

        access_log  /var/log/nginx/stnard.jp.access.log  main;

        location / {
            root   /var/www/html;
            index  index.php index.html index.htm;

            # static files
            if (-f $request_filename) {
                expires 30d;
                break;
            }

            # request to index.php
            if (!-e $request_filename) {
                rewrite ^(.+)$  /index.php?q=$1 last;
            }
        }

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /var/www/html/$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }

作成したら構文チェックして再起動します。ついでにFastCGIの方も起動しておきます。

1
2
3
% sudo /sbin/service nginx configtest
% sudo /sbin/service nginx restart
% sudo /sbin/service php-fastcgi start

とこんな感じで、Debianと同じような環境ができあがりました。

 
このエントリーを含むはてなブックマークはてなブックマーク - WordPress on nginx with FastCGIのCentOSの場合 この記事をクリップ!Livedoorクリップ - WordPress on nginx with FastCGIのCentOSの場合 Googleブックマークに追加 Digg This
Tags: , , ,