マンガの最終回みたいにきれいに方がついて終わり、なんて死は存在しない。
死は、人を誰しも待ち受ける終点ではない。
背後から忍び寄り、あらゆる思考の途中で追いつかれてしまうのだ。

そういうことを2019年の暮れ頃からなんとなく考えていた。
死は平等ではないし、死んですべてから解放されることもない。
臨終の瞬間にうっかり浮かんでしまった未練が、自身の脳神経に焼きついてとどまったまま暗闇に落ち込んでいくのだ、と細かに想像して、あああやっぱり進んで死ぬもんじゃねえよなとすっかり縮み上がってしまった。

それから数か月経って、死に至る(かもしれない)感染症が自分たちに追いついてこようとしていて、なんであんなこと考えたんだろうって思っている。

COVID-19と名付けられた感染症について国の施政者は中途半端にぶん投げてしまったので、なんとなく自律や良識というよりは自己欺瞞みたいなものが街並みにあふれてしまった。
自分の店は不要不急ではなくて必要だから開けていてもOK、来る人の体温をチェックして消毒もしてるからOK、不要不急だから営業時間を短縮したのでOK、不要不急でも閉めていたら干上がっちまうから開けていてもOK、不要不急だから店を閉めているうちに廃業しちゃったのでOK。表向きはOKだけど実は闇営業をしているよ。エトセトラ。
実に奇妙なのはこれが個人の判断に委ねられているところだ。俺たちはこれで良いのだOKOKという個々の主張が外を歩くだけで平時よりもへばりついてくるようでたいへんに息苦しい。そしてこれは俺自身も例外ではないから市井では一種の共犯関係が新しく構築されているとも言えそうだ。
(なお異なる主張によるいさかいは当然ありえるが、俺たちは理性でそれを避けるべきだ)

中国・欧米で感染が爆発的に拡がり、それによる死者数も世界的にはずいぶん多くなったが、幸いにして俺が住む日本では今のところ感染による死者数は少ない。
年間の自殺者数の方が多い。2011年の東日本大震災のときもそうだった。俺はそのとき、命は不平等が過ぎてつまらないものだと思った。
いずれの死からもなるべく追いつかれないようにしたい、それは自分だけでなくて身近と感じる人々に対してもそうだ。
諸々の先行きが明瞭になるまでにこれからあと2年はかかるのだろうと思っている(季節性の要因もあるのではないかと疑義が生じた後、検証ができるのは早くて次の年、という観点から)。
それまでは不確かな道を、俺は今はこれで良いのだ、お前は今はこれで良いのだと言い聞かせ合い、しかしどこが欺瞞であるかも毎度考えながら歩いていくしかない。

sjue というバンドの新しいアーティスト写真を撮影しました。

sjue アーティスト写真

sjueは11月3日(日)の昼に 下北沢 風知空知 でワンマンライブをやるんですが、それに向けて新しく製作したアーティスト写真です。
ご興味とお時間ございましたら、ぜひライブにもいらしてください!


コンセプト

頼まれたときに伝えられたコンセプトが「宇宙に行きたい、重力が邪魔!」という感じでした。だから戸田としても、とにかく重力にとらわれてはいけない、という思いが製作中ずっとありました。

しかしそうなると発想ってけっこう制限されるもので、とりあえずブルーバックなりグリーンバックなりで撮影して宇宙っぽいものと合成することは早々に決めたものの、そこから具体的にどういう構図に持っていくのかがおぼろげなまま決め切れずに悩みました。
結局 構図は最初から決めずに、メンバーにニュアンスだけ伝えて好きに動き回ってもらったところを撮り続けて、いちばん良いと思えたカットから逆に構図を作ることにしました。

構図はそんな感じですが、事前に具体的な方針を決めることができたことがふたつだけありました。
ひとつは、色合い。もうひとつは、柔らかい布です。


色合い

