ITの隊長のブログ

ITの隊長のブログです。Rubyを使って仕事しています。最近も色々やっているお(^ω^ = ^ω^)

最近の子どもたちの話を書く

すごい久しぶりにブログを書く

相変わらず忙しいんだけど、もうこういう星のもとに生まれてきたと思っててもう諦めている。

子どもが小学1年生になりました。もう6年立つのね。早いね。

初めて一緒に通学したとき、あの!あの!長男が?!一人で靴箱から上履きとって、さっさと教室に行ってしまった姿に感極まり帰宅中泣きながら帰りました。

帰ったら妻に「お前に人間の感情があったのか?」と割とひどい言葉を言われたような気もするが、まぁ普段の行動がそうなのでしょうがない(そんなひどいか?)

感極まるのは子どもの成長に感動したのもあるが、うちの子は3歳ぐらいのときにASD自閉スペクトラム症)と診断された。

当時はショックなのか、やっぱり。。。なのかいろいろな感情があって、やっぱりショックのほうが大きかったと思うが、とりあえず大変だった。

1歳なるまでは本当に手が全くかからない子だった。勝手に遊ぶし、勝手にどっかいくし、目を離さなければすごいアクティブ!ぐらいの子だった。

ちょうどコロナ禍になり、保育園に入れる予定だったけど、家庭保育することになった。ただ、妻が2人目を妊娠し、つわりが酷くとてもじゃないが見れないので、僕が見ることになった。人生で一番急激に痩せた4ヶ月だった。

1歳すぎるまでの僕は結局カスな父親で、普段家にいない(残業 or 飲んでる)ので、長男と向き合ったのはこれが初めて。めっちゃめちゃケンカした。御飯作っても食べないし、全然昼寝しないし、やるなっていっても聞かないし、結構バトった(今思い返すと、とても大人気なくて恥ずかしい)

で、その時気づく。「これは大変だ」(とても今更)と。妻に感謝し、そこから結構変わったと思います。多分。長男とも付き合えるようになりました。 

そんで2歳ぐらいになると、ちょっと癇癪ひどいな。ぐらいだった。保育園だと他の子はもう喋ってて、うちの子ちょっと遅くない?ってなってた。保育園の先生も大変そうで、「この子、とてもアクティブですね(小声)」みたいな感じで、苦笑いで返されれた。そうだよね。

3歳ぐらい前に保育園内で、定期的に診断(?)してくれる人がたまたまきて、うちの子、少し成長遅れていないか?って言われたので、成長に遅れがないか診断(なんと呼ぶか忘れたが、役所や病院で受けられるやつ)を受けてみた。そしたらやっぱり遅れていますね。ってなった。

この頃から癇癪がヒートアップ。行動もヒートアップしてきた。落ち着きがない。喋ることができないから親に要望が伝わらず本人はイライラ、親もイライラ。激怒はすごい。

妻は少し疲れていた。僕は仕事で疲れているのもあるが、ずっといっしょにいるわけじゃないので、やっぱり妻のほうが大変だと思う。

そして、3歳〜4歳の間に療育というところに通うことになりました。これまた大変で、親子通園だったので、妻は長男かかりっきり、僕はリモートワークだったので、時間調整して次男を見る。ってので分担してた。ありがとうリモートワークと調整してくれた前職(ちゅらデータっていういい会社があってだな)

療育の効果はあんまりなかったと思っている。まだまだ全然喋れないし、暴れるし、言う事聞かないし、落ち着かないし。コンボである。 そして、療育は親が成長するカリキュラムなんだなって思ってる。こういう子達の成長は遅い印象があるので、振り返ってみると、こういう子達との対話、付き合いかた。今後、いつ成長するかわからない中で、どのように対処するのか。ってのを親子通園という時間を作ってやっていく。そういう武器(?)を増やしていく。そんな内容だなぁって思っている。

あとは同じ境遇を持つ親たちと会話できること。ってのが大事なんだなって思った。

それでも、中には今の自分の子の状況が納得できていない親もいる。わかる。わかるんだけど、ぼくらは不安ながらも結構楽観的だった。いつかは成長するよね。的な。もし社会が受け入れてくれないのであれば、自分で会社起こして、こやつら雇うぐらいの気持ちだった。妻は偉大である。(僕はただただ楽観的)

ほんで、4歳過ぎたら幼稚園(年中)に入った。療育の人たちからおすすめされたからだ。午前預かりだけであまり人気がないって話だったけど、妻は専業主婦だから入れよう。ってなった。

ここから覚醒した。

突然覚える言葉が増えたり、絵本を読んで〜!って言ってきたり(たまごにいちゃんシリーズしか借りてこなかったが)、お友達と遊ぶようになったり(人間に興味あったんか???!)、すごい成長を感じました。

