投稿者「krote」のアーカイブ

頑張るを楽しむ

最近聞き始めたPodcastに「ひまじんプログラマーの週末エンジニアリングレッスン」があり、少し前のエピソードで「頑張る人は楽しむ人に勝てない?頑張るを楽しむに変換する技術」と言うものがありました

#347 頑張る人は楽しむ人に勝てない?頑張るを楽しむに変換する技術
https://podcasts.apple.com/jp/podcast/347-%E9%A0%91%E5%BC%B5%E3%82%8B%E4%BA%BA%E3%81%AF%E6%A5%BD%E3%81%97%E3%82%80%E4%BA%BA%E3%81%AB%E5%8B%9D%E3%81%A6%E3%81%AA%E3%81%84-%E9%A0%91%E5%BC%B5%E3%82%8B%E3%82%92%E6%A5%BD%E3%81%97%E3%82%80%E3%81%AB%E5%A4%89%E6%8F%9B%E3%81%99%E3%82%8B%E6%8A%80%E8%A1%93/id1601084785?i=1000703794373

元ネタとしては、KDDIアジャイル開発センターに勤める方のスライドのよう

スライドが使われた相手としては、エピソードでは新卒の内定者向けに公演された内容とのことでした。

言っている内容はわかるし、共感はするんだけど内定者に対してこの内容ってどこまで刺さるんだろうな?というのは少し気になった。
KDDIアジャイル開発センターさんが名前的にも人気のありそうで大手だろうしいい人が集まるんだろうな、って思うけれど、このあたり、特にマインドセットの話が実感を伴ってわかるのは個人的には社会人に出てからなんじゃないかな?って思う。

もちろん、「じゃーお前は内定者向けに何話すんだよ?どうせ会社紹介で終わるんだろ」と言われるとぐぬぬとしか言えないような気もする。

T字型人材のところで出てくるスキルセットの内容というのもなかなか見て面白いな、と思った。
ここに出てくるスキルセットに何が並ぶのか?は結構会社によって違いそうで、それって同列に並べて考えるものだっけ?みたいなことを考え出すと、それ自体に意味がないのに無駄に時間を使って考えてしまいそう。

こういった内容を会社名を出してSpeakerdeckとかに公開できるというのは、そういう文化を醸成した人たちの功績だと思うし、同じように何かしら貢献できるような、会社内部事情を排除した形の抽象性を持ち、かつ意味があるような発信ができると面白いのかもしれないと、少しモヤモヤしながら話を聞きました。

あ、Podcast面白かったです。

風邪引いてると寝ていても休まらない

日曜、月曜と38度熱が続いたのですがようやく熱が下がりました。
なんですかね。歳ですかね。
38度超える熱が連日になるってのは久しぶりな気がします。

早く回復するには寝ることだろうと、基本的には寝ていたのですが、、、Garminで見返してみると

緑枠の部分。
この時間寝ているはずなんですけれど”休息”判定になっていないんですよね。

翌日のタイムラインを見てみても、昼間になってようやく休息判定がされるようになってきていますが、朝まではストレスレベルが高い状態です。

BodyBatteryが全てとは言わないですが、なんというか、熱があって寝ているときは、風邪と戦っているのであって休んでいるのではないということがわかったような気がします。

お腹の張り?

今日になって熱はなくなっているのですが、なんというかお腹の調子が変です。
痛いとかそういうのではなく、お腹が空かないような、妙に腹に物が溜まっているような。

どうやらこれは、風邪薬のせいで胃の粘膜が弱くなっていることに起因している可能性があるとのこと。

考えてみると、私自身健康診断で毎回、胃潰瘍を指摘されている身ですので、そういう症状が出てしまってもおかしくはないのかもしれない。

予防的にもうちょっと風邪薬飲んでおこうかな?と思いましたが、やめておくことにしました。

このあたりのさじ加減難しいです

何にせよ、徐々に回復しつつあり、明日からはランニング出来たらいいなー、、、と思っていたら明日は雨の予報。
うーん、前回雨の日に走って足首を痛めたような気がしているので悩みます。

風邪も足も本調子ではないので、静養ですかね。。。

風邪引いてしまった

昨日、復調の兆しなんて書いたものの、見事に風邪引いてしまいました。。。

娘が風邪を引いているので、そこから感染してしまったのでしょう。
熱も38度を超え、久しぶりの病気って感じです。

寒い、寒いー

しっかりと寝たはずなんですけどね。

復調の兆し

足首の様子を見ながらですが、少しずつ走り始めています

なんというか、トレーニングレディネスは絶望的な数値を叩き出しており、トレーニグステータスは思わず