ここ1年くらいの写真についての戸田のテーマで「白黒写真はもっと豊かな色合いを持てないのか?」というのがあって、今回のアーティスト写真はいくつかの写真で試みてきていることの成果のひとつとなります。
戸田は14年くらい前から白黒写真を青色ベースでカラー露光したりしてるんですが、その動機はデジタル画像を強く意識しているもので、白黒写真を単にグレースケール8bitにすると階調情報(特に中間調)が失われて惜しいから何らか色チャンネルの情報を有効活用したい、という感じのところにあります。ただ、これだけだと最近の戸田にとっては得られる画の抽象度がやや高すぎるし、それは見る人にとっても同様でひどい場合は具体性の低さから「死」を想起しやすくなってしまう、というのが課題でした。

最近考えていたのはこのあたりの延長にあるもので、じゃああからさまに「生きている」白黒写真ってどんなんなの、色チャンネルにあるはずの情報がもっとあればいいのか、と考えた末に、昔からある白黒写真の製作技術をヒントにひとつの実例としてやってみました。端的に言うと、ゾーンシステムのような考え方を、露出の軸ではなく温黒調-冷黒調の軸に適用する、ということです。旧来、フィルムに撮った写真を印画紙に焼き付けるという製作スタイルの中では、印画紙のベースとなる白色が純白なのかクリーム色なのかという選択肢がありました。クリーム色に倒れたものを温黒調、純白や青白さに倒れたものを冷黒調と称して、受ける印象もだいたい字面の通りとなるわけですが、現代のデジタル写真の製作スタイルにおいてはそれらを複雑に混じり合わせて、より適切な調子を作れるはずなんです。

と思って、今回のアーティスト写真においては、ざっくり言うと暗いところを青色に倒し、明るいところをクリーム色に倒す、という一次関数的な画像加工を施して、1枚の写真の中に複数の調子を持つようにしました。中間調に微妙なニュアンスがこもって、一見冷たい色がベースの写真の中に独特の温もりが生じたのではないでしょうか。


柔らかい布

グリーンバックと色がぶつからないような、赤色 または青色の布をたなびかせて、浮遊感を表現させるのと同時に、グリーンバックとレイヤーの違うもう1段の合成ポイントとして役立てることにしました。この合成ポイントに何を足したかったかというと、もう1つの宇宙です。つまり、背景に大きいひとつの外宇宙を持ちつつ、自分の中に豊かな内宇宙を持つ、というのを感じさせたかったというわけですね。(それは音楽などの芸術の暗喩になるのかもしれません)
こういうことはメンバーに細かく言うとかえって自由な動きを阻害する、つまり「重力にとらわれてしまう、宇宙に行けない」と思って、撮影の時は布を好きに振り回してもらいました。

赤色の布 元カット


撮影・カット選び

さて、構図は後で決めることにしたため、撮影はちょっと工夫しなければなりません。カメラは2台用意して、全身が写る構図で固定したカメラを4秒間隔くらいのインターバル撮影で回し続けたものと、手持ち・望遠で顔の表情にクローズアップしたものとで構成しました。
そういう撮り方をしているとメンバー3人の撮影とはいえ合計で715枚とけっこうな枚数になりました。(あまり数を撮らない戸田としては後で選ぶのがけっこう大変になってしまいました…)
その中から、ぱっと見たときに引きつけられる表情かどうか、という直感優先で70枚を選び、仕上がりのイメージをつけやすくするために粗く編集しただけのコンタクトシートに落とし込んでから、どのカットを採用してどういう構図にするかの組み合わせをひたすら考えました。これがとにかくたいへんだった! コンタクトシートに地道に○×を書きこんで、でも1回じゃ決めきれなくて書き直して、を繰り返しました。

コンタクトシート


縦横比

