Pages

2009-09-30

泡だちの良いタオル -- キクロンのアワスター

シルバーウィークで帰省した。そしてキクロンのアワスターというタオルに出会った。

ルーネシモ アワスター ふつう オレンジ
ルーネシモ アワスター ふつう オレンジ

とにかく泡だちの良さが違う。

ぼくはここ数年 OLIPLE という天然石鹸を使っている。で、天然石鹸といふやつは一般の合成石鹸に比べて泡だちが悪い。普通のタオルで石鹸をすると、上半身を洗っただけで泡が消えてしまう。それほどに泡立ちが悪い。なので、「泡立ちの良いタオル」というやつを買っていた。

アワスターは、それまでの泡だつタオルを軽く越える「泡だちの良さ」だった。OLIPLE を軽く一往復させるだけで泡だち始める。今までになかったこと。ちょっと感動した。

ぼくが実家で使ったのは「超やわらかめ」というやつだけど、ネットで見ると「ふつう」「かため」「やわらかめ」も揃っている。

キクロン アワスター ボディタオル 超かため ブルー
キクロン アワスター ボディタオル 超かため ブルー
ルーネシモ アワスター かため ブルー
ルーネシモ アワスター かため ブルー
ルーネシモ アワスター やわらかめ ピンク
ルーネシモ アワスター やわらかめ ピンク
ルーネシモ アワスター 超やわらかめ イエロー
ルーネシモ アワスター 超やわらかめ イエロー

Qwerty キーボード配列はどうやって生まれたのか?

パソコンのキーボードは、判で押したやうに「Qwerty 配列」が採用されている (例へぼくが Dvorak 配列愛好家だとしても、それは否定できない)。では、その「Qwerty 配列」はどうやって生み出されたのか? 実は、これが「謎」であり、誰にも分かっていない。

京都大学の安岡孝一氏は、特にこの問題に興味を持っておられて、過去の特許記録 (1800 年代のもの!) から各種論文を 500 近く参照し一冊の本を書き上げた。

キーボード配列QWERTYの謎

この本を読むと、巷で良く言われる俗説:

  • 印刷工がよく使う文字を並べていたのを見て、参考にして配列を考えた
  • 高速にタイプすると、バーが絡まってしまうので、わざと遅くなる配列にした

が嘘なことが良く分かる。

Qwerty 配列はいきなり出来たわけではないし、たった一人の手によって生み出されたものでもない。沢山の人が開発に関わり、様々な特許と思惑に翻弄されて、タイプ・ライター開発者 Sholes へと結実する。

「キーボード配列 QWERTY の謎」の欠点に、この配列変化の歴史を細かく追いすぎて、どう配列が変わっていったのか分かりにくい点があった。せいぜい目次ページの前に、5 点の図版がある程度。もう少し詳しい変遷図が欲しいと思っていたら、(著者の) 安岡氏がブログの記事にしなさった。

この変遷図を見て、Qwerty 配列成立の歴史に興味を持たれたら、「キーボード配列 QWERTY の謎」のご一読を勧める。「謎」はミッシング・リンクを残して、最後まで「謎」のままなのだけど、キーボード配列 (というかタイプライター) 成立の時代背景が分かってとても楽しい読み物になっている。

最後に、もう一つ、この本のレビュー記事を紹介しませう。

YaTeX が開発を Mercurial に移行

Emacs の TeX 入力支援環境として有名な YaTeX が、利用しているバージョン管理を CVS から Mercurial (hg) に切り替えた。

Mercurial は、git と同じ分散型バージョン管理システム。集中リポジトリーにアクセスしなくても、ローカルだけで開発を進められて、適当なタイミングで本家リポジトリーにコミット (push) 出来る手軽さがウリ。特にネットワークの繋がらない移動中 (電車・地下鉄・飛行機の中) でも、開発できるのがいい。

リポジトリーの取得とアップデート

hg の clone コマンドでリポジトリーの取得を行なう。

$ hg clone http://www.yatex.org/hgrepos/yatex

更新は pull コマンド。

$ cd yatex 
$ hg pull -u

ログの確認は log コマンド。

$ hg log | head -20
changeset:   101:970c50beb4ce
branch:      dev
tag:         tip
user:        yuuji@gentei.org
date:        Mon Sep 28 13:09:16 2009 +0900
summary:     Change default emacsen from mule to emacs

changeset:   100:948655c12676
branch:      dev
user:        yuuji@gentei.org
date:        Mon Sep 28 13:07:05 2009 +0900
summary:     Remove ancient expresisons

changeset:   99:b1602e0ff018
branch:      dev
user:        yuuji@gentei.org
date:        Mon Sep 28 12:26:29 2009 +0900
summary:     Refer to utf-8:4

changeset:   98:707912ab8252

あとがき

最近、git に浮気して Mercurial 本を読み返していた。なので、この YaTeX のニュースはタイムリー。Mercurial をいろいろいじる実験体 (?) になりそう :p

入門Mercurial Linux/Windows対応

2009-09-27

HT-03A で Wi-Fi の設定をした

自分ちの Wi-Fi Spot (AirMac Extreme) に、HT-03A を繋げるやうにした。その設定メモ。

  1. 「設定」アプリを起動する
  2. 「ワイヤレス設定」をタップ
  3. 「Wi-Fi (Wi-Fi を ON にする)」をタップして、チェックを入れる
  4. 「Wi-Fi 設定 (ワイヤレスアクセスポイントの設定)」をタップ
  5. 「Wi-Fi ネットワーク」セクション以下に、接続可能なアクセスポイント一覧が表示されるので、目的のアクセスポイントを選んでタップ
  6. 「ワイヤレス接続パスワード」を求められるので、入力して「接続」をタップ

通知バーに「Wi-Fi」アイコンが現れたら OK。

「ワイヤレス設定」の設定項目も「Wi-Fi (○○に接続しました)」になる。このチェックを外すと、Wi-Fi が使われなくなり、「Wi-Fi (Wi-Fi を ON にする)」に戻る。もう一度チェックを入れると、一度パスワードを入力したアクセス・ポイントについては、すぐに Wi-Fi 接続してくれる。

設定場所さえ分かっていれば、パスワードを入力するだけ。普通の PC と作業は変わらない。

HT-03A Monitor Review Site オープン

2009-09-21 に、HT-03A Monitor Review Site がオープンした (6 日も前の話題で申し訳ない)。

これは、ぼくが参加している HT-03A モニター・キャンペーン用のサイト。ぼくと同じくモニターに参加している 20 人のブロガーのエントリーが、このページに集まるやうになっている。実は 2009-09-14 の時点で、かういふサイトをオープンする予定になってることは通達されていた。

20 人からの書くレビューは、「HT-03A Monitor Review Site」に集められる。と説明書にはあるのだけど、まだこのサイトは開いてないみたい。残念。

clmemo@aka: DoCoMo HT-03A (Android) のモニター機を借りた より引用

お目見えということで嬉しい限り。HT-03A 回りのブログ・エントリーのチェックにもってこい。

サイトについて

Monitor Review Site は、6 つのカテゴリーに分けてモニター記事を紹介している (サイドバーにはカテゴライズされていない最新記事タイトル一覧もある)。

即ち

  1. タッチ
  2. アプリ
  3. カメラ
  4. Gmail / インターネットメール
  5. ブラウザ
  6. 活用方法

カテゴリー分けは、モニター記事の読者にとって良い配慮だと思う。HT-03A の魅力が、この 6 つに代表されているんだよ、と提示するようなものだから。HT-03A を初めて知る人と、モニター・ブロガーのディープな記事との溝を埋める一助になるんじゃないかな。

主催者も、モニターを提供するからには、単にブロガーにエントリーを書いてもらうだけじゃダメ。モニター・ブロガーの書いたエントリーを読んだ読者が、「もっと商品を知りたい」と思った時の手助けをする。Monitor Review Site を含めて、今回のモニター・イベントは、そういふ細やかな配慮を多く感じる。

MacBook 用に DVI-D-sub 変換アダプタを買った

2009-10-03 に参加する HTML5 Hackathon の案内が届いた。

それで Mac な人がプレゼン発表をする場合は、DVI-D-sub変換アダプタが必要という。プレゼン発表するかどうかは分からないけど、これから先、持ってて悪いこともなさそうなので一つ注文してみた。

Apple Mini DVI-VGAアダプタ
Apple Mini DVI-VGAアダプタ

蛇足

MacBook には D-sub (いわゆる VGA) 用のポートがない。代わりに、Mini DVI というポートが付いている。なので、MacBook の画面をプロジェクター (や大きなディスプレー) に表示しようとすると変換用のアダプターが必要になる (それが Mac 専用でもない限りね!)。

