日記」カテゴリーアーカイブ

スマホからClaude Codeを使う環境を整える

世間に乗り遅れることnヶ月、私もようやく今年の正月からAIコーディングエージェント(Claude Code)を使い始めた。その際の環境構築についてメモっておく。

AIエージェントを動かすにあたって、望ましいことが2つある。

AIエージェントは、(許可すれば)勝手にコマンドを実行できる。暴走してホームディレクトリを消された、という話もSNSでちらほら見かけた。そこで、AIエージェントが暴走しても問題ないように環境を隔離したい。具体的には、サンドボックスやVMなどの技術を使いたい。

そして、AIエージェントに対しては自然言語や簡単なYes/Noで指令を出すことができるので、人間が常時パソコンの前に座っている必要はない。私の場合は子供の世話があることを考えると、スマホで状況を確認しながら必要に応じて指令を出せる体制を整えたい。

この記事では、これらの条件を満たすために私が取った方法を簡単にまとめておく。

私が今使っているのがClaude Codeなのでタイトルにそれを入れたが、この記事ではClaude Code特有の話はしないので、CodexやGemini CLIでも同じようなことができるだろう。

続きを読む

iPad Air(13インチ)を買った

私は2014年ごろからiPadを使っている。当初使っていたiPadは2017年に壊してしまい、2018年にiPad Pro(12.9インチ、第2世代)を買った。

iPadの用途は色々ある。当時は大学院の数理科学研究科にいて、iPad ProとApple Pencilの組み合わせで数学のノートを取るのが便利だった。その頃の癖で、今でも数学関係のメモはiPadで取っている。画面が13インチ近くあるとA4のPDFを原寸大に近いサイズで表示できて便利だ。修論を書くときにお世話になったし、電子書籍を読むのにも便利だということだ。MacBookの画面の拡張にも使える。昔はDuet Displayというアプリを使ったが、今はmacOSの標準機能となった。

そういう便利なiPad Proだが、購入から8年経ち、劣化が進んできた。何が劣化するのかというと、バッテリーだ。使おうと思ったタイミングで充電が0%になっている確率が非常に高い。常時電源に繋いでおけば良いのかもしれないが、それはそれでバッテリーが膨張しないか心配になる。そのほか、iOS(今はiPadOSか)のメジャーアップデートも降ってこなくなった。

つまり、買い替え時だということだ。

続きを読む

Mac miniに外付けSSDをつける

私が2020年に買ったMac mini (Apple M1) は内蔵ストレージが512GBのものを選択してしまったせいで、苦労した。普段使いには最低1TBは必要だった。

そういうわけで、M1 Mac miniには「Mac mini向け・SSDエンクロージャーとUSBハブとSDカードリーダーが一体になったやつ」を買って、外付けSSDをつけていた。この時は、発熱を心配して、2.5インチSATA接続の1TB SSDを使った。

続きを読む

シンガポール日記

先月の記事に書いたように、10月にML Family Workshopで発表するためにシンガポールに行きました。

この記事は、現地でしたこと、感じたことなどをまとめます。

文中の「ドル」は「シンガポールドル(SGD)」のことで、滞在当時は1ドル122円程度で両替できました。

続きを読む

ML Family WorkshopでLunarMLについて発表した

海外デビュー

特定の技術について関心を持った人が集まって交流する会が開かれることがあります。関数型言語で言うと、今年の6月に「関数型まつり」という国内イベントが開かれました。もっとStandard MLにフォーカスした集まり、あるいは、国際的な集まりとなると、ML Family Workshopがあります。