カットを選んでいく中で、そういえばアーティスト写真全体の縦横比はどうしたらいいんだっけ、という疑問も生まれました。
単に35mmフィルム相当の写真であれば、縦横比は決まりきっていて3:2です。でも今回はカメラで1枚撮って終わりというようなアーティスト写真ではありません。またそもそも今日日アーティスト写真が載る媒体というのはインターネット上のメディア 特にSNSが中心であって、そこで扱われやすい画像のサイズ・縦横比は従前の印刷媒体などとは異なる独特のものとなっています。
このあたり、自由な発想で最適な縦横比を選んでいかないとやはり「重力にとらわれてしまう、宇宙に行けない」と思って、最終的にTwitterやFacebookなどのリンク先プレビューによく使われているOGP(Open Graph Protocol)に沿った画像の縦横比 約1.9:1 を選びました。また、OGPの画像は必ずしもすべての部分が表示されるとは限らず真ん中部分だけ切り取られたりもしますので、切り取られたときに写らないメンバーが出てきたりしないように 約1.9:1 の全体構図の中心に 1:1 のサブ構図を作り、そこにもメンバー3人全員が写っている、という二重構造を作ることにしました。この二重構造は、先に決めた外宇宙と内宇宙の対比、という方針とも合致していました。


星空

ここまで来て、宇宙を表現するための素材である「星空」が揃っていませんでした。
星空っぽい画像をPhotoshopでゼロからそれらしくでっちあげること自体はそんなに難しいことではないんですが、イメージの中核はやはり人が安易に模倣できない「本物」であってほしいと思いました。
最終的に、背景部分の「外宇宙」については、戸田が新木場の夢の島公園に行って撮ってきた星空と、足りない分にPhotoshop上のホワイトノイズを合成したものとしました。
そして中核となる、布に投影された部分の「内宇宙」については、戸田が自分で撮影する時間が足りなかったので、パブリックドメインになっている天体写真のうち 天の河を写したもの を使いました。


最初から具体的なイメージがしっかりあったわけでなく、作りながらロジックでイメージを地道に組み立てるという感じだったので、先が見えなくてけっこうしんどかったのですが、最終的に得られたイメージはすごくすてきなものになったと思います。ぜひいろいろなメディアでsjueを見て行ってください。

エラー

2019年10月22日

俺の記憶は幼少から今まで色あせずにずっと連続していると思っていたのだが、ずいぶん虫食い穴ができているとふと気がついた。

記憶力の低下というのは、老化のひとつとしてありふれていてわかりきったことのようだった。
ただ、これはいろいろある脳神経の衰えの中で表に現れていることのひとつに過ぎないよね、というのが、なぜか最近実感としてわかってしまった。
理性とか冷静さとか、俺の中で鮮明だったはずの人間としての良識の解像度も、記憶の確からしさとともに少しずつ下がってぼやけ始めている。
下手の水彩画がにじみくすんでいくみたいな自分にはっきりと気付いてしまった。
俺は老いの本質をわかっていなかった。俺たちの体は死に向けて少しずつ間違っていく、それは体の写像たる魂も追って訂正のきかないエラーにまみれ濁っていくということなのだ。

まいったな、自分は連続していないんだな。
それどころか人の形を保っていないエラーに徐々に置き換わっているというイメージは、これまで考えたこともなくて衝撃的だった。

老いていくことで人の心にある鮮やかな奇跡というべきものがやがて人の形を保てなくなるなら、人と人の愛って何なんだろう。
かつて人の形をしていた残像に抱く、郷愁に似た本質に収束していってしまうんだろうか。

10年くらい前まで活動していた「ワイルドマイルド」というバンドが、2019年11月3日に一夜だけの再会ライブを 千葉のLOOKというライブハウス の30周年記念イベントでやってくれることになりました。うれしい!
それに合わせて久しぶりにアーティスト写真を撮りました。2002年の12月にやった最初のワンマンライブの告知用写真とまったく同じ構図です!

ワイルドマイルド 2019年アーティスト写真

