小さなツールであれば、もうClaude Codeでいいよね、自分で書く必要ないよね、という気になってきた。 TeamsのWEBVTTから議事録を作るツール、僕は1行も書いてない(実際のところは、devcontainer設定ファイルだけいじった)。 でも、機能追加とか仕様変更とかそういうのの実装をAIに依頼し続けると、どうしてもコードが肥大化していく。 肥大化は肥大化でも、やたらメソ...| 理系学生日記
コーディングエージェントによるコード生成の精度は結構いい感じになってきていて。GitHub CopilotとかClaude Codeとか、コーディングアシスタントだかエージェントだかがどんどん現場に入ってきています。 でも、これらのツールに「いい感じのコード」を書いてもらうには、プロジェクトの目的とかルールとか、ちゃんと伝えないといけない。いわゆる「オンボーディン...| 理系学生日記
生成AIを使った生産性向上というのは猫も杓子も取り組む領域なわけですが、特に「生成AIにコードを書かせる」場面では、AIが学習していないライブラリやフレームワークを使うときに大きな壁が立ちはだかる。AIは学習データに含まれていない情報には弱くて、正確なコードや使い方を提案できないことが多い。 この壁があるからこそ、ゼロショット(AIが事前学習だ...| 理系学生日記
VS Code v1.100で登場したgithubRepo機能、試しましたか? いや全然知らなかったんだわこれ。 You can now use the #githubRepo tool to search for code snippets in any GitHub repository that you have access to. This tool takes a user/repo as extra input. For example, "how to implement factory pattern in TS #githubRepo microsoft/vscode". …| 理系学生日記
Claude Codeなどさまざまなコーディングエージェントが隆盛を誇る中で、GitHub Copilotも着実に進化を続けています。特にエンタープライズ開発における信頼感を考えると、GitHubやMicrosoftがバックに控える GitHub Copilotの安心感は捨てがたい。 特に最近のCopilotでは、「Instructions」と「Prompts」という2つの新しい概念が導入されていて、これがチーム開発での活用を大きく広げら...| 理系学生日記
Claude Code、便利ですよね。課金した。コードの自動生成やリファクタリング、ちょっとした調査まで、開発現場での「もう一人の自分」として頼りになる存在です。でも、企業や組織の“境界型ネットワーク”、つまり外部との通信を厳しく制限している環境で使う場合、ネットワーク疎通要件が気になる人も多いのではないでしょうか。 公式ドキュメントに書かれて...| 理系学生日記
はじめに もし、すべての開発ドキュメントや成果物が「リポジトリ」という一つの場所に集約され、AIや自動化ツールがそれらを自在に読み書きできたら――。そんな“Single Source of Truth(SSoT)”な世界を想像しても、結局のところ要件定義や設計ドキュメントはOffice文書だったりGoogle Docsだったりして、AIがうまく扱いにくい。 全部リポジトリで管理できたとして、AI...| 理系学生日記
はじめに:遭遇したメモリエラー なぜSARIMAXでメモリエラーが起きるのか? simple_differencing=True でなぜ解決するのか? 実装例 メリット デメリット・注意点 まとめ はじめに:遭遇したメモリエラー 時系列解析でSARIMAモデルのハイパーパラメータ探索をAICで行う際、statsmodels.tsa.SARIMAXを呼び出していると、以下のようなエラーに頻繁に遭遇しました。 numpy._core_.exceptions._Arr...| 理系学生日記
業務で使えるようになったことや、生成AIと一緒に使う楽しさもあって、最近はObsidianを使う人がどんどん増えてきました。 僕自身もいろんなObsidianの記事を読んでいるうちに、「Zettelkasten(ツェッテルカステン)」というノート術に出会いました。これについては『TAKE NOTES!』という本がすごく参考になったので、ぜひおすすめしたいです。 Zettelkastenとは 受動的学習の...| 理系学生日記
業務でAIばかり考えることになっているのですが、データからモデルを学習し、そのモデルを使って未知のデータに対して推論を行う技術群をAIと呼ぶとすると、いわゆる統計モデルでの機械学習も当然その中には含まれます。従って、統計モデルを用いた異常検知も当然AIという広大なスペクトラム上にある。 異常検知の第一歩は「正常データを予測できるモデル」を...| 理系学生日記
ひょんなことから異常検知という分野に関わることになり、実務で使えそうな知識を得ようと、いくつかの入門書をAmazonで購入しました。異常検知は機械学習の一分野に位置づけられ、多くの数式や背景知識を必要とするため、初心者にとってはその全体像や実践の取っかかりを掴むのが難しいと感じていました。そんな中、偶然手に取ったのが本書です。 この書籍の...| 理系学生日記
はじめに Amazon Bedrockと生成AI関連のAWSサービスの全体像を俯瞰できる 実務に役立つ知見とハンズオン 想定読者とおすすめポイント まとめ はじめに 「Amazon Bedrock 生成AIアプリ開発入門」は、Bedrockを中心とした生成AIアプリケーション開発の全体像を体系的に解説した入門書です。 Amazon Bedrock 生成AIアプリ開発入門 [AWS深掘りガイド]作者:御田 稔,熊田 寛,森田 和明SBクリエ...| 理系学生日記
翌週の予定を立てながら、最近は毎週、毎週、本当に苦しく感じる時がある。 ここ数年この辛さは蓄積し続けていたのだけれど、それがどうも自分の中の閾値を越え始めたようだった。 この種の悩みを抱えるときにも生成AIというやつは本当に便利で、壁打ちの中で自分の中で言語化できていなかったことを綺麗に言語化してくれる場合が多い。最近、自分の考えを整...| 理系学生日記
2025/2/26に、Self-hostedなGitLabに関して、そのCI/CDを実行するGitLab RunnerをCodeBuildで動かせるようになったという発表がありました (2024/9/17に発表された[AWS CodeBuild がマネージド GitLab ランナーのサポート開始:title:bookmark]はあくまでSaaSのGitLabに対してのものでした)。 企業でGitLabを使っている場合、情報資産管理の関係でSelf-hostedなGitLabを使い情報資産を封じ込める構成をとっ...| 理系学生日記
最近、オープンソースソフトウェアを利用したサプライチェイン攻撃が増加しています。そのため、プロジェクトの依存関係管理と脆弱性対策の重要性が高まっています。僕は開発プロジェクトで多くの依存パッケージを利用していますが、その依存関係の可視化と潜在的な脆弱性の検知が必要だと感じていました。 今回は、syftとgrypeという2つのツールを使って、Java...| 理系学生日記
GitHubで開発を行う際、CI/CDには通常GitHub Actionsを利用することが多い。プライベートリポジトリであっても同様だが、プランによっては無償で利用できるRunnerの上限が月2,000分までという制限がある。 For private repositories, each GitHub account receives a certain amount of free minutes and storage for use with GitHub-hosted runners, depending on the account's plan. Any usage beyond …| 理系学生日記
生成AIの登場でシステム開発のやり方が大きく変わろうとしています。 Large Language Models for Software Engineering: Survey and Open Problems こうなると、要件さえ与えればすぐにシステムが生成できる未来も、決して夢ではないのかもしれません。 こんな状況で、僕たちがこれまで大切にしてきた「設計」って、本当に意味があるのだろうかと疑問に思うのは自然な流れです。 僕自...| 理系学生日記
最近、GitHubだけでなくGitLabを利用する機会が増えてきました。しかも、単なるユーザーとしてではなく、GitLabの構築や運用に関わることが多くなっています。そのため、改めて 「GitLab実践ガイド 第2版」 を読んでみました。 GitLab実践ガイド 第2版 (impress top gear)作者:北山 晋吾,棚井 俊インプレスAmazon 実は5年前、2020年にこの書籍の初版を読んでいました。当時はGitLabの...| 理系学生日記
発表しました。 Langchain Meetup はめちゃくちゃ良かったです。オフライン勉強会だからこそ聞けることがある。すごくモチベーションが上がった。また参加したい。 テーマ設定 コード生成の課題 アプローチ 前提 今回のアプローチ 結果 業務ロジック フレームワーク 学び LangChain テーマ設定 発表することを決めてからテーマを考えるといういわゆる発表駆動型になった...| 理系学生日記
Terraform管理とLambrollの併用 Lambrollとは? API Gatewayとの連携課題 data.aws_resourcegroupstaggingapi_resources なお Terraform管理とLambrollの併用 AWSリソースはTerraformで管理しています。Terraformは非常に便利で、無駄に抽象化されていない「素のまま」な使い心地が気に入っています。また、リソースの破棄や再構築も簡単で扱いやすい。 一方で、Lambda関数をTerraformで管理するのは少々面...| 理系学生日記
まぁよくやられている話なんだけど。 自動テスト頑張りましょうみたいな話をしても、大体そうですねで終わる。これには色々理由もあって、3分くらい考えても テスト書く時間があったらまずはプロダクションコードの実装を終わらせろや、そうじゃないとリリース遅延するだろうがみたいに怒られる 長期的はリグレッションテストが楽になるよ、アジリティが高ま...| 理系学生日記
GitHubでPull Requestを作成することはもはや当たり前のように行われています。 最近は多くの場合、対象リポジトリをcloneした後でfeature branchを作成し、当該のfeature branchを用いてPull Requestを作成するという流れが一般的になったように思われますが、リポジトリをforkし、fork元へPull Requestを作成するという流れもまだまだ多くの場面で利用されています。 また、Pull Requestに...| 理系学生日記
生成AIがシステム開発に利用されるようになってホットな領域になっているのが、ソースリポジトリ、ソースツリーの解析です。 僕のところにも、このソースリポジトリが何をやっているのか可視化してくれみたいな話はよく聞きます。 一方で、GitHub Copilotなどを利用したところで複数ファイルからなる(従ってほぼ全ての)プロダクトのソースコード解析はまだまだ...| 理系学生日記
Typescriptのプロダクションコードでfs.existSyncを使うようにした。Node.jsのAPIなんでそれは当然動くんだけど、このコードをテストしたい。テストするために、fs.existSyncをsinonでモックしようとしたところ次のようなエラーになった。 existsSyncStub = sinon.stub(fs, "existsSync"); // TypeError: Descriptor for property existsSync is non-configurable and non-writable non-configurable and non-writab…| 理系学生日記
家族とも相談しながら、今年の目標を決めました。 生活 ゲームを2つクリアする 体力をつけるため、毎日縄跳びをする 温泉旅行に2回行く 仕事 9時始業21時までに終業:疲れを翌日に持ち越さない 技術に向き合う時間を毎日3時間は作る:仕事には技術を求めているのだから、そこに時間投下する 自分がやるべきことを明確に取捨選択する 生活 何をギャグみたいなこと...| 理系学生日記
概観 ツール定義 処理の流れ 処理主体 Clineの処理の流れ タスクの初期化 recursivelyMakeClineRequestsでどうやってタスクの計画を行うのか ツールを使うサブタスクに分割するためのtool use まとめ Clineは、ユーザの指示を実現する「計画と実行」を行う自律型コーディングエージェントです。コーディングエージェントとしてはNo.1の地位を築いているのではないでしょうか。 ...| 理系学生日記
LLM Observability Tool Langfuse LangfuseをSelf-hostしよう Langfuseのアーキテクチャ Terraformで構築する トレーシングを試してみる LLM Observability Tool どこもかしこも生成AIですが、生成AIをインテグレーションするシステム開発においてなくてはならないものがLLM Observability Toolsです。この分野ではLangSmithが有名ですね。 特に、トレーシングは重要です。 トレーシングは、システム内の...| 理系学生日記
特定のDockerイメージをAmazon ECSやApp Runnerで実行すべく、デプロイを試みたところ、以下のようなエラーが発生しました。 exec format error 真面目にハマったので、何が起こったのかを整理しておきます。 前提としてのMulti-platform builds 何が起こったのか AWSサービスにおけるCPUアーキテクチャサポート Multi-platform buildsされたイメージに対するdocker pullの挙動 起こったこと 解決...| 理系学生日記
「スマートホーム」と聞くと大袈裟に聞こえるかもしれませんが、我が家ではSwitchBot製品で統一を図っています。特に、2024年の「買ってよかったものランキング」上位に輝いたのがSwitchBotのCO2センサーです。 実は前々からCO2濃度センサーが欲しいと思っていて、ようやく念願が叶いました。 SwitchBot CO2センサー 二酸化炭素濃度計 温湿度計 アラーム - スイッチボット デ...| 理系学生日記
最近、AI技術の進歩により、技術文書の作成プロセスが大きく変化しています。そんな中、mizchiさんの以下の記事に大きな影響を受けました。 この記事では、自身のブログエントリから文体や技術的専門性を抽出し、AIに学習させることで記事を自動生成するという取り組みが紹介されていました。特に興味深かったのは、AIが書き手の個性を学習し、その特徴を活かし...| 理系学生日記