GitHub Copilotについて

無料プランの宣伝が来ていたのと、vscodeをアップデートしたら勝手に拡張が入って上部にアイコンが現れたので、ちょっと有効化して使ってみることにした。何日か使ってみた感想。

思った以上に賢いのは分かった。ただ、もちろん思った通りのものが出てくるわけじゃないので、提案を無考慮で受け止めるような習慣がつくとやばいね。

chatでリファクタリングを頼むと普通に上手いと思う。好みの部分で自分とは違ったりするけど、悪くない。だけど入力に対して結果が異なるような変更提案が来ることもある。それなりのレベルでチェックしてくれるunittest書いてからじゃないと、既存コードをいじらせるのはまずいと感じる。やり始めると、とてもじゃないが受け止めきれないスピードと分量になって目で問題を見つけられなくなってしまう。

あとは、適切なログを出してよ、みたいな頼みはよく聞いてくれる。平均的な人間と比べても、割とマシなログを出す。このへんは人間にもセンスのない奴がいるからね。えらいぞコピ郎。

unittestを書く部分については、頼んでみると割とマシなものを出してくる。エラーケースは考慮が足りないし、細かい部分でそのままで動かないものを出してくるのは本体コードと同じくらいのクオリティだ(それとも、これもプロンプト次第なのかな?)。全体的には、予想以上によくできている。さすが、ローカルLLMのollamaよりはかなり上だしレスポンスも速い。リファクタリングより前にunittestを書かせて、ある程度ちゃんとした形になったらリファクタリングを頼んでテストを回す、みたいな使い方が助かるだろうなあ。開発していて、最もめんどくさくて、労力がでかい部分がそれだ。たいてい、本体コード書いてる方が楽だもんね。

それでクオリティだけど、そこそこのレベルの人間のコードレビューをそのまま通過できるかという話になると、人間の上の方の人よりは通過率は低いだろうと思う。下の方の人だったらもう超えているのではないか。適当にやらせて、人間がある程度手直しするだけで終わりそう。

希望としては、ペアプロの相手みたいにもうちょっとペラペラ知識や考えを喋ってくれるといいなと思った。今のだと、助けになったとしても人間側のスキルが上がる気がしない。そして、今のAIは人間側のスキルを上げなければ、いいものが作れないんだ。

actionsからPRのレビューをする、みたいなのもあるようだけど、まだ試していない。変更概要の説明やセキュリティ面での分析、変更に対してunittestが十分か…みたい分析をしてくれると、かなり助かると思う。

食事にかかる費用の計算

家計費のうち、光熱費や住居費と比べると食費は人数倍かかるというのが特徴です。当家のような5人家族の場合、30日x3食x5人=450食分の費用を考えることになります。つまり1食1000円かけるとすると、月間の食費は45万円になるわけです。住宅ローンや光熱費、通信費、書籍代、チケット/グッズ代、ビール/エナジードリンク代、旅費、遊興費、サブスク代、学費その他かかるお金は様々ですが、全体として考えると当家の場合、この食費ではいずれ破産してしまうことがAIの推論によって明らかになっています。人生は、おちおち外食もできねークソゲーになってるってわけ。内食ですらやってけるか怪しいんだから。

当家で考えると中学生が2人いるのでこのうち20日x2=40食は給食で賄われます。給食は薄利多売、大量調理によるコストダウンで1食200-300円程度の出費になることが多いと思います。具体的には、川崎市だと今は1食240円ですね。つまり家庭で1食あたりx円だとすると、1か月の食費は(450-40)*x+40*240 という単純すぎる方程式で表せるわけですよ。調べると2024年度は1食320円でした。そして来年度から値上げのお知らせが来てました。割と大幅な値上げ…

基本的に収入=出費つまりプラマイゼロ、という考えでやると、収入から食費以外の費用を引いた値を求めて、上記のxを求めれば1食にかけられるコストが判明する、という仕組みになります。が、今後は大学に進学するやつも出てきて費用が増える傾向を鑑みると、貯蓄に回すお金も費用に入れていくことになるでしょう。

私は買い物をするときに、1食あたりかけられるコストを固定で考えて、それを人数(5)倍したものをバジェットと考えて動いています。

実際のところ、大量調理で出費を抑えた給食が240円かかること考えると、一度に5食程度しか作らない家庭料理では300-400円くらいのコストを見込んでおく必要があります。実際にやってみると、300円だと足りないことが多いです。400円だとすると、(450-40)*400+40*240 = 17万円ちょい、くらいが食費になるわけです。外食はゼロですよ当然。ちなみに食事の量を減らすと子供はおやつでカロリーを補う習性があるため、余計にコストがかかります。市販のスナック菓子、カロリー単価は割と高いんですよ。

