2023-01-04
プログラミングとかいう最高の趣味
Table of Contents
やったこと
- Deno で遊んだ
- 『詳説 正規表現』の第3章を読んだ1
- Frontend catchup に参加
- Branded Types の話
- TS handbook から Utility Types を追った
- 日報の改善
感想
Deno
最近は Deno がマイブーム。このサイトは lume 製だし、今日の午前中も Deno と戯れていた。🦕 🦖
API が知りたいときは Deno Cheatsheet が便利。
Rust を書いていたのと簡単なトランスパイラ作った流れで denoland/deno_lint を読んだりもしてる。
正規表現
年末に途中まで読んでそのままにしていた『詳説 正規表現』をまた読み始めた。
あの本は使い方の説明がかなりの割合を占めていて、オートマトンの活用場所としての正規表現を知りたい俺からすると退屈な箇所が多い。でもよく考えたら正規「表現」の本なんだから、使い方・書き方の話をするのは当たり前か。
内部を知るにしても使い方が分かってたほうが良いだろうし、ちょうど良いのかもしれないと思って読み進めている。24章は中身の話なので楽しみ。
ところで、文字列を扱うとなるとどうしてもエンコーディングの話が出てくる。そのへんはちゃんと勉強したわけではないので時間とって勉強したい。良い本あれば教えてください。3
コード読み書きしたり本読んだりしてるだけで無限に時間が潰れる。こんなに楽しくてコスパのいい趣味があっていいのかな。
日報
日報4日めだけど、これは思った以上に良い。「俺は今日の日報に何が書けるだろう?」と思って本を手に取り、あとは作業興奮に任せて作業するだけで何かしらの勉強ができる。日報ベースの生活になるのが必ずしもいいことかはわからないけど、少なくとも「限られた時間のなかで何をやるのか」を積極的に選択することには寄与しているはずなので悪くないんじゃないだろうか
良さげなツール・OSS
- https://github.com/jjenzz/pretty-cache-header
- cache header をTSの補完効かせながらわかりやすく書けるやつ。天才。
- https://github.com/kosei28/ezog
- OG Image を作るやつ。 ブラウザは使わず、CJKのことも考えて実装されてる。このサイトのOG image生成に使ってみようと思ってる
- https://github.com/dotenv-org/dotenv-vault
- dotenv-vault という名前の通りで、環境変数を共有するためのツールらしい。たしかにあったら便利かも。
- file icons for GitHub and GitLab
- https://chrome.google.com/webstore/detail/file-icons-for-github-and/ficfmibkjjnpogdcfhfokmihanoldbfe/related
- GitHub のfile のアイコンをいい感じにしてくれる。
読んだ記事
フロントエンドにおける「関心の分離」は間違っていた
https://scrapbox.io/fsubal/%E3%83%95%E3%83%AD%E3%83%B3%E3%83%88%E3%82%A8%E3%83%B3%E3%83%89%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%80%8C%E9%96%A2%E5%BF%83%E3%81%AE%E5%88%86%E9%9B%A2%E3%80%8D%E3%81%AF%E9%96%93%E9%81%95%E3%81%A3%E3%81%A6%E3%81%84%E3%81%9F
「HTML と CSS と JS を同じファイルに書くなんて関心の分離に反している」、という主張を古き良き人々から聞くことがある。 これはおかしくて、そもそも HTML と CSS と JS が違う関心というのはブラウザにとっての視点であり、開発者の視点では最初からなかった。
これは本当にそう思う。古き良き人でなくても構造とスタイルは分けるべきだという人はたまに見かけるけど。
まず “HTMLとCSSが違う関心というのはブラウザにとっての視点” であり、Webの世界でそれがワークしていたのは、Webでやり取りするのが文字通りの「ドキュメント」だったからだと思っている。論文などのドキュメントは文書構造さえ残っていればスタイルは大した関心ではない。
でもUIをつくるとなると話が違う。UIである以上は視覚的な要素は欠かせないので、文書構造とスタイルを分離することの合理性は薄れる。
Tailwind みたいなアプローチもこの視点で見ればかなりいい線行ってる。構造にスタイルを載せて共有できるエコシステムは、UIを作るには適していると思う。
Kotlinで木構造を宣言的に扱うOSS kotlin-treeを公開しました
https://zenn.dev/yuitosato/articles/a98073b2bff195
木構造の処理でスタックオーバーフローを気にせずに変換・フィルタリング処理などを提供するのがモチベーションらしい。Kotlin書かないけどちょっと気になる。
また日報書きすぎた 🦕
https://zenn.dev/link/comments/dcb673d7a0b5f8
この本 とか気になっている
実際、正規表現ちょっと読み書きできるようになった