@kyanny's blog

My thoughts, my life. Views/opinions are my own.

紙鑑定士の事件ファイル 模型の家の殺人

一年半くらい前に本屋で見かけて買った本。「紙」にこだわった装丁の本ということで、ミステリーの内容にも「紙」が関連してるのなら面白そうだと思って買った。本棚に積んで忘れてたのを発見して読んでみたけど、内容は平凡だった。確かに紙は物語の要所で出てくるとはいえ、謎解きにそこまで重要な位置を占めるわけでもないし、紙質や付録(?)がヒントになっているわけでもない。クライマックスシーンに至っては陳腐の極みという感じの展開で、総じて期待外れだった。

jq: JSON から特定のキーの構造を抽出する

直接やる構文はないので get しつつ同じキー名で JSON を作る。

jq '{key: .key}'

https://openlibrary.org/works/OL45883W.json を例にすると、

{
  "description": "The main character of Fantastic Mr. Fox is an extremely clever anthropomorphized fox named Mr. Fox. He lives with his wife and four little foxes. In order to feed his family, he steals food from the cruel, brutish farmers named Boggis, Bunce, and Bean every night.\r\n\r\nFinally tired of being constantly outwitted by Mr. Fox, the farmers attempt to capture and kill him. The foxes escape in time by burrowing deep into the ground. The farmers decide to wait outside the hole for the foxes to emerge. Unable to leave the hole and steal food, Mr. Fox and his family begin to starve. Mr. Fox devises a plan to steal food from the farmers by tunneling into the ground and borrowing into the farmer's houses.\r\n\r\nAided by a friendly Badger, the animals bring the stolen food back and Mrs. Fox prepares a great celebratory banquet attended by the other starving animals and their families. Mr. Fox invites all the animals to live with him underground and says that he will provide food for them daily thanks to his underground passages. All the animals live happily and safely, while the farmers remain waiting outside in vain for Mr. Fox to show up.",
  "title": "Fantastic Mr. Fox",
  "covers": [
    6498519,
    8904777,
    108274,
    233884,
    1119236,
    -1,
    10222599,
    10482837,
    3216657
  ],
  "subject_places": [
    "English countryside"
  ],
  "subjects": [
    "Animals",
    "Hunger",
    "Open Library Staff Picks",
    "Juvenile fiction",
    "Children's stories, English",
    "Foxes",
    "Fiction",
    "Zorros",
    "Ficción juvenil",
    "Tunnels",
    "Interviews",
    "Farmers",
    "Children's stories",
    "Rats",
    "Welsh Authors",
    "English Authors",
    "Thieves",
    "Tricksters",
    "Badgers",
    "Children's fiction",
    "Foxes, fiction",
    "Underground"
  ],
  "subject_people": [
    "Bean",
    "Boggis",
    "Bunce",
    "Mr Fox"
  ],
  "key": "/works/OL45883W",
  "authors": [
    {
      "author": {
        "key": "/authors/OL34184A"
      },
      "type": {
        "key": "/type/author_role"
      }
    }
  ],
  "subject_times": [
    "20th Century"
  ],
  "type": {
    "key": "/type/work"
  },
  "latest_revision": 43,
  "revision": 43,
  "created": {
    "type": "/type/datetime",
    "value": "2009-10-15T11:34:21.437031"
  },
  "last_modified": {
    "type": "/type/datetime",
    "value": "2021-02-05T12:52:33.907834"
  }
}

{
  "authors": [
    {
      "author": {
        "key": "/authors/OL34184A"
      },
      "type": {
        "key": "/type/author_role"
      }
    }
  ]
}

に変形したい場合は

curl https://openlibrary.org/works/OL45883W.json | jq '{authors: .authors}'

とする。

1,000,000

f:id:a666666:20210519201847j:plain

記録について書かなくなって久しい。目立ったマイルストーンを通り過ぎて興味がなくなったからだが、これはさすがに言及する価値があるだろう。はてなブログを始めてから 10 年弱で通算 100 万アクセスを達成した。

はてなブログを始めたのは 2011-11-07 だった。2011-11-07 から 2021-05-19 は 3481 日なので、単純に割り算をすると一日あたり 287 か 288 アクセスくらいになる。ここ数年アクセス数を眺めている感じでは、平日が 200 前後、休日が 60 前後くらいのアクセス数で推移している。まれに数千アクセスを稼ぐ記事があったので、差分はそれだろう。

なんか難しく考えすぎてた。年間 10 万アクセス、と考えるとわかりやすいかもしれない。と思ったけどそんなことはなかった。10 万なんて大きな数字はピンとこない。

どの技術を学ぶか

その時その時の状況や気分によって、「どの技術を学ぶか」という問いへの回答はころころかわってきた。

最近は、世の中のトレンドとか「潰しが効きそう」かどうかという打算的な尺度よりも、好き・または嫌いゆえに取り組まずにはいられない、というような個人的な感情とか衝動に素直に従ったほうがよい気がしている。

おれは「必要に迫られない限り、何もしない」性分だ。四十年も生きてればさすがにこの性分は死ぬまで変わらないだろうなとわかる。だから、もしおれが打算に基づいて行動するのであれば、「その技術を学ばざるを得ない状況に自分を追い込む」というアプローチでなければならない。それ以外の方法では、どんなに得な選択肢であっても怠惰さに打ち勝てない。

実際、ここ十年くらいのキャリアにおいては、「真に学ぶ必要がある」とその時その時に結論づけていたスキルを学ばざるを得ない環境を選んできた。結果論だったものもあるし、思惑通りにいかなかったものもあるが、基本的な指針は変わらない。つまり、おれはすでに「真に学ぶべきスキル」を学ばざるを得ない状況にあり、したがって現在進行形で学んでいる、といえる。

であれば、「最も重要な学習対象」にはすでにコミットしているのだから、余った時間は趣味に費やしても問題ないし、むしろ「最も重要なもの」に正しく集中するためにも、「他の重要そうなもの」をいたずらに増やさないほうが良い可能性もある。

別の観点で、おれは「気になったことは、役に立つかどうかにかかわらず、気が済むまで掘り下げる」性分でもある。これも打算的な選択とすこぶる対象が悪い一方で、「やらずにはいられない」ことは損得抜きにやり続ける。

結論、欲を出して「二番目以降に大事ではありそうだけど、最優先ではないし好きでやるわけでもないこと」に取り組んでも、結果が出るまで続く見込みは薄い。であれば割り切って「客観的に大事ではないし、やっても得にはならないが、やらずにはいられないこと」を後ろめたさ無しに好きにやるに任せたほうが、何かしら到達する点があるのではないか、そう思うのだ。

L-99

n 年ぶり n 回目の L-99 をやり始めた。

https://github.com/kyanny/L-99

再開前のコミットは 11 年前だった。他のリポジトリでやった記憶もあるから、さすがに 11 年ぶりということはないと思うが。

数年経っていてもやっぱり一向に再帰関数は理解が難しくて、比較的低難易度の問題も数日取り組んで何度もデバッグしても解けなかったりする。

でも、こういうのも幾度となく経験してきて多少は慣れてきた。もちろんうまくいかないとフラストレーションはたまるし、進歩のない自分が情けなくもなるけど、自分にできるのは「年単位で諦めず何度も取り組む」やり方しかない。曲がりなりにもこのやり方でこれまでやってきた。絶望的に歩みが鈍く、非効率的だとは思うが、それでも進まないよりはいい。