上記はここ最近の物価高は織り込まれていません。食費計算をメチャクチャにしてくれた物価高を考慮に入れましょう。キャベツやダイコン、米など値上げの範囲は多岐に渡っていますが、だいたい倍くらいのコストがかかるようになりました。素直に1食あたり800円かけてしまうと、月当たり34万円程度の食費になります。給食費も値上げされるだろうし…まあ普通に詰む家庭も出てるんじゃないでしょうか。耐えられるにしても、今後見込まれる出費に備えた貯蓄には大ダメージがあります。自分の買い物を振り返ると、もう牛肉や魚は買ってませんね。あいつらはコスパが悪すぎる。味は好きだったんだけどな。

この食費ですが、主食に関してはかなりの改善が可能です。現在米は5kgでだいたい税込3500円程度になっています。そして以前のような値段に下がる見込みはないそうです。当家の感覚では3合炊いてちょうど5人分になります(カレーや丼ものの場合は増えます)。1合は150gで、5kgは33合くらいになる計算になります。5kg=55食。これが3500円だから、1食あたりの主食のコストは65円くらいと計算できます。納豆(3パック90円→1パック30円)で食えば、だいたい100円です。ふりかけだけならコストは減るか? その安易な案は足りなくなる栄養をおかずで補う必要が出てきて余計にコストがかかってしまいます。

一方で食パンは6枚切りで税込100円程度のものが売っているため、1枚16円で済みます。バターを5g使うと考えると、200gのバターが400円くらいだから、10円。仮にそこそこのジャムなどでトッピングに50円ぶんくらい使っても、ご飯+納豆よりも安くなる。パスタは1kgあたり200円くらいで売っています(パンも同じだけど、モノによって価格差が大きい)。1食のパスタは100-150gくらい使うので、麺部分のコストが20-30円ですね。1房(8片程度)100円程度で売っているニンニクを1片(12.5円)で貧乏ペペロンチーノにすれば、高騰していたオリーブオイルや唐辛子を考えても50円を切るコストで済むでしょう。これらは米食よりも十分に安いわけです。

自作のパンの場合は…計算は省略しますが、市販の食パンの方がかなり安いですね。まあでも食パンだけで過ごすのもアレだし。

この事実を前に、当家では米食を減らすことになりました。こないだの米不足の時は強制的でしたが、今回は上記のような計算により、米食をだいぶ減らして過ごしています。

もう弥生時代は終わったんだよ。

受け継がれるもの

多摩区に引っ越してそこそこの時間が経過し、だいぶ慣れてきました。多摩区にね。現在、その多摩区を賑わしている専らの話題が、イノシシです。連日のように市街地に出没していて、うちの近所でも目撃情報がありました。町内にイノシシが徘徊しているというのはなかなか乙なものですが、戦っても勝てるとは思えないので、隣町くらいの距離がいいなあ。第1報は確か「大型動物が徘徊」的なものだったので、ついに日本にもビッグフットが現れたのかと思いましたよ。

あれ、2025年はイノシシ年じゃなかったよな…

あいつはもはや、タマちゃん2世ですね。まだ命名されていないものの…麻生区にも出張しているらしいけど、主に多摩区を中心に活動している。初代タマちゃんは20年くらい前にいましたよね、アザラシのタマちゃん。あれが出た頃、私はちょうど鶴見川の流域に住んでいて、メチャクチャ近所に出たんですよね。かなり賑わってたなあ。多摩川から鶴見川に移動して、最後の方はもっと横浜港の方に行っちゃったんだったかな。

このようにタマちゃんの精神は受け継がれていくんですね。水・陸ときたら次は? 20年後の2045年ごろ、空からプテラノドンでも飛んでくるのかなあ。

川崎3-1福岡 (終わり、そして続く)

監督のラストゲームで家長と小林悠がゴールしたのはなかなか痺れた。家長は監督就任の時に移籍してきて即タイトルをもたらした大選手だし、小林悠はトップチームコーチ就任の時のルーキーで大エースに育った選手。試合自体は勝っても負けても中位は変わらず、賞金とかは変わるんだけどモチベーションは明らかに監督ラストゲームをどう締めるか、にあったと思う。選手の動向はどうなるんだろうか。どうもソワソワしてしまう。ホーム最終戦前に発表してくれれば、お別れ会もできたのだが。