2002年の撮影地は出身大学のバンドサークルが集まっている部室棟で、当時よく撮られていた別の方による写真です。
寸分違わず2019年版の写真を撮ったら絶対おもしろい! というバンド側の遊び心で、めちゃくちゃ再現度の高い写真ができておもしろいことになりました。

撮影日はスタジオでの演奏も聴いたんですが、もうすべての曲が懐かしい、めちゃくちゃ良い曲ばかりだとあらためて実感しました。
11月のライブが楽しみです。当時よくライブに来ていた方々にはぜひみんな来てほしい!
当時のWebサイトにあったみたいなBBSもあらためて作られたりしています。記念カキコよろしくお願いします。

それにしても、17年経ちました。
今回のイベントに合わせて昔の写真や映像も引っ張り出したんですが、いちいち10年以上前になるのでその度に驚いています。
昔の曲を聴いていると、これは明らかに自分の青春だったのだと感じずにいられません。

https://potatotips.connpass.com/event/123002/

開発・運営に関わっている 自動テストSaaS「Magic Pod」 が、 最近Bitriseのビルドワークフローの中から直接利用しやすいように改良されました。 ただ、自分はアプリ自体の開発を現状ガチガチにやっているわけでもないので、Bitriseがどういう風にアプリ開発者に受け入れられているのかなとかの空気感をあらためて知りたかったのと、Bitriseのメンバーがとてもフレンドリーな感じで一度会ってみたかったのとで、たまたまメンバーが来日中のところのちょうど良い感じのイベントに参加してみることにしてみました。純粋な聴講者枠は既に埋まっていて、ブログ書く人用枠で参加したので、気になったポイントを中心に記事を書いてみます。なお、当日のTwitter上の様子が Togetterでもまとめられています。

「意外に面倒じゃなかったXcode Template」 by ZOZOテクノロジーズ 坂倉勉

※当日資料は未公開です。

iOS側の発表です。
Xcodeを利用した開発で、新規作成時に選べるテンプレートにカスタムテンプレートを追加できることを最近になって知ったとのこと。
Xibはもちろん、Storyboardのテンプレートも作れる。
作ったテンプレートファイルは ~/Library/Developer/Xcode/Templates/ にまるごと入れればOK。シンボリックリンクでも問題無く開けるとのことで、共通するモジュールはシンボリックリンクで参照するなどのちょっとした構造化もできそうな感じでした。

「アプリのパフォーマンス改善を数値化」 by ZOZOテクノロジーズ 山田祐介

Android側の発表ですが、iOSでも利用できるものの紹介です。
パフォーマンス改善施策の評価をまず手軽なところからスタートするために、数値の取得には Firebase Performance Monitoring を、改善の前後の比較 特に同一バージョンでの比較に Firebase Remote Config を利用する事例を紹介されていました。
他に何か比較検討したものがあったか、たとえば Headspin とかどう思いますか、ということをおうかがいしましたが、他のツールは未検討とのことでした。

Bitriseの基本的な機能のデモンストレーション by Viktor and Tamás from Bitrise

Bitriseの基本的な機能について、プライベートリポジトリーにあるiOSプロジェクトと、パブリックリポジトリーにあるAndroidプロジェクトで、それぞれデモンストレーションを行なってくれました。
今後のロードマップの一部として、物理デバイスへの対応やドキュメントのローカライズについて教えてもらえたり、Androidのベータ版機能であるテスト実行中のビデオ録画を見せてもらえたりしました。

「iOSで正しく歩数を取得する」 by 株式会社WIT @sato-shin

iOS側の発表です。
食事記録アプリ「あすけん」で歩数を正確に取得するためにやっているtipsでした。
歩数取得のAPIの値を単純に使ってしまうと、iPhoneとApple Watchでダブルカウントになったりするため、 HKStatisticsCollectionQuery を利用してデータの特徴量を取得するようにしたり(このアプリでは累積和を取得)、データを登録したアプリのBundle Identifierまで参照して手動で不正入力されたかもしれない値をはじいたりなどの実践的なtipsを多く聞けました。

