ImageMagick で異なるテキストを埋め込んだテスト用画像を作る

テスト用に、同じ画像に異なるテキストを埋め込んだ画像を大量に作りました。

#!/bin/sh

for character in {1..6} do for pose in {1..3} do for color in {1..5} do convert -font /usr/share/fonts/dejavu/DejaVuSans.ttf -fill blue -pointsize 16 -draw “text 10,20 "character_${character}${pose}${color}.png"” character.png character_${character}${pose}${color}.png done done done </code>

ペーパードライバー教習

最近、教習所に通っています。20年近くペーパードライバーでした。久々に運転してみると、結構身体が覚えていました。意外です。数時間でだいぶ慣れました。もうちょっと教習で乗りたい。でも混んでいて予約がとりづらい。

そこで、並行して2つめの教習所に通うことにしました。こちらの路上教習は、池袋の繁華街から始まります。歩行者がめっちゃ歩いています。交差点も種類が豊富。アクセルとブレーキを交互に踏みながら鋭角に右折してすぐ抜けないと立ち往生しやすい、巨大な五さ路とか、2つの交差点が隣接、合体して、進路が謎な場所とか。住民しか入らなさそうな、細く入り組んだ、坂道の住宅街も通りました。

1つめの教習所とは路上の難易度が段違いです。昔、免許をとったときも、こんな路上教習はやっていませんでした。普通の教習所は、走りやすいところを走っているのですね。こんなサバイバル教習を何十年も続けながら事故を起こさない教官って、職人芸だと思います。胃をやられて、やめていく方が多いとか。。。わかります。その気持ち。

トーハン 桶川SCMセンター

書籍流通の一大拠点、トーハンの桶川SCMセンターに行ってきました。大人の社会科見学です。ビルは5階建てでも、高さは普通のマンションの10階分。1800万冊の本が詰まった建物です。残念ながら写真撮影は禁止なので、見た目についてはこちらをご参照ください。 http://www.tohan.jp/works/ssystem_01.html

3F 桶川MD部(在庫商品管理) 見学は3Fから開始。トーハンで在庫している本(売れ行きのいい本は書店注文にすぐ応えられるように在庫している)のフロアです。入り口の目の前にコンピュータ書系の出版社が固まっていました。技術評論社の棚、ピアソンの棚、翔泳社の棚など。オライリー本は、やはりオーム社の棚に置かれていました。ちなみに弊社の本はこのフロアには無いでしょう。。。

意外だったのは、人を大事にしている雰囲気が感じられたこと。棚ごと(=出版社ごと)に担当者が決められているのです。アスキーの本は○○さんが入庫、出庫する、というように。スタッフの笑顔も度々見られて、精神的にしんどい作業ではなさそうです。みなさん挨拶も爽やか。おそらくこのフロアの仕事が、一番人間的と思われます。

2F 整品部(書籍返品業務) 2Fは返品のフロア。書店から返品された本を、ブックソーターという特殊なベルトコンベアーで自動仕分けします。長大なコンベアの下に、おそらく1000個以上の箱が置かれています。出版社ごとに仕分ける場合、箱の一つひとつが出版社に割り当てられ、ブックソーター上を流れる本が該当する箱の上に来るとストンと落ちる仕組みになっています。

仕分けられた返品は、立体自動倉庫に格納されます。返品を出版社に返送する曜日が決まっているので、それまでここに溜めておきます。正確な大きさはメモし忘れましたが、46m x 20m x 高さ 10m超くらいの空間にぎっちりと棚が詰まっていて、機械がその棚に自動で出し入れを続けています。これが故障すると返品処理全体が止まるので、メーカーの技術者が365日24時間常駐しています。

桶川DC部(書籍注文品業務) 1Fは注文品のフロア。書店から注文された本のうち、3Fに在庫していない本は出版社から納品されます。その納品物を書店ごとにブックソーターで仕分けて、梱包、配送します。

なお、このセンターは注文品と返品を扱う物流拠点です。書籍を新しく出したときは新刊委託しますが、新刊委託は飯田橋駅近くのトーハン本社へ納品します。右から左へ流れるものなので在庫スペースが不要ということと、書店も出版社も印刷所も都心に集中しているため、配送コストが低く済むという事情があるものと思われます。

ブックライナー / EC事業 最後は4F。ブックライナーという、ある種ネット書店のような事業です。書店に対してきめ細かく速い納品をするための、書店のためのネット書店ですが、個人でも利用できるし、セブンネットの実務もここが捌いています。このフロアは、センター内で最も書店っぽい見栄えです。書棚がえんえんと続いていて、その棚には、1点あたり1-2冊ずつ、本が刺さっています。大きな大きな本屋だと思えばいいでしょう。

