今年よんだ海外翻訳SFふりかえり

夏から秋にかけて失速しつつ、13冊読みました。

1冊だけ将来読み直す権利をやろうといわれたら、『幼年期の終り』にします。

『銀河遊撃隊』以外はすべてKindleで読めます。というよりも、自分の本えらびの基準がKindle前提です。

じつは、SF入門アンケートで、より多くの人がタイトルを挙げた作品から順に、Kindle化されているものを読んでいます。このアンケート、たくさんのSFタイトルが列挙されている上に、ネタバレがありません。素晴らしい。皆が面白いという本は自分にとってもおそらく面白いだろう、という安直な期待で本をえらぶには便利なページです。

来年は『地球の長い午後』や『ニューロマンサー』がKindle化されることを期待しています。

折しもスターウォーズ公開で盛り上がっていることですし、皆様も幸せなSFライフをお送りください!

2001年宇宙の旅

決定版がKindleで出ていたので読みました。面白かったです。

2001年宇宙の旅〔決定版〕

2001年宇宙の旅〔決定版〕

2015年の私生活最大の収穫は、アーサー・C・クラーク先生の翻訳SFを読む楽しみをおぼえたことかもしれません。面白い小説を読みたくなったら、この先数年間はクラーク先生の未読作品をランダムに選んでいればよさそうです。

映画もあらためて見たくなりました。

ymsrさん三回忌にあたりAWS Lambdaで線香ageを自動化した

タイトルで話が終わってしまった。

インターネットにお墓があるおかげで、いつでもどこでも、それこそ海外出張中もいつもと変わらず線香を上げられて便利だなと思っていましたが、三回忌を機に自動化しました。

(ブログにしろと言われたんだけどさすがにプライベートすぎて会社ブログにはちょっと……。というわけでこっちで)

費用

AWS Lambdaの利用費は、リクエストのうち毎月最初の1,000,000件は無料という設定で、これはAWSアカウントを作成したあと12ヶ月間の無料利用枠期間が終了しても変わりません。そして線香は1人1日1回まで。つまり、ましろさんに線香を無料で上げ続けることができますAWSさんありがとう。

設定方法

トークン取得

Githubにログインした状態で次のページに行き、ボタンを1つ押すだけでトークンを発行してもらえます。

AWS Lambdaファンクションの作成

AWSアカウントはお持ちですね。

Python用のhello worldスニペットがありますので、それを選びます。

適当なファンクション名をつけて (hakamairi) 、コードをインラインで書き換えてください。

変更前のスニペット。これは捨てちゃいます。

from __future__ import print_function

import json

print('Loading function')


def lambda_handler(event, context):
    #print("Received event: " + json.dumps(event, indent=2))
    print("value1 = " + event['key1'])
    print("value2 = " + event['key2'])
    print("value3 = " + event['key3'])
    return event['key1']  # Echo back the first key value
    #raise Exception('Something went wrong')

上のコードは捨てて、次のように変更します。先ほど取得したトークンを入れてくださいね。

import commands

def lambda_handler(event, context):
    commands.getoutput('curl -d token=12345678-1234-1234-1234-123456789012 http://haka.yamashi.ro/api/v1/incenses')

「Lambda function handler and role」という項目でRoleを指定するように要求されます。今回はcurlコマンドのようなものを打つだけなので、「Create New Role」を選んで、デフォルトのまま「lambda_basic_execution」を作成すればOKです。ちなみに、AWS Lambdaが実行時に他のAWSリソースに触る必要がある場合は、適切なアクセス権限を定義する必要があります。

ここまででコードは作成完了です。

イベントソース (スケジュール) の設定

続けて、スケジュールイベントを設定します。

AWS Lambdaファンクション一覧で、作成したファンクションを選択します。[Event sources]タブを開いて[Add event source]リンクをクリックします。

Event source typeを「Scheduled Event」に設定します。cronのような表記でスケジュールを記述できるので、線香上げたい時刻とタイミングを設定します。

cron(0 15 ? * * *)