子ども、なんかゆるーく成長するなぁーとか思っていたりすると、突然ぎゅーんって伸びるときもあるので、油断するなって病院の先生から教わった。うちのこの場合は、幼稚園がそうだった。

なんとダンスも踊るし、歌も歌えるようになる。すごいぞ!!!!!!!

という感じで、なんとまぁ全く喋らずぎゃあぎゃあ泣いてた長男が今や宿題はやるし、国語の本を音読(まだうまく喋れてはいない)するし、算数はテキパキ回答するし、といろいろ成長したなぁって思うわけです。(なので通学初日は思うことありすぎて泣いた)

ようまぁ成長したなぁーと、妻に感謝。

ちなみに次男もASDって診断されたんだけど、この子は長男と違ってこだわりがすごい(好きなことに一直線)のと、最近は癇癪がないので多分大丈夫かなって勝手に思ってる。ケンカがすごいのでケンカだけはやめてほしい。

インプットが大事になりそう

最近、いろんなAIがすごいスピードで進化していて、もう仕事では使わざるを得ないって感じになってきました。

最近やっといろんなものを触り始めましたが、最初はずっとCopilotを使ってた。周りがCursor使っている中で。

www.publickey1.jp

CopilotはVS CodeのInsiders版を使うと、エージェントモードってのがあって、Claude 3.7 Sonnetもそこから使えます。 これを使うと、まぁ、ほぼ自動でコーディングしてくれる感じになります。

今年の1月ぐらいは「頭いいけど使い物にならねぇ!」ってなっていましたが、どうやら使い方が悪かったもようでした。僕が悪かった。

docs.github.com

これやるとすごい頭がよくなった。とにかくすごい!!

また、指示も大事。複雑だと途中瞑想しはじめるので、タスクはなるべく細かくする。 ジュニアメンバーに対してアウトプットを促すときと一緒で、「こういうことやって」「こういう仕様で」ってちゃんと指示を用意すると、AIもすごいスピードでアウトプットしてくる。で、出てきたものもある程度期待に近いクオリティなので、これまで自分で3日かかってたやつが、3時間で済んだりする。これはもう、体験としてすごい。

ここ1ヶ月はさらにいろいろ触り始めました。Copilotも悪くはないんですが、なんかClaudeに嫌われてるのか、2時間ぐらい使うとすぐ上限に達するようになりました。 全然制限解除されないからイラってなって、すぐ「Cursor」に課金した。これもまたすごくてCopilotを使ってた人ならすぐ慣れると思います。

Cursor自体は、VS Code拡張みたいな作りになってて、AIエージェントに最適化されてる。 僕はまだ使いこなせてないけど、他のメンバーが使ってるのを見てると、 VueやNuxtのドキュメント読ませたり、ナレッジ Directory(?)っぽいものを作って仕様を詰めたりとか、ガッツリ使ってらっしゃる。 ちゃんと使えるようになると、生産性ほんと跳ねそうだなって思ってます。

あともう一つ、「Aider」っていうツールもあって。

aider.chat

こいつ、Claude Codeみたいなやつなんですけど、最近「Gemini 2.5 Pro」っていうのと組み合わせて使えるようになって、これもなかなか強い。 基本的には、Cursorみたいにドキュメントや仕様を入れてあげると、パパっとそれっぽいコード出してくれる。これもまた良い。

で、今ちょっと気になってるのが、AIって、出力待ちの時間がある。AI待ちって勝手に呼んでいる。以前はコーヒー入れてたりトイレ行ってたんですが、最近はコトが済むより速く結果を返してくれるようにはなったけど、時間もったいないなーと思ったので有効活用できないかなって思った。

なので複数AIエージェントを走らせるオペレーターみたいなことができないかなってのを試してみたい。出社したら今日やりたいことを1時間くらいでまとめて、それを複数のツールに並列で投げて、Aのアウトプット待ってる間にBに投げて、Bの待ち時間にCに投げて……、みたいなことやったら、どれくらい生産性上がるんだろう?って考えてたりします。

で、最後に思ったこと。

今のところ、AIにちゃんと指示を出せてるのは、「こう書いたらできそう」みたいな仮説が自分の中にあるからだと思ってます。指示ができるのは、たぶんこれまでの経験があるからだし、逆に言えば、経験や知識がなかったら難しいのかもなとも思います。