Mac のディスプレー端子には Mini DVI の他に、Mini DisplayPort とか Micro-DVI なんて仕様があるので、とても混乱してしまう。アダプターを買う前に、自分の Mac に何の端子が付いているのか確認することを忘れないようにしないといけない。

ぼくは十分気を付けていたつもりだけど、mini DVI - VGA 変換アダプターじゃなくて、mini DVI - DVI 変換アダプターを買っちゃった。間違いに気付いた時には、商品は発送作業に入ってた。もうキャンセルは効かない。仕方がないので、改めて mini DVI - VGA 変換アダプターを注文した。間違えた方は、後で返品作業しなくっちゃ。皆さんも、お気を付けあれ。

2009-09-23

MacPorts で Snow Leopard に git をインストールした

MacBook に git を入れたい。

「入門 git」(Travis Swicegood 著) の「2.1 Git のインストール」には

Mac OS X を愛用している人で、パッケージマネージャを使いたいなら、比較的新しめの Git のコピーが MacPorts にある

とある。MacPorts は先程インストールしたので、本の通りに git をインストールしてみた。

コマンド一つで入るので便利。

$ sudo port install git-core +svn +doc

入門git

MacPorts 詳解

MacPorts で git をインストールする方法を書いたエントリーがあった。

ぼくは MacPorts 初心者なので、このエントリーは参考になった。せっかくなので後追いをしてみる。

Git port を探す

port search コマンドを使う。

$ port search git
ardour2 @2.8.2 (audio, x11)
Ardour is a digital audio workstation.

cgit @0.8.2.1 (www, devel)
A fast web interface for the git source code management system

dcraw @8.98-20090919011100 (graphics)
Digital camera raw photo decoding software supporting hundreds of cameras

exiftags @1.00 (graphics)
Utility spits out Exif tags from a digital camera JPEG file

ffmpeg-devel @19824 (multimedia)
Digital VCR and streaming server (new unstable API/ABI libavcodec version 52)

freehdl @0.0.7 (science, math)
A free VHDL simulator used for digital simulations by qucs

gc-utils @0.2.3 (devel)
scripts for interacting with CVS repositories using git

giggle @0.4 (devel)
Git gtk frontend

git-core @1.6.4.4 (devel)
A fast version control system

GitX @0.7.1 (devel)
GitX is a git GUI specifically for Mac OS X

irsim @9.7.71 (science)
IRSIM, a switch level simulator for digital circuits

libgphoto2 @2.4.4 (devel)
The gphoto2 digital camera library

libptp2 @1.1.10 (devel)
libptp2 is a library used to communicate with PTP devices like digital cameras.

orrery @0.9.5 (science, graphics, x11)
A digital model of the solar system within Geomview

photopc @3.05 (multimedia)
Download photos from some older digital cameras

qgit @2.2 (devel)
A graphical interface to git repositories

stgit @0.14.3 (devel, python)
Push/pop utility on top of GIT

tig @0.14 (devel)
A text interface to git repositories

xclock @1.0.4 (x11)
Analog/digital clock for X11

Found 19 ports.

19 の port が見つかった。数が多すぎて、ターミナルを大きくスクロールしてしまう。

--line オプションでコンパクトに表示する。

% port search --line git
ardour2 2.8.2   audio x11       Ardour is a digital audio workstation.
cgit    0.8.2.1 www devel       A fast web interface for the git source code management system
dcraw   8.98-20090919011100     graphics        Digital camera raw photo decoding software supporting hundreds of cameras
exiftags        1.00    graphics        Utility spits out Exif tags from a digital camera JPEG file
ffmpeg-devel    19824   multimedia      Digital VCR and streaming server (new unstable API/ABI libavcodec version 52)
freehdl 0.0.7   science math    A free VHDL simulator used for digital simulations by qucs
gc-utils        0.2.3   devel   scripts for interacting with CVS repositories using git
giggle  0.4     devel   Git gtk frontend
git-core        1.6.4.4 devel   A fast version control system
GitX    0.7.1   devel   GitX is a git GUI specifically for Mac OS X
irsim   9.7.71  science IRSIM, a switch level simulator for digital circuits
libgphoto2      2.4.4   devel   The gphoto2 digital camera library
libptp2 1.1.10  devel   libptp2 is a library used to communicate with PTP devices like digital cameras.
orrery  0.9.5   science graphics x11    A digital model of the solar system within Geomview
photopc 3.05    multimedia      Download photos from some older digital cameras
qgit    2.2     devel   A graphical interface to git repositories
stgit   0.14.3  devel python    Push/pop utility on top of GIT
tig     0.14    devel   A text interface to git repositories
xclock  1.0.4   x11     Analog/digital clock for X11

git-core が目指す port と分かる。

variant を調べる

port variants コマンドを使う。variant はコンパイル (インストール) オプションのやうなもの。

$ port variants git-core
git-core has the variants:
   bash_completion: Completion support for bash
[+]doc: Install HTML and plaintext documentation
   gitweb: Install gitweb.cgi
   svn: Bi-directional subversion repository support

4 つの variant がある。今回は doc と svn を一緒にインストールする。

port のインストール

port install コマンドを使う。variant は +VARIANT_NAME という書式で追記する。

$ sudo port install git-core +doc +svn

インストールが終わったら確認。

$ git --version
git version 1.6.4.4

ちゃんとインストールできた。

MacPorts 1.8.0 をインストールした

MacOS X のパッケージ・システムの一つ MacPorts をインストールした。バージョンは最新版の 1.8.0。

MacPorts は Mac で Unix ライクな生活をする人達用のアプリ。Unix 系のコマンド/アプリを、コマンド一つでインストールしてくれる。特に、Xcode を使って開発する人や X11.app を起動して Unix 生活を送りたい人に重宝される。

インストールには、Apple の開発環境 Xcode (OS の DVD-ROM に一緒に入ってる) のインストールが予め必要。あと、X11.app も使えるやうになってることが望ましい。

旧システムのアンインストール

むか〜し、MacPorts をインストールしていた。混乱の元になりそうなので、一旦、全部アンインストールしておく。

まず、インストールしたパッケージのアンインストール。

$ sudo port -f uninstall installed

そして、関連ライブラリーや設定回りの削除。

$ sudo rm -rf /opt/local \
/Applications/MacPorts \
/Applications/DarwinPorts \
/Library/Tcl/macports1.0 \
/Library/Tcl/darwinports1.0 \
/Library/LaunchDaemons/org.macports.* \
/Library/StartupItems/DarwinPortsStartup \
/Library/Receipts/MacPorts*.pkg \
/Library/Receipts/DarwinPorts*.pkg \
~/.macports

MacPorts を /opt/local 以外にインストールしていた場合は、PATH を自分の環境に合わせて変更すること。

MacPorts 1.8.0 のインストール

インストール・ページから、Snow Leopard (10.6) 用の dmg disk image をダウンロードする。

ダウンロードした MacPorts-1.8.0-10.6-SnowLeopard.dmg をダブル・クリックすると MacPorts-1.8.0.pkg が現れるので、更にダブル・クリック。あとは、インストール手順に従うだけで OK。

最新版への追従

次のコマンドを実行すると、MacPorts のアップデートに追従できる。

$ sudo port -v selfupdate

分からないことは

man コマンドに聞く。

$ man port

ぼくも勉強中。

自分の MacBook が 64bit 起動可能か調べてみた

Snow Leopard を MacBook にインストールした。

そして、今回の Snow Leopard (MacOS X 10.6) からカーネルが完全 64 bit 対応になるという。でも、その恩恵に全ての Mac ユーザーが与かれるわけではないらしい。難しい説明は抜きにして、気になるのは自分の MacBook が 64 bit カーネルで起動できるかどうかといふこと。

コマンド一つで調べられるというので、やってみた。

  • アプリケーション > ユーティリティ > ターミナル.app を起動
  • 次のコマンドを入力する。
$ ioreg -l -p IODeviceTree|grep firmware-abi
    | |   "firmware-abi" = <"EFI32">

<"EFI32"> と返って来ると、64 bit カーネルでの起動は無理。これが <"EFI64"> だったら良かった。

ネットを調べてみると、MacBook は EFI が 64 bit 対応していたとしても、Apple 側の制限で、64 bit カーネル起動が不可能という。ぼくのマシンは、仮にその制限がなかったとしても (古すぎて) 64 bit カーネル起動は出来ない。それが分かった。少々、悲しい。

2009-09-22

Snow Leopard の Emacs でコピペをすると文字化けする