「うわぁ、きれいだなぁ」

という感じになっていますが、直近はプロダクティブになりました。
すごい久しぶりです。

4月は、おそらくアキレス腱周囲炎と思われる足首の痛みが取れるまで走るのをやめていたので、月間走行距離は200行くかいかないか位になりそう。
しょうがないですね。

しばらくは、高強度のトレーニングは控えて、ジョギング中心のメニューにしようと考えています。

HRVステータス

トレーニングステータスはいい方向に向かっているのですが、レディネスが一向に回復しないのは、HRVステータスがベースラインを下回り続けているのが原因ではないかと思います。

うーん、見事にベースラインに入ってないですね。。。

実際のところ、睡眠時間はそれほど取れておらず、頭が重いことが多いのです。
ただ睡眠の質を上げるというのはなかなか意識してできることでもないような。。。いや、でも寝る前の行動を見直してみるのは一つかも。。。うーん。

酒もタバコもやらないし、運動もしているし肥満でもないのに健康診断は毎回引っかかるという健康状態。
一番の問題はやはり睡眠なのかもしれないな、と思い始めてきました。

Whisper.cppがビルドできない

音声の文字起こしは色々あるとは思いますが、ローカルで実行しようと考えた場合に選択肢として上がるのはWhisper.cppではないでしょうか

https://github.com/ggml-org/whisper.cpp

環境としては、様々な環境で動作可能な形なので手元のWindowsで実行しようとしているのですがうまくいきません・・・。

Quick start にある下記コマンドがエラーになってしまうんですよね。

cmake -B build
CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.10 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value.  Or, use the <min>...<max> syntax
  to tell CMake that the project requires at least <min> but has been updated
  to work with policies introduced by <max> or earlier.


-- The C compiler identification is MSVC 19.43.34810.0
-- The CXX compiler identification is MSVC 19.43.34810.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe - broken
CMake Error at C:/Program Files/CMake/share/cmake-4.0/Modules/CMakeTestCCompiler.cmake:67 (message):
  The C compiler

    "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.43.34808/bin/Hostx64/x64/cl.exe"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: 'C:/Dev/whisper.cpp/build/CMakeFiles/CMakeScratch/TryCompile-eelwlp'

    Run Build Command(s): "C:/Program Files/CMake/bin/cmake.exe" -E env VERBOSE=1 nmake -f Makefile /nologo cmTC_a73a9\fast
        "C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.43.34808\bin\Hostx64\x64\nmake.exe"  -f CMakeFiles\cmTC_a73a9.dir\build.make /nologo -L                  CMakeFiles\cmTC_a73a9.dir\build
    Building C object CMakeFiles/cmTC_a73a9.dir/testCCompiler.c.obj
        "C:\Program Files\CMake\bin\cmake.exe" -E cmake_cl_compile_depends --dep-file=CMakeFiles\cmTC_a73a9.dir\testCCompiler.c.obj.d --working-dir=C:\Dev\whisper.cpp\build\CMakeFiles\CMakeScratch\TryCompile-eelwlp --filter-prefix="メモ: インクルード ファイル:  " -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\cl.exe @C:\Users\krote\AppData\Local\Temp\nmDA0F.tmp
    testCCompiler.c
    Linking C executable cmTC_a73a9.exe
        "C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --msvc-ver=1943 --intdir=CMakeFiles\cmTC_a73a9.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_a73a9.dir\objects1.rsp @C:\Users\krote\AppData\Local\Temp\nmDA8D.tmp
    Visual Studio Incremental Link with embedded manifests
    Create CMakeFiles\cmTC_a73a9.dir/manifest.rc
    Create empty: CMakeFiles\cmTC_a73a9.dir/embed.manifest
    RC Pass 1:
    rc /fo CMakeFiles\cmTC_a73a9.dir/manifest.res CMakeFiles\cmTC_a73a9.dir/manifest.rc
    RC Pass 1: command "rc /fo CMakeFiles\cmTC_a73a9.dir/manifest.res CMakeFiles\cmTC_a73a9.dir/manifest.rc" failed (exit code 0) with the following output:
    no such file or directoryNMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe" -E vs_link_exe --msvc-ver=1943 --intdir=CMakeFiles\cmTC_a73a9.dir --rc=rc --mt=CMAKE_MT-NOTFOUND --manifests -- C:\PROGRA~2\MICROS~3\2022\BUILDT~1\VC\Tools\MSVC\1443~1.348\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\cmTC_a73a9.dir\objects1.rsp @C:\Users\krote\AppData\Local\Temp\nmDA8D.tmp' : リターン コード '0xffffffff'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.43.34808\bin\Hostx64\x64\nmake.exe"  -f CMakeFiles\cmTC_a73a9.dir\build.make /nologo -L                  CMakeFiles\cmTC_a73a9.dir\build' : リターン コード '0x2'
    Stop.

