hitode909の日記

以前はプログラミング日記でしたが、今は子育て日記です

年末年始で人と会ったりしたいので、新型コロナのワクチン(4回目)を打ちたいんだけど、妻が骨折しててあまり家事できないので、ワクチンを打って高熱が出てもしばらく寝込む、ということができない。ひどい作戦としては、どうせ骨折して負傷してるのだからそこに副反応が加わっても誤差である、ということで、妻に先に打ってもらう手もありそう。
前回僕が打ったときは2日ほど寝ていて厳しかった。布団に入ってナニワ金融道を読んだりしていた。今回は、妻に送り迎えを頼めないので、熱が出たまま子供を保育園に送るか、家で丸一日シール遊びでもするか、ということになりそう。
早く骨がくっついてくれ!と願っている。
そもそも、骨折したまま忘年会や新年会、帰省をこなせるのか?という課題もありそう。節約して車で行こうと思っていたけど、そんなに座っていられるのか、不可能だとしたら新幹線になるけど、宿泊の荷物を運べるのか、とか。

子供が移動中に花や草などをツンツンして全然移動してくれない。どうしたらいいですか

時間があるときは、つきあってあげる。そのために余裕を持って移動しましょう。
保育所などでやってるテクニックとしては、今からここに行くよ〜という写真を見せて、移動に対して納得感を持ってもらうと、スムーズに移動してもらえるかもしれない。

とアドバイスをもらえた。

encode_jsonとdecode_json、どっちがどっちか覚えられないので、VSCodeのsnippetにjson_stringifyとjson_parseとして登録してしまう

encodeとdecode、どっちがどっち?

普段Perlを書いていて、JSON::XSのencode_jsonとdecode_jsonをよく使うのですが、encodeとdecode、どっちがどっちだっけ?と分からなくなります。
落ち着いて考えると、JSONにencodeするのがencode_json、JSONをdecodeするのがdecode_jsonに決まっているのですが、そうは言ってもよく分からなくなるので、たぶん、右と左、どっちがどっち?となる人もこんな気持ちなのだと思います。

JSON.stringifyとJSON.parseなら覚えやすい気がする

一方で、JavaScriptを書いているときに使うのがJSON.stringifyJSON.parseで、これは混乱したことがなくて、良い名前だと思います。
これがもし、Perlでもjson_stringifyとjson_parseで書けたら覚えやすいと思うのですが…でも個人の主観なので、JSON::XS::MyAliasみたいなパッケージを作って、勝手に使い始める、というのも困ったものです。
あなたはjson_stringifyがいいとして、私はjson_loadとjson_dumpが良いんだけど?とか、自転車置き場の議論が始まりそう。

覚えられないなら、VSCodeのsnippetで好きな名前で登録してしまおう

キーワードが何なら覚えてられるか、というのは個人の好みによるものでもあるので、思い出すためのキーワードを登録して、それをエディタに入力するだけで、これですよね?って補完してくれると便利そうです。
VSCodeのsnippet機能を使って、json_stringifyでencode_json、json_parseでdecode_jsonをそれぞれ出力できるようにしてしまいます。
Configure User Snippetsから、こういうスニペットを設定します。キーワードとしてjson_stringifyを入力するとencode_json();を出力する、という設定です。

{
  "json_stringify": {
    "prefix": "json_stringify",
    "body": [
      "encode_json($1);"
    ],
    "description": "Converts the given Perl data structure to a UTF-8 encoded, binary string (that is, the string contains octets only)."
  },
  "json_parse": {
    "prefix": "json_parse",
    "body": [
      "decode_json($1);"
    ],
    "description": "expects a UTF-8 (binary) string and tries to parse that as a UTF-8 encoded JSON text, returning the resulting reference."
  }
}


これで無事、json_stringifyと入力するとencode_json、json_parseと入力するとdecode_jsonが出力されるようになりました。

json_stringifyのスニペットを選択すると、encode_jsonが入力される


普通はforって入れるとforeachの雛形が出るとか、入力した文字列の拡大版が出力されることが多いと思うのですが、入力値とぜんぜん違う文字が出力されるのがおもしろポイントだと思います。
スニペットの確定後はencode_jsonだけが残るので、手元で変なスニペットを使っていることをチームメンバーに知らせず済み、人事評価のときにも、encode_jsonとdecode_jsonのどっちがどっちか覚えてない信用ならない人物、ということで評価を下げられずに済みそうです。


この記事はPerl Advent Calendar 2022の3日目でした。
まだまだ空いてる日に参加できるようなので、みなさん参加してください!

車は外に置く&安い工務店でお願いすることで予算的なバランスを取る、で決着がつきそうになってきた。
マンションの駐車場とかでもエントランスから駐車場までしばらく歩いたりするのだし、家の敷地内にないといけない、ということはないだろうと思う。

つくりおき Advent Calendar 2022今年もやるそうです

アドベントカレンダーには毎年参加しているけど、いよいよ飽きてきた感がある。
Adventarが開発されて、オープンインターネットでカレンダーが企画できるようになったりしたのはおもしろいけど、決まった日にブログを書く、という、イベントの質としてあまり変化がない気がする。
また、アドベントカレンダーに参加すると、よく読んでもらえる、ということもなくて、12月にはいろんなカレンダーが走り始めるので、ブログの供給量は増えるので、そんなに読まれるわけでもないと思う。土用の丑の日にうなぎを食べると、とくにシーズンでもなくて、うなぎの質が低い、みたいな。
また、人々の意識としても、海外ドラマ一気観するのがクール、みたいに、アドベントカレンダーをたくさん読むのがクールで楽しい、という意識もあまり無いような気がする。

たとえば、これが、前半と後半で別の人が書く、とか、前日の人からテーマを渡される、とか、読まれたPVだけ寄付しよう、とか、なんでもいいので、企画としてアップデートがあると、新しいゲームで遊ぼう、みたいな感じで遊べて楽しい気がする。
そんななか、つくりおきアドベントカレンダーも明日から始まるようです。まだ空きがあるので、みなさん参加してください!!

adventar.org

毎年、年末までふるさと納税をほったらかしにして、年末の出費がすごいことになって苦しんでいるのだけど、今年もそのようになってしまった。
でも3ヶ月育休を取っていたことで収入が3/4くらいになっていて、ふるさと納税可能額も減っていて、いつもより激しい出費ではなさそう。