先日、Mac OS のバージョンを 10.6 (Snow Leopard) にアップグレードした。そしたら、X11.app の Emacs アプリから Firefox や Safari に日本語をコピペできなくなってしまった。コピーする日本語が、ことごとく文字化けしてしまう (ASCII 文字のコピペに関しては OK)。

ネットを徘徊すること 3 時間。ようやく関連するエントリーを見つけた。

次のコードを .emacs に貼り付けると文字化けせずコピペできるやうになる。

(if (eq window-system 'x)
 (progn
   (defun paste-to-osx (text &optional push)
  (progn
    (let ((process-connection-type nil)) ; use pipe
   (let ((proc (start-process "pbcopy" "*Messages*" "pbcopy")))
     (process-send-string proc text)
     (process-send-eof proc)))))

   (setq interprogram-cut-function 'paste-to-osx)))

MacOS X の X11.app に付属のツール pbcopy といふのを呼び出している。

X11 の環境設定

ちなみに、ぼくは X11 の環境設定をスクリーン・ショットの通りにしている。

X11.app - Settings

「ペーストボードが変更されたときに CLIPBOARD をアップデート」にチェックを入れていると、何かと不具合が多いというのが Snow Leopard での感想。バグなのかしらん?

2009-09-17

Android モニター参加者のブログ一覧

DoCoMo HT-03A (Android) のモニター記事第二弾。

今回、モニターには 250+ 人中 20 人が当選した。ブロガーを対象としたモニターなので、当然、全員ブログを持っている。その 20 人分のブログの記事を OPML でまとめて下さった方々が現れた (感謝)。

この Android モニターに興味をお持ちなら、この OPML をインポートしてみてはどうでせう。

ちなみに、AMN は現在、モニター全員の Twitter アカウントも集めている。近い内に、こちらも紹介できることと思う。

Google Reader に OPML を取り込む

Yuriko.Net さんの作った OPML ファイルを Google Reader に取り込む方法を説明しやう。

  1. Yuriko.Net » ドコモ HT-03A のモニターに当選 にアクセスして、OPML ファイル (ht-03_monitors.opml) をダウンロードする
  2. Google Reader にアクセスして、「Settings > Import/Export」を開く
  3. 「Import your subscriptions」のセクションの「Select an OPML file:」にダウンロードした ht-03_monitors.opml のパスを入力する (「Browse...」を使うと楽)
  4. 「Upload」ボタンを押す

Google Reader - Import OPML

これでおしまい。

Android 携帯にはスクリーン・ショット機能がない

DoCoMo HT-03A (Android) のモニター記事第一弾。

せっかく借りた Android 実機であるわけなので、ブログにエントリーを載せるとなればスクリーン・ショットを撮りたい。ところがやり方が全く分からない。

調べてみると、デフォールトではスクリーン・ショットを撮る方法がないと分かった。Android Market にも、スクリーン・ショットを撮るアプリは存在しない。仮に在ったとしても、スクリーン・ショットは何らかのハードウェア・キーを使うわけだから、他のアプリのキーと何かしら被ってしまう可能性がある。現実的じゃない。

というわけで、これから Android のエントリーを書いていくと思うけど、スクリーン・ショットはほとんど現れないと思う。ゴメンナサイ。

蛇足

頑張るとスクリーン・ショットは撮れる。PC に SDK をインストールして、HT-03A を USB 接続して撮るの。ちと、ハードルが高すぎやしませんかね? Google さん。

ちなみに iPhone は簡単。電源ボタン押しながら、ホーム・ボタン押すだけ。これ位いの簡便さが欲しい。

ref

2009-09-16

SSH の公開鍵暗号方式によるログイン認証

最近、ようやく ssh のパスフレーズ認証が分かって来たので、メリットとやり方をメモ。

パスフレーズ認証のメリット

Host PC に ssh でログインする場合を考えやう。パスワード認証ならパスワードが漏洩すると、どの PC からでも Host PC に不正ログインされてしまう。

一方、パスフレーズ認証だとパスフレーズ (公開鍵号方式におけるパスワードのこと) が漏洩しても、自分の PC から Host PC に不正ログインを試みない限りログインには成功しない。

その秘密は「公開暗号方式」にある。秘密キーと公開キーという対になるファイルを生成し、「秘密キー」を自分の PC に、「公開キー」を Host PC に置く。これが割り符のかわりになってくれる。パスフレーズを盗んでも、泥棒の PC に「秘密キー」がないと Host PC にはログインできない。

パスワード一つで認証管理するより、パスフレーズ・秘密キー・公開キーの三点セットで認証を行なう方がセキュリティーが高いという理屈。

パスフレーズ認証のやり方

自分の PC を local PC、ログインする対象の PC を host PC と呼ぶ。ここでは、local PC から host PC へパスフレーズ認証する方法を説明する。

秘密キー・公開キーの作り方

まず、local PC でパスフレーズの設定と秘密キー・公開キーのペアを作る。これには ssh-keygen といふコマンドを使う:

local ~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/masayuki/.ssh/id_rsa):

公開キー・秘密キーの置き場所を尋ねてくる。デフォールトの「~/.ssh/id_rsa」で普通は OK。

Created directory '/home/masayuki/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

パスフレーズの入力を促される。確認のため 2 回入力。

Your identification has been saved in /home/masayuki/.ssh/id_rsa.
Your public key has been saved in /home/masayuki/.ssh/id_rsa.pub.

成功したら、秘密キーが ~/.ssh/id_rsa ファイルに、公開キーが ~/.ssh/id_rsa.pub ファイルに保存された旨が通知される。

パーミッション確認
local ~$ ls -ld .ssh                                     [6:20:17]
drwx------ 2 masayuki ataka 4 2009-09-16 06:20 .ssh/
local ~$ ls -l .ssh/                                     [6:23:08]
合計 8
-rw------- 1 masayuki ataka 2 2009-09-16 06:20 id_rsa
-rw-r--r-- 1 masayuki ataka 1 2009-09-16 06:20 id_rsa.pub

秘密キー .ssh/id_rsa は自分以外、絶対誰にも見せないこと。公開キー .ssh/id_rsa.pub は誰かに見られてもいい。

host PC へ設定

host PC に公開キーを保存する。

local ~$ scp .ssh/id_rsa.pub host:~/
local ~$ ssh host

公開キーを scp で host PC に送ったら、ssh で host PC にログイン。

初めて公開キーを登録する時は、host PC に .ssh ディレクトリーがないでせう。.ssh ファイル (と .ssh/authorized_keys ファイル) を作ってパーミッションを設定する。

host ~$ mkdir .ssh
host ~$ chmod 700 .ssh
host ~$ touch .ssh/authorized_keys
host ~$ chmod 600 .ssh/authorized_keys

最後に、id_rsa.pub の中身を .ssh/authorized_keys に追記する。

host ~$ cat id_rsa.pub >> .ssh/authorized_keys

追記な点がポイント。

local PC 以外の PC (例えば local2 や local3) からログインする場合も、同じやうにして公開キーを .ssh/authorized_keys に追記登録していく。

local PC に戻って、ssh ログインを試みると、パスワードじゃなくてパスフレーズが聞かれるやうになる。

2009-09-15

CSS でセクション・カウンター

CSS でヘッダー要素にカウンターを自動的に付けることができる。例えば、「Chapter 1.」とか「Section 2.1.」みたいなのを自動で振れる。で、いつも CSS の書き方を忘れてしまうのでメモ。

sample.html

まずはサンプルの HTML ファイル。

<html>
 <head>
  <title>CSS Counter Sample</title>
  <link href="sample.css" rel="stylesheet" type="text/css"/>
 </head>
<body>
<h1>CSS Counter Sample</h1>

<h2>OS</h2>
<h3>Linux</h3>
<h3>MacOS</h3>
<h3>Windows</h3>

<h2>Company</h2>
<h3>Google</h3>
<h3>Apple</h3>
<h3>Microsoft</h3>
<h3>Yahoo!</h3>
</body>
</html>

これを、CSS ファイルなしでウェブ・ブラウザー (Firefox 3.5) で見るとかうなる。

HTML Headers

sample.css

次に sample.css を追加してみませう。

h1 {
  counter-reset: chapter;
}

h2 {
  counter-increment: chapter;
  counter-reset: section
}
h2:before {
  content: "Chapter " counter(chapter) ". ";
}

h3 {
  counter-increment: section;
}
h3:before {
  content: "Section " counter(chapter) "." counter(section) ". ";
}

sample.html と同じ場所に置いて、ブラウザーをリロードするとかうなる:

HTML Headers with counter

CSS

counter-increment で変数 (この場合 chapter や section) のカウンター値を増やす。そして、contentcounter を使ってカウンター値を出力させる。

counter-reset でカウンター値をリセットさせないと、次の章に入っても節番号が 1 に戻らないので注意。

CSS を使ったカウンターなので、途中に h2 要素を突っ込んでも自動的にカウンターが振られ直される。便利。

gist

今回書いたサンプル・スクリプトは、gist にものっけてある。git 使いの方はどうぞ。

2009-09-14

HTML5 3Days Tech Talk & Hackathon に参加する

HTML5-Developers-JP がイベント「HTML5 3Days」を主催する。

HTML5-Developers-JP というのは、HTML5 をテーマとする Google の準公式コミュニティー。HTML5 は、その名前の通り HTML4 の次の仕様〜〜となるのだけど、随分と趣きが違うらしい。HTML4 までは、HTML はあくまで「マークアップ言語」であり、一つの仕様書に書かれるものだった。

HTML5 は、モジュール化され、ウェブ・アプリケーションを開発するための機能が盛り込まれているといふ。例えば、ウェブ・ストレージ。ウェブ・データベース。ウェブ・ワーカーズ (スレッドのやうなもの)。それから絵を描く Canvas。マルチメディアを貼り付けるための video 要素と audio 要素。

正直に言えば、ぼくに HTML5 を語ることは出来ない。それほど仕様が大きい。ぼくは今、森のやうな仕様の中で迷子になっている。

だから、この Tech Talk は、とても大きなチャンスだと考える。HTML5 ってどんなだろ? 輪郭だけでも掴めてこれたらいいな。

イベント概要

  • 2009-10-01 (木) 19:00-21:00 Tech Talk
  • 2009-10-02 (金) 19:00-21:00 Tech Talk (前日と同じ内容)
  • 2009-10-03 (土) 10:00-18:00 Hachathon (前日と同じ内容)
  • 場所: Google 東京オフィス
  • 会費: 無料
  • 申し込み方法: HTML5 告知ページより申込 (Google Groups への加入が必須)

DoCoMo HT-03A (Android) のモニター機を借りた

過去記事で紹介した、AMN による DoCoMo HT-03A モニター・キャンページ。250+ 人中 20 人という 12 倍以上の倍率を潜り抜け、当選してしまった。

概要

概要は過去エントリーにも書いたけど、いくつか変更された点もあるので改めて書いておく。

  • 期間: 9/12 〜 10/30
  • 募集: 20 人 (応募者は 250 人以上)

モニター条件は次の通り。

  • 約 1 か月半のモニター期間中、3 記事以上のレビューを書くこと。
  • 借用書を記入・返送すること。

20 人からの書くレビューは、「HT-03A Monitor Review Site」に集められる。と説明書にはあるのだけど、まだこのサイトは開いてないみたい。残念。

モニター機の利用条件は次の通り。

  • 定額プラン契約済み (定額プランの範囲内で、ネットやメール、アプリを存分に楽しめる)
  • ドコモ M プラン契約済み (4,200 円分の無料通話が可能)

これからのレビュー記事について

ぼくは iPhone 3G を一年以上使ってる (3GS に買い換えないのか? という問いはスルーするとして)。なので、iPhone 3G 端末と Android 携帯との比較が、このレビューのメインになると思う。

HT-03A に一触した時のレビューは、既に「HT-03A Touch & Try」イベントのエントリーで書いているので、そちらを参照されたし。

今回のモニターは、前回のイベントへの指摘を受けたものかしらん:

端末を使って、アプリをいじっていると 2 時間なんてあっという間。プレゼン聞くのも意識半分で、ずっと HT-03A をいじっていた。

イベント終了時には、端末をリセットして返却。HT-03A の魅力を感じることは出来たけれど、遊びたおすのに 2 時間は短かすぎた。

clmemo@aka: ”ケータイする Google” docomo PROシリーズ HT-03A Touch & Try イベントに参加した より引用

もしそうなら、嬉しいな。期待に添えるやう頑張る!

2009-09-13

Beatles リマスター盤が届いたよ

先日、HMV で注文した Beatles のリマスター盤が、同時予約注文した商品の入荷遅れに引きづられて、9/9 に発送されなかった件 (詳細は過去記事参照のこと)。無事、昨日、リマスター盤が手元に届いた。で、その時の HMV の対応が良かった件は書かねばならぬと思いキーボードを叩く。

経緯

  • 2009-08-06: Beatles リマスター盤を他の CD と共に予約。発送予定日は 9/9。
  • 2009-09-07: 発送予定日が 9/9 なことを確認。ハイドンの CD の入荷日が 9/8 なことを確認。
  • 2009-09-08: ハイドンの入荷日が 9/27 に延期。発送予定日も 9/27 に延期。
  • 2009-09-08 21:01: HMV に苦情メール。
  • 2009-09-09 06:56: 過去記事をアップ。
  • 2009-09-09 13:49: HMV カスタマー・サービスより返事。分割配送作業を行なったとのこと。
  • 2009-09-09 16:38: HMV より自動メール。分割配送に関する問い合わせメール。
  • 2009-09-10 21:14: HMV より自動メール。商品発送のお知らせ。
  • 2009-09-11: おそらく商品到着。この日、体調を大きく崩して上司二人に最寄駅まで送ってもらう為体。荷物受取作業できず。
  • 2009-09-12: 荷物受け取る。

HMV に苦情メールを送ったのが、8 日の 21 時。おそらく担当の人は、翌朝 (9 日の朝) にメールを見たことでせう。サービス担当者は (他にも仕事があるでせうに)、その日の午前中に対応をしてくれた。昼一には報告メール。まず、迅速な対応に感謝。

HMV のカスタマー・サービスには、何度か問い合わせ (全部が苦情じゃないよ) を送っているけれど、彼らの対応は常に迅速。誠意を感じる。

今回のやり取りでもう一つ良かったことがあった。ぼくが一日でも早く Beatles のリマスター・ボックスを受け取りたいという意思を汲んで、HMV 側の配慮で「分割配送」の手配を行なってくれたこと。

本来の手順だと、「分割配送にするか?」というメールが届いて (16:38 に届いたやつがそうね)、買い手が「分割」にするか「キャンセル」にするか、「一括」にするかを選ぶ。仕事をしているとこのメールを見るのが夜になって、分割配送作業は更に一日遅れちゃうんだよね。

そこんところを汲んでの「分割配送」手配。ありがたい。

あえて苦言を言うならば

カスタマー・サービスの人達は素晴らしい。

それ以外の HMV がシステムとして自動化している部分。ここが、まだ洗練されていない。

今回の件でもそうだけど、予約商品の入荷日が変わった時点でその旨を客に報告して欲しい。分割配送の問い合わせも、このタイミングで行なって欲しい。商品発送のメール。21:14 になっているけれど、本当にこんな遅い時間に作業しているの? ぼくが受け取る発送メールは、いつも 21 時過ぎなんだけど。もっと早く発送作業終わってるんじゃないの? 作業が終わったら、速やかにメールでお知らせして欲しいな。この時間が早ければ早いほど、待ってる人間は嬉しいんだからさ。

HMV はよいクラシック音楽を仕入れてくれてるから、頑張って欲しいのよ。

Amazon が小さな包みでメール便を送って来た

先日、Amazon でラノベを予約した。Amazon は予約した商品をメール便で送って来る。ラノベのやうに文庫本サイズだとメール・ボックスに入るので、宅配便で送られるより良い。

ところが、今回のメール便はいつもより更に小さかった。

Amazon から小さなメール便

写真を見てもらえば分かると思わけど、文庫本がなんとか入る程度の大きさ。

今まで何度も Amazon でラノベを注文しているけど、この大きさは初めて。普通の単行本が収納できる大きさのメール便で届いていた。

サイズが小さくなるとゴミも減る。箱の種類が増えると管理が大変でせうけど、こういう環境配慮には拍手。是非是々、こういう取り組みは続けて欲しい。

灼眼のシャナ〈19〉 (電撃文庫)

2009-09-10

Apple "It's only rock and roll" イベント・レビュー

2009-09-09 (日本時間では 9/10 午前 2 時) から Apple のイベント「It's only rock and roll」が開かれた。今回、発表の中心は iPod シリーズだったけど、特に iPod nano の進化が激しかった。iPod nano のレビューをメインに、iPod シリーズと iTunes 9 の話を軽く添えたい。

iPod nano 5G

anodize

新 iPod nano の新機能は以下の通り。

  • ビデオ・カメラ
  • マイクとスピーカー
  • FM ラジオ
  • Genius
  • Voice Over (曲名・アーティスト名の読み上げ機能)
  • 2.2 インチ・ディスプレー
  • 研磨 アルマイト・アルミ -- 光沢のある酸化皮膜処理されたアルミ -- の外装

まずビデオ録画機能がついた。つまり、ビデオ・カメラとマイクが付いた (実はスピーカーも!)。録画できるのは、H.264 の VGA (640x480) 30 fps のビデオ。オーディオは AAC。録音アプリも付いて来る。これはすごい。iPhone 3G から iPhone 3GS を買うより、iPod nano でビデオ録画する方がいいんじゃないか? 静止画は撮れないやうだけど、それは iPhone 3G で撮ればいいや。

更に FM ラジオ機能も付いてくる。しかもこのラジオ、途中でポーズがかけられる。一時停止できる時間は 15 分まで。15 分の間だったら巻き戻しも可能。これをライブポーズ機能と呼ぶ。とってもクール。ぼくの環境には FM ラジオがなくて淋しいと思っていたのだけど、iPod nano でいいんじゃないかと思う。

最後に、iPhone でおなじみの Genius も付いた。

モデルは 2 タイプ: 8 GB (14,800 円) と 16 GB (17,800 円)。

その他の iPod シリーズ

iPod nano の進化ぶりに比べると、他の iPod は霞んでしまう。まずは価格表。

SizeiPod shuffleiPod nanoiPod touchiPod Classic
2 GB5,800------
4 GB7,800 (特別色 9,800)------
8 GB--14,80019,800--
16 GB--17,80029,800--
32 GB----39,800--
160 GB------24,800

トピックとしては、iPod shuffle に Apple Store 限定の 4 GB 版 (ステンレスなんだって) が出たこと。iPod Touch が OpenGL ES 2.0 をサポートしてゲームが高速になったこと。この 2 つ位いかな。

iTunes 9

iTunes の新機能も面白かった。iTunes 9 は今日リリース。

  • iPhone のホーム画面を iTunes から操作できるやうになった
  • 5 台まで音楽や動画を共有する機能が追加された
  • iTunes LP 機能 --- ライナーノーツや歌詞カード、写真集といった、LP や CD についてた付属物をネットで復活提供する機能。

あとがき

あと、iPhone 3.1 もリリースされた。何が変わったのかは分からない ^^;

でも一番のニュースは、Steve Jobs が戻って来たことかもしれない。

2009-09-09

Misc Calendar で移動時間を管理 (Google Calendar Tips)

Google Calendar で「misc」という名前のカレンダーを作っている。このカレンダーで管理しているのは、自分のメイン・カレンダーに関連するんだけど、特に重要でない案件。特に移動時間をこのカレンダーで管理して重宝している。

Google Calendar - misc calendar スクリーン・ショットは、昨日のぼくのカレンダー。メイン・カレンダーには 18:00 時から「通院」とある。これは絶対に外せないイベント。

で、その「通院」イベントの前にあるのが「misc」カレンダーのイベント。会社から病院までどれ位いかかるかを書いている。これを見ると電車に乗って 16:59 から 17:55 の間移動することが分かる。ぼくはこれを見て、16:59 の電車に間に合うやうに会社を出る。イベントの詳細を開けば、路線軽索の結果をコピペしてある。

カレンダーのイベントって、イベント自体を登録していて、そこまでの移動時間が管理していない。だから、そのイベント周辺でどれ位い時間の余裕があるか分からなくなっちゃう。それなら移動時間を管理するカレンダーも作ってしまえばいいんじゃない? ってのがアイデア。

ぼくは、移動時間の他にも、こんなイベントを「misc」カレンダーで管理している。

  • 行かなくなったイベント。。。「懇親会」とか「新年会」とか。行くつもりで予定を立てていたんだけど、用事が入って行けなくなった、ってイベント。周りの人がソワソワしているので、何でかな? とカレンダーを見ると「懇親会」とか入ってて納得する。
  • 誰かの最終出勤日。。。何か、サラリと居なくなる人がいるから。

カレンダーを別にすることで、メイン・カレンダーのイベントだけチェックしたい時に隠せるのもポイント。

蛇足

「misc」は「miscellaneous」の略。「雑多な」という程度の意味あい。

Windows にも /etc/hosts ファイルがある

あまり知られていないことだけど、Windows にも hosts ファイルがある。これは Linux における /etc/hosts と同じ動作をする。

Linux の /etc/hosts

Linux の /etc/hosts は、IP アドレスとホスト名を紐付けする設定ファイル。書式は次の通り。

127.0.0.1 localhost

一行に IP アドレスとホスト名をスペース区切りで書いておく。上の例は、127.0.0.1 という IP アドレスに localhost というホスト名でアクセスする、という設定。ほとんどの Linux にはこの設定が書いてあるかな?

DNS サーバーを立てたり、DNS に登録するのが面倒、なんて時に使える。

Windows の hosts

Windows の hosts ファイルも全く同じ書式・同じ目的で使える。

問題は、Windows のバージョンによってファイルの置き場所が違うこと:

  • Windows XP: C:\WINDOWS\system32\drivers\etc\hosts
  • Windows 2000: C:\WINNT\system32\drivers\etc\hosts
  • Windows 95/98/Me: C:\Windows\hosts

IP アドレスでしかアクセスできない PC があったら、hosts ファイルをいじってみると良いでせう。編集は普通にメモ帳からできる。

このネタ。一番知っておいて欲しいのは、Linux の管理者だったりする。Windows に /etc/hosts があるなんて思いもよらない、って人が多いから。

ref

HMV で注文した Beatles リマスター盤が発売日に届かず、ショボン

2009-08-06、Beatles のリマスター盤を HMV で予約した。輸入盤で、ステレオとモノラルのボックスを両方。

過去記事では、Amazon の方が安いと書いた。あのエントリーを書いた時、HMV のマルチバイ・キャンペーンの率は 25% だった。ぼくが注文した 8 月初旬。マルチバイ・キャンペーンの率は 30% だった。この 5% の差で、HMV の方が Amazon より安くなっていた。それで HMV で注文した。

さて、今日、9/9。HMV から Beatles のボックスが発送された様子がない。ネットから確認すると、まだ入荷していない商品があるという。

ハイドンの交響曲全集がそれ。

ハイドンの交響曲全 107 曲を収録して、37 枚組。値段は 5,946 円 (マルチバイ価格)。

このボックスを Beatles と一緒に注文したのだった。

何故って? 発売日が 9/8 だったから。Beatles 発売前に入荷するものと思っていたから。

9/7 の時点で確認した時も、発売日は 9/8 だった。

ところが、昨夜 (9/8 20 時頃)、確認してみたら発売日が延期されてる。2009-09-29 発売予定とな!

普通、発売日が延びたら、それなりの対応をしてくれるものと思うのだけど (少くとも Amazon はする)、HMV から何の連絡も来ない。HMV は、このタイミングで分割配送にすると、分割分の配送代がかかる。すると、まず間違いなく Amazon で買った方が安くなる。何のために HMV で注文したのか分からない。何か負けた気がする。

Amazon と HMV を比べた時、商品発売日が変更になると Amazon は変更が決まった時点で謝罪のメールを送ってくれる。他方 HMV は商品発売日になって初めてメールが送られる。ひどい時は、今回のやうに勝手に発売日を変更して、知らぬ存ぜぬで通してしまう。

このサービス対応の差を分かっていながら、注文したぼくも悪い。リスクがあることを認識しながら、ほんの数百円の安さにコロリと行った浅はかさが、今回の敗因と思う。でも、HMV も少しは改善を図って欲しいと思う。

とにかく、今日中にぼくが Beatles のボックスを手にする可能性は限りなく 0 になった。

2009-09-08

Simplify Media が「写真」にも対応した

PC を音楽サーバーにするサービス兼アプリ Simplify Media が、写真サーバーにもなるやうになった。まさに「Simplify Media (メディアをシンプルにする)」に恥じない動き。

使い勝手は「音楽」の時と変わらない。共有したい写真のフォルダーを指定するだけ。

今回のバージョンから、共有者の設定も細かく行なえるやうになった。「音楽」だけを共有する人、「写真」だけを共有する人、そして「音楽と写真」の両方を共有する人を指定できる。

最後に、iPhone に写真用のアプリが追加された。アプリ名は Simplify Photo。価格は 350 円。Simplify Music 2 (700 円) の半額。新機能を別アプリにしてリリースしてくるあたり、ビジネスが上手い。

あとがき

Simplify Media は、ぼくが初めてレビューした時から安定度を増した。音楽を聞いていても、切れることが少なくなった。そして、今度は写真対応。写真は音楽以上にネットワークの影響を受けなさそう。より快適なサービスが楽しめそう。

Dead Pool ラベルを付けた

clmemo@aka のラベル一覧が大変なことになっている。分かってる。ぼくだって十分承知している。数えてみたら 180 もあった。

これはいける、と思ったサービスを紹介するたびにラベルを振って来た。その結果がコレ。

そのうちのいくつかのサービスは、一時の話題を醸した後に消滅した。悲しいものは、二度と紹介することもなかった。で、そういう「ラベル」はもう表示しないことにした。最近の Blogger label ガジェットは、表示するラベルを選択できるやうになったからね:

もう一つ。「Dead Pool」というラベルを作った。これは TechCrunch がよく使う言い回しなのだけど、サービスが失敗してしまったことを「Dead Pool (死のプール) 入りした」と表現している。この「Dead Pool」をそのまま使わせてもらった。

「ラベル」を表示しないことに決めたサービスには、「Dead Pool」ラベルを付ける。読者の皆さんは、「Dead Pool」ラベルから当ブログがもう扱わなくなった記事にアクセスできる。

今回 Dead Pool したラベルは次の通り。

本当は、もっとラベルを整理したいところ。今できるのは、この程度。

repo の local_manifest -- 自分用リポジトリーの追加

repo コマンドを使うと、複数の git リポジトリーを一括管理できる。

repo の使い方は、まず最初に manifest ファイル (複数 git リポジトリーの URL が書いてあるファイル) を初期化設定して、次に一括ダウンロード・同期コマンド sync を実行するんだった。例えば、Android のリポジトリー一式を取って来る場合は、次のやうにする。

$ repo init -u git://android.git.kernel.org/platform/manifest.git
$ repo sync

さてこの時、manifest ファイルに書かれていないリポジトリーは (当然) 取得されない。

実は、Android のデフォールト manifest は、gitweb で見えるうちのリポジトリーのうちかなりの数が manifest に含まれていない。大きな所では、最近、Kernel Project が manifest ファイルから削られた

local_manifest

local_manifest.xml というファイルを .repo 以下に書くと、manifest.xml に自分用の管理リポジトリーを追加できる。書式は manifest.xml と同じ。manifest.xml の書き方は過去記事を参照してもらうことにして:

さっき話題に上がった、kernel リポジトリーを local_manifest を使って取って来るやうにしてみやう。

.repo/local_manifest.xml を次のやうに書く:

<manifest>
  <project path="kernel" name="kernel/common"/>
</manifest>

manifest.xml の続きとして書くのがポイント。manifest.xml で設定した remote や default が引き継がれている。manifest.xml の remote や default の設定をコピーしてしまうと、エラーが起きてしまうので注意。

あとがき

local_manifest が使えると、サービス提供側が押し付けたリポジトリー以外のリポジトリーも取得できるやうになる。本家の manifest が変わっても影響を受けにくいという点で、manifest ファイルを自作するより効率的。repo を使う人は、覚えておいて損がない。

ref

2009-09-07

入門 Trac 第二版

「入門 Trac 第二版」を手に入れて、サラッと読んだ。

入門Trac第2版―Linux/Windows対応

ページ数は 20 ページ増えた (327 から 347 ページへ) 。この 20 ページというのがクセモノで、ちゃんとしたレビューにしづらい。初版を持ってる人が第二版も必要かと言われると、フム。

というわけで、第二版で気に入った点を列挙してレビューに代える (これをテヌキといふ)。

  • Trac 0.12 の説明が入った。国際化、trac-admin の強化、複数リポジトリー対応がメインか? 複数リポジトリー対応は嬉しいなぁ。ちょっと説明が少なかったのが痛いぞ。
  • Git 対応。Trac の SCM に Git を対応させる Git Plugin の紹介。昔は、この情報がなくて苦労したんだよねぇ。感謝。
  • CGI で動作高速化。静的ファイルを trac.cgi を経由せずに読び出す方法の解説。ネットでは有名 (?) だけど、ちゃんと本に入ったのは良い。試す人がきっと増えるはず。
  • 「タスクトレイからチケット登録」「Perl から Trac を操る」。2 ページにも満たない小ネタ。マニアック! 大好き。

ref

Redmine の解説本を二冊買ったので比べてみた

Ruby on Rails で作られたバグ管理システム Redmine の解説本が最近立て続けに出た。

入門Redmine Linux/Windows対応Redmine -もっと手軽にプロジェクト管理!

一冊は「入門 Redmine」で (以下「入門」と呼ぶ)、秀和システムから。225 ページ。作者は前田剛氏。氏は日本の Redmine の総本山的なサイトである Redmine.jp の運営者とのこと。

もう一冊は「Redmine もっと手軽にプロジェクト管理」で (以下「手軽」と呼ぶ)、インプレスから。231 ページ。単著ではなく、TIS の社内ベンチャー SonicGarden の中の人達が書いている。名前を挙げると、倉貫義人・栗栖蔵臣・並河祐貴・前田直樹の 4 人。このうち栗栖氏だけは、TIS 入社後にはてなへ転職している。

比較

発売は、「入門」が 2008 年 12 月、「手軽」が 2009 年 8 月。対象にしている Redmine は、「入門」が 0.7 系の開発版 (一部 0.8 の情報を含む)。対して「手軽」が 0.8.2。現在の最新版は 0.8.4 なので、「手軽」の方がバージョンは合っている。

といっても、「入門」を読んでいて、最新バージョンとの違いに困ったという場面はなかった。

利用者・管理者

Redmine 利用者向けの説明、及び管理者の設定項目の説明では、「入門」の方が良いかもしれない。表やスクリーン・ショットが多く、読みやすい。

他方、「手軽」は文章中心で、「入門」より詳しく説明している部分があるにもかかわらず、あっさりとしている印象を受ける。表より列挙を多様しているのも、初学者に敷居を高くしている。

両者ともに、バグ管理システムそのものの使い方について説明している点が良い。「入門」は陥りがちな点をピンポイントで解説していて分かり易い。「手軽」は物語仕立てでメリットを説明していて、バグ管理を使わない時・使った時の改善点が際立つ構成になっている。

「入門」は本当に入門的で、一冊をプロジェクト・メンバーに回し読みさせるのに良さそう。「手軽」は、回覧させても読まない人が出てきそうな点がイマイチ。どちらかというと、Redmine のマネージャー的立場の人が読んで、啓蒙の手がかりにする本かもしれない。

インストール

両者とも Cent OS に、MySQL を DB として Redmine をインストールしている。Redmine は DB として SQLite もサポートしているけど、それを推めない点がいい (Trac は SQLite で構築してちと困った)。

ウェブ・サーバーについては、両者で少し対応が違う。

「入門」で扱うのは、主に Apache + Passenger でのインストール方法。それ以外には軽く触れる程度。Passenger がベスト・プラクティスだと言って、初めて Redmine をインストールする人を迷わせない。拍手。

「手軽」が紹介するのは、mongrel を使う方法と lighttpd を使う方法の二種。Passenger は言葉が出てくる程度。

さて、どれがいいのかしらん。一応、「入門」の言葉を引いておく

Passenger が 2008 年 4 月にリリースされる以前は、Ruby on Rails アプリケーションを Apache と連携させるには Apache や Pound などを HTTP プロキシとして構成しバックエンドの mongrel_cluster 上で動作するアプリケーションにリクエストを中継するのが一般的でした。また、さらに以前は FastCGI を利用した方法 (Apache + mod_fastcgi、Lighttpd) が主流の時期もありました。多くの資料でもそれらの方法が紹介されています。

しかし、Passenger の登場以後、それらの方法を利用するメリットがある局面は、Passenger が利用できない Windows 環境で運用したい場合など、ごく限定的です。

ぼくには、この言葉を裏付ける数値を出せない。もしかしたら、「入門」から「手軽」の約 8 か月の間に状況は変わったのかもしれない。そうじゃないかもしれない。誰か分かる人がいたら、コメント下さい。

Amazon と Plugin

「手軽」にしかない項目が 2 つある。

一つは、Amazon の EC2 を使って Redmine を構築する方法。いわゆるクラウド・サービスに Redmine を置いちゃおう、ってお話。Amazon の S3 を使ってバックアップを取る方法も解説している。手順の流れを追う程度の簡単な解説だけど、今の所、この本でしかない解説なので貴重。

もう一つは、Redmine の Plugin を作るお話。Plugin のインストール方法は「入門」にもあるのだけど、作り方は書いてない。「手軽」の説明は、Ruby on Rails を触った人なら付いていけるんじゃないかな? (Rails でアプリを作ったことがないと厳しいかもしれない)。

総評

入門者にターゲットを絞っているのが「入門」。広く浅く、Redmine の色んな可能性を知りたい少し中級者には「手軽」。

でも、本当に Redmine をプロジェクト内で使おうとするなら、きっと両方買うことになるのかもしれない。

repo sync したリポジトリーを git clone してみた

repo sync で取って来た git のリポジトリーを、更に git clone してみた。

$ repo init -u git://github.com/ataka/gm-manifest.git
$ repo sync
$ ls
README  greader-sbm/  greader-show-original/

ここで、greader-sbmgreader-show-original の各々が git repository。ちょっと別の所で、greader-sbm を更にいじるため git-clone:

$ cd ../another-project
$ git clone ../gm-manifest/greader-sbm
Initialized empty Git repository in /home/masayuki/tmp/another-project/greader-sbm/.git/

なんか警告が出たけれど、git-clone には成功している。

branch を覗いてみると...

$ cd greader-sbm
$ git branch
* (no branch)

ありゃ、ブランチがないとおっしゃる。これが警告の言ってることかな。

git-checkout でもって、「master」という名前を付けたげる。

$ git checkout -b master
Switched to a new branch "master"
$ git branch
* master

ブランチ名が master になって居心地いい。

蛇足

こうなる原因は repo sync で取って来た時点でブランチがないこと。その状態で、さらに git-clone してしまったから、こう座りの悪いことになってしまった。本当は、repo sync した後に repo start でブランチ名を付けておけば良かったのかもしれない。こんな風にね:

$ repo start master --all

2009-09-06

Ubuntu Linux 9.04 に Firefox 3.5 をインストールする

Ubuntu Linux 用に Firefox 3.5 のパッケージが用意された。パッケージを使えば、過去記事にあったやうに、Firefox がバージョン・アップするごとに最新の tar ball をインストールする必要がなくなる。

Firefox 3.5 のインストール

Ubuntu Linux 9.04 用のパッケージ・リポジトリーを登録し、GPG キーを追加して、パッケージ・インストールを行なう:

$ sudo chmod o+w /etc/apt/sources.list
$ echo 'deb http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu jaunty main' >> /etc/apt/sources.list
$ echo 'deb-src http://ppa.launchpad.net/ubuntu-mozilla-daily/ppa/ubuntu jaunty main' >> /etc/apt/sources.list
$ sudo chmod o-w /etc/apt/sources.list
$ sudo apt-key adv -keyserver keyserver.ubuntu.com -recv-keys 247510BE
$ sudo apt-get update
$ sudo apt-get install firefox-3.5

これで、Firefox がアップデートされても Linux のパッケージ・アップデート機能で自動的にアップデートされる。

Firefox 3.5 の起動は次の通り。

$ firefox-3.5

コマンド「firefox」では firefox-3.0 が起動する。firefox は firefox-3.0 へのシンボリック・リンクになっているので、firefox-3.5 に変えておくといい。

$ cd /usr/bin
$ ls -l /usr/bin/firefox
lrwxrwxrwx 1 root root 1 2009-09-05 23:34 /usr/bin/firefox -> firefox-3.0*
$ sudo rm firefox
$ sudo ln -s firefox-3.5 firefox

firefox を起動して、バージョンを確認してみやう。2009-09-06 時点では 3.5.2 と表示される。

これでおしまい。

ref

Emacs の Git Repository

今日、初めて気がついたのだけど、Emacs のソースコードは git でも公開されているのだねぇ。

リポジトリーの取得

$ git clone git://git.savannah.gnu.org/emacs.git

コンパイルとインストール

インストール方法は INSTALL.CVS に書いてある。約一年ぶりに Emacs をアップデートしてみた。

$ cd emacs
$ git checkout -b work
$ ./configure --without-xim
$ make bootstrap
$ sudo make install

--without-xim オプションを付けるのは、ぼくが XIM を使わないから (ぼくは T-Code 使い)。ほとんどの人は、このオプションを付ける必要はない。

Emacs を起動して、バージョン番号を確認: M-x emacs-version

GNU Emacs 23.1.50.1 (i686-pc-linux-gnu, GTK+ Version 2.16.1) of 2009-09-06 on linux-aka

うん。最新の Emacs になった。

あとがき

Emacs は今までずっと CVS で開発が続けられていた。今も CVS を使っていると思うけど、CVS は使い勝手が非常に悪い。とてもレガシーなバージョン管理なので、できればローカルの開発環境では使いたくない。

git は大量のソースコードをいじるのにも、自分パッチを作るのにも適したバージョン管理。Emacs のソース管理に git が使えるやうになった恩恵は大きい。

Ubuntu 8.04 から 9.04 へアップグレード

メイン PC の OS を Ubuntu Linux 8.04 から 9.04 へバージョン・アップした。後々のためにバージョン・アップ方法をメモ。

Ubuntu Linux 9.04 へのバージョン・アップは、Ubuntu Linux 8.10 からしか出来ない。なので、バージョン・アップ作業は 2 ステップになる。

  1. Ubuntu Linux 8.04 から 8.10 へのバージョン・アップ
  2. Ubuntu Linux 8.10 から 9.04 へのバージョン・アップ

Ubuntu Linux 8.10 へのバージョン・アップ

  1. メニューから、「システム > システム管理 > ソフトウェア・ソース」を開く
  2. 「アップデート」タブを開き、「アップグレードリリース」セクションの「新しいディストリビューションリリースの通知」を「通常リリース版でも通知」に変更する
  3. 「ソフトウェア・ソース」を閉じる
  4. メニューから、「システム > システム管理 > アップデート・マネージャ」を開く
  5. 「新しいディストリビューション '8.10' にアップグレードできます」とメッセージが現れるので、「アップグレード」ボタンを押す

作業はこれでおしまい。あとは、ダイアログ・ボックスが現れて勝手にパッケージのダウンロード、インストール、その他諸々をやってくれる。システムのインストール中、設定ファイルを上書き・改変する旨が表示されたりするので、完全に席を離れるわけにいかないのが玉に瑕。

アップグレードは全体で 30 分位いで終わった。何故か「アップグレードに失敗しました」ってメッセージが出たけれど、OS を再起動して「システム > Ubuntu について」でバージョンを確認したら、8.10 になっていた。

Ubuntu Linux 9.04 へのバージョン・アップ

Ubuntu 8.10 へバージョン・アップしたら、もう一度アップグレード作業の 4. と 5. を繰り返す。

アップグレード後、日本語環境用リポジトリーが無効にされているそうなので、有効にし直す。

$ wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add -
$ wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | sudo apt-key add -
$ sudo wget https://www.ubuntulinux.jp/sources.list.d/jaunty.list -O /etc/apt/sources.list.d/ubuntu-ja.list
$ sudo apt-get update 
$ sudo apt-get install ubuntu-desktop-ja

参考サイト

2009-09-04

repo の manifest のドキュメント

repo における manifest ファイルの書き方を調べる方法について (repo が分からない人は Repo って何だろ? をどうぞ)。

一つ目は、このブログの過去記事「clmemo@aka: Repo を使う --- Manifest ファイルの書き方」を参照する。日本語で基本を抑えた解説になっている。ただし、分かる人には冗長。あと、この記事をいちいちウェブ・ブラウザーで開くのも面倒でせう。

二つ目は、過去記事にも書いたけど、repo 内のドキュメントを読む。ドキュメントの Path は以下の通り:

  • .repo/repo/docs/manifest-format.txt

英文なのと、Path を辿らなきゃいけない面倒さがある。

repo help を使う

三つ目の方法が、この記事で伝えたいこと。repo コマンドから manifest のマニュアルを表示させてしまう。

repo で管理しているディレクトリー下に移動して、次のコマンドを打つだけ。

$ repo help manifest

こちらも英語だけど、二番目の方法の説明よりも情報が多い。なによりコマンド一発で読める。オススメ。

repo help manifest が使えない?

きっと、repo を最近全然使っていないんでせう。次のコマンドを実行して、repo を最新にする。

$ cd .repo/repo
$ git pull

Beatles in Mono が予約完売?

2009-09-09 に、Beatles のリマスター版がリリースされるというエントリーを書いた。

ビートルズのステレオ版とモノラル版には、テイクの違いが少しあるとも書いた。ステレオ版ボックスの売れ行きは順調のやうだけど、モノラル版ボックス (初回限定) は更によく売れているらしい。

というのも、昨日、Amazon から入荷遅れのメールが届いたから。

こちらの商品は9月9日発売となっておりますが、メーカーでの生産遅延による入荷の遅れのため、発売日に発送させていただく件数が注文数を下回ったことにより、商品の発送は発売日後になる見込みです。こちらの商品は、現在のところ10月頃を目安として順次入荷される見込みでございます。商品の確保ができ次第発送させていただきますので、発送まで今しばらくお待ちくださいますようお願いいたします。

どうやら、EMI の予想を上回る注文が入っているらしい。

HMV楽天 をチェックしてみたけれど、もう輸入盤は完売だった。

The Beatles In Mono
The Beatles In Mono

余裕をかまして、状況を見てから、なんて思ってるビートルズ・ファンは考えを改める時期かもしれない。10 月のあると言う次期生産に期待して Amazon で「注文可能になったらお知らせメールを受け取る」にチェックを入れておくか、発売日当日に実店舗に入荷するモノラル・ボックスを買いに走るか。はたまた値段の高い国内盤に手を出すか。選択の時は近い。

Google Calendar にスポーツ用カレンダー

Google Calendar がソーシャル・カレンダーの特色を強く打ち出してきた。もともと、Google Calendar は、友達や同僚のカレンダーを共有する機能を持っている。更に、自分が管理するカレンダーを「公開」することで、アンオフィシャルなカレンダーを提供することができた。例えば、日本 Android の会はこの機能を使って、Android の会の関連イベント・カレンダーを提供している。

今回、Google は各種スポーツ競技の専用カレンダーを公式に用意した。対応するスポーツは、以下の通り。

  • 野球 (Baseball)
  • バスケット・ボール (Basketball)
  • アメリカン・フットボール (Football)
  • ホッケー (Hockey)
  • ラグビー (Rugby)
  • サッカー (Soccer)

スポーツには疎いので、一番良く知ってる「野球」を見てみる。野球は次のリーグをサポート。

  • Major League Baseball (MLB)
  • Asian Series (AS)
  • Caribbean World Series (CWS)
  • Chinese Pro Baseball League (CPBL)
  • Dominican Winter League (DL)
  • Mexican Pacific Baseball League (LMP)
  • Minor League Baseball (MINBB)
  • Nippon Professional Baseball (NPB)
  • Venezuelan Winter League (VL)

下から二番目にある「Nippon Professional Baseball」が日本の野球。これをクリックしてみる。すると、各 12 球団のカレンダーとオール・スター (?) のカレンダー一覧が表示される。

Google Calendar - Sports Calendars

試しに「阪神」のカレンダーを登録してみた。Google Calendar に、試合開始時間が表示されるやうになる。いつ試合があるのか一目で分かっていい。野球の試合は大低 2 時間程度と思うのだけど、試合時間は一時間で設定されている。これは手を抜いているのかな?

さて、過去の試合イベントを開いてみると更にビックリ。試合のスコアも分かるやうになっている。スクリーン・ショットは 2009-09-02 の試合記録。ヤクルト・スワローズと試合をして 9-4 で勝ったことが分かった。

Google Calendar - 阪神戦 2009-09-02

Google によると、試合経過はゲームの進行に合わせてリアル・タイムにアップデートされるらしい。これはすごい。

設定

設定は、まず Google Calendar の言語を「英語」にして、「Settings > Calendar」から。「Other Calendars」セクションの右端に「Browse interesting calendars」リンクがあるのでクリック。そこから「Sports」タブを選ぶ。

目当てのカレンダーを見つけたら、「Subscribe」をクリック。

ref

2009-09-03

ネット上の自分をカラフルに表現する Personas

lifehacker で面白さうなサービスを紹介していた。Personas と呼ばれるサービス。

サイトにアクセスすると入力ボックスが一つだけある。ここに名前 (アルファベット限定、漢字は NG) を入力して RET。

するとネット上から、名前を検索しまくって「あなたはこんな人間ですよ」と絵にしてくれる。

ぼくの結果は次の通り。

Personas

左から見ていくと、「online」が大部分を占めている。次に「book」と「fame」。フムフム、本は好きだね。「military」ってどういう事かしらん? スポーツは... こんな風に「Masayuki Ataka (まず間違いなく同姓同名含む)」がどんな人間かが絵化される。個人的には「illegal」の幅が広いのが気になるんだけど...

それはともかく、lifehacker も書いてあるやうに

時間があれば、是非、お試しを。

Covia から Android 端末 SmartQ5 リリース

国内の Android 端末第二弾として、Covia Networks から SmartQ5 が出る。第一弾は、おなじみ DoCoMo の HT-03A (携帯電話) だったけど、SmartQ5 は MID。いわゆる PDA の少し大きい版。もはや携帯電話じゃない。もともと携帯電話用の OS として開発された Android だったけど、携帯電話以外の端末でも使われるのでは? という噂はあった。けれど、まさか国内第二弾でいきなり登場するとは思ってもみなかった。

Covia SmartQ5 (Android 日本語版)

SmartQ5

SmartQ5 の仕様は、上記 covia のウェブ・ページに詳しい。簡単な紹介だけ書いておく。

SmartQ5 は、もともと中国が開発している端末。OS には Ubuntu Linux を採用し、日本円にすると約 1 万 2 千円位い (輸入すると、もう少し高いか?) で発売している。これを Covia Networks 社が国内輸入し、電波法関係の申請を通して、OS を Android に入れ替えた。価格は 19,800 円。

スペックを見て気になるのは、ボタンに Android では必須なはずの「メニュー」「ホーム」「バック」がないこと。これで、どうやって操作するのか? そして、電話がないこと。電話機でないから当たり前だけど、これだと常時接続できない (WiFi が付いてるので、無線 LAN は可能)。最後にカメラがないこと。

良いなと思うのは、ディスプレーが大きいこと。4.3 インチのタッチ・パネルで、解像度は WVGA (800x480)。DoCoMo と比べて二回りは大きそう (3.2 インチ、HVGA 320x480)。内臓メモリーが 1 GB なこと。

そうそう、もう一つ。SmartQ5 のスクリーン・ショットを見ると、「Gmail」や「YouTube」といったアプリが見当たらない。これらの Google アプリは、入っていないんじゃないか? もしそうなら、Office の入ってない Windows マシンを買うやうで、少し心もとない。

あとがき

不安要素を色々挙げたけれど、それでも既に初回ロットは即日完売。現在、第 2 ロットの受付中。いじり倒せる Android 端末という位置付けが、人気の秘密でせう。

ぼくとしては、携帯電話として iPhone を持っているので、Android 端末は携帯電話じゃないもので手に入れたい。正に SmartQ5 はツボ。なのだけど、カメラなさそうとか、YouTube アプリ入ってなさそうって、ねぇ? 買ったら負けかな? と思ってる。サイフの中身が厳しいからじゃ、ないんだからね。

AMN が Android 携帯 DoCoMo HT-03A モニター・キャンペーン受付中

iPhone の対抗馬として注目を集める Google Phone というか Android Phone、DoCoMo の HT-03A。こちらのモニター・キャンペーンを AMN が実施する。

概要は以下の通り。

  • 期間: 9 月中旬から約 1 か月
  • 募集: 20 人
  • 条件: ブロガーであること。そして、3 本以上の記事を書くこと。最後に借用書をちゃんと書くこと。

モニター機は、パケット定額プラン契約済。ネットに繋がっていないスマート・フォンなど、ただの箱も同然。なので、この対応はとてもありがたい。

今回は、HT-03A実機をパケット定額プラン契約済みの電話回線とともにお使いいただけます。パケット定額プランの範囲内で、ネットやメール、アプリなどを存分にお楽しみいただけます。また、音声通話についても一定の範囲内でご利用いただけます。 ※パケット定額プランの対象は端末の通信のみです。PC経由での接続などはご遠慮ください。 ※音声通話は一定料金までご利用いただけます。国際電話などはご利用いただけません。 ※条件を逸脱した利用に関する通信料金は実費請求させていただく場合があります。

「ケータイするGoogle」 docomo PROシリーズ HT-03A モニターキャンペーンのお知らせ|AMN関連イベント情報|ブログ|Agile Media Network より引用

この手のブロガー・イベントとしては、発売前夜祭的に HT-03A を触る機会があった。

ぼくは運良くこのイベントに参加できたのだけど、ほんの 2 時間では表面しか見ることが出来ず、不満の残るものだった。1 か月のモニター期間があれば、あれやこれやといじり倒すことができる。まあ、具体的には Google Latitude だったり、Simeji だったり、Twitter だったりするわけだけど...

そんなわけで、このモニター・キャンペーン。ぼくは申し込んでみた。ブログをやっている方で、Android に興味がある人も、応募してみてはいかが。