エラーメッセージからは”C:\Program Files\CMake\bin\cmake.exe”が存在しないようにも見えますが、ファイルとしてはいるんですよね。

うーん、なんだかんだ言って、プログラミングよりもこういう環境構築のほうが時間かかるし、精神力をごっそり持っていかれますね。。

Claude codeを少し使ってみた感想

先日セットアップしたClaude code。
個人開発プロジェクトとして作っている、Electronアプリで色々とプロンプトを試しています。
面白いです

自分でコードして、ビルドしてみたら失敗して、調整して、、、って繰り返すのを見ていると、いや、本当人間っぽいなと思ってしまいます。

ただ、コーディングスピードは流石に早く、それなりのボリュームを持った作業をさせると、一度に大量のコードが書かれるために、正直これを読んでいたらこういうツールを使っている意味が薄くなりそうだなと思いました。

動かしてみてうまくいかなければ、それはコードを確認するのではなくプロンプトで指示を投げるような形でしょうか。
そういう意味で、変なデグレードをなくすためにテストコードを書かせながら進めることが大事になりそうです。

一方で、何かしらトラブルが有るたびにプロンプトで指示を与えるということが本当に正しいやり方なんだっけ?と思うと必ずしもそうではなく、コードを読まないといけないシーンはそれなりにあるはず。
そう考えると、コーディングなどに対する理解は必要で。。。いや、それすらプロンプトでAIによるコードの解説を受けながら問題を特定するようになるのだろうか・・・?
うーん、そのほうが現実的なのかもしれない。

誰がどの程度使うことになるのか?

そう考えると、若手に使わせたほうがチームの生産性は上がるかもしれないが一方で学ぶ機会を失うことにもなりかねない懸念はあります。

また、全員が使うのか・・・?協力会社さんがいる場合は・・・?

使ったほうが生産性やスピードが上る可能性は高い一方で、使いこなせないとひたすらプロンプトを打ち続けることになり課金額がそれなりに行くことが考えられます。

もちろん、人件費のほうが高いケースが多いとは思いますが、必要最低限なプロンプトで最大の結果を得るような評価基準が将来のエンジニア評価で用いられる可能性もありそうです。

手でコードを書くという行為と、AIにコード生成させるという行為。
ケースによって違うとは思いますが、このあたりのバランスは試行錯誤を通じて作り上げていく必要があるのかもしれません。

シャングリラフロンティア(22)

シャングリラフロンティアの22巻が発売されました!

シャングリラ・フロンティア(22) ~クソゲーハンター、神ゲーに挑まんとす~ 

表紙はこの巻から登場となる京極です。

途中でゲーム大会を挟んだために結構長いあいだ続いたルルアイス編もここで終了。
次なるターゲットはジークウルムということでしょうか。

クターニッドがギミックボスと言う建付けだったので、今度はどういう建付けのボスになるでしょうかね。
楽しみです。

レベルキャップが外れていったり、今まで取り立たされて来なかったアクセサリー装備二関しての話題が出てくるなど、要素を追加しつつ新キャラの追加。

そして、ヴァッシュの兄貴登場。

どんな話の展開になっていくのか、23巻が楽しみです。

アラバとかもまたどこかで合流するんだろうな、と思うと楽しみですし、、、
というかクターニッドが周回だとすると、アラバも。。。。?
封将はいいとしてアラバは初回のみという扱いなんだろうか?
まぁ、NPCなのでまたルルアイスに行けば初対面のアラバと会えても不思議ではないですね。

次は8月ということなので楽しみに待ちましょう。

夏野菜をいくつか

そろそろ夏野菜の苗が出回る時期ということで、週末にホームセンターへ出かけ、いくつか購入。早速定植しました。

今回購入した苗は以下のモノ

  • スイカ*3苗
  • メロン*3苗
  • 大玉トマト*2苗
  • ミニトマト*2苗
  • バジル*2苗
  • 下仁田ネギ*30苗

スイカとメロンは黒マルチを設置したうえで植え付け。
それ以外はただの露地です。

スイカとメロン

スイカは一度大成功をしたのですが、メロンはまだあまり良い結果に結びついていません。

