書くことって最高に楽しい!
引用元:https://news.ycombinator.com/item?id=44367084
LLMを検索みたいに使ってる人、いる?昔はGoogleで「MySQL MongoDB 比較」とか調べて公式ドキュメントとか読みまくってたけど、今はLLMに「画像保存する時のMySQLとMongoDBの比較、参照付きで」って聞けば概要くれるから探しものにかかる時間は減った。読む時間は好きだけどね、学習だから。参照もチェックして hallucination 防げるし。Postgresで写真メタデータのスキーマ考えてもらうこともあるよ。手打ちするの面倒だし、型とか忘れちゃう時もあるから。
「LLMに「画像保存する時のMySQLとMongoDBの比較、参照付きで」って聞けば」←これ、近い将来、企業がお金払って自社製品がLLMの比較で有利に出るように仕向けるだろうね。LLMは賢いから、参照とか付けて“自然な”結果に見せかけるのが得意だろうし。
僕も同じように使ってる!一番助かるのは、ボイラープレートとか半完成なコードを書いてもらうことで、難しい問題に集中できること。最近だとKubernetesのCSIドライバ作ったんだけど、NixのビルドとかPythonでのgRPCインターフェース実装とかYAMLファイルを書いてもらった。やったことなくても、たたき台があるとちゃんと動くものにできるんだよね。すごい助かった。
LLM使ってると、2010年頃にGoogleで検索してた時の感覚に近い。「何でも見つけられる超能力」みたいな。今のGoogleはほんと使いにくくてイライラするけど、LLMは情報収集が速くて質もいい。参照元も結構ちゃんとしてるし。でも、これもGoogleみたいにいつかダメになるのかなってちょっと心配。
僕はLLMに技術的なこと聞くと、微妙に間違った情報返されて、何時間も無駄にすることあったんだよね。参照もあてにならない時があるし。でも、一番使えるのは「あれ、あの言葉なんだっけ?」みたいな時に、概念を説明するとその言葉を教えてくれる「逆検索」かな。それだけはいつも的確。
LLMにボイラープレート書かせるって言うけど、なんでそもそもそういうのを抽象化しないんだろうって疑問なんだよね。もしかしたら僕の脳みそがLispに汚染されてるせいかな。
「公式ドキュメントとかブログとか読んでたけど、今はLLMに聞けば楽になった」っていうけど、そうすると自分で調べて読む「学習時間」がなくなっちゃうよ。LLMに答えをもらうだけじゃ、自分で理解して内省することができないから、次に同じ問題に出会った時にまたLLMに聞くことになる。記事のRegexエンジンの例みたいに、自分で作るからこそ学べることってたくさんあるんだ。
それはLLMの使い方が間違ってるだけだよ。今のモデルは、ちゃんと深くリサーチして、正確な引用付きで詳しい分析を生成できるんだから。
これって、LLMがない時代からあった問題だよね。情報の信頼性をどう見極めるかって話。結局、人間の評判とか、誰が言ってるかとかで判断するしかないんじゃないかな。
それって、モデルそのものじゃなくて、対話エンジンの方の話じゃない?
LLMは信頼性判断に使う文脈情報(スペルミス、広告、評価数とか)を無視して全部同じように出しちゃうんだ。
Web検索で得られる信頼性の手がかりを失う感じ。リファレンスを追うならWeb検索と変わらないしね。
LLMやChatGPTも、今の検索みたいにSEOとか広告みたいな邪魔なものだらけになって、精度が落ちるのかなって心配。
Perplexity使ってみて。情報探しにすごくいいよ。もうWeb検索ほとんど使わなくなったもん。
もう「ちゃんとした」コードを書くのはほとんどやめた。
擬似コードみたいに指示を書いて、LLMにコードを生成させてるんだ。
ロジックは自分で考えるけど、構文はLLMに任せる。これでほとんどの時間がコードを読む方に使えるようになったよ。個人的にはこれでいいかな。
たくさんのLLM開発者がいて、オープンモデルもあるのはマジ感謝。
広告は入りそうだけど、競争があるからGoogleみたいにはならないかもね。
複数のモデルで比べて使うようになりそう。
うまくいけばいいけど、適切なプロンプトの言葉が分からないと詰むことがある。
RakuのSlurpy sigilsみたいに、専門用語を知らないとLLM(Claude)は全く役に立たなかった。
自分で調べて言葉を知ってからじゃないと答えが出なかったよ。
Lispみたいな抽象化でボイラープレートを消すのと、LLMでその場で作るのは全然違うね。
前者は質高いけど設計必要。後者は質は低いけど楽で、ちょっと手直しすれば使える感じ。
LLMが毎日チューニングされてると誤解してる技術者結構いるみたい。
これは結構重要で、Perplexityみたいな良いツールを使わない人もいるらしいよ。
あいまいなWeb検索として使うので十分だし、すごく役立ってるよ。
情報源を見つけるのが目的の時もあれば、さくっと情報欲しい時もある。
その時はスペルミスだらけのブログ読むときみたいにちゃんとチェックするね。
オンラインLLMサービスを収益化しようとする動きと、個人がローカルで動かせるパワフルなLLMハードウェア開発の間で競争が起きるだろうね。
RAGと組み合わせれば、自分でホストするLLMの方が広告なしでもっと公平で良いソリューションになるはずだよ。
テクノロジーって触媒だよね。‟既に問題だったもの”を‟今や大惨事”に変えるのが得意なんだ。
もうLLM検索の最適化が新しいSEOだって言われてるもんね。
HNの文脈で‟みんな”って言ったんだよ。
もしLLMがSEOされまくって、検索エンジンと同じ道をたどったら面白いのにね。
尊大なLLMのせいで、さらにひどくなってるんだよ。
> LLMを検索エンジンみたいに使ってるの、俺だけ?
Googleもそう思ってるみたいで、今じゃ検索結果のトップにAIが作った答えが出るんだ。ちゃんとAI生成って書いてあって、ソースも示してるよ。
AIから逃れようとしてたんだけど、Googleの実装は結構良いって認めざるを得ないね。
これだよ。最初は疑ってたけど、検索して答えるの本当に得意だね!
とはいえ、ニッチな検索とか新しいことについては結果を二重チェックしなきゃ。たまに”ソース”がただの誰かの意見だったり、古いReddit投稿で全然関係なかったりするからね。それに、自分で手動で検索したりSOの回答を掘り下げたりした方が良い結果が出る時もある。
今はPerplexityを使うかGoogleで検索するか、勘で決めてるよ。
Generative Engine Optimization (GEO)って用語らしいよ。
昔のGoogleみたいにうまく機能するGoogleを今作るのって無理だと思うんだよね。Googleが新しいコンテンツの作り方を変えちゃったことの方が、ツールそのものの変化よりずっと大きかったんじゃないかな。
キャリアで一番良かったことの一つは、6ヶ月の休暇中に1週間で一つずつおもちゃのプロジェクトを終わらせた経験かな。期限を決めないとプロジェクトってどんどん大きくなっちゃうけど、1週間で何か使えるものができるとすごく自信になるんだ。プログラミングの楽しさも再確認できたし、新しい仕事を探す時も役立ったよ。もし休みが取れるなら、LeetCodeとかじゃなくて何か作ってみて!
もっとコメントを表示(1)
個人的なプロジェクトを作る時、gen AIはすごく役立つと思うよ。僕はバックエンドが主で、フロントエンド、特にCSSが苦手なんだ。前はCSSで詰まるのが嫌でプロジェクトを避けがちだったけど、AIを使えば「綺麗にして」って言うだけで85%くらいやってくれる。あとは自分で微調整すればいいから、前よりずっと個人プロジェクトをやるようになったんだ。
6ヶ月の休暇ってどうやって取ったの?
僕もそれくらい休んでみたいけど、もし辞めたら次の仕事が見つかるまで時間がかかるんじゃないかって心配だよ。
おもちゃのプロジェクトについて、もし知らない人に特定の箇所を説明できるかチェックしてみると良いよ。もしできなかったら、それは理解できてないってこと。チームでやる場合も同じで、最低一人は全部説明できるべき。AIに丸投げするのは危ないよね、簡単なCSSレイアウトでも。
25年の経験があっても、仕事探しに8ヶ月かかったよ。履歴書が魅力的で面接が上手じゃない限り、市場が回復するまで慎重になった方が良いと思うな。
昔はClassic ASPとかで家のサーバーに簡単に環境作れたけど、今はCI/CDとか新しいことやりたいと思うと、個人プロジェクトでも開発ライフサイクル考えすぎちゃって立ち止まっちゃうんだよね。
おもちゃのプロジェクトって、ホスティングとかデプロイはどうしてる?
仕事探しで何がボトルネックだったと思う?求人が少ない、面接までいかない、それとも面接で落ちる?
僕の専門分野だと、住んでる街では求人は少ないけど、面接はそんなに難しくなさそうなんだ。通るかは分からないけど。
AIは苦手なコード部分を埋めてくれるけど、自分で書いたわけじゃないからコードへの愛着や理解が薄れるのが欠点かな。
解決策の一つは、AIのコードをコピペじゃなくて手で入力すること。そうすると、ただ読むよりコードのパターンが良く見えるし、繋がりを感じられるんだ。昔からやってる方法だけどね。
残念だけど、次の仕事を見つけるにはやっぱりLeetCodeが大事なんだよね。
面接でいつも緊張しちゃって、何回か失敗したんだ。前は知り合い経由で仕事見つけてたけど、今はダメでさ。次は面接の先生つけたり、落ち着く薬とか試してみようかな。
LeetCodeの面接で役立ったコツは二つ。まずシンプルに動くものを作る!そして、自分が何考えてるか面接官にちゃんと話すこと。完璧じゃなくても、とりあえず完成させて説明できるのが大事だよ。影響力のあるシステムは作れるけど、アルゴリズムの専門家ってわけじゃないんだ。
個人プロジェクトは見た目悪くても全然OK!適当にいじるだけでもめっちゃ学べることあるんだ。コンフォートゾーンから出て、慣れないことでもやり続けるのが大事だよ。自分はバックエンドでちょっと劣等感あったけど、これで自信ついた。でも、楽しむのが目的ならGenAIとか使っちゃえばいいと思う!
FAANGみたいな会社辞めたんだけど、マジでメンタルも次の仕事見つけやすさも劇的に良くなったよ!自分が本当にやりたいこと考える時間もできて、スキルと興味がどこで合うかハッキリしたのも転職活動に役立ったな。
面接前は「もう落ちたもん勝ち」って思うようにしてるんだ。緊張してきたら「友達と話してるだけ」って自分に言い聞かせてるよ。
ソフトウェア全体を自分で作ってないと、自分のプロジェクトでも全部は説明できないと思う。ファイル書き込みのカーネルの話とか聞かれたら難しいでしょ。
クラウドのVPS借りれば、自分のサーバーみたいに使えるよ。DigitalOceanで月12ドルとか。ファイル置くだけ。まあ、自分はフロントエンド開発者だからシンプルだけどね。
AIがファイルに詳細書いて、別のチームのAIがそれを読んで分かってくれるなら、人が理解するのと同じくらい良いんじゃないかって今思ってる。読み方も提供する情報もAI経由で。
AIを「パワーアップした検索」として使うのに超同意。コード書くときは、まずは普通の言葉で質問してみて、AIが出した例を見ながら質問を細かくしていく感じ。AIのコードを手で自分のコードに合わせて書き写すのが、フレームワークとか理解するのにすごく役立ったよ。
ずっと持ってるVPSとドメインがあって、Docker ComposeとVPSでだいたい足りたな。自分もOps系は苦手だったんだけど、「もういいや」ってシンプルにやったら、それが正解だったんだよね。個人プロジェクトは、そのプロジェクトで何を一番学びたいか一つに絞るのがコツだよ。全部完璧じゃなくていいんだ。
俺のトイプロジェクトのほとんどは、systemdのサービスファイルとrsync+restartコマンドでデプロイしてるよ。
たまにSSHで入ってインストールコマンドを叩く必要があるくらいかな。
見た目を悪くしたくないんだよね。Gen AIにCSSの開始点を作ってもらっても、結局全部チェックして修正しまくる。
正直、CSSの細々したの弄るの全然やりたくないし興味もないんだよ。ただ忘れた構文を思い出させてくれるだけ。
だからGen AIはシェルスクリプトでも超役立つ。
manページを漁るより、AIが出力した特定の引数を見た方が断然早く学べる。
普段やらないことは長期記憶に残らないからね。
まさに今、そのフェーズにいるよ。一週間で終わるはずが、もう三週間経っても終わってない。
Flutterでシンプルなマルチプラットフォームアプリ作ってるんだけどね。
一週間で何か使えるものを作るのが大変なんだ。
以前は二日で二つ作れたんだけど。
Flutterの件は、まずツールとSDK動かしてHelloWorld出すだけで二、三日かかった。
必要な機能全部作るのに一週間。
で、まただよ。APKビルドするだけで数日かかった(ランダムなエラー、ビルドツールの問題はまだ解決してない)。
それからAndroidの権限周りの整理で一週間大騒ぎ。
これはまだ解決してないんだ。
プロジェクトにコピペするより、手で打ち込むのがいい、って話だよね。
ああいう機械的なコピーって、何をやってるのか理解したり慣れたりするのにたぶんすごく大事だよ。
昨日の夜もちょうど趣味のプロジェクトでChatGPTに代数と幾何を手伝ってもらったんだ。
錆びついてて行き詰まったから、ボットに助けを求めたんだ。
親切に簡略化/代入/解決の全プロセスをステップバイステップで解説してくれて、それを鉛筆と紙で手で書き写したんだ。
ああやって機械的に追うのが、すごく理解の助けになったよ。
もっとやってみるつもりだ。
もし説明できないなら、そこに理解してない部分があって、学ぶ機会を失ってるってことだよね。
もちろん、ライブラリとかを再利用する場合もそうだ。
ええ、ライブラリではそれが目的だもんね、ソフトウェアのコンポーザビリティと再利用性。全部頭に入れておく必要はないんだ。
ここでも同じ。
「学ぶ機会を失う」のは、物を作らないとか、作るのがすごく遅くなるよりは良い選択肢になり得るんだ。
結局、使ってるライブラリの中身を修正する羽目になったよ。
ムカつくんだよね、オンボーディングのドキュメントが酷かったり、SDLCが壊れてたり、パフォーマンスの問題があったり。
昨日は一日中、あるライブラリのパフォーマンス問題修正してた。
たぶん君も同じような経験あると思う。チームワークって、一人で作る時やMVPサイクルの長い時とはモチベーションが全然違うんだ。
「XをやるのはYを先にやった方が楽だ。でも今Yがブロックされてるから何もできない」
対して「誰かがこれを待ってる」っていう状況ね。
あなたはポイントを見失って極端に考えてるよ。
例えばブラウザ拡張を学ぶために、訪問した全サイトをテキストファイルに記録するトイプロジェクトを書いたとしよう。
目標はブラウザ拡張を学ぶことで、カーネルキャッシュを学ぶことじゃない。
明確な境界線があるんだ。
もしトイプロジェクトが美しいウェブアプリなら、CSSは何層も深い知識じゃなくて、表面にある。
それはプロジェクトを「自分のものにする」ために学ぶべき依存物だ。
もしウェブアプリだけど見た目はどうでもいいなら、CSSには時間を使いたくない(手で書くかAIとやり取りするかに関わらず)。
醜くても構わない。
これらの依存物と知識の層を理解することも学習の一部なんだ。
繰り返すけど、これはチームでも同じ。
あるレベルで、チームにそれ知ってる人がいないと危うい状況になるものがある。
多くの人がこのことを理解せず、「ここで作られてない症候群」とか他の馬鹿げたことと勘違いしてるのは、実際恐ろしいよ。
それはつまり、あのレシピ(車輪の再発明をするな、良いは完璧よりマシ、等)が、なぜそれがあるのか理解せずに繰り返されるマントラになって、境界線が恣意的で無意味になったってことだ。
見知らぬ人が君のトイプロジェクトの特定部分について尋ねたら、説明できる?って現実的な確認方法、いいね。ベンチマークとして良いと思う。
それはLLMにも当てはまると思うよ。
AIによるコード生成で一番良い結果が出たのは、そのチェック(=自分で説明できるか)をクリアした時だった。
LLMを使う時、チャットボットは見知らぬ人なんだ。
実際、AIを使ってフラストレーションを感じることの多くは、ユーザーが具体的に説明する能力がない状況に合わせて調整されたモデルに対してのようだ。
それが最低レベルでは最良の結果かもしれないけど、特定の質問に対して汎用的な回答が来るのはイライラするよね。
特殊化されたモデルが、異なるレベルの想定される知識や期待に焦点を当てるように分岐する可能性があるね。
多分、思考のモードを持つようになるかも、もっとトーンベースのMOEみたいに。
誰かファインチューンの混合(mixture of finetunes)をやってるのかな?
少なくとも俺にとっては、Gen AIは物事を学ぶのをすごく早くしてくれると思うよ。
例えばさっき言ったみたいに、以前は非効率なこと弄り回すのに時間かけたくなくて、やろうとも思わなかったプロジェクトがあったんだ。
今はGen AIにスタート地点を作ってもらって、「ああ、grid layout使うとこうなるのか」ってすごく明確にわかる。
色々いじってみると、どう動いてるのかすごくよくわかるんだ。
もっとコメントを表示(2)
俺も「動くソフトウェア」に対する興味は、時間やエネルギーよりずっとたくさんあるんだよね。その多くは、千回もやったような当たり前で退屈な詳細がたくさん。やりたいことができるってことに、正直ちょっとワクワクしてるんだ。
とはいえ、AIが書いたものを手直しするってのは、それ自体が課題で面倒な作業でもあるんだよね。だから、決して良いことずくめじゃないよ。
免責事項:まだ実験のかなり初期段階なんだ。数ヶ月後にこの意見を持ってるかは分からないけどね。
実は、自分にとってでも良いから、実際に役に立つソフトウェアを作るのが好きなんだ。仕事でパッと作ってみんながそれに頼り始めると、それが一番クールだね。
車についても同じで、安く直して動かし続けられるのが満足なんだ。ガレージにしょっちゅう置いてあるような、2000年代中盤のBMWプロジェクトみたいなのはやりたくないな。
うーん、どうだろうね。通勤に使う唯一の自転車をいじるのは、仕事に行くのに必要だし、遅刻したら上司がすごく怒るって状況だとストレスかもね。もし予備があったら、そこまで悪くないんだけど。
実は、この例えすごく好きなんだ。だってね、
1)車って複雑すぎて、重要な修理は自分でできないことが多いじゃん?
2)俺たちの生活って、この超複雑な乗り物に合わせて完全に成り立ってるんだよ。
3)たまにランダムに故障して、関わる人みんなにとってちょっとした危機になるんだ。これは、プロに頼むために一日仕事を休まないと解決できないことが多い。
4)自転車も全く同じ状況なんだけど、ちょっとした工具キットがあれば、ほとんどの問題は自分で直せるんだ。
なのに、車を持つことが「ちゃんとした大人」って見られてるんだよね。
いくつか考えたんだけどね:
カスタマーサービスとかを除けば、ほとんどの職場は成果重視で、誰かが一日休んでもそんなに大したことないんだよ。
もし本当に従業員の「稼働時間」を気にするなら、皆職場の自転車圏内に住んで、自分の自転車を直せるようになるべきだよ。たぶんバス路線もあるだろうけどね。
十数年一台の自転車を使い続けてる者として(まあ来年には変えると思うけどね)、「車を持つのがちゃんとした大人って見られる」ってのが、一台持ちをさらに大変にすることもあるって言わせてもらうよ。
もし自転車がパンクしてチューブもなくて、その日忙しい予定が入ってたら、地元の自転車屋に持って行くしかないんだけど、そういうとこって大体閉まるのが早いんだよね。もし営業時間逃したら、もうどうしようもない。
車なら、大体エコシステムが進んでるから、ロードサービスみたいなのを呼んで、スペアタイヤ付けてもらうとか、店に持って行くまでの繋ぎができるんだ。
これってSaaSと自分でいじるツール(Tinkerer tool)の良い例えだね。自分でいじるツールは、まさに自分のニーズに合わせてカスタマイズできるんだ。部品さえあれば、夜10時に夕食後でもガレージで自転車をいじれる。でも、時にはそのツールのおかげで一晩中作業になったり、どうしようもなくなったりする。でもSaaSは、他の人たちがフルタイムで面倒見てくれてるんだよね。もちろんお金は払うけど、どうしようもなくなる状況は少ないよ。
(個人的には、自転車が使えなくて仕事に行かなきゃいけない時は、公共交通機関使うけどね。)
> 1) 車って複雑すぎて、重要な修理は自分でできないことが多いじゃん?
自分で車を直す方法を学べたことは、いつも感謝してることの一つだよ。そんなに複雑じゃないんだ。大体はボルトと図面を見ることだけ。
もちろん、ピストンにひびが入ったらエンジン載せ替えるしかないけど、それは修理って感じじゃないしね。
ブレーキ、ローター、キャリパーなんかは、自分でやる代わりに店に払う金はほとんど犯罪レベルだよ。スパークプラグなんて超簡単。直噴エンジンのインテークマニホールド外して燃料インジェクター交換するみたいなことだって、そんなに難しくないんだ。
車を複雑にしたのは、それに繋がってる全ての電装系だよ。ICE(内燃機関)車のメカニクスは、大体同じなんだから。
でもさ、
1)壊れるのは大体電装系じゃん?
2)たとえ車いじりが得意だとしても、自転車はそれに比べてマジで超簡単なんだ(まあ、馬鹿げた比較だけど)。
もちろん、やってることは違うし、車ができることはもっと複雑だよ。だから公平な比較じゃないね。でも事実は変わらない!
> 皆が職場の自転車圏内に住んで…
そして現実が来るんだよ。結婚してパートナーの職場が街の反対側だったり、家買っちゃって、でも転職したいけど、自転車で行ける範囲の仕事に限定されちゃうとか。色々あるでしょ…。
俺は自転車通勤してるけど(前は4マイル、今は2マイル)、みんなが職場の自転車圏内に住むなんて非現実的だよ。
現実なんて、俺のコメントにはとっくに来てたよ。引用してくれたとこなんて、実質「もし(false)なら…」って話だからね、ハハ。
俺は本当に自分専用のソフトしか書かないんだ。自分用にソフトを書くのと、プロダクション品質のソフトを書くのとじゃ、時間の差も(そして楽しさレベルも)ものすごいんだよ。
機能がSafariで動かないって? 知るかよ、俺Safari使ってないし。直す必要なし!
個人サイト作るの最高!生きた遊び場みたいで楽しいんだ。
たとえば、家計簿にbeancount使ってんだけど、v2からv3にアップグレードしようとしたら壊れちゃったんだ。30分いじってもダメで諦めたんだけど、2週間後に再挑戦したらすんなりできて全部動くようになったよ(まだ全部試してないけどね)。
>明日通勤に使う自転車をいじるのはストレス。
他の人も毎日使う自転車をいじるのはどう?それは”仕事”だね。
簡単な解決策は自転車を2台持つことだよ。使わない方の自転車をじっくりいじれるし、必要なパーツも揃えられる。
これ、何年もComputer Graphics学ぶためにやったよ。週末や夜に変なもの作りまくったけど、全然お金にならなかった。でも、そこで得た知識が夢の仕事につながったんだ。作ったのはこんな感じだよ:
ー Tiny ray-tracer: https://github.com/diegomacario/Super-Sunshine
ー 2D rigid-body simulator: https://github.com/diegomacario/Dyna-Kinematics
ー Character animation system: https://diegomacario.github.io/Animation-Experiments/public/…
ー Animation curve visualizer: https://diegomacario.github.io/Animation-Magic/public/index….
ー Motion capture playback in the web: https://diegomacario.github.io/Hands-In-The-Web/public/index…
知識を得るためだけの大量のコードさ。
記事の意図はすごくいいと思うし、AI時代に入る今、プログラミングの楽しさはもっと大事になってるよね。
でも、書かれてる時間見積もり、短すぎない?僕、別に遅くないけど、多くのプロジェクトはもっと時間かかると思うな。特に1日2〜3時間だけだと。Coding始める前に調査や学習にかなり時間かかるはず。
たとえば最近、Pelicanブログを自分で書いたOdinのStatic Site Generatorに置き換えたんだけど、1日2〜3時間で2週間かかったよ。これ、リストのよりシンプルなやつなのにね。
君のプロジェクトは、おもちゃのプロジェクトよりはるかに仕様が明確だよ。だって、リリース後にちゃんと動くことを期待する”本当の顧客”(君自身)がいるからね。その期待が、おもちゃと本物のツールを分けるんだ。
1時間でWord Processorだって書けると思うよ。1文字ずつ追加か削除だけ(範囲選択なし)。決められたファイル名(”output.txt”)にしか保存できない。終了操作がないからProcessを強制終了しなきゃいけないかも。でも、それはおもちゃのWord Processorとしては十分でしょ。
確かにそうだね、僕の例は”本番リリース”されたものだし、使い捨てのStatic Generatorのおもちゃプロジェクトとは比べられないかも。
でも、やっぱりあの時間見積もりは違うと思うな。だって、ああいうプロジェクトはCodingそのものより、調査や学習にすごく時間かかるはずだし、何か問題が起きたときのTroubleshootingの時間もかかるでしょ。
僕にとって、おもちゃプロジェクトの楽しい点の一つは、納期がないことなんだ。だから時間をかけられる。そう、記事が示唆してるよりずっとね。
例として、COVIDが日常になってからずっと、PEGベースのTuring complete languageを磨き続けてるよ(AOT-to-Cと高機能なREPL付き)。
あのリストの”X days”を”24✕X hours”と解釈すれば、もっと現実的になると思うよ。