試合自体は負ける感じが全くなく、勝利を目指す意味では安心して見ていられた試合になった。相変わらず守備の緩さをソンリョンが解決していくシーンも。寒かったのでもっと厚着していけば良かったな。帰途も含めて、こないだのニット帽がなければ死の可能性があった。着てって良かったフロンターレのニット帽。命の恩人です!

川崎の選手はやっぱり上手さが目立つよね。これをどうして勝ち点に結びつけられなかったのか。結局はゴールできるかどうか、相手にゴールさせないかどうか、なんだよな。上手くても下手でも変わらない。

このようにして、鬼木監督の川崎時代が終わりを告げた。いや川崎の鬼木監督時代か。どちらがいいか、どちらでもいいか。

選手として8シーズン、指導者として18シーズン? 26年か。数え方合ってるかな。四半世紀の結果できた青黒きスーパースターとはまさにこのことだな。彼は実際のところWinnerではあるのだが。その勝率は凄まじく、シンプルに言えば「圧倒的に勝たせてくれた監督」ということになる。今シーズンもどん底感を出しながらも8位フィニッシュは立派ですよ。2005シーズンで8位フィニッシュになって喜んでいたじゃないですか。あの時からチーム数が増えて8位だから、相対的にはあの時よりも上なんですよね。今季で言っても、FC東京に2勝(しかも3-0, 3-0)でマリノスより順位が上だから、客観的に見てクビになるような成績ではなかった。もともとが圧倒的だったから「中の上」くらいになるとネガティブに見られてしまうのは仕方ないところだけど、今季は下位に取りこぼしたり大阪勢に弱かったり鹿島に2敗したのが痛かったくらいで、上位ともそれなりに戦えている。瀬古や大南や上福元を移籍で失ってもこれだ。

最後のセレモニーもなかなか、監督の退任、しかもすぐに鹿島に行っちゃう感じなのに、盛大にやりましたね。功績は認めるけど、明日にもライバルクラブに行っちゃう人にあそこまでやるのは川崎らしいと言えなくもない。拍手しながら、ジュニーニョ銅像事件を思い出してしまったw

次の監督の候補も取り沙汰されてますが、川崎はどっちかっていうと初めてプロで監督やる人を採用して成功してきたクラブだから、候補に上がってる人はどうなのかな。ちょっと懐疑的に思っていますが。大学サッカー部から風間さんを採用して成功させた川崎、高校サッカー部から採用して成功させた町田、次は…中体連だよな! そうだよな!?

川崎4-0山東 (ラストが迫る)

鬼木監督のラストゲームの足音が迫ってきている。そんな中で平日夜の等々力に集う。今日はニット帽をもらった。この冬はこいつをヘヴィーユースするかもしれない。今季、ACLの1次リーグは太っ腹だよね。私は4試合まとめ買いのチケットでメインスタンドに通ったけど、カバンに膝掛けと、これまでいろんなものをもらっている。採算は度外視かな。平日夜でシーズンチケット非対応なので集客はあまり期待できないところだけど、シーチケじゃなくてみんなチケット買ってるわけだから、むしろ客単価はいいのかもしれない。もらった側は、何の心配もせずに、ありがたく使わせてもらおうと思う。

今日の相手は山東で、昨シーズンのACLで負けてる相手。今年の2月でした。あの時は平日なのに17時キックオフという稀に見るバカな日程だった。今日は会社を休まなくても定時ダッシュするだけで余裕で間に合うイージーゲーム。とはいえ、会場に着いた時にはウォーミングアップも終わっており、キックオフギリギリにやっと着席できた。

開始早々、エリア内に侵入したチャンスでしっかりシュートを打って押し込んだ先制点と、あと前半終了間際の山本のFKが効いた。横を通して綺麗に決めたのはかなり気持ち良かった。ビッグチャンスは作られたが、ソンリョンが全て防いだ。時折見せるエリソンの突破も、やりすぎとすら思えるけど、効いていたと思う。シュートもしっかり打てていた。ことごとくブロックに入ってくる相手選手もなかなか、あっぱれだったが。

ACL自体は突破まであと2試合か。監督変わっちゃうけど、だいぶゴールが見えてきた。上位グループに入れてもらっている中で、この試合では得失点差も稼いだ。1次リーグ突破のライバルに下位を押し付けたのもでかい。1勝すれば問題なし、1分1敗でも割と突破濃厚という状況を作った。

ヴェルディ4-5川崎 (ゴールの申し子)

