Windows XP install in VirtualBox on Ubuntu 10.0.4 LTS @ hp 2133

こんな英語のタイトルでいいのかわからないけど、
Host OS は Ubuntu 10.0.4 LTS で、そこに VirtualBoxをインストールして、
仮想OSとして、Windows XPをインストールしました、
マシンは hp 2133 だよ、というお話。
  1. まずは、本家からダウンロードして、VirtualBoxのインストール
  2. Windows XP のDVDをisoとしてイメージファイルにする
  3. Ubuntu上で、2. で作ったisoファイルをマウントして、ドライブのように見える状態にする
  4. VirtualBoxで新規イメージを作成して、ストレージ -> CD/DVDデバイス -> 追加 -> isoファイルを選択
  5. あとは普通に起動すればそのままインストール画面になるはず
  6. 正規のproduct codeを入力してセットアップを完了させよう
という手順です。

イメージファイルにしてからマウントすることで、
CD/DVDドライブがないネットブックでも、
VirtualBox にWindows XPをインストールすることができた!

これで、どうしてもWindowsでしか対応してないサイトやアプリケーションなど
使用したいときに起動できてHappy。よかったよかった。

windows


便利ブックマークレット その4: 選択された文字列を取得する

選択された文字列を取得するコードを書いた。
簡単に実装できるかと思ったけど、ブラウザ依存の解消が面倒くさかった。

とりあえず、やっつけjquery pluginとして実装。

このpluginを使って、選択された文字をalertするだけのBookmarkletは以下。
javascript:function ld(u){var s=document.createElement('script');s.setAttribute('src',u);document.body.appendChild(s);}ld('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');ld('http://tanargle.appspot.com/jquery.selectedtext.js');ld('http://tanargle.appspot.com/test2.js');
Firefoxでは動作確認したけど、他はやってない。
とりあえず、自分は満足なのでいいや。

このpluginを使って、さらに便利なBookmarkletをこれから作ってみようと思う。

便利ブックマークレット その3: アフィリエイトURL作成→Twitterに遷移

Yahoo!オークションとショッピングのアフィリエイトリンク作成bookmarklet
を参考にして、さらに拡張してみた。
javascript:var ai='NqNP7flCUN49xU3KOQg-';var bl='tanarky';var ba='R_e0cbd9274f2301ce3f0bc62e45b975f7';function ld(u){var s=document.createElement('script');s.setAttribute('src',u);document.body.appendChild(s);} ld('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');ld('http://tanargle.appspot.com/yahoo_affiliate_to_twitter.js?'+Date.now());
まず、使う前に自分の設定値を確認をして、値を書き換える。
  • var ai (こちらで確認できる)
  • bar bl (bit.ly ログイン名)
  • var ba (bit.ly appkey)
使い方と内部ロジックは以下の通り。
  1. Yahoo!ショッピングかYahoo!オークションのページに遷移
  2. おすすめの商品やオークションを探す
  3. Bookmarkletを起動する
    1. アフィリエイトURLをbitlyでShort URLにする
    2. ページのタイトルとShort URLを本文として、Twitterに遷移させる
となります。
コードはこちら。


右クリックでブックマークレットを保存


アフィリエイトでこつこつ儲けたい人はぜひどうぞ。

便利ブックマークレット その2: bitlyでShort URLにする

探せばいくらでもありそうなbiltyを使ったShort URL 機能だけど、
勉強のため+今後の拡張性のためにも、自分でbookmarkletとして作ってみた。

コードはこちら。

bookmarkletは以下。
javascript:var bl='tanarky';var ba='R_e0cbd9274f2301ce3f0bc62e45b975f7';function ld(u){var s=document.createElement('script');s.setAttribute('src',u);document.body.appendChild(s);}ld('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');ld('http://tanargle.appspot.com/bitly.js?'+Date.now());
↑をブックマークに登録するだけで、簡単にShort URLを作成できる。

var bl  (bit.lyのログイン)
var ba (bit.lyのAPPKEY)
を自分のものに置き換えてください。

参考:
ApiDocumentation - bitly-api - bit.ly REST API method documentation - Project Hosting on Google Code

※ 2010/06/25 11:00 に一部書き直してます。

便利ブックマークレット その1: Google App Engineをファイル置き場にする

