雑感2015.11.3

2015年11月3日

母方の祖父は暖かい手の持ち主だった。
農業を営んでいた祖父は、大地を耕す中で太陽の恵みをその手に刻んできたのだと思った。

祖父が亡くなる1か月前に会いに行った時、手はもう暖かくなかった。
亡くなった後、俺は勝手に、その太陽の恵みは自分の手に受け継いだのだと思った。

でもそれって、俺の手柄でも何でもない。
社会的関係のシーケンスの果てに、たまたま分不相応にもいただいてしまった。
そのまま古井戸の底にロウソクを下ろしたみたいに、ひっそり闇へと消えてしまうものだ。
今じっと手を見て、自分の欠格の度合いに、途方にくれるばかりだ。


社会に出たら、歯車になりたかった。
なりたくない、という人の方が一般的なようだけど、
俺はそれからすると真反対の志向だ。

桁外れの落第生だった俺でも、今まがりなりにも頭脳労働で生計を立てているわけだけど
この頭脳労働というものは農業のような実体が無く、
取り組むテーマによっては、自分が歯車になっている感覚をどうにも得難い。

だから、頭脳労働によって社会的インフラに携わることで、
社会の歯車の一部たる自分を実現したかった、というのが、
かれこれ7年ほど前の俺の、生きるための言い訳だったように記憶している。


過去からタイムマシンで2015年に来てしまったら、
「なりたかった自分」というやつがほとんど実現できていて、驚くんだろう。

いま住んでいる国の社会的インフラが大きく変貌するであろう歴史的瞬間を
4年前に手がけた仕事がきっかけで、特等席で目の当たりにすることを許されて1年が過ぎようとしている。
今は欠けている歯車に、これからなることを要求されているという実感が非常に強い。

でもそれって、俺の手柄でも何でもない。
社会的関係のシーケンスの果てに、たまたま分不相応にもいただいてしまった。

俺に、今まで会えなかったレイヤーの人々が、真剣に仕事の話をしてくれたり、
俺が、今まで隷属していたかもしれないレイヤーの人々を、真剣な仕事でないと叱り飛ばしたりしていると、
ふと自分が偉くなったような勘違いをしてしまっている瞬間があってぞっとする。
分不相応なことは何も変わっていなくて、自分を不断の努力により大きく変えていかなければならなくて、
ともすれば自分を糊塗したくなる。


それでいて人生は、やはり飽き飽きして虚ろなままだ。

社会的役割としては、向こう15年はタスクが無くなりそうにない気がしていて
やるべきことに溢れているし、それは社会的意義だって高い。

でも、それらの実に興味深いことをこなすだけでは
もう俺の精神世界は拡がり得ないのだ。
すべてがお釈迦様の掌の中に収まってしまった感じがずっとあって、
人生の残り時間をそこに投じることに対して
途方もない無駄遣いをしてしまっているのではないか、という背徳感すらある。

だからか、最近はどうやら自分の指針を失ってしまっていて、確実に自棄だ。
なりたかったものになってしまった後は、どうしたらいいんだろうね?


もう宇宙に行くしかないかもね!

錦糸町駅から歩いていけるところにできた、
現代美術を紹介する企画ギャラリー「Arai Associates」のWebサイトの写真を撮影しました。
http://www.araiassociates.com/
サイト全体で使われているほか、「gallery」ページにも掲載されています。
直近の展示では週末のみ開いているので、足を運ばれる方は事前にスケジュールをご確認ください。

ギャラリーというとだいたい
白無地の壁で単純な構造をしているところ、
みたいなイメージがあるかもしれませんが、
ここはビルの内装を取っ払った、非常に無骨でカッコイイ場所です。
ユニークで一見の価値ありですよ!

犬を飼い始めた。

2015年2月21日

7年ほど住んだアパートを出て、隣町に引っ越した。
妻が犬を飼いたがったので、ペット可の物件に引っ越す必要があったからだ。
家賃が1万円上がったけど、それくらいなら、まあしょうがないか。

引っ越して3か月ほど経ち、そろそろお迎えしても良いくらいに落ち着いてきた。
飼う犬は、ランコントレ・ミグノンという動物保護団体から引き取ることに決めていた。
この団体は、放っておけば殺処分になってしまう動物を引き取り、飼ってくれる人が現れるまで保護している。
多少いやみな言い方をすれば、ここにいる子はみんなそれぞれに訳あり。
でも、月2回の譲渡会に出向けばわかるけど、みんなとても良い子ばかりだ。

みんな良い子だから、誰を引き取ろうかとても悩ましかった。
変な眉毛のある子にした。

ほんとうにちゃんと引き取れるのか、ということもあるので、2週間トライアルで引き取ってから正式譲渡という流れになっている。
まだようやく1週間経ったところだけど、もう1か月くらい経ったような気持ちになる。
ちゃんと引き取れるのか自分たち自身がいちばん不安だったのだけど、すごく良い子だったことに助けられて、今のところ何の問題も無い。
逆に、この子は実は嫌がっているのをがまんしているだけなんじゃないか、って心配になるくらいだ。

名前は「芙由子(ふゆこ)」にした。
いつもは、ふうちゃん、と呼んでいる。
毎日毎日、とてもかわいい。
でも残念ながら、僕にはまだなかなかなついていない。すごく怖がられている。
時間が必要なのだろう。