UTCです。ここはUTCで設定してください。上の設定の場合、15:00UTCに毎日動きます。本当はおやつの時間に線香あげるつもりだったのに、UTCで設定というのを忘れてて、自分の作ったやつは深夜0時に動いています(設定変えればいいだけなんですけれども、AWS Lambdaの設定時にはマジ気をつけろっていう戒めのため、そのままにしています)。

なお、AWS Lambdaファンクションの動作ログはCloudWatch Logsで見られます。でも、ちゃんと動いたかどうかはお墓のトップページで確認すればいいですね!

ではでは。

最近よんだ面白いAWSドキュメント

例によって仕事上の都合で、AWS 認定ソリューションアーキテクト – プロフェッショナルという試験を受験して、合格しました。

で、資格の話はさておき、試験対策として読んだAWS公式ドキュメントの中で、面白かったものをメモしておきます。

3時間も試験を受けたので、それぞれについて言及する気力は残っていません。。。

メモ: Vimでインデントなし貼り付け、矩形選択、ソート

規則なく並んだIDの集合(重複なし)同士を比較しようとして手間取ったのでメモ。

次のような2つのテキストがあり、含まれるID (i-xxxxxxxx) が一致しているかを調べたいとします。ID群だけを抜き出してソートし、2つのファイルに保存してdiffをとります。

テキスト1

           'i-abcdef01' # bastion
            , 'i-cdef0123' # web-1
            , 'i-34567890' # web-2
            , 'i-90123456' # app-1
            , 'i-4567890a' # app-2

テキスト2

i-90123456:
i-34567890:
i-abcdef01:
i-4567890a:
i-cdef0123:

テキスト1のほうが複雑なので、こちらを対象に手順をメモします。

インデントなし貼り付け

そもそもテキスト1を単純にVimコピーアンドペーストすると、インデントが入ってしまうので、次のようにします。

  • :i!(もしくは:a!)
  • システムのペースト(Macならcommand+v)
  • return
    • // これを飛ばすと最後の1行が消えてしまう。なぜ?
  • esc

矩形選択

まず、1行目のシングルクォートより左に数個の文字を入力して、ID群を一列に揃えます。

           '   i-abcdef01' # bastion
            , 'i-cdef0123' # web-1
            , 'i-34567890' # web-2
            , 'i-90123456' # app-1
            , 'i-4567890a' # app-2

次に、Ctrl-vでビジュアルモードに入り、ID部分だけをCtrl-iで選択し、dで切り取ります。

            '   ' # bastion
             , '' # web-1
             , '' # web-2
             , '' # app-1
             , '' # app-2

