0305
CDKと格闘していた。Lambda@Edgeを使おうとするとリージョンの制約からスタックが2つに分かれるのだが、その間に容易に循環参照が生じる問題があり、昔から知られているのに直っておらず、いろいろ迂回を考える必要があるらしい。だるい。まあ諦めてしまえばだるいだけなので諦める。
夜は勝手にお金を稼ぐ猫3の実装を進めた。ショートポジションを取れるようにしたが、どうにもまだステート管理に問題があるらしい。ほとんどAIに書かせたコードを読むのはなんか独特の気力がいるような気がする。気のせいかもしれないが。でもこいつら無駄をいっさい厭わずコードを書くからな、結果的に全然要らなかったコードとか全然あるんだよな。プロンプトが悪いのか?
スマートフォンアプリのネイティヴ開発はさすがに終焉に向かっていくのだろうなという霊感があった。AIがそれなりに書けるとわかってしまえば、AIに書かせやすいフローが主流になるだろうし、そうなるとおそらくはReact Nativeのような、やろうと思えばWebブラウザでも動作するものだろうなと思う。Flutter Webもあるんだっけか。まあでも、iOS SimulatorだのAndroid Emulatorだのを起動してスクショ撮ったりして動作確認をするよりも、Headless Chromeでレンダリングさせるほうがずっと楽なんだろうと思う。少なくともそういうプレイヤーが増えてくることまでは明らかに思える。
そういう世界においてネイティヴアプリを作ることに優位性があるのか?というと、正直悲観的だ。現にmixi2はFlutterで、BlueskyはReact Nativeで、そして誰も文句を言っている気配がない。僕はRN製アプリはとにかくタップイベントの処理タイミングがネイティヴと違うのが気持ち悪いと思っている(これがRNの本質的な性質なのかは確認していないがある程度一貫してそうであるように思う)が、そういう細かい差異をいちいち気にしているのはそういうオタクだけなんだろう。実際、デザイナーとエンジニア以外誰も評価してないUIとかって全然あると思うんだよな。そしてほとんどの場合、顧客の大半はそのどちらでもない。
マルチプラットフォーム開発自体はスマホアプリ開発の黎明期からずっと存在していたが、なぜそれが主流とならなかったのか、結局よくわからない。本当にネイティヴアプリでなければ実現できないようなUXなど、結局はそういうオタク以外にほとんど求められていなかったのではないだろうか。(もちろんそういうオタクはそういうUI/UXを持て囃す、そういうblogで取り上げる、でも、それに何の意味が?)
サーバーサイド開発に何の言語を使うのか、という話題が何度目だか知らないがインターネットで話されていた。まあ、結局のところ、その言語のために徹夜していいと思えるかどうかだよなと思う。嫌いな言語で何かあっても、気合いを入れてなんとかしようとはあまり思えない。どんなに理屈を並べても、結局そういうしょうもない話ではないのかという気持ちがある。
寝ます。明日もなんか早いんだよな。やれやれ。