作業用BGM

ピアノが最強(IMHO

Youtube の作業用BGMはいいヤツだ。

iPhoneBose SoundLink に接続して流しているが、この手の投稿者さんは分かっていて基本的にCMが流れないので助かっている

Bose SoundLink Revolve+ II Bluetooth speaker ポータブル ワイヤレス スピーカー マイク付 最大17時間 再生 防滴・防塵 10.5 cm W x 18.4 cm H x 10.5 cm (D) 0.91 kg トリプルブラック *1

ある種の調査やある種のコーディングやある種の読書は始めるのが億劫かつ単調な作業なのだが、BGMはFFのリジェネのようにその重しをちょっと取り除いてくれる

Jazz とか読書用BGMとかいろいろ試して気づいたのが、気分がのって集中力が高まるのがピアノだということ

やさしくて奥ゆかしくて、よい雰囲気を作って消えてくれる

アコースティックギターは基本心地よいのだが、ふとエッジの立った節回しが現れて注意をそらされることがある

サックスは苦手で、音量によらずチューブからひねり出した絵の具のような濃くて太い旋律がぐいぐいそでを引っ張ってきてまったく集中できない *2

Jazz なんていうのは耳に障らないことを突き詰めた音楽だって確か『海の上のピアニスト』のセリフにあって「いかにも」などと訳知り顔だったが、実際BGMに据えてみると我ながらはっきり好みが出るものだと印象的だった

その他の種類のコーディングにはハッカーBGMもよい*3

*1:なぜか image:small で小さくできない

*2:サックスは聴き入るための楽器だと気がついた

*3:これはヘイスト

「心霊の話」

「心霊」とは別次元である「心霊の話」の話

何が興味深いって聴き手と語り手の関係が必ず Man In The Middle の構造になっているっていう。

心霊現象 --- 語り手(Man In The Middle) --- 聴き手

語り手は心霊現象を伝えるカナリアとして安全地帯から怖いものを覗きたいというニーズに応えてくれる

つまりビジネスである

ただ、構造の問題から聴き手は語り手に好きに転がされてしまう。

語り手の、

いろんな心霊現象を確認してきてほとんど偽物だったんだけど、
いやこれはマジだと驚いたものがあって・・・

という枕詞に毎回聞き耳が反応してしまっている自分に気がついて、これは大した話術だなと笑けてしまって。

じゃあそれを解消しましょうか?(心霊現象 --- 聴き手)といわれたら勘弁してくださいという絶妙なパワーバランス。

心理的エンタメとして盤石で、世代を超えて今後も大いに楽しませてくれるでしょう。

シン・ウルトラマン(ネタばれなし)

ウルトラマンはカッコいい

観といてよかった👍
何かに挑戦している人は、勇気をもらえそう。
これぞヒーロー。

ウルトラマンか、懐かしき少年時代の憧れだよなと褪色差した大人が、
やっぱりカッコいいよなぁ..、とか思わされてしまったら
この映画の醍醐味発動!という気がする

世代によっては格別な体験になるかもしれない。

大量の情報に曝された現代人にもズシリ手応えを感じさせる概念やスケールで
特撮的な質感や挙動や効果音に説得力を持たせようとする執念のようなリスペクト

こんな力のこもった描かれ方をされてはかつて特撮を作った先輩たちの
イマジネーションや情熱にまで思いを馳せざるを得ない。

実家のような安心感すら出てきた『庵野』節にのっかってはいるものの
真面目で解像度高目な要素で丁寧に織り込んで作りあげたものが、
ものごとがまだそんなに複雑じゃなかったTVヒーロー黎明期の、
これはなんかそういうものなんだよで成立していた安心感のある分かりやすさというのが、
懐かしいやらリスペクトが過ぎるやらで心に迫る。

とはいえ早速来たな『庵野』節と身構えてたら今回割とあっさり目で*1
映像も綺麗、セリフも展開もストレートで気持ちよく、あか抜けた清涼感な余韻。

主題歌も一貫した印象を構成していたんだな、という感想を持った。

*1:漫画『聖闘士星矢』の意外に説明口調なセリフぽいと観ながら思い当たる

いきものなる妙なもの

いきものという装置

この世がマルチバースであるなどの発想は今や人口に膾炙するまで進展したが、 それに呼応するように、太古よりそんな厄介な環境に対処し、結果を出し続けているいきものという装置は、今や古くて最新のヒントを含む激アツアイテムになっていないだろうか

その在り様とは、

  • 必要なものは作る、その辺から取ってくる
  • 忘れる、捨てる、沢山持てない

記憶システムとか代謝システムとか発明とか JavaScript の開発環境とか

綱をたぐり寄せるようにしてどこかへ向かって移動していき、すべてを包括したりひとところに留まることがない

「無駄を省く」が通用しないいきもの

  • 無駄を省く、効率化しよう
    👉 機械とか数理とかビジネスの発想

定量のリソースを前提として、無駄を省けばスループットが増えるじゃないかという考え方で、確かに説得力がある

  • 生き物が無駄を省く
    👉 「衰える」という落とし穴がある

使わない肉体や頭脳や能力が衰えて、まるで世界そのものが縮んで灰色になるかのよう *1
余力を残して待機する機械では通常想定しない特性

一見無駄なようなことを続けるとある意味可能性が増大する生物界の厄介な特性
できることが増えていき、その流れで一定の能力セットが揃うと飛躍するまである

無駄に思えることもやり続けると新天地が発掘され得る世界

生き物の世界は物理のように透明で閉じていない
開けたポテンシャルの海を小さな体で自由な発想で泳ぎ渡るかのよう

生物が進化して五感を獲得すると、
新たなセンシングやそれらの組み合わせで見える世界が変わる
判断や行動も変わり、スループットは異次元へと爆発する *2

睡眠時間が無駄だ、人生の三分の一を無駄にしているという考え方もある一方で、
寝なければ二週間耐たないシステムを80年以上耐たせてくれるありがたい時間ともいえる。それだけ耐てば社会・文明も築けよう

毎日一時間サイクリングするとか読書するとかしんどくても決行し続けると、一年で365時間が別の重要なことに使えなくなったというより、頭の回転が速くなったり、肥満が解消されたり、精神が安定したり、むしろスループットが増える可能性がある

体力がつき、より活動時間も増え、趣味が広がり、知見が増え、多角的な考えや視点という能力がつくられる

ネテロ会長の一見無駄な祈りの所作が無敵の攻撃を成しているというのは、
冨樫先生による、理に対する生物の妙の天才的表現ではないかと疑っている(キリッ)

尻論

この世は人が観測して、人が機械を生み出して、人がビジネスをしている
人の作るものはどうしても人に似てその特性を帯びてしまう気がしている(唐突)

というわけで、新しいモノのクリエイトの原動力とか種として、せいぶつ的なふるまい(使い捨ててよいとか忘れてよいとか使い続けることとか)によせると人の世にうまくハマって回し続けやすくならないだろうか

*1:この世も無駄を省き続ける=投資やお賃金を削りまくると灰色の世界が見えてくる

*2:これはアルゴリズムとは異質な気がする、あるいはアルゴリズムの別の表現になっているかもしれない

8ビートの伝達力

伝達力が強い

これまでに出くわしたものの中で、個人的にも良いな、面白いなと感じつつ、
しかも並々ならぬ人気があるものに、「8ビート」という共通点がありそう、という話。

これは作品とか商品を作るときに視聴者やユーザーに受け入れられやすい黄金律なのではと思っている。

8ビート

ジョギングなど軽いスポーツの時の心臓の鼓動、
多くの人に手が届き、軽い負荷があって、習慣的にも続けられるイメージ。
音楽でいうと心地よく揺さぶられる感覚を生じるリズム。共有感覚。
個人的に能ある鷹が爪を隠しているイメージもある。

一方、比較対象として16ビートを考えると、
全力疾走とか無酸素運動、気持ちがはやる、急き立てられる、
超絶技巧、ぶっちぎりで置いてかれる、エリート志向、孤高というイメージ。

8ビートなモノたち

適当に列挙してみる

  • ダウンタウンの漫才

    • 「8ビート」の元ネタ(テレビ番組「松紳」だったかな)
    • 当時、漫才が16ビートな時代に、ダウンタウンは8ビートで勝負したという
    • ぽつりぽつりと放り込む一ボケ一ボケがバズーカ級の破壊力
  • biim 氏の RTA 動画

    • どんな複雑な状況も2行の吹き出しでスマートに要約(上限)
    • 単調なシーンは禁断の早送りをぶっこんで情報量を調節(下限)
    • 画だけで観ても面白い、音だけで聴いても面白い構成
  • 村上春樹の小説

    • 平易なライトノベル調文体で多くの読者を誘い込む
    • しかしそれは異常に発達したメタファによる擬装にすぎない
    • 気がつくと放射性金属のような重苦しい何かを飲み込まされている
  • ポップス

    • 限られたフレーズと曲と歌声が協調して印象的なシーンを描く
    • 繰り返し聴いても耳に障らず琴線をかき鳴らされる
  • マンガのコマ割り

    • 1コマで0.1秒から10秒くらいまでの時間感覚を自在に操る
    • コマとコマの繋がりでカメラワークや心理まで描き分ける
  • 黎明期のコンソールゲームとコントローラ

    • カセット差してスイッチオンで画面に導かれ幼児までも楽しめる
    • 十字キーとABボタンだけで遊べるデザイン
  • iPhone*1

    • 見えてるオブジェクトは指で直接さわって操作できるオブジェクト
    • 操作の限界も伸び縮みで画面が反応し続ける

何が含まれているのか

ポイントは「折りたたむ」であるような気がする。
時間的なアウフヘーベンというか。

伝えたいあれやこれやは沢山あってキリが無いのに、 視聴者やユーザーはそんなに沢山受け取れない、という問題がある。

だから刹那の一時点に、あれやこれやを巧みに1つに折りたたんで提示する。
一見情報量は少なく感じられる。

結果、マイペースな、近寄りやすそうな、親しみやすそうな雰囲気になる。
それでいてすごく面白い、濃い体験ができる、という効果を生じる。

良く知らないけど、テレビ業界の人たちはこれに極めて敏感という気がしている。 (そのためズバ抜けて巧みな biim 氏は元テレビマンではと勘繰っている)

他にも、 最近のPCモニタは毎秒120フレームで現実と見紛うヌルヌル描画になっているが、 映画はずっと昔からカクカクの毎秒24フレームしかなくて、 それでもスターウォーズとか迫力ある超高速シーンを描き出している。

それはモーションブラー効果というやつで1フレームに沢山の動作フレームが凝縮されているから。

とりとめないが、いろんなところに「折りたたみ」が埋め込まれていて、モノづくりのヒントになっている。

*1:スマートフォンiPhone 以前と iPhone 以後の二種類だと思っている

Rust の型システムが示唆するもの

ReceivedEmail<Link> が来た

注: これは技術解説の記事ではない

先日、電話口でこんなことがあった:

〇〇社さんでしょうか?(若い女性の声)
    はい、どんなご用件でしょう

〇〇(株)と申しますが御社より資料請求をいただきまして、
ご案内の連絡を、~
    (聞いてないな)そうでしたか、~

今から御社Eメールアドレス宛に1通お送りしますがよろしいですか?
    分かりました。お願いします

(... メールが届く)

届きましたでしょうか
    はい
あぁ、届きましたか、よかった!では、一応の動作確認のため、
メール内のURLをクリックして、~(たくさん説明)
    (...? 違和感)あの、

はい。
    これ今クリックしなきゃいけないですか?

はい。でもこれは単なる動作チェックですので、機能を確認しましたらすぐに終わりますので
(さらにまくしたてる)
    いや、えっと、もし...もしも~し?
    (強引にしゃべり続ける相手に違和感が確信に)

...はい。
    そういうことじゃなくて、申し訳ないけど未確認のメールなのでURLクリックはできないです。
    最近その類のフィッシング増えてますし非常に危険ですよね。

...はぁ...。(沈黙)
    では確認がとれましたら改めて連絡しますので、ありがとうございました。失礼します。

で、上司に確認をとってみるとそんな会社は知らないし、資料請求なんてしていない、社内注意喚起へ、というオチ。

ちょいと知恵を使った(でも悪質な)営業の一種だろうし、懸念するほどの悪意はなかったかもしれないが、落ち着いて考えれば歴としたソーシャルエンジニアリングである。

相手の声や親しみやすい会話の流れによっては、ふと判断を間違えてクリックした先に、「PC乗っ取りました~」と出て、「乙」と電話が切れていた可能性もゼロではない。(ちなみに相手の電話番号は携帯電話のもの)

Rust 言語

まだ製品に使うには至っていないものの、Rust 言語に興味を持って触ってみている。 カニ本や実践系の本買って読んだり、目的を持って書く題材として Advent Of Code*1 にチャレンジしてみたりした。

それで、Rust にはしっかりした型システムがあって*2、 知る人ぞ知る歴史のあるものということで紹介は端折るとして、 例えば Option<T> という型があり、実に示唆に富んでいるように思う。

型システムによる制約と恩恵

Option<T> は、 T 型のデータがある Some(T) か、 あるいはそんなものは無い None の二択がセットになった列挙型で、

アントニー・ホーアという計算機科学者が「10億ドル単位の間違い」と後に反省した Null 値(空値の表現方法の一種)とは一線を画した、より望ましい表現方法である、というのは有名な話。

Null は値で None はコンテキスト

  • Null とは入れ物の中に入るデータである。

    • 空といいつつ入れ物から取り出せてしまう
    • それを実行時にCPUがさわって火傷する
  • Rust の None はデータとは別次元のコンテキストである。

    • 値なんてなかったという言語レベルでの状況を表す
    • コンパイラ用のメタ情報で実行時には存在しない

分けるべきものを一緒くたにしていると毎度そこで混乱が生じ、どこまでも問題がついて回るのは設計に漂う臭いと表現される。None は値が存在しない「状況」を、値とは別次元に切り離したことで問題から解放された。

これは分別をつけるとか、それをしっかり守ることの意義を示唆している。

機械の状態を言語レベルのコンテキストに

Rust で書いていると Option<T> は結構いたるところに現れて、その都度 None だった場合の手続きが必要になってしまうことを表面化してくれる。それに従わずばコンパイルなし。

このような型制約はそこまで細かい粒度の言語ロジックばかりでなく、たとえば機械の状態をこれで上手く表現することで、ハードウェアが壊れないように正しいスイッチング手順を強制するデザインまで可能だという。 The Embedded Rust Book (日本語) - 静的な保証

Book にもある通り、機械を壊さないために逐一 if を使って、電流を流してよいか確かめてからアクションする、というのが素朴なプログラミング的発想だが、Rust は一味違ってそんなチェックコードを不要にする。

ラクリを有体に言うと、機械の各状態に対応する型を定義し、電流を流せる状態の型に対してのみ電流を流す関数を定義し、電流を流せない状態の型からその関数を呼ぶとコンパイルエラーになるのでそんなコードは書けないということ。これを読んだ当時は、その手があったかとカルチャーショックを受けた。

この時 if でCPUを回すような実行時チェックは一切無く、コンパイル後に強気な正しい手順の命令だけがポツンとあるという具合である。Rust ではこれを「ゼロコスト抽象化」と呼ぶ(カッコいい、強い(確信))

現実での応用

さて、冒頭のお話に戻り、実は Rust を触っていたおかげで(あるいは、Rust にさんざんコンパイルエラーでいじめられたおかげで)、会話中に違和感が走ったように思う。

届いたメールには次ようなきわどい属性が付与されていた:

  • 電話口の若い女性の確認のもと送られてきたメールである
  • こちらからの資料請求への返信であるらしい
  • 自分から送ってくださいと頼んでいる

よく訓練された会社員とか公務員なら、呼吸をするように躱しているところであろうが、本気の攻撃者がさらに用意周到にきわどい属性を用意してきても余裕を保っていられるだろうか。

しかし Rust 脳的には、このメールは ReceivedEmail<Link> という型であり、フィッシングが猛威を振るう昨今ではまず follow_link() など実装されないのである。

ReceivedEmail::FromConfirmed(Link) となって初めて follow_link() が通り、ReceivedEmail::FromUnknown では無慈悲にコンパイルエラー。*3 それはもうコンテキストが違いますから、気の毒だけど私にはどうしようもないのです。(その無慈悲さは先方にも伝わったようで強引なトークがピタリと止んだ)

つまり、Rust の型制約は人の会話に顕れるようなハイレベルなビジネスロジックにもすんなり溶け込んで暴れてくれそうだということで期待に胸が膨らんでいる。

*1:言語の勉強によく使っている。早解きもいいけど雰囲気やストーリーも味わいたい

*2:他にも同等の型システムを持っている言語がある

*3:Emotet はここを突破し得るから、さらに AttachmentConfirmed とか OfficeFile::WithoutMacro を考えることになる

機械の知能2

シンギュラリティは起こる可能性がある

やっぱりそういうことなんですね。

1ナノ秒で数学の定理を看破してしまう世界

機械の愚直な知能が勝利を収めるシナリオを考えてみた

数学の極限の問題で、ある無限級数をすべて足し合わせていくと コンパクトな式と等しくなるということがある

人間の知能では無限に足していくことはできないので、 式変形による定理証明というアプローチで解にたどり着く。 これはある次元から別の次元へ跳び移るアプローチ。

一方、無限コアを持つCPUの場合、本当に無制限に足し合わせつつ結果を更新し続ける。 同時に、あらゆる式の値の変化も更新して記録し続ける。 モンテカルロ法の要領で、それらの中で結果が離れていくものと近づくものを選り分け、 さらにはどこまでも張り付いて離れないものへとふるいにかけていく。

計算能力が無限にあれば好きなだけ精度を高められるので、 100%に限りなく近い確度であらゆる定理を正しく「識別」できるようになる。 そして、定理1つの構築を例えば1ナノ秒まで改善したとする。

すると、任意の数式の相互関連性を、 1つの構造物として目で見たり、触ったりするようなリアルタイムな感覚を生じるはず。

その視点には我々が想像もできない宇宙の姿が映っており、 例えば、ふと右上をみやると万物の理論がラピュタ城の飛行石のように浮かんでいて、 手に取って調べることができる。

そうした後、我々の世界での無駄がないとか美しいとかの感覚をヒントに、 機械的にでよいので遺伝子や分子を組み換えるように改善した何かを作り出すと、 我々の世界の方では物理法則を超越した化け物が飛び出しているかもしれない。