ふうちゃんは、たぶん以前おばあちゃんに飼われていたんじゃないかって思う。
お茶のにおいを妙に好いて、飲みたがる。そんな犬、聞いたこと無い。
タンニンがあまり体に良くないらしいのであげられないけど、昔は飲んでたんじゃないかな。
3歳くらいだろうと推定されているふうちゃんに、これまでどういう生涯があって、どういうときにお茶のにおいに良い思い出ができたんだろうな、ってことを考え出すと、なんだか泣けてきてしまう。

わからないことはお互いにまだまだ多いけど、これから長く、同じ家族で暮らしていくのだ。

Processingベースで作って使っているVJソフト、PDEでがんばって作ってたけどそろそろファイルが増えすぎて普通のIDE上で作り直したいな、と思っていて
こういう場合はPDEにバンドルされているcore.jarを抽出して扱うのが普通らしいんだけど、いまいちスマートなやり方じゃない。Mavenとかがつかえるならそっちの方が良いよね、というのはみんな考える。
ただ、残念ながらProcessing公式のMavenリポジトリーは無いので、いかに自前のリポジトリーを作るか、というところに主眼が置かれる。

Mavenリポジトリーはjarファイルとpomとチェックサムさえ静的に置ければどんなWebサーバーでも作れるので、最近はGitHubのリポジトリーで私的なリポジトリーを作っちゃう手法が普及してきている。
Processingの開発もGitHubに移行しているので、GitHubを中心にして一通り作ってみた。

1. Processing公式リポジトリーをforkする。

公式リポジトリーは次のURL。
https://github.com/processing/processing

2. ターゲットとするバージョンのタグでチェックアウトする。

2015年2月2日現在では、最新の安定バージョンは2.2.1
3.0a5もあるけど、過去の経緯からするとだいたいaとかbとかつくバージョンは常用するには問題が多い。

3. ブランチ「gh-pages」を作る。

GitHub Pagesが有効になる。
これで、core.jarを静的に配信する基盤ができる。

4. リポジトリーの build/build.xml にMavenリポジトリー用のファイルを書き出す設定を加える。

例えば、こんな感じで<target>要素を追加すると、buildタスクの延長でMavenリポジトリー構造が作れて楽。
ant runで生成されたcore.jarをMavenの公開領域にコピーして、pomとチェックサムも生成している。
https://github.com/hiroshitoda/processing/blob/gh-pages/build/build.xml

<target name="mvn-repo" description="Perform maven repository structure.">  
  <property name="processing.version" value="2.2.1" />  
  <delete dir="../maven" />  
  <mkdir dir="../maven" />  
  <mkdir dir="../maven/processing" />  
  <mkdir dir="../maven/processing/core" />  
  <mkdir dir="../maven/processing/core/${processing.version}" />  
  <copy file="../core/library/core.jar" tofile="../maven/processing/core/${processing.version}/core-${processing.version}.jar"/>  
  <checksum file="../maven/processing/core/${processing.version}/core-${processing.version}.jar" todir="../maven/processing/core/${processing.version}" algorithm="MD5" fileext=".md5"/>  
  <checksum file="../maven/processing/core/${processing.version}/core-${processing.version}.jar" todir="../maven/processing/core/${processing.version}" algorithm="SHA-1" fileext=".sha1"/>  
  <echo file="../maven/processing/core/${processing.version}/core-${processing.version}.pom" encoding="UTF-8">&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"&gt;  
  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;  
  &lt;groupId&gt;processing&lt;/groupId&gt;  
  &lt;artifactId&gt;core&lt;/artifactId&gt;  
  &lt;version&gt;${processing.version}&lt;/version&gt;  
  &lt;packaging&gt;jar&lt;/packaging&gt;  
  &lt;name&gt;core&lt;/name&gt;  
  &lt;url&gt;https://github.com/processing/processing&lt;/url&gt;  
  &lt;properties&gt;  
  &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;  
  &lt;/properties&gt;  
  &lt;/project&gt;</echo>  
  <checksum file="../maven/processing/core/${processing.version}/core-${processing.version}.pom" todir="../maven/processing/core/${processing.version}" algorithm="MD5" fileext=".md5"/>  
  <checksum file="../maven/processing/core/${processing.version}/core-${processing.version}.pom" todir="../maven/processing/core/${processing.version}" algorithm="SHA-1" fileext=".sha1"/>  
</target>

5. 書き出したファイルをGitHubにpushする。

6. Mavenプロジェクトのpom.xmlにリポジトリー設定を追加して依存性解決できればOK。

GitHub PagesのリポジトリーURLは、Mavenリポジトリーのルートパスを設定すれば良い。たとえば、次のような感じ。

<repositories>
  <repository>
    <id>GitHub processing (hiroshitoda)</id>
    <url>http://hiroshitoda.github.io/processing/maven/</url>
  </repository>
</repositories>

宣伝


保護犬ふうちゃんとわたしたち
嫁が2016年からESSEonlineで連載しているマンガが電子書籍として販売されています。


MagicPod
ディープラーニングによる画面UI解析とAppiumを組み合わせた自動テストSaaSです。2016年頃からサービス運営・開発に関わっています。


エキスパートが教えるSelenium最前線
共著です。応用編です。


Selenium実践入門―自動化による継続的なブラウザテスト
共著です。第3刷が出ました。