私が歌川です

@utgwkk が書いている

できるだけ自然言語として読めるように書く

……というのが今年の個人的なキーフレーズだったのかもしれない、とふと思った。そういうキーフレーズに対してどういう取り組みをしてきたのか、ここで振り返ってみる。やってみたらあまりオチがない感じだった。

自然に読み下せるように書く

setNewValue 関数に val 変数を渡す」と「setNewValue(val) する」だと前者のほうが好ましいと思う。文脈から読み方を想像してもらうよりは、明示的に書いてあって自然に読み下せるようになっているほうがありがたい。あるいは、インラインコードに思いを込めすぎないようにする、とも言い表せるのかもしれない。

文章のつながりを意識する

文の羅列があって、それではこれを読んでください、という態度だとなかなか伝わらないと思う。使っているツールにもよるけど、見出しや箇条書きをうまく使うようにするとか、接続詞をちゃんと使うとか、そのあたりを気をつけるとよさそう。

あとは、前提・結論・感想・意見などがごちゃごちゃになっているよりは、はっきり分かれているほうがいい。このあたりは「理科系の作文技術」を読んでもらうのがよさそう。連日同じ本の話をしている気がする。

言語化を厭わない

例えば、ちょっといまいちな実装があったとして、「この実装はいまいちですね」というレビューコメントを付けても、レビュワーにとってはどうしたらいいのか分からないと思う。何がどういまいちなのかを噛み砕いて言葉にした上でコメントを付けるようにする。「一貫性がなくなっている」「責務が大きすぎる」など、「いまいち」という言葉で済ませないように心がけている。

(細かい) 綴りには気をつける

細かいけど、英単語やコードネームなどの綴りが間違っていると、一見してそっちに気を取られてしまう。すくなくとも自分が書くときはできるだけ綴りを間違えないように書いていきたい。

ChatGPTでAIとおしゃべりブームが来ている。来ているというか、ひと通り見たので次のAIブームが来たらまた野次馬に来ます、という感じ。いまのところ娯楽としてはおもしろいと思う。

知っている単語と単語をつなげて、構文的にはつながっているけどまったく正しくない文が出てくるのを見ると、まだまだ改善の余地があると思う。知らないことをさも知っているかのように答えてください、分からないはナシです、と言われたら自分もこのように振る舞わざるを得ないのだろうか。知らないことは知らないから知らないとしか言えないと思う。

生身の人間がこのような受け答えをしているほうが厄介だなと思ったけど、自分の学部時代のレポートも似たようなものだったのではないか。一生懸命調べてまとめた結果がそうである、という違いはあるかもしれない。つまり、文章を書いて相手に伝える機会が多いといい、ということが言いたいのであった。

ここで一冊

blog.utgw.net

吉祥寺.pm 31でLTした #kichijojipm

kichijojipm.connpass.com

今回も一句用意してから臨みました。

speakerdeck.com

機能追加やバグ修正以外にも、Pull Requestにはマージされる以外の使い道がある、という話をしました。普段の活動を5分に凝縮してダイジェストする、という意識で発表していましたが、想像したよりもいい反応をもらえたように思います。Pull Requestのページはいろいろなところにコメント欄があるので活用していけるといいと思っています。


今回の吉祥寺.pmではいい話をいろいろ聞くことができてよかったです。技術的に興味深い話や、勇気づけられる話など、いろいろな軸で今年書いたコードの話が聞けました。

Relayのfetch policyは取得したデータをキャッシュするかどうかに影響を与えない

Relay 14.1.0 で確認した。Fetch Policies | Relay を読んでもRelayが取得したデータをキャッシュストレージに格納するかどうかについては言及されておらず、実験して確認した。

fetch policyはあくまでGraphQLクエリを発行するときにキャッシュを使うかどうか (ネットワークリクエストを飛ばすかどうか) を制御するものであって、キャッシュストレージの振る舞いを制御するものではないらしい。

実験に使ったコードがなくてメモ書きみたいになっているけど、GitHub - relayjs/relay-examples: A collection of sample Relay applicationsのサンプルコード (issue-tracker) で fetchPolicy の値を動的に変えたら動作確認できると思う。関係ないけどいつの間にか data-driven-dependencies っていうサンプルコードが増えていた。

Switchのゲームをプレイしている様子を配信できるとおもしろいはず、と思って、Elgatoのキャプチャーボードを買った。

そこまではよかったのだが、デスクトップマシンにUSB 3.0のポートが生えていないことが分かった。PCIスロットは余っているので増設すればよいのだけど、2016年のマシンを今後も使い倒すかどうか、買い替えたほうが早いこともあるのか? とも思って停滞している。ひとまずゲーム配信はMac経由でやっている。HDMIケーブルを抜き差しするのに加えて、Macを立ち上げる手間もあるのでそろそろ動いたほうがいい気はしつつ難しい。

もう1つ、そもそもディスプレイが足りないという問題もあった。HDMIポートが足りていないし、切替器を買ってみたけどうまく動かなかった。ディスプレイごと買い替えるか、あるいはでかいディスプレイとスタンドを買って環境をガラッと変えるか……。いろいろな変数がある中で検討が加速していない。机の大きさが有限であることを踏まえると、棚を買ったほうがいいのか? とか、そういう話題がどんどん出てくる。