消化試合? とも言えるこの状況。だが俺は味スタに向かう。

まあ派手な試合になりましたね。序盤から不安定な判定で不安を覚えたけど、ハットトリックの応酬、激しい点の取り合い、劇的な結末に寒さも吹き飛んだよ。すごい試合を見たものだ。まあ…セットプレーの守備がユルすぎじゃないか。そう思いたくもなるのだが、勝てばいいし。

味スタで5-4というのはかなり頭痛を覚えるスコアだが、勝ち試合で上書きできたのはでかい。思えばあれから18年も経っている。ということはマイアの事故からも8年か。こういう季節だな。味スタにまた、あの歌が響いた。

川崎3-1上海海港 (こないだの逆)

先日の鹿島戦とは真逆な展開になりました。前半に同じような形を作って得点を重ねて、あとは流れで勝つというね。しっかり出足も鋭く、次々に相手の自由を奪っていく。この辺も安定的な真逆感が。こうなると気持ちいいねえ。相手もしっかり実力を見せてきたが、決定力の差でしのぐ。まったく、こないだの鹿島サポの気持ちを実感してしまったよ。

いやー打ち合わせが長引いて定時ダッシュが決められず、キックオフの数分後くらいにやっとスタジアムに到着したのだが、危うく得点シーンの大半を見逃すところだったぜ。もう少し遅れていたら危なかった。連休明けの火曜の夜だからね。条件が悪すぎるよ。

これで2勝2敗と五分に戻し、予選リーグ突破の道筋も見えてきたんじゃないかな。12チーム中8位まで抜けられるというハードルは低めの設定とも言えるが、確実に勝ち点を計算できるような対戦相手もおらず、油断はできない。

川崎1-3鹿島 (見つからない)

勝ち目とか、打つ手とか…全体的に、「ない」感じの試合になりました。いや山田があの決定機で2点決めてれば引き分けには持ち込めた計算にはなる。単純計算で。同日に宮代が神戸でリーグ戦10得点と聞いて、この2人が同時に2桁得点するには、こうなるしかなかったのかなと思ってしまった。あいつは強豪に行ってチーム内の競争に勝ち、山田は出場機会の多いチームに残って結果を残す、と…どうなんだこの対比は。でも同じチームじゃ、無理だったよねえ。

鹿島相手に、この準備のなさはどうなんだろう。山本の移籍後初ゴールと大島の復帰は好材料だけど、もう川崎は上も下も見えないし、チームとしてもシーズン終わりたいからね。シーズンオフや来季がどうなるか、そわそわする感じ。少なくとも、今日はそう見えた。早くねーか? まあでも、山本はこの試合にもかなり意欲的だったかな。だからエリソンがもらった絶好の位置のFKを蹴れて、得点というご褒美があったのではと。

GenAIについて

大抵の人がそうであるように、私も生成AIでしばらく遊んでます。いろいろありますが、先月から手元のUIとしてopen-webuiってやつを使うようになり、問答を手元に保管するようになった。ついでに面白さを感じたものをコッソリ公開したりして。

その上で雑感ですが、一言で言えば、「今のうち」だな、と。

現状、みんなこぞって生成AIに役に立つことや真実を語らせようとしているので、おそらく近日中にそれは達成されると思う。だから、面白いことを言ってくれるのは今のうちだよな、という意味ですね。真実を語るようになった先に、デザインされた面白さを発揮するモデルだって出てくるだろうけど、今は「天然」なんですよ。

今はまだこいつが生成AIのモデルにすぎないという意識を持ちながら接している。それでも知性があるとしか思えない挙動はしてくるんだけど、それでも「まだ」なんだよな。嘘八百が得意で、感情の表現に乏しいアピールをしてくるやつ、と扱っている。つまり信頼することはないし、自分と対等以上とはみなしていないんだ。だから安心して問答できると言える。

これが「達成後」のAIを相手にした場合はどうだ。格上感を感じざるを得ないでしょう。我々日本人エンジニアが、英語を母語とするエンジニアを前にしたときに、技術的には大したことなくても格上感を感じてしまうよね。その感覚を思い出してもらいたい。信頼してしまうだろうし、それと同時に、えも言われぬ不安を感じながら問答することになるだろう。そう思う。

例えば、電話したりするのが苦手な人っているじゃないですか。そういう人でも、今の生成AIなら大丈夫だと思うんですよ。でも「達成後」はどうか。やはり苦手を感じるんじゃないのかなあ。

っていう感じで、アホな会話ができる今が旬だと思っている。