ブラウザのURLにJavascriptを書くことにより、簡単な処理を実行することが実行できる
Bookmarkletを今まで何個も書いてきたけど、以下のような問題がありました。
  1. macminiのFirefoxには入ってるけど、UbuntuのFirefoxには入ってない
  2. 適当に書いたbookmarkletのコードが行方不明
  3. 一度書いたbookmarkletを バージョンアップしたけど、macminiのFirefoxは新しくて、Ubuntuは(略
  4. 1行に書くので、ちょっとロジックを詰め込むだけでコードが見にくくなる
  5. jQueryやYUIを使いたいけどどうしたもんか
という問題を一気に解決すべく、色々考えてみた
  1. メインロジックを外部ファイルにして、bookmarkletではその外部ファイルを呼び出す処理にする
  2. bookmarkletとはいえ、バージョン管理を徹底する
  3. jsを外部ファイルにして、それを読み込むbookmarkletにすれば、サーバ側のファイルを入れ替えをするだけでOK。ブラウザごとにお気に入りを変更する必要無し
  4. 外部ファイルにロジックを詰め込めばbookmarkletが長くなることはない
  5. jQueryやYUIも一緒に読み込むようにbookmarkletの雛形を作る
うむ。これで解決できそう。
問題は、外部Javascriptファイルをどこに置くか、ということだけど、
今回は、appengineを使うことにした。
あんまり深い理由はないけど、アクセス数とかわかるので、いいかな、と。
hello, worldして放置しているやつがあるので、流用すればいいかな、と。

で、上げてみたtest.js
これを実行するための、bookmarkletの雛形が、以下。
javascript:function ld(u){var s=document.createElement('script');s.setAttribute('src',u);document.body.appendChild(s);}ld('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');ld('http://tanargle.appspot.com/test.js');
jqueryも読み込んでいるので、あとは外部ファイルに好き勝手に
ロジックを書けば、いろんなことができる!

これから色々ファイルを充実させようと思う。

参考:
外部からjsファイルを読み込む bookmarklet

TV雑感: 太一×ケンタロウ 男子ごはん 「牛肉のカルパッチョ」

またまた男子ごはんレシピを試してみた。
今回は、「牛肉のカルパッチョ」

レシピ:
  • 牛ステーキ用肉  1枚
  • ルッコラ  1パック
  • オリーブオイル 大さじ1
  • 青葱 適量
  • 塩コショウ 適量
  • ソース


    • ディル 3枝
    • おろしにんにく  少々(BB弾程度)
    • マヨネーズ  大さじ1
    • レモン汁  大さじ1
    • オリーブオイル  大さじ1
    • 塩コショウ  適量

牛肉のカルパッチョ カプレーゼ

付け合わせとして、モッツァレラチーズの袋に書いてあったレシピの
プレーゼを作って見ました。

カルパッチョのポイントはフライパンをよく熱しておいて、
表面だけに焼き色をつけて、中はレア気味になるように焼くこと。

ううううまいー。

ビール

普段はあまり飲まないアサヒビールを飲みながら、
おいしくいただきました。
すっきりした味がおいしくて、ぐびぐびいってしまいました。


log4phpを調査してみた

きめ細かいログ出力をする必要性がでてきたので、log4phpを調査した。

$ aptitude search log4php
$ 

aptitudeで見つかるかなと思いきや、見つからなかったので、
普通に検索して本家サイトにいってダウンロードしてインストール。

参考:
http://logging.apache.org/log4php/

いつの間にか、これもapache project入り、なんですかね。

$ tar xvzf apache-log4php-2.0.0-incubating-src.tar.gz 
$ cd apache-log4php-2.0.0-incubating/
$ sudo mkdir -p /usr/share/php/log4php
$ sudo cp -R src/main/php/* /usr/share/php/log4php/

これでインストール完了。

satoshi@satoshi-ubuntu-netbook:~/Dropbox/git/projects/php/log4php
$ cat test.php 
<?php
require_once('log4php/Logger.php');
  
$logger = Logger::getLogger("main");
$logger->info("foo");
$logger->warn("bar");
satoshi@satoshi-ubuntu-netbook:~/Dropbox/git/projects/php/log4php
$ php test.php
Sun Jun 20 22:25:57 2010,490 [4852] INFO main - foo
Sun Jun 20 22:25:57 2010,504 [4852] WARN main - bar

これまで速度とか気になったり、多機能すぎるかな、と思って敬遠してた
log4***ですが、必要なシチュエーションがでてきたので、これから
もうちょっと使い倒してみようかな、と思います。

totoでお金持ちになる その2 ホーム&アウェイの勝率

まずは、今までの試合データをかき集めるところから開始。

単なる試合結果なので、事実のみを知りたいので、
Yahoo!スポーツやJリーグ公式サイトなどからデータを集めてみた。

データの期間については、2005年から最新(2010年 第12節 )までの
データを元に簡単に集計してみる。
試合数は1634試合分だった。
1試合一人の選手は8-10km走るといわれているので、プロのサッカー選手ってすごいなぁ。

まずは、素朴な疑問。
「ホームチーム勝利、引き分け、アウェイチーム勝利」は、どれくらいの割合で出現するか

結果は以下の通りでした。
  • 引き分け確率(0): 23.87%
  • ホームチーム勝利確率(1): 43.88%
  • アウェイチーム勝利確率(2): 32.25%
個人的な予想だと、引き分けが一番確率が高いんじゃないかと思ったんですが、
一番低い結果になりました。これは意外。

まずは、予想に迷ったら、ホームチームの勝利にしておけ、ってことですね。

で、全部ホームチームの勝利、って予想をしたとしたら、当選確率は、

$ perl -e 'warn 1/0.4388 ** 13'
44723.3116263051 at -e line 1.

なんと1/44800にまで確率がUPするという計算になりますた。
普通の確率的には、160万分の1

確率が高いところに賭けたら、配当金は減るけど、当たらないとなんにもならないので
これはこれで興味深い事実だと思います。

totoでお金持ちになる その1 当選確率の比較(ロト6など)

年末ジャンボなど、宝くじは基本的に嫌いです。
理由は、数学の授業で期待値を計算した結果、めちゃめちゃ低かったことを覚えているから。
さすがにこれは当たらないな、と。

とはいえ、一発逆転でビッグマネーを手にするのは夢があります。

最近は色々なくじがあるので、まずは、それぞれの当選確率について調べてみた。

ロト6
01から43までの43個の数字の中から異なる6個を選択するものである。選び方は全部で6,096,454通りある。
当選確率は、約610万分の1です。43C13、という計算ですかね。 (計算結果未確認)
自分で好きな数字を入れることができるけど、結局ランダムだから、当たる気がしない。

その点、
スポーツ新興くじ
スポーツ振興くじ(スポーツしんこうくじ)は、Jリーグの指定された試合の結果あるいは各チームの得点数を予想して投票し、的中すると払戻金を受け ることのできる公営ギャンブル
(中略)

toto(トト)

  • 指定されたJリーグ1部、2部の13試合について、ホームチームの90分経過時点(延長戦含まず)での「勝ち」「負け」「その他の結果」(同点 等)を予想する。
  • 全試合当たると1等、1試合外れで2等、2試合外れで3等の払戻金がもらえる(3等は2006年度で一旦廃止になったが、2007年度に復活し た)。
と、勝ち、負け、引き分け × 13試合の予想なので、確率を計算すると、

$ perl -e 'warn(3**13)'
1594323 at -e line 1.

当選確率160万分の1。

これはだいぶロト6よりも高い確率(に見えます)
さらに、人間同士の戦いなんで、統計を駆使すれば、試合結果に対して予想ができて、
ある程度当選確率を上げることができるんじゃないかと妄想しています。

まずは、今までのサッカーの試合結果をかき集めてくるとするか・・・。

TV雑感: 太一×ケンタロウ 男子ごはん 「ジャークチキンと豆ごはん」

料理番組は基本的に好きなんだけど、最近は特に、TV東京の男子ごはんがお気に入り。

リンク:
太一×ケンタロウ 男子ごはん:テレビ東京

今までは、見るだけで、実際に作ったことはなかったんだけど、
2010/05/30 放送のジャークチキンと豆ごはんが異様にうまそうだったので、
実際に作ってみた。

作り方は簡単で、
  1. 鶏肉をソースに漬け込んで1日以上冷蔵庫で寝かせる
  2. オーブンで焼く
という簡単な手順。ソースが決め手なので、備忘録代わりに書いておく。
  • 玉ねぎ 1/4
  • 万能ネギ 3-4本
  • にんにく 2片
  • タイム 3-4枝
  • オールスパイス 小さじ1
  • チリペッパー 小さじ1
  • ナツメグ 小さじ1/2
  • クミン 小さじ1
  • しょうゆ 小さじ1
  • 塩 大さじ1/2
  • 砂糖 小さじ1
  • こしょう たっぷり
  • レモン汁 1個分
  • オリーブオイル 大さじ2
↑の材料をミキサーかフードプロセッサにいれてペースト状にしたものを
鶏肉につけこむ。染み込みやすいように、鶏肉にフォークなどで穴をあけたり
包丁で切れ目をいれるべし。

ジャークチキン1

↑焼いてるときの写真。



↑焼いているときの様子を動画に取ってみました。
肉汁の音がたまらん。

ジャークチキン3

↑できあがりの写真。

ビールに合う~。

これからも男子ごはんのレシピをためしてみよう。

MovableType5(MT5)の動作について その1 カテゴリとタグ

Movable Type 5(以後MT)の動作について詳細に調べてみる。

MTの基本動作は、以下の2つ
  • 編集中のデータはMySQLなどのDBに保存する
  • 編集が終了したら、DB上のデータから、HTMLファイルに書き出す(再構築)
一度HTMLに書き出すことがMTの最大の特徴で、
静的なHTMLファイルにことにより、公開した時の表示性能を上げている。
その代わり、再構築が重い、というデメリットはあるが、
HTMLにしたときの表示の早さは、補って余りあるものといえる。

と、これがMTの基本的な動作だが、全部のページを静的なHTMLに
書き出すわけではない。

MTには似たような2つの機能である、「カテゴリ」と「タグ」があるが、
  • カテゴリはHTMLに書き出す
  • タグはHTMLに書き出さない
という決定的な違いがあるのが注意。
例を上げると、
「test」というカテゴリページのURLは、
http://localhost/my_test_website/my_test_blog/test/index.html
となり、
「test」というタグページのURLは、
http://localhost/mt/mt-search.cgi?blog_id=3&tag=test&limit=20
となる。

URLのとおり、カテゴリの場合はHTMLに書き出されているが、
タグページの場合は、mt-search.cgiがリクエストをうけて、
裏にあるDBに接続して、記事をリアルタイムで検索している。

この内部処理の違いは、ページ表示性能に直結し、

$ ab -n 300 -c 15 http://localhost/my_test_website/my_test_blog/test/
Requests per second:    865.23 [#/sec] (mean)

$ ab -n 300 -c 15 'http://localhost/mt/mt-search.cgi?blog_id=3&tag=test&limit=20'
Requests per second:    11.07 [#/sec] (mean)

と約80倍の違いになる。(カテゴリの方が80倍早い)

タグを静的HTMLに書き出すプラグインもあるみたいだけど、
デフォルトでは上記のような挙動になるので、
カテゴリで表現できるものはカテゴリで実装するようにした方がおすすめ、ということで。


TV雑感: NHKスペシャル FIFAワールドカップ 第3回 エトー、アフリカを背負う

NHKスペシャル FIFAワールドカップ 第3回 エトー、アフリカを背負う
の雑感をだらだらと書いてみる。

サミュエル・エトオ - Wikipedia

サミュエル・エトオ・フィス(Samuel Eto'o Fils, 1981年3 月10日 - )は、カメルーン出身で同国代表サッカー選手セリエAインテル所属。サミュエル・エトーとも表記される。別名黒い宝石
カメルーン代表の最多得点記録保持者であり、最多タイの3度のアフリカ年間最優秀選手賞受賞、2度のアフリカネイションズカップ優勝、3度のUEFAチャンピオンズリーグ優勝など数々の栄誉を手にしている。

- 実力で世界をこじあけるエトーかっこよす
- エトー+ロナウジーニョやばす
- アラゴネスもカコイイ 「お前は人生の分岐点に立っている。選択しろ。」
- ETO'O
- サッカーとは何か →  「義務」
- カメルーンだけじゃなく、アフリカを、黒人を、背負う
- 私財を投入してサッカー財団を設立、子供の生活費や養育費まで負担
- サッカー養成学校出身のオリンガに対して「一人前の男になるには、たくさんゴールを決めろ」
- ロジェ・ミラ -> エトー -> オリンガ、という希望の連鎖が泣ける

もっといろんな国のワールドカップに対する思いを知りたい、と思った。

月曜日の日本×カメルーンが楽しみだ。

MovableType5(MT5)のオプションモジュールをインストールする

MTを動かすために、必須ではないけど、あった方がいいperlモジュールを
オプションモジュールと呼ぶようです。

参考:
アグレッシブエンジニア: mac に Movable Type 5.02 (MT5) 環境をインストール

というわけで、忘れないうちに、オプションモジュールのインストールをしておく。
今回の環境はUbuntu 10.0.4 LTS + apache2 です。

まずは、インストールされていないオプションもジュールが何であるか確認。

http://localhost/mt/mt-check.cgi
にブラウザからアクセスすれば、インストールされていないモジュールを確認できる。
http://localhost/mt/mt-config.cgiが存在する場合は、
あらかじめmvしておく。

今回は、PostgreSQL以外のモジュールをすべてインストールした。

$ sudo aptitude install libcrypt-ssleay-perl libgd-gd2-perl
$ sudo aptitude install libdbd-sqlite2-perl libdbd-sqlite3-perl
$ sudo cpan Crypt::DSA IPC::Run Archive::Zip
$ sudo cpan YAML Mail::Sendmail Cache::File

以上で終了。再度mt-check.cgiでちゃんとインストールされていることを確認。
忘れずに、mt-config.cgiを元にもどしておく。

これで環境がそろったので、使い倒してみようかな。

ブログのデザインをいじってみた(blogger template designer )

Bloggerのテンプレートデザイナーでデザインをいじってみた。
  • ラベルをへらしてみた
    • なんでもかんでも表示しても重くなるし、クリックされてないので
    • そのかわり文字サイズは大きくしてみた
  • 固定幅にしてみた
    • 950pxにしようかと思ったけど、ちょっとせまくみえたので1000pxにしてみた
    • Adsenseのサイズと色を調整した
  • 色は青基調に
    • アグレッシブエンジニアだから、赤かなとおもったけど、うっとうしいので青にした
    • 海背景が一番しっくりきたので採用
  • デザインテンプレートをいじったら、今までの設定が一部消えた
    • jquery読み込み部分
    • 一部CSS
これで広告クリック率があがればいいな、と思う。

MovableType5(MT5)をFastCGI(mod_fcgid)で動かす on apache2

MovableTypeの高速化のために、FastCGIで動かす設定をしてみたのでメモ。
環境は、
  • Ubuntu 10.0.4 LTS
  • apache 2.2.14
まずは、必要なパッケージのインストールとfastcgi用のディレクトリ作成
$ sudo aptitude install libapache2-mod-fcgid
$ sudo aptitude install libfcgi-perl libfcgi-perl libcgi-fast-perl
$ sudo mkdir -m 777 /tmp/fcgid_sock

次に、mt-config.cgiの修正(CGIPathを修正)
CGIPath        /mt/
StaticWebPath  /mt-static/
StaticFilePath /var/www/mt-static

次に、/etc/apache2/sites-available/defaultを修正
ScriptAlias /mt/ /usr/lib/mt/
<directory lib="" mt="" usr="">
  SetEnv MT_HOME   /usr/lib/mt
  AllowOverride None
  Options None
  Order allow,deny
  Allow from all
  <filesmatch ^mt(?:-(?:comments|search|ftsearch|tb|cp))?\.cgi$=""%gt;
    SetHandler fcgid-script
  </filesmatch>
</directory>

最後に、/etc/apache2/mods-available/fcgid.confを編集
<ifmodule mod_fcgid.c="">
  AddHandler fcgid-script .fcgi
  SocketPath /tmp/fcgid_sock/
  IPCConnectTimeout 20
  MaxProcessCount 8
  DefaultMaxClassProcessCount 2
  TerminationScore 10
  SpawnScore 80
  IdleTimeout 300
  #FcgidConnectTimeout 20
</ifmodule>

これでapache2を再起動して完了。

再構築に9秒かかってたサイトの再構築が4秒になりました。
およそ性能2倍って感じかな。

参考:
FastCGIのインストールと設定

オルセー美術館展2010 新国立美術館に行ってきました

会社を早引きして、東京に出てきている親が見たいといってた
オルセー美術館展2010@新国立美術館に行ってきました。

art

クロード・モネ
クロード・モネClaude Monet, 1840年11月14日 - 1926年12 月5日)は印象派を代表するフランス画家。 「光の画家」の別称があり、時間や季節とともに移りゆく光と色彩の変化を生涯にわたり追求した画家であった。モネは印象派グループの画家のなかではもっと も長生きし、20世紀に入っても『睡蓮』の連作をはじめ多数の作品を残している。ルノワールセザンヌゴーギャンらはやがて印象派の技法を離れて独自の道を進み、マネドガらはもともと印象派とは気質の違う画家だったが、モネは終生印象主義の技法を追求し続けた、もっとも典型 的な印象派の画家であった。

ポール・セザンヌ
ポール・セザンヌPaul Cézanne1839年1 月19日 - 1906年10月22日10月23日説もある[1])) はフランス画家。 当初はモネルノワール等と共に印象派のグループの一員として活動していたが、1880年代からグループを離れ、伝統的な絵画の約束事にとらわれない独 自の絵画様式を探求した。セザンヌはモネら印象派の画家たちと同時代の人物だが、ポスト印象派の画家として紹介されることが多く、キュビスムをはじめとする20世紀の美術に多大な影響を与えたことから、しばしば「近代絵画の父」として言及され る。後進への手紙の中で「自然を円筒、球、円錐として捉えなさい」と書き、この言葉がのちのキュビスムの画家たちに大きな影響を与えた。
フィンセント・ファン・ゴッホ
ポスト印象派の代表的画家である。様式的には抽象派に負う所が多いが、絶対主義象徴主義的側面も多分にあり、何れの範疇にも含められることがある。現在でこそ極めて高い評価を得ているが、不遇の 生涯を送っており、生前に売れた絵は1枚『赤い葡萄畑』(La Vigne rouge)だけであった。中には贈与した絵が鶏小屋の穴を塞ぐのに使 われていたこともあった(『医師フェリックス・レイの肖像』)。それでも生活していけたのは弟テオドルス(通称テオ)の援助があったからである。 
ポール・ゴーギャン
ウジェーヌ・アンリ・ポール・ゴーギャンEugène Henri Paul Gauguin, 1848年6 月7日 - 1903年5月 8日)は、フランスポスト印象派の最も重要かつ独創的な画家の 一人。「ゴーガン」とも表記・発音される。
アンリ・ルソー
アンリ・ジュリアン・フェリックス・ルソーHenri Julien Félix Rousseau, 1844年5 月21日 - 1910年9月 2日)は、19世紀20 世紀フランス素朴派画家
20数年間、パリ市の税関の職員を勤め、仕事の余暇に絵を描いていた「日曜画家」であったことから「ル・ドゥアニエ」(税関吏)の通称で知られ る。ただし、ルソーの代表作の大部分は彼が税関を退職した後の50歳代に描かれている。

まさに美術の教科書って感じの印象派の絵がこれでもかと並んでいるので、
平日の夕方にも関わらず、ものすごく混んでました。

人をかき分け、絵をにらみ、次の絵を見るために、またかき分け、
といった感じ。

さらに混んでたのは、最後にあるお土産コーナー。
印象派の絵が描かれた絵葉書やクリアファイルなどが
わんさか売られてて、それにむらがる人人人・・・。
iPhoneケースまで売ってたのは笑ったw

バブル以降、相変わらず日本人は印象派が大好きなようです。

参考:
オルセー美術館展2010||2010年5月26日-8月16日||国立新美術館

Movable Type 5 (mt5) ではじめてのPlugin

Movable Type 5 ではじめてのPluginを作ってみた。
色々検索してみましたが、MT5のプラグインの作り方は見つからなかったので、
結局公式ドキュメントの英語を見ながら作ってみる。
まずは、「何もしない」 プラグインから。

参考: Registering Your Plugin: Basic Plugin Metadata
  1. mtのpluginディレクトリ以下に、ディレクトリを作る
  2. 作成したディレクトリ以下に、config.yamlを作成する
name: Good for Nothing Plugin for Movable Type
id: Good4Nothing
author_link: http://www.yourwebsite.com/
author_name: Your Name Here
description: This plugin is an example plugin for Movable Type.
version: 1.0
これで終了。

ユーザダッシュボード > システム > ツール > プラグイン
に追加したプラグインが見れるようになってるはず。

↑システムとはここから移動できます。だいぶ迷いました。

これから機能拡張していこうかと思います。

ping とか traceroute とかでネットワークの勉強

普段、あまりネットワークに関係する仕事をやってなかったけど、
勉強したことをメモメモ。まちがってたら、指摘ください。

こちらまでご連絡おまちしてます

まずは、ping
/Users/satoshi% ping -c 10 www.yahoo.co.jp
PING www.ya.gl.yahoo.co.jp (203.216.227.176): 56 data bytes
64 bytes from 203.216.227.176: icmp_seq=0 ttl=53 time=16.000 ms
64 bytes from 203.216.227.176: icmp_seq=1 ttl=53 time=25.958 ms
64 bytes from 203.216.227.176: icmp_seq=2 ttl=53 time=15.543 ms
64 bytes from 203.216.227.176: icmp_seq=3 ttl=53 time=18.601 ms
64 bytes from 203.216.227.176: icmp_seq=4 ttl=53 time=38.718 ms
64 bytes from 203.216.227.176: icmp_seq=5 ttl=53 time=14.582 ms
64 bytes from 203.216.227.176: icmp_seq=6 ttl=53 time=24.215 ms
64 bytes from 203.216.227.176: icmp_seq=7 ttl=53 time=23.816 ms
64 bytes from 203.216.227.176: icmp_seq=8 ttl=53 time=17.410 ms
64 bytes from 203.216.227.176: icmp_seq=9 ttl=53 time=17.684 ms

--- www.ya.gl.yahoo.co.jp ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 14.582/21.253/38.718/6.941 ms
/Users/satoshi% ping -c 10 www.yahoo.com 
PING any-fp.wa1.b.yahoo.com (98.137.149.56): 56 data bytes
64 bytes from 98.137.149.56: icmp_seq=0 ttl=49 time=139.564 ms
64 bytes from 98.137.149.56: icmp_seq=1 ttl=49 time=129.562 ms
64 bytes from 98.137.149.56: icmp_seq=2 ttl=49 time=136.304 ms
64 bytes from 98.137.149.56: icmp_seq=3 ttl=49 time=138.728 ms
64 bytes from 98.137.149.56: icmp_seq=4 ttl=49 time=134.078 ms
64 bytes from 98.137.149.56: icmp_seq=5 ttl=49 time=138.179 ms
64 bytes from 98.137.149.56: icmp_seq=6 ttl=49 time=178.044 ms
64 bytes from 98.137.149.56: icmp_seq=7 ttl=49 time=143.014 ms
64 bytes from 98.137.149.56: icmp_seq=8 ttl=49 time=142.586 ms
64 bytes from 98.137.149.56: icmp_seq=9 ttl=49 time=130.963 ms

--- any-fp.wa1.b.yahoo.com ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 129.562/141.102/178.044/13.021 ms
www.yahoo.co.jpの方が、www.yahoo.com よりもレスポンスが
圧倒的に早い。ネットワーク的に近くにあるから、と予想できる。
# yahoo.comのサーバはアメリカにありそうなので、遠い=遅い、ってことかな、と。

で、traceroute
存在は知ってたけど、改めて読んでみると、知らないことが多かった。
なんというなんちゃってエンジニア。

後は、whois。
これはWikipediaで勉強。
http://ja.wikipedia.org/wiki/WHOIS

問題点

プライバシー:登録者の詳細情報(例示したように、住所、電話番号などの個人情報)が含まれており、大 部分のTLDではインターネット上で誰でも簡単にその情報を入手することができる。しばしば、一部のレジストラが連絡のための個人情報を提供するが、これ はレジストラがそのドメインの合法的な所有者(または借り主)であることを示すためである。
とあるドメインを調べてみたら、超個人情報のりまくりだし。
携帯番号まででててワロタ。

基本的なことを理解してない自分に気がつくと凹みます。
もう一度基礎から勉強し直すかな、と思う今日この頃。

AppleのHTML5のデモサイトがすごい件について

http://www.apple.com/html5/

まずは、ブラウザがsafariじゃなければ、ダウンロードするように
怒られてしまいますが、


safariを起動して、デモを見てみる。
個人的に一番気になったのは、3D。
よく中身を見てみると、以下のような画像を連続してみせてるだけのようです。
http://www.apple.com/html5/showcase/threesixty/images/optimized/Seq_v04_640x378_50.jpg
http://www.apple.com/html5/showcase/threesixty/images/optimized/Seq_v04_640x378_51.jpg
http://www.apple.com/html5/showcase/threesixty/images/optimized/Seq_v04_640x378_53.jpg
3Dというか、初歩的なアニメーションですな。

HTML5は確かにすごいんだけど、どうしても職業柄(会社柄?)
普及率を気にしてしまう。個人的にもsafariは使わないからなぁ。


iPhone向け最適化Webサイトを構築する その3:有名サイト対応比較

有名サイトのiPhone向け表示の対応方法について調べてみた。
まずは、準備として、Firefox addon "UserAgent Switcher"をインストール

調べたサイトとその詳細は以下の通り。
  • Yahoo! Japan (http://ipn.yahoo.co.jp)
    • 独自CSS/JSライブラリ
    • xhtml
    • PCで見ると表示崩れ+うまく動作しない
  • Yahoo! オークション(http://auctions.yahoo.co.jp/jp/)
    • iUIを使用している
    • xhtml
    • PCで見たときとiPhoneで見たときの差異が少ない
      • PCだとロゴに枠線が入る
      • PCだと商品検索の文字が白抜きになる
      • など一部だけ
  • livedoor(http://www.livedoor.com/lite/)
    • 独自CSS
    • html
    • PCで見たときとiPhoneで見たときの差異が少ない
      • ヤフオク同様、一部文字が白抜きになる
  • はてなダイアリー(http://d.hatena.ne.jp/popeetheclown/touch)
    • PCで見ると表示崩れ+うまく動作しない
    • 独自CSS
    • html
  • Twitter(http://mobile.twitter.com/)
    • Doctype宣言無し
    • xhtml(だと思う)
    • 独自ライブラリ
結論をいうと、Twitterかがいけてる気がする。
理由は、PCからUserAgentを書き換えて確認した画面と、
iPhone から確認した画面に差異が(少)ないから。

あまり、iPhone に特化したデザインにしすぎると、
Androidとか、端末が増えたときに対応するのはめんどくさすぎるし、
動作確認するのにPCを使えないのは開発効率が悪い気がする。

iPhone用サイトといっても、PCと画面サイズが違うだけ、
という割り切りにする方が、将来的に開発工数が下がってHappyだと思うんだけどな。
ヤフオクのように、割り切って外部ライブラリを使うのも個人的にはあり。

運用しにくいものを作っても、開発スピードが落ちて、
ユーザの満足に答え続けることってできないんじゃないかと考える今日この頃です。

iPhone向け最適化Webサイトを構築する その2:jQuery iPhone UI

iPhone向け最適化Webサイトを構築するjQueryライブラリ「jQuery iPhone UI」
という記事を見つけたので、早速動作確認してみた。

まずは公式サイトからダウンロード。
http://code.google.com/p/jquery-iphone-ui/
記事執筆時は、バージョン 0.1.016

解凍してできたiphoneディレクトリをapache document rootに
移動すれば、ページを確認できる。
# http://localhost/iphone/ など。

実際にiPhoneでUIを確認すると以下のようなページになる。

jquery iphone1


アイコンセットもついているので、自分で準備する必要がない。
jquery iphone2

さらに、PCからサンプルページを確認すると、


と、iPhoneの見た目で表示してくれた。タップやスクロールも
マウスで同様に操作できる。これはいい!

その他気になったことは以下。
  • jsを読み込みまくってるので、実機だとややもっさり

    • サンプルページが機能もりもりだからかも
    • サンプルページはjquery本体をGoogle CDNから取得してなかったので、改善の余地はある?

  • iUIよりも、HTMLに特別な属性を付与しないでもよさそう

    • よけいな文法を覚える必要はなくなる?
などなど。
これからコードを読んで機能比較してみようと思う。

iPhone向け最適化Webサイトを構築する その1:環境構築 + iUI

フロントエンドエンジニアを名乗っていましたが、
今頃、iUIなるものの名前を初めて聞きました。

iPhone 3G用のWebページを作る
iui User Interface (UI) Framework for WebApp development on iPhone-class devices

なんとまあ、便利そうなので、iUI勉強がてら、
iPhone用サイトを使ってみることにした。まずは、環境設定。


今まで手持ちのiPhoneから、開発機を覗いたことがなかったけど、
普通にwifiで見れるんですな。当然といえば当然だけど、
気がつかないといつまでもやらないもんです。
http://10.0.1.12/foo.html
とかURLを入力すればOKですた。


iUIについては、いまいち文法がわからないので、これから調べてみます。

UbuntuにMT(Movable Type 5)セットアップ

基本的にMac miniでのMTセットアップとあまり変わらないけど、
なんやかんや設定したりインストールしたので備忘録的にめもめも。
やったことは以下
  1. CGIを動かす
  2. MySQLのインストール
  3. MySQLの文字コードなど設定変更
  4. perlの環境設定

    1. DBI
    2. Image::Magick

  5. MT用のディレクトリ作成+所有権変更
  6. sendmailインストール
1については、Ubuntuのcgi-binディレクトリってどこだっけ?というところから
調査+動作確認
ディレクトリは、/usr/lib/cgi-bin/で、拡張子はなんでも動くっぽかったので、
CGI.pmでお決まりのテストCGIを書いて動作確認。
#!/usr/bin/perl

use strict;
use warnings;
use CGI;

my $q = new CGI;
print $q->header('text/plain;');

print "test ok: ". time();
mod_perlもいれたいけど、今日は無視して先にすすむ。

MySQLはaptitudeでインストール。mysql-serverではなく、
mysql-server-5.1をインストールした。

文字コードのデフォルトが、latin1になってるので、UTF8に変更
エンジンもinnodbをデフォルトに。
$ cat /etc/mysql/conf.d/mysqld_charset.cnf
[mysqld]
default-character-set = utf8
default-storage-engine=innodb
skip-character-set-client-handshake
$ sudo /etc/init.d/mysql restart
で、perlの環境準備とsendmailの準備。
$ sudo aptitude install libdbi-perl perlmagick sendmail
MT用のディレクトリは以下に用意。
$ sudo mkdir /var/www/mt-static
$ sudo chown -R www-data /var/www/mt-statc
$ sudo chown www-data /var/www/
これで動くようになるはず。

こんなブログ記事ばっか書くから、インストールオタクなの?って
会社で言われてしまうんだろうが、気にしないことにする。


運動してステーキハウスリベロ(学芸大学)再来店

最近の運動不足を解消すべく、運動したログ
  • 朝起きてからWii。30分。メニューは以下

    • 長距離ジョギング3本
    • フラフープ。300点台が後一歩ででない。
    • バランスボール?上級難しい
    • 座禅。ようやくクリア
  • 家の近くのスポーツセンターに

    • 筋トレ(腹筋+上腕+肩+背筋)
    • ジョギング。6km。1時間弱。
    • サウナ+温泉
久々の運動にしては、ハードメニューをこなしたけど、
食事は朝(昼すぎ?)の1食しか食べてなかったので、
おなかぺこぺこ。

しかし、わざわざ学芸大学のリベラまで1ポンドステーキを
食べに1時間かけて移動。

リベラ

ソースをかける前に写真をとればよかった。。。
でも、運動していたこともあり、ぺろっと食べてしまった。
うまかったー。

前に貼ったtogetterの大食いログをまた貼っておきますね。





祖師ケ谷大蔵のGIGGLEでハンバーガーを喰らう

祖師谷大蔵のGIGGLEというお店でハンバーガーを喰らう。

イギリス風というかアメリカ風、みたいなお店で、
色んなビールなどもおいてあって、昼にも夜にもおすすめ。

giggle4 giggle5
上の2枚が、昼に食べたチーズバーガーとBLTサンドウィッチ


giggle6 giggle1
上の2枚が、夜に飲みながら食べたフィッシュ&チップスと、
ウィンナー盛り合わせ。ビールに合う。

祖師ケ谷大蔵におたちよりの際にはぜひどうぞ。



大きな地図で見る

参考:
食べログ 

mp3spltを使ってmp3のファイルを分割する

mp3の音楽ファイルを任意の時間で2つのファイルにわけたい状況に
なったので、方法をさがしていたところ、mp3spltで簡単に分割できる、
ということがわかったので、実際に試してみた。

環境はUbuntu。
まずはインストール。
$ sudo aptitude install mp3splt
これで終了。
使い方は、manを見れば書いてある。
$ mp3splt foo.mp3 -t 0.20
mp3splt 2.2.5 (16/05/09) - using libmp3splt 0.5.6
        Matteo Trotta
        Alexandru Munteanu
THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!
 Processing file 'foo.mp3' ...
 info: MPEG 1 Layer 3 - 44100 Hz - Joint Stereo - FRAME MODE - Total time: 1m.00s
 info: starting time mode split
   File "foo_00m_00s__00m_20s.mp3" created                   
   File "foo_00m_20s__00m_40s.mp3" created                   
   File "foo_00m_40s__01m_00s.mp3" created                  
   File "foo_01m_00s__01m_00s.mp3" created                  
 Processed 2297 frames - Sync errors: 0
 time split ok
satoshi@satoshi-ubuntu-netbook:~
$ ls -la *mp3
-rw-r--r-- 1 satoshi satoshi 731999 2010-05-29 14:10 foo.mp3
-rw-r--r-- 1 satoshi satoshi 239852 2010-05-29 14:11 foo_00m_00s__00m_20s.mp3
-rw-r--r-- 1 satoshi satoshi 240166 2010-05-29 14:11 foo_00m_20s__00m_40s.mp3
-rw-r--r-- 1 satoshi satoshi 239852 2010-05-29 14:11 foo_00m_40s__01m_00s.mp3
-rw-r--r-- 1 satoshi satoshi     48 2010-05-29 14:11 foo_01m_00s__01m_00s.mp3
で、1分ちょっとのmp3ファイルを20秒ごとの4ファイルに分割してくれた。

あんまりニーズがないかもしれないけど、メモでした。