たとえば、前にWebSocketまったく知らない状態でAIにコード書かせたら、全然動かなくて動かないなーって自分でいろいろ調べて、仕様読んで、試して、やっと「あ、これハルシネーションか」って分かる。 その後、AIに「これ動かないんだけど?」って突っ込むと、「すみませんでした」って謝ってくる。くそがーって思ったけど、結局、これからもっとAIが賢くなっていっても、インプットする人間側のスキルはやっぱり必要になるなーと思った。みんな言っていると思うんだけど、自分でも改めてそう感じました。こっちがちゃんとレビューできたり、指示できる状態であるためには、自分のインプット量を増やすしかないなーと思ったりしてます。今のままだと僕の経験の中での指示なので。レベルが自分を超えられないのが今後頭打ちしてくると予想している。

…ということを、深夜作業終わりに思ったので、音声でしゃべってそれをAIにまとめてもらいました。おやすみ

OpenHands試してみた

github.com

Devin使いたいが、もうちょい我慢ということでさきにこやつを試してみた

$ docker run -it \
    --rm \
    --pull=always \
    -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0.27-nikolaik \
    -e LOG_ALL_EVENTS=true \
    -e WORKSPACE_MOUNT_PATH=$WORKSPACE_BASE \
    -v $WORKSPACE_BASE:/opt/workspace_base \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v ~/.openhands-state:/.openhands-state \
    -p 3001:3000 \
    --add-host host.docker.internal:host-gateway \
    --name openhands-app \
    docker.all-hands.dev/all-hands-ai/openhands:0.27

3001ポートは別プロジェクトのなにかがいたので、3001であけた

起動したらhttp://localhost:3001にアクセスして指定の通り進めて色々ガチャガチャ触ってみたり、ドキュメントを眺めてみたりしてた 以下感想です

  • 総評は怖い
    • さっと指示を出したことに対して、勝手に動いているすご!って最初思ったけど、なんか突然知らないリポジトリにPushしようとして、おいおいちょいまち!!!ってなって途中とめたけど、怖かった(英語わかっていないだけで危ない操作だったのかは今となっては追えない)
    • GitHub Token発行後のことなのでしゃれにならない
  • とあるプロジェクトのリファクタリングとか試してみたかったけどできなかった
    • OpenHandsはエージェント起動やら環境を用意してーっていうとコンテナが起動する
    • git cloneして動く!というポータビリティが高いプロジェクトではないので、OpenHandsが用意したコンテナに接続しようと試みてもらったがそもそもyarn installで失敗する
  • できれば、僕が用意したホストで動いてるWebアプリケーションのソースコードをOpenHandsが手を入れれるようにして、修正してもらうー。みたいなことができるとよいなーっと思ったんですが、ドキュメント眺めている感じ、そういうオプションはなさそうだなって思った
  • コーディング規約を渡すプロンプトとか作れたらなって思ったんですがそれも見当たらずタイムアップ

AIに生成させたフロー図を直して理解する

ジュニアメンバーが提出してきた内容をレビューして、間違っているなぁとか思いながら修正しながら内容を理解する作業と似ているなって思った(過去の話)

誰かが書いた業務条件が正しいのか、実装できそうか、など読み取るときに、僕の場合はたいてい文字だけじゃ理解ができず、何度も何度も文字起こししてみてやっているが、中々腰が重たいので着手ができなかったりする

最近生成AIがとんでもない成長を見せているので、楽したいからとりあえずテキストをMermeidにしてくれ!とお願いしてできたものを読み取ったりするが、入力する文章が悪いんだろうが、これまた変な図が出来上がったりする

それをあーじゃないこーじゃないでやっていると理解が深まる。これいいなぁーって思った

自分で0から図を起こすのは面倒だけど、一定出来上がったものを修正するスタイルなので、パズル解いているみたいになっている。解いているとだんだん理解が深まっていくというフローです。自分が一から書こうとすると大変なんだけど、これはなんか間違い探しっぽい作業に似ているようで、ぼくはこっち派かもしれない

という気づきを記す(とても久々にブログを書いた)

依頼者と作業者の気持ちを理解する

ひさびさにブログ書く

出来事の学び(個人的なまとめ)

  • アンガーマネジメントを学びたくなった
  • 依頼者・作業者それぞれを経験して気持ちを理解したい
  • 大変なときこそ共有しよう。って気持ちになった

最近家を建てようとしている

無事住宅ローンも降りて、間取りはあーで、オプションはこーで、外構工事はそーで、ってやりとりを数ヶ月続けてると事件はおきた。

「すみません、、、ここのこの見積もりまだ高くなりそうで。。。」

ぼくらとしては「えーっ!なんでいまさら???」である。

それから週が立つごとに、見積もりがあがるー。オプションできんかもー。と連絡がある一方で、土地を定期的に見に行くとなんと工事が開始しているようにみえる。なぬ???って思って担当へ電話かけると「はじまっていますね。。。」とのこと