ML Family Workshopは、関数型プログラミングに関する国際会議であるICFP (International Conference on Functional Programming) に付属して開催されるワークショップで、その名の通りStandard MLに限らず、ML系と呼ばれるプログラミング言語群(OCaml, F#等)も対象としています。きっちりした査読等はなく、比較的ゆるい感じのようです。

ICFPは今回はSPLASH (International Conference on Systems, Programming, Languages and Applications: Software for Humanity) という会議と合同で開催され、全体では1週間ほどあります。ML Family Workshopは10月16日の1日の開催で、私もその日だけの参加としました。

(OCamlについてはOCaml Users and Developers Workshopというイベントもあり、これもICFPと併設です。日付が重ならないように(隣になるように)配慮されているほか、(おそらくOCamlの方が人気なので)OCamlの枠に収まらなかった発表がML Familyの方に回されることもあるようです。)

LunarMLの開発を何年も続けていて、スター数もそこそこあるので目に留まりやすくなったのか、今年の前半に「今年のML Family Workshopで発表しないか」というお誘いをいただきました。ICFPは毎回開催場所が異なり、今年は10月にシンガポールでの開催でした。

続きを読む

子供が生まれた/後進を育成すること

9月に子供が生まれました。出産に立ち会いましたが、妻にとっては文字通り命懸けで、感謝してもしきれません。父親として、妻と共に子育てを頑張っていきます。

今は育休をとって二人で世話をしています。職場では私はそれなりに重要なポジションなので、休むと他の人が頑張らないといけません。復帰した後は、迷惑をかけた分を挽回できるように頑張りたいところです。

それにしても、自分の子供というものは思った以上に可愛いものです。見ていて飽きません。穏やかに寝ていたら「寝る子は育つ!えらい!」、泣いていたら「赤ちゃんは泣くのが仕事!えらい!」、手足をバタバタ動かしていたら「筋トレだ!えらい!」、排泄をしたら「生命活動の証!えらい!」という具合です。親バカでしょうか。

この子がどんな大人に育つのか、その時の社会はどうなっているのか、わからないことだらけですが、少しでも良い未来になるようにできることをしたいです。


子供が生まれたことが象徴的ですが、自分の人生が「後進を育成する」段階に移りつつあることを感じます。もちろん、子供を育てていくには稼がないといけないので、自分自身もまだまだ挑戦を続けていく必要がありますが。

職場は若い人が多く、上司からは、彼らに私の技術を伝達することを期待されています。私が趣味の時間も注ぎ込んで獲得した技術をどうやって伝達すればいいのかはいまいちよくわかりませんが、なんとかやっていく必要があります。

また別の話ですが、趣味で貢献しているOSSプロジェクト(GHC)で、自分でやろうと思っていたタスクが経験の浅い人にアサインされた、ということがありました。自分でやればすぐ終わるのに、とは思いましたが、いいんです。新しい人に経験を積ませて戦力として育てればプロジェクトにとって長い目で見て得だろう、ということは私にもわかりますから。GHCに関して言うと、私はGHCにSIMDを実装することに取り組んでいますが、簡単なタスクはnewcomerのタグをつけて他の人に任せる、という手段も取っていくべきでしょう。

私としては、他の人に教えるということは性に合っていると思います。大学時代にやっていたサークルでは下の代に引き継ぎをする機会もありましたが、資料はそれなりに気合を入れて作っていた気がします。あるいは、大学院時代のTAもそれなりに頑張っていた気がします。普段書いている技術記事も、特定の読者を想定しているわけではありませんが、自分の知見を共有する行為です。

私は音声よりも文字媒体の方が得意です。会社での教育も資料を作るという形でやるべきなのでしょうか。それともペアプロ等を試すべきなのでしょうか。模索していきたいです。

「関数型まつり」に行ってきた

去る6月14日・15日に東京・中野で開催されたイベント「関数型まつり」に行ってきました。と言っても、14日は地元で予定があったので、参加したのは15日だけです。

関数型まつり

3つの部屋でセッションが同時進行しており、どれも面白そうだったので、分身の術を習得しておかなかったのが悔やまれます。

直接聞いた発表に限らず、資料のみ見た発表についても、いい機会だと思って思ったことを書かせてもらいます。

続きを読む

記事を書くときに気をつけていること、読んでもらうための工夫について

少し前(4月)に、「防御力の高い技術ブログを書こう」という記事が話題になった。

防御力の高い技術ブログを書こう – じゃあ、おうちで学べる

便乗というにはいささか時間が経ってしまったが、私も記事を書くときに気をつけていることを書いてみようと思う。

続きを読む