定植時期の目安は最低気温14℃、最低地温16~18℃以上になったころで、トンネル栽培では4月中旬ごろからになります。活着をスムーズに行い、よい雌花を咲かせるためにも定植2週間前にはトンネルを張り、定植後に十分地温を上げておきましょう。
https://www.takii.co.jp/umauma/manual/melon/index.html

う。。。トンネルはやってないな。。。
気温も考えてみると、まだそこまでは上がっていないことを考えると早くも赤信号かしら。。

スイカの栽培方法を見ても、そこまでトンネルに関しては言及されていないので、メロン独自の話なのかもしれない。
ちょっと急いでトンネル作らないと行けないかも。

トマトトマトトマト

トマトは過去に何度も作っているのですが、ここ数年はあまりに適当に栽培しすぎていて失敗しています。

難易度的にはそれほど高い印象はないのですが、放置すると脇芽がひどいことになるのと、裂果してしまうんですよね。

そして大玉トマトはなかなか難しい印象。
今年は成功したいところ。

よく、トマトはバジルとセットで栽培することがホームセンターでは推奨しているような書き方をされています。
去年もやったような気がしますが、今年も乗せられて購入しました。
昨年はいつの間にか枯れていたような気がしますが。。。

ネギ

ネギは正直、育てることはできるものの、売り物のようにいいサイズまで持っていくのがなかなか大変ですね
今回も溝を掘って植えたものの、そこまで深くはほっていないのです。

でも下仁田だからいいかな。。。などと思ってしまったり

葉物野菜も欲しくなります

苗ではないですが、小松菜とほうれん草の種もまいてみました。

他の作物と異なり、小松菜やほうれん草は種まき後30~40日で収穫と言われていることを考えると、非常にありがたい野菜です。

使い勝手もいいので、何度か時期をずらして植えるのもありだと考えています。

仁義なきスギナとの戦い

あとはしっかりと手入れをしていくことになるのですが、すでに畑にスギナが出始めています。。。
本当にしつこい。

引っこ抜いても地中でものすごい太い地下茎を伸ばしていることを考えると非常にがっくりきます。なんとかならんものだろうか。。。

それ以外にもイネ科の雑草がしつこく存在していて、ジャガイモなど地下に実をつける作物に穴を開けるんですよね。

MCPP液剤をぶちまけたくなります

問いかけの作法

安斎勇樹著「問いかけの作法」を読んだ

問いかけの作法 チームの魅力と才能を引き出す技術

問いかけが必要な世界背景

本書によれば、組織はこれまでの経営層が「問題(why)」を定義し、現場が「解決策(how)」を磨き続ける縦割り構造であった「ファクトリー型」から、相互の対話を通じて「問題」と「解決策」を探索しながら、経営層は「理念(WHY)」を探究するという水平的な関係が重視された「ワークショップ型」へとパラダイムシフトしつつあるとのこと。

この、ファクトリーとワークショップという言葉は正直ピンとこない部分はあるけれど、トップダウンで物事を決めていく面と、対話を通じてボトムアップに進めていく比率は、以前とは変わってきているとは思う。

その流れにおいて、「答えを与える」のではなく「質問を投げかける」リーダーシップスタイルが有効性であると。
著者は、真の問題解決や組織の成長は、リーダーが答えを指示するのではなく、チームメンバーに適切な問いかけをすることで生まれると説いています。

なんのために問いかけるのか

なるほどな、と思ったところとして、問いかけに対しての2つのモードが示されている点です。

チームのポテンシャルを引き出すため、メンバーのこだわりポイントを深堀りしていき、固定観念にとらわれているようであれば揺さぶるための問いかけを行う。

常に「こだわり」を育てていき、「とらわれ」を疑うという点。

チームミーティングにしろ1on1にしろ、良い問いかけをしたいと考えながらも、”良い問いかけ”とはなにか?に関しての言語化がしっかりと出来ていなかったと感じた。

懸念点

そもそも、この問いかけをするにはじっくりとした対話が必要となり、時間がかかりそうな印象は受けた。
もちろん、人と人の関係なので一朝一夕にはいかないのはわかるので、根気強くやっていく必要がありそう。

こだわりにしろ囚われにしろ、当人自身が気づいていないことを話すことになると思うし、それに気づいた後にどう話を持っていくことができるのかは結構博打になりそう。
正直、それが出来たとして、チームのポテンシャル向上につなげることができるのだろうか?はまさに未知数に感じる。

相手のこだわりというものを尊重するのはわからなくもないけれど、それがそのまま仕事においていい価値観となるのかはわからないし、それ以上に優先させる事項も出てくるはず。それを多様性の一言で認めてしまうのは違うと思うわけですよ。

