Next.js App Router 以前にその元ネタになった Remix もそもそも流行っていなくて、Shopify はそれを認識して Remix という看板はもうその名前に値しないという判断をして終了を宣言したけど、Next.js は意地になってるのか、間違いを認めずに App Router のままで突っ込もうとしている。
既存の momentum があるので1、2年は大丈夫だろうけど、このままブレーキをかけ続けると3年後くらいに危ない気がする。
Next.js App Router 以前にその元ネタになった Remix もそもそも流行っていなくて、Shopify はそれを認識して Remix という看板はもうその名前に値しないという判断をして終了を宣言したけど、Next.js は意地になってるのか、間違いを認めずに App Router のままで突っ込もうとしている。
既存の momentum があるので1、2年は大丈夫だろうけど、このままブレーキをかけ続けると3年後くらいに危ない気がする。
Next.js、もう大方のユーザーは離れて行っているように見えるけど、そもそものサーバーヘビーにするっていう方向性が間違っているという判断を Vercel の中の誰もできていない状態になっているのが結構ヤバイ気がする。
There are 2 monoids of order 2.
One is the cyclic group ℤ/2ℤ. The other one is monoid with ({true, false}, &), which I think probably should be named "boolean monoid"
What you did is unimportant to you. What you plan to do is unimportant to you. What you see today is very important to you today and tomorrow. Control and organize what you see today.
It's sometimes fun to swim in some mud in the world, but ultimately you cannot be in the mud forever. You can't follow or pursue the mud eternally as they ultimately have no value in themselves. Your desire to any kinds of mud eventually becomes weaker and weaker as you get tired of them, and that time will definitely come as mud is mud. It is not diamonds or gold.
Money is ultimately a mud in the world, which is important for living comfortably in this world, but has no value in mathematical reality.
Mud
Everything which isn't derived from mathematical axioms is mud in the real world, which isn't supposed to be perfect, and which only exists between some rules and some unknown randomness.
Mathematics is the only human activity which is above the real world, and which is truly perfect in itself.
テストをどうやって書くか分かっているような領域 (例えば Web Backend) なんかはもうある意味ソフトウェア開発のフロンティアではないかもししれない。テストをどうやって書くのかが分からないような領域は多分ソフトウェア開発のフロンティアなんじゃないかと思う。
vscode custom editor の webview の中の cell component のテストを deno で書き始めた https://github.com/kt3k/vscode-pixeledit/commit/6afe64a754b57cf24aea48649183579093d900ad
テストをどうやって書くのかが分からなかったものにテストをつけるのは楽しい
Try fixing race condition in node compat in Deno, which happens only when initiating http request with some special http agent (HttpAgent
in @npmcli/agent
), which swaps the timing of the critical events like connect
and socket
. This fix has required really abstract understanding of the internal of node.js stream, Deno's op, and relationship/jaggling between these two.
https://github.com/denoland/deno/pull/25470/commits/c47898e2b1660f5bb6fe0e522b0f02e87cfaae4d
海外移住に限らず、もっと一般的に「環境を変えること」がゴールになってる行動は大体間違っていると考える傾向が自分にはあって、だから、環境を変えるために時間をかける事をなるべくやらないようにしている。
環境を変えるよりも、環境に自分が慣れる方が効率が良いと思っていて、だから開発環境カスタマイズをできる限りやらないようにしていたり、自分の意思決定がなるべく環境に依存しないように心がけている。
海外で何かするがゴールになっている行動が好きじゃないんだよなぁ。海外に行くだけでは何も解決しないし、めちゃくちゃしょうもないパターンの海外渡航がいくらでもある。
国内で成功して海外に招待されるのは凄いけど、そこに至るまでには海外渡航はそこまで大事なステップではないし、むしろ国内でしっかり頑張ったほうがそこへ向かって着実に進んでいる。
「このドメインモデル要らないじゃん。代わりにこういう定義を使ったらもっと上手くいく」みたいな事を思いついてすぐに実行できる環境がプログラミングしていて一番面白い。
仕事のプログラミングだと、そういう判断をする事が難しい。何故ならドメインモデルの変更には関係者の同意や説得が必要になるため、そのコストがとても大きくなる。
ドメインモデルの組み換えによるソフトウェアの進化がある意味で一番本質的なソフトウェアの進化で、その体験は趣味プロでしか体験する事は難しい。
という開発が一番楽しい
bw をしばらく作っているけど、まだ9割5分くらいテストを書いていない。
テストを書くのをサボっている訳ではなくて、テストの書き方が分かっていなかったり、何処でインターフェースを切れば良いのか分かって居なかったり、そもそも何を作っているのか理解できていない部分が多くて、そういう部分に対してテストが書けていない。
振り返ってみると、昔はこういう何を作っているのか自分でもはっきり分かっていない事がとても多かった。今は何を作っているのか完全に理解しながら作る事が多くなった。特に仕事でコードを書く場合は何を作っているのかは最低でも理解している。
何を作っているのか理解しているという事は、良い事のようでもあるけれど、ある意味で退屈な作業でもある。何を作っているか分からないという事は、その作業によって自分が知らない何かを探索しているという事になる。
bw を始めて、こういう何を作っているか分からない、未知の何かをプログラミングで探索する作業を久しぶりに再開出来たような気がする。bw の前に最後にそういう探索的プログラミングをしたのは krile-drive (13年前) だったような気がする。
問題を解くようなプログラミングや、バグを潰すプログラミングも楽しいけれど、何なのか分からない未知の何かを探すプログラミングは圧倒的に面白い。
ヘロドトス歴史を継続して読書中。バビロンの都市の描写が豊かに表現されていて、読んでいて楽しい