そして、残った部分をブラックホールレジスタに捨てます("_5d)。

最後に、バッファ内のIDをpで貼り付けます。

i-abcdef01
i-cdef0123
i-34567890
i-90123456
i-4567890a

ここまできました。

ソート

まず、全行選択します。ggで先頭へ移動し、Vで行選択に移行し、Gで最終行へ移動します。

次に、::sortでIDを辞書順にソートします。コロンは2回必要です。

i-34567890
i-4567890a
i-90123456
i-abcdef01
i-cdef0123

こうなりました。

さらに?

できれば上記のソート済みID群と、テキスト2を同様の手順で整形(正確には%s/://gしてからソート)したものとをその場で比較したいのですが、やり方がわからないため、一旦ファイルに保存してdiffをとっています。

もっとよい方法があればぜひ教えてください。

野火(小説)、野火(映画)

私の左半身は理解した。私はこれまで反省なく、草や木や動物を食べていたが、それ等は実は、死んだ人間よりも、食べてはいけなかったのである。生きているからである。

むかし文庫を読んだのですが、時間がたって同じ作者の『レイテ戦記』と混同している部分があったので、映画をみる前にKindleで再読しました。こんなすごい小説が300円くらいで読めるなんてラッキーですね。

野火(新潮文庫)

野火(新潮文庫)

原作から少し引用します。

比島の林中の小径を再び通らないのが奇怪と感じられたのも、やはりこの時私が死を予感していたためであろう。我々はどんな辺鄙な日本の地方を行く時も、決してこういう観念には襲われない。好む時にまた来る可能性が、意識下に仮定されているためであろうか。してみれば我々の所謂生命感とは、今行うところを無限に繰り返し得る予感にあるのではなかろうか。

物語の序盤、主人公の田村一等兵は、山道を歩きながら突然「この道を自分は二度と通ることがない」と感じ、そう感じた自分を「奇怪」に感じます。そして、死の予感に因果をもとめます。

もしその時私が考えたように、そういう当然なことに私が注意したのは、私が死を予感していたためであり、日常生活における一般の生活感情が、今行うことを無限に繰り返し得る可能性に根ざしているという仮定に、何等かの真実があるとすれば、私が現在行うことを前にやったことがあると感じるのは、それをもう一度行いたいという願望の倒錯したものではあるまいか。未来に繰り返す希望のない状態におかれた生命が、その可能性を過去に投射するのではあるまいか。

また中盤、夜明けの野を歩きながら田村は「前にもこういうふうに歩いたことがある」と感じ、そう感じたこと自体にふたたび引っかかります。彼はそれを、生きてもう一度なにごとかを行いたいという自分の願いが見せた妄想だと考えました。

そんなふうに死の予感とそれでも生き延びたいという願いの回りを、まさに島の山中をさすらうのと同じようにぐるぐると歩きながら彼は思考し、どんどんおかしくなっていきます。そして、野に咲いた艶かしい花を見ながら、冒頭に引用した啓示を得るに至ります。

映画は予算が少なかったと聞きました。たしかにほぼすべての戦闘シーンが光と爆音で誤魔化されていて、限りある予算はグロ描写に費やされた感があります。が、べつにスペクタクルを消費したくて見に行ったわけではないので、その点はあまり気にしません。

原作での田村は、極限状態に陥ると常にだれかに「見られている」と感じ、教会に救いをもとめ(しかし得られず)、やがては僚友を食べようとしながらも、そうさせなかった偶然に神様を見出すのですが、映画ではそのあたりは描かれません。これは少し残念なところです。

そういった描写がなかったために、映画を見終わった直後は、主人公が最後までわりとしっかりしていたなあという感想でした。台詞の少ない一人称の小説で語られる狂気の過程を映像化するのはやはり難しいのかな、と考えたのですが、いやいや待てよと。終盤に味方を撃つのはどう考えても頭がおかしくなっているわけで、むしろ正気と狂気がシームレスで分からないと思わされた展開こそが、原作を精確に踏襲していたのではないか、という気がしてきました。正気、狂気と簡単に書きましたが、やはりそれらは理解できないものを手軽に分類するための名前に過ぎないんだなと、この作品に触れた後は改めて感じます。

怖い描写が多い作品ですが、原作でも映画でも兵士が島の人に銃を向けて脅すことを躊躇うような素振りの描写は一切なく、そこが一番怖いです。

映画の最後に、撮影協力としてフィリピンの戦争記録団体がいくつもクレジットされています。お互いに悲しいことがたくさんあっただろうに、このような映画を作るにあたり協力しあえる関係性が現在築かれているのは、先人の努力や強さの賜物であり、本当にありがたいことだと思います。

偶然の系列、つまり永遠に堪えるほど我々の精神は強くない。出生の偶然と死の偶然の間にはさまれた我々の生活の間に、我々は意志と自称するものによって生起した少数の事件を数え、その結果我々の裡に生じた一貫したものを、性格とかわが生涯とか呼んで自ら慰めている。ほかに考えようがないからだ。

取るに足りない生しか持たないわれわれと変わらない人たちが、この映画で鮮烈に描写された島の雄大な自然の中で、わざわざ殺し合い、あるいは飢えて死ななければならなかった不合理さには言葉もありません。

銀河遊撃隊

ずいぶん前に読み終わったけどここに書いてなかった。finalfusionさんオススメの一品。図書館で借りました。

有名なSF作品のパロディであることが解説で判明するのだけど、まあそれは置いといて(元ネタ『宇宙のスカイラーク』を自分は未読のため)。舞台のコメディみたいなかんじで楽しかったです。

学生にしてスーパーエンジニアの二人の青年がいろいろな星へいく。すぐに悲鳴をあげたり気絶したりする蓮っ葉な金髪娘も一緒です。時代を感じるなぁ(※テキトー)

異形の異星人がたくさん出てきて、どいつもこいつも戦争しています。

最後の大団円にはびっくりしました。