本の並べ方は適当です。入荷した本は、空いている棚に刺していきます。棚にはバーコードが付いていて、棚に入れるときに本と棚をスキャンするので、並び順がバラバラでも全在庫の位置がリアルタイムにわかります。出庫するときは、コンピュータの指示で人が棚から抜いて行きます。実はこれ、アマゾンの物流センターと全く同じ仕組みです。ただし、働いている人を見ていると、アマゾンほどノルマが厳しいようには感じられませんでした。アマゾンのセンターを見たことはないけれど。

棚からピッキングした本は、書店や購入者ごとに検品、自動梱包されます。アマゾンで複数冊買うと、段ボール一枚の上に本が載せられ、その段ボール毎ビニールでコーティングして動かないように固定されていますが、その処理と段ボール詰めが全自動になっています。

重量検品 ちなみに、このセンター全体で、出荷時の検品は総重量で判断します。書籍一点ごとのグラム数が登録されていて、あるべき重量と実際の重量の差異が80グラムを超えるとはじかれて、人間による目視検品になります。書店向けに注文品を数十冊発送するときの80グラムというのはシビアで、結構な割合の箱がはじかれていました。湿度でも変わるし、返品をきれいにして再出荷する(改装という)ときにも書籍を少しだけ削るので重量が変わります。誤差の範囲を超えて重量が違う場合は、書籍の重量を再登録します。更新していかないと、エラーが出続けるので。

消火設備 見学中に気になったことがありました。このセンターには消火設備がないように見えるのです。商品の性質上スプリンクラーは使いたくないし、広大な空間なので不活性ガス消火も難しそうです。担当者さんによると、このセンターには火の気を一切置いていないそうです。喫煙所にもそのあたりの配慮があるようなことをおっしゃっていました。といっても、電気系統からの出火などの可能性がゼロではないから、消火手段は用意しているはずです。できれば使いたくない、というだけで。

救急車を呼ぶ

日曜深夜のドワンゴ本社前。メガネをかけた30前後の男が倒れていました。スマホを持っているからホームレスではなさそう。声をかけても、足を揺らしても反応なし。その足も、なんだか冷たい。

寝ているのかどうかわからないまま、生まれて初めて119番。6分で到着。消防車が先に、そのあとすぐに救急車。なぜ消防車?と思いましたが、そのとき一番速く現場に到着できるのが消防車だったそうで。合わせて総勢7-8名が到着。この時間は人通りも少なく、他に囲む人は通りがかりのおじさん一人だけ。

「おにーさん!わかる?」と救急隊員が大声で呼んでも、揺さぶっても全く反応なし。ああ、これは意識レベルを確認しているのだな。「手がつめたい」という会話も聞こえてくる。もしかして、あれだったら、今夜いい夢見れないな。

救急隊員が2人がかりで、頭の方と足の方を抱えて担架に乗せかけたそのとき、男はようやく目を覚ましました。おおお、生きてた。そこまでしないと起きないって、どんだけ飲んでたの。隊員が意識確認用の質問をいくつかする中、「早く帰してよ」と振り切り、彼はふらふらと帰っていきました。なんだ元気じゃん。

でも今晩は冷えるし、あそこに放っておいたら朝には遺体になってたかもしれないから、呼んでよかったのかな。

Xserver で git を使う

(2015/12/04 更新)

まず、GNU gettextが必要なのでインストールする。場所はホームディレクトリの opt 以下ということにする。

[Xserverで作業]
$ wget http://ftp.gnu.org/pub/gnu/gettext/gettext-0.19.6.tar.gz
$ tar zxvf gettext-0.19.6.tar.gz
$ cd gettext-0.19.6
$ ./configure --prefix=/home/[ユーザ名]/opt
$ make install

インストールした gettext のコマンドラインツールを使えるようにするため、PATH に ~/opt/bin を追加する。

次に、https:// のリポジトリを clone できるようにするため、curl をインストールする。これをやらないと、以下のエラーに遭遇する。

$ git clone https://github.com/xxxxx/xxxxxxxx.git
Cloning into 'xxxxxxxx'...
fatal: Unable to find remote helper for 'https'

もともと Xserver に curl はインストールされているものの、curl-devel パッケージが存在しないため、curl をリンクできない。なので、ソースから ~/opt にインストールする。

[Xserverで作業]
$ wget http://curl.haxx.se/download/curl-7.46.0.tar.gz
$ tar zxvf curl-7.46.0.tar.gz
$ cd curl-7.46.0
$ ./configure --prefix=/home/[ユーザ名]/opt
$ make
$ make install

最後に Git をインストールする。

[Xserverで作業]
$ wget https://github.com/git/git/archive/master.zip
$ unzip master
$ cd git-master
$ make configure
$ ./configure --prefix=/home/[ユーザ名]/opt --with-curl=/home/[ユーザ名]/opt
$ make all
$ make install

これで git コマンドが使えるようになります。