「Firestoreを使って純広告配信機能を作った話」 by リミア株式会社 樋口 雅拓

Android側の発表です。
2019年1月にGAとなったFirebaseの機能「Firestore」を、制約事項が多い純広告(自社販売の広告商品)の配信でさっそく活用した事例の紹介でした。
ターゲティングは UserProperty への属性設定と、 RemoteConfig での細かい制御で行なっているとのことでした。RemoteConfig 便利ですね。
GAになる前から使い込んでみたところ、バージョンアップでException返すべきところがnullableになる罠が3回くらいあったとのこと。。。大変でしたね。

「Azure PipelinesでiOSアプリをCI/CDしてみよう」 by @the_uhooi

iOS側の発表ではありますが、iOSに限った話では無くて Azure DevOps の1機能の紹介でした。
ビルドしたアプリを App Center 経由でインストールできるので社内テスト用の配布基盤として便利そう、という話は特に良さそうでした。

「Protobuf in Kotlin」 by @takusemba

Android側の発表です。
バイナリーデータを送受信できるようにデザインされたフォーマット Protocol Buffers について、定義ファイルから出力できるシリアライザー/デシリアライザー実装に最近になってKotlinも追加されたので便利な感じに使っちゃうぞ、という話でした。こんなフォーマットがあることをそもそも知らなかったですね。良さそうですね。
定義ファイルフォーマット「Proto」のうち、旧バージョンのProto2からの出力であればrequiredやoptionalなどの指定をよしなに扱ってくれるので今のところはおすすめ、という話はOpenAPI(Swagger)の状況を想起させるものがありました。

「WebView as Fancy and effective View」 by Ryo Sakaguchi

Android側の発表です。
ちょっと飛び道具的な演出をアプリ内に加えたいときに、iOSでのSceneKitくらいの感覚でAndroidで使えるものってなんだろう? というところでWebViewを継承した特別なViewで工夫してWebGLを扱ってみた話でした。
WebViewってところでつらみがありそうな気もしましたが(実際、特有のつらみがあるとのことでもありましたが)、紙吹雪やアニメーション付きチャートなどが手軽に実現できていたのは良い感じでした。

「iOSアプリで気になった動きや表現を上手にアレンジして活用してみる」 by Fumiya Sakai

iOS側の発表です。
他の実装を見ていてインスピレーションを受けた部分について実装を解析して自分のものにしていくプロセスを、TabBarを切り替えた時にアニメーションをともなう実装を題材にして追いかけるという内容の発表でした。

「僕は上スワイプでBottomSheetを出したかっただけなんだ」 by Wantedly株式会社 すみともたかお

https://docs.google.com/presentation/d/1PHc5DxdaOoB6uTZ1TI2EP3KagBMoqy6ZeoX7t92kf2U/edit#slide=id.p1

Android側の発表です。
画面下から出てくるドロワーのようなダイアログ BottomSheetDialog のようなものを、上向きにスワイプすることで出せるように実装したいというただそれだけの気持ちからどんどんえぐい沼にはまっていく様子でした。「NestedScrollは危険が危ない」実にいい話でした。

「つかおう! L2CAP」 by 株式会社Amazia 日向強

iOS側の発表です。
CBPeripheralManagerDelegate を使ってると現れる謎の peripheralManager をどうにか活用して、Bluetooth L2CAPで比較的大きいサイズのデータをやりとりできるようにしよう、という話でした。

「マルチモジュール化のTips」 by Wantedly株式会社 久保出雅俊

Android側の発表です。
マルチモジュール化による一般的なメリットと、実際にやってみたらどうなるかの検証、 Dagger によるDIをマルチモジュール化と合わせたときに効率良く書くために工夫したことなど、実践的なtipsの紹介でした。

宣伝


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


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


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


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