リーダーの腕の見せ所といえばそうなのだけど、果たして問いかけたあとに対しての対応がちゃんと取れるだろうか、それはそれで心配だ。

Claude code を Windows で

いい加減、AIを活用した形での開発というものに対応していかないと、ということで、Claudeに課金もしているのでClaude codeを試してみることにしました。
ちなみに、やっていく過程で知ったのですが、チャットのClaudeへの課金とAPI利用となるClaude codeの課金は別に必要でした。。。

WSL環境としての準備

のほほんと、@anthropic-ai/claude-codeをインストールしようとしたところ、Windows非対応と怒られてしまいました。
Windows環境でClaude codeを使うにはWSL上で呼び出して上げる必要があるようです。

WSLの起動

WSLの起動自体は”wsl”コマンドを打つだけです

wsl

ubuntuがインストールされていなかったり、デフォルトがubuntuではなくなっている可能性もあり、その場合はエラーが出てしまいます

> wsl
<3>WSL (24 - Relay) ERROR: CreateProcessParseCommon:863: Failed to translate C:\Users\krote
<3>WSL (24 - Relay) ERROR: CreateProcessParseCommon:909: getpwuid(0) failed 2

この場合は、一覧を確認し、デフォルトをUbuntuに変更しておきましょう

> wsl -l -v
  NAME                   STATE           VERSION
* docker-desktop-data    Running         2
  Ubuntu                 Running         2
  docker-desktop         Running         2

> wsl --setdefault ubuntu
この操作を正しく終了しました。

> wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu                 Running         2
  docker-desktop         Running         2
  docker-desktop-data    Running         2

nodeのインストール

WSL環境に、nodejsをインストールします

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

Claude code のインストール

下準備が揃ったので、Claude code をインストールします

su
npm install -g @anthropic-ai/claude-code

問題なくインストールが終わりバージョン確認ができればOKです

> claude -v
0.2.69 (Claude Code)

4/13日時点では0.2.69ということで、まだresearch preview。バージョン1には満たない状態です。

インストール時のエラー

npm install を実行したときに下記エラーが起きました。

npm install -g @anthropic-ai/claude-code
npm error code 1
npm error path C:\Users\XXX\AppData\Roaming\fnm\node-versions\v22.14.0\installation\node_modules\@anthropic-ai\claude-code
npm error command failed
npm error command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/preinstall.js
npm error Error: Claude Code is not supported on Windows.
npm error Claude Code requires macOS or Linux to run properly.
npm error If you are using WSL (Windows Subsystem for Linux):
npm error   1. Make sure you are running npm install from within the WSL terminal, not from PowerShell or CMD
npm error   2. If you're still seeing this message in WSL, your environment may be incorrectly reporting as Windows
npm error Please visit https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/overview#check-system-requirements for troubleshooting information.

これは、エラーメッセージにも書かれているように、WSL上ではなくPowershellやCMD上で実行されている事によるエラーです。
WSL上のTerminalで実行する必要があります

Claude code の実行

早速使ってみたいと思います。

claude

コマンドを実行すると起動します

注意書きが続き。。。

アカウントとの紐づけをリクエストしてきますので紐づけます

一通り終わると、チャットウィンドウが残り使えるようになるので、早速エラーが出て若干放置気味だったプロジェクトで内容確認を試してみたのですが。。。

> このコードベースを説明してください
  ⎿  Credit balance too low · Add funds: https://console.anthropic.com/settings/billing

> /init is analyzing your codebase…
  ⎿  Credit balance too low · Add funds: https://console.anthropic.com/settings/billing

ということで、カネがないと。
ここで、チャット側で課金していてもAPIは別だということを知ります。

しょうがないので、$5課金してもう一度試してみたところ

● Task(Please analyze this codebase and explain what it does. Look at the main files and structure to understand the project's …
      purpose and architecture. Focus on:…)
  ⎿  Done (7 tool uses · 12.6k tokens · 28.5s)

● これはXXXX用のElectron+Next.jsデスクトップアプリケーションです。SQLiteデータベースを使用し、データの表示・分析機能を提供し
  ます。TypeScriptで記述され、TailwindCSSでスタイリングされています。メイン機能はSQLクエリ実行、データ可視化(グラフ)、結果表示
  などです。Electronのプリロードスクリプトを通じてUIとデータベース操作を安全に連携させています。

読み込んでくれました!

この一発でAPIとしては、$0.15ほど消費したようです

ここから

ようやく環境としてはできたので、ここからですね。
少し、今のコードベース上で発生していた起動時のエラーに関しての修正を指示したところそれなりに動いてくれました。

どういう形で回していくとより良いのか。いじっていきたいと思います。