今日の記録 2020/5/21

仕事

Next.js のチュートリアルを終えたので、過去に Vue で作りかけていたものを React で作り直し始めた。ひとまず UI の部分は数ページしかなかったので、まずそこを作り終えた。データは適当にハードコードしたので、明日以降に MySQL とのどうやり取りするのがいいのかを調べて実装する。
 状態管理用のものとして、 Redux と React Hook というのがあり、 Vue の Vuex に近いのは Redux というものなのだが、どうやら React Hook の方が新しいものらしいという情報もあり、何使えばいいのか分かっていない。ユーザーがデータを追加・削除を行い、それに依存して表示の変化があるようなアプリケーションを作ろうとしている。TODO リストなどと同じであり複雑なことをする必要はないはずなので、そのような用途に適したものが何かを探したい。

読んだ

・GEB - P118 ~ 140
小さな和声の迷路
今回は入れ子構造の対話であり、出てくるものの間に様々な同型対応が見られる。『小さな和声の迷路』と名付けられた対話とバッハの曲、入れ子になったアキレスと亀の冒険、エッシャーの『凸面と凹面』とレコード、トニックと『主音』など、多分私が気付いていないようなものが他にもありそうだた。
 最近は、数年積んでいた本を並行して毎日最低4ページくらいずつ読むという活動をしているのだが、今回のところは特におもしろく、30ページの対話を一度で読み切ってしまった。

・みんなのデータ構造 - P103 ~ 112
ハッシュ値についていろいろ。この本の全体を通して言えることだが、アルゴリズムへの詳細な理解が必要になったら改めて読みたい。

・安全な Web アプリケーションの作り方 - P151 ~ 159
SQLインジェクションによる攻撃手段の実例。

・Goならわかるシステムプログラミング - P335~338
TLS とその原理。証明書は Let's Encrypt をよく分からずに使っている程度でこの辺りの知識が皆無なので、Web アプリケーションの開発をする以上きちんと勉強しておきたい。プロフェッショナルSSL/TLSがお勧めされていたのでお金に余裕ができたら読みたい。

・システムの科学 - P70~75
情報処理能力、特に人の処理能力の制約について。ある程度時間があれば簡単に規則性などが分かるような問題に対して、極端に短い時間の場合だとその問題を解決するのが難しく、その原因として、短期記憶の容量の限界と、長期記憶に移すために要する時間によって、人(や動物など)の処理能力が制約されている、ということを実験によって確認している。
 網羅的な解決方法を取ろうとせずに、他のより効率的な手法を探そうとするのは、そもそも網羅的な手法というのが人の処理能力では困難である(情報が多すぎる)ため。その困難を回避するということが、結果として効率の良い解決手段を見つけることに繋がっている。もし無限の容量の短期記憶が人に備わっていたら、一つの問題について網羅的に解決しようと試みてしまい、人生をそれだけで終えてしまう、かもしれない。

・プログラミング Erlang - P122~126
プロセスの登録や末尾再帰など。
 P126 に練習問題があるのだが、2個目のものをどう実装すればいいのか全く分からなかった。個人がネットに上げているのを見つけたので参考にさせてもらったが、ノードをリンク状に繋ぐことや、その各ノードが次のノードに対してどうメッセージを送るか、またどうすれば一周したと分かるかなど、本を読んだだけの自分には実装できそうになかった。何かしら Erlang で実装してみたい。

やった

・英語 - 一億人の英文法とDuo 4ページずつ

この記事が気に入ったらサポートをしてみませんか?