見積もり決まっていないのに工事は始まるのか????といろいろと不安になる状況となった。

そして、よくわからんから見積もりでき次第、場を設けて説明をもらおうかと夫婦でお願いしようと考えてたところ、なんとまた見積もりが〜の連絡である。

さすがに僕もピキピキ(#^ω^)となったが、その隣で妻がもっと怒ってたのでクールダウンした。

それからはお互い睡眠を削って、妻のイライラを聞くだけの旦那となっている状態で、半額セールで購入したつまみのワカメを半分も食べることができずその日は終戦した。

これは消費者庁案件では????とか、詐欺では????とか、担当者なにやっているのかー????とか色々と話したと思う。

ただ、ここまでぼくらはまだ担当者に確認はしていないので、すべて想像でのイライラなのである。っていうことをあとから思い出したら面白くなったので記しておく。

ネタバレすると、結果担当者とは話し合えて、且つ説明ももらい、色々と丸く収まったんですが、その怒りのままメールしてたらどうなってたのか。と想像すると肝が冷える。多分余計な仕事をふやしていたんじゃなかろうかなーって思った。

こういうときは、「なんでぼくらはイライラするのか」を文章にすると良い。今回の場合は「見積もりがあとから上がるのはなぜ?」と、「確定していないのに工事が始まっているのはなぜ?」である。メインテーマみたいなイライラする原因の言語化が済んだらあとは質問を並べれば良い。それをメールだったり、チャットだったり、はたまた対面だったりの質問リストして返答次第では納得できるのかできないのかはその時考えてやればいいよな。って気持ちになった。

こういうのってなんかあったよなー?とか思って、ちょっと調べたら「アンガーマネジメント」だった

こういうルールでやるのかわからないが、とりあえず「怒り」をぶつけても建設的になりづらいみたいな話は記憶しており、やっぱり落ち着いてまとめてから臨んだほうがいいよなって気持ちになった。

妻も最初はガチギレだったが、日が立ち打ち合わせ前までにはだいぶ落ち着いていたので、結果よかったなと思った。

依頼者・作業者側の気持ちを理解する

全然話違うけど、今年はプロジェクトを燃やしてしまい、その火中でめっちゃ仕事しました。いい感じの結果にはなったなと思っていますが、それに対しての工数やヘルプ、また妻へのダメージ(ワンオペを長らくお願いしてしまった)ので、とてつも猛省をしています。

家を立ててもらう側としては、発注者なので、「どうしてこうなったのか」を今回問いましたが、そういえば数ヶ月前は「どうしてこうなったのか」を逆に言われる方だったな。と思いました。

で、そう思われる共通点がいくつかあって、「なぜそうなったのか」が伝わっていないのが問題なんだろうなって思いました。

火中の人は急ぎ終わらせないと色々なことに迷惑がかかる、または遅れてしまうということになっているので、気が気でない状況になっています(少なくとも僕がそうだった)。ただ、ヘルプするにも状況を理解するにも情報が伝わらないため、周りの人や発注者はなかなか理解できず、下手するとクレームにつながっちゃうなって思いました。

これまた、たまたまの飲み会にて多くのプロジェクトマネージャーを務める人と話しになったのですが、コツは「全部伝える」って言っていました。↑の背景もあり、個人的なこれまでの経験もあり「なるほどなー」と思い、「ストーン!!!」って音が聞こえる感じで腑に落ち、納得しました。

自分で手を動かしているとなかなか発注側の気持ちを考える余裕があんまりないなーと思いつつ、意識はしたいが、やっぱりだめそうだってなりそうな場合に誰かに進捗を管理してもらうのでもいいなと思いました。進捗を伝えるということはプロジェクトの「背景」と「ゴール」があって、それが「いつ」完了するのか、また今は「誰」が「どこ」にいるのかを伝えないといけないので、依頼者へ自分から伝えるというよりは、誰か別の人へすべて共有を行い(それが壁打ちになるはず)、その上で依頼者へ説明する。のほうが準備もできてわかりやすいのかなって思いました。

大変なときこと、こういうことやらないと振り返ることもできないので(バタバタし続けて結果間に合いませんでしたーを繰り返すと地獄)頑張りましょう(戒め)

また、逆に僕がヘルプする側だとして、「多分、作業者は余裕がないだろうな」ってことを想像して、怒りはありつつも建設的に話し合えるように、「なぜイライラ・モヤモヤしているのか」を書き出して、共有すると良いなと思った。あとテキストだと圧が強くなりそうで、余計にプレッシャーかけるだろうから、対面だったり電話だったりをあとからテキストでログ残しする。が良いだろうなって思いました。