AI支援コーディングに関するライブマスタークラスのために、CognitionのデプロイエンジニアであるIan Moritzと、Aikido SecurityのMackenzie Jacksonが招集されました。
新しいツールを宣伝することが目的ではありませんでした。AIがコードの記述、テスト、セキュリティ保護を開発者の隣で行うようになる中で、開発者がどのように制御を維持できるかについて話すことが目的でした。
AIコーディングは良いか悪いかではありません。それは使い方次第です。
AIコーディングがセキュリティに役立つか、あるいは害になるか尋ねられた際、イアンはどちらの側にもつきませんでした。彼は、それがどのように使用されるかにかかっていると説明しました。
「どちらの主張もできます。重要なのは、どれだけ速く改善されているかです。モデルは脆弱性の回避において向上しており、当社はそれらを責任を持って使用する方法を学んでいます。」 - Ian Moritz, Cognition
彼はAIを電動工具に例えました。便利ですが、不注意だと危険です。
「AIを電動工具のように扱ってください。意図、制御、そしてレビューは依然として必要です。」 - Ian Moritz, Cognition
AIは開発を加速していますが、方向性を定め、作業をチェックするためには依然として人間の介入が必要です。
システムを可視化することが戦いの半分です。
優れたセキュリティは、アプリケーションが実際にどのように動作するかを理解することから始まります。
Windsurfは、開発者にその可視性を提供するために構築されました。
「システム内でデータがどのように移動するかを理解することが、セキュリティの半分です。残りの半分は、データがどこに行くべきではないかを知ることです。」 - Ian Moritz, Cognition
Deep WikiとCode Mapsを使用することで、開発者は関数がどのように接続されているか、データがどこを移動するか、そして何かが変更された場合に何が壊れる可能性があるかを追跡できます。
何千行ものコードを掘り下げる代わりに、フローをマッピングし、弱点を素早く特定できます。
開発現場に存在するセキュリティ
デモ中、MackenzieはAikidoのWindsurf向け拡張機能がIDE内でセキュリティ問題を発見する方法を示しました。
ファイルを保存するとすぐに、露出したシークレット、脆弱な依存関係、および不足しているセキュリティヘッダーをフラグ付けします。
「セキュリティはここに属します。IDE内で、それが他者の問題になる前に。」 - Mackenzie Jackson, Aikido Security
これは開発者のワークフローに適合するフィードバックです。CIスキャンやセキュリティ監査を待つ必要はありません。問題を早期に発見し、迅速に修正し、開発を継続できます。
コードをテストするエージェント
IanはWindsurfやDevinのようなツールの今後の展望を共有しました。
彼は、AIがコードを書くだけでなく、テストも行う未来を予見しています。
「高品質なテストのコストは急速に低下しています。私たちはテストの数を減らすのではなく、増やしていきます。」 - Ian Moritz, Cognition
Devinはバックグラウンドでレッドチームのように機能するように設計されています。コードベースを分析し、攻撃をシミュレートし、デプロイ前にリスクのあるロジックを特定できます。
脆弱性が本番環境に現れるのを待つ代わりに、開発者は自身の作業を自動的にストレステストできるようになります。
未来のデベロッパー
Ianは、AIツールとの連携を学ぶ開発者へのアドバイスで締めくくりました。
「Gitの学習に少し時間を費やしてください。作業を小さな塊に分割してください。残りはエージェントに任せてください。」 - Ian Moritz, Cognition
開発者は、コードを記述する時間を減らし、AIシステムのレビュー、テスト、ガイダンスにより多くの時間を費やすようになるでしょう。最も重要なスキルは速度ではありません。それは「認識」です。コードが何をするのか、なぜ存在するのか、どこで壊れる可能性があるのかを知ることです。
AI支援コーディングは、開発者を置き換えることを目的としていません。それは、迅速に思考するものの、依然として人間の判断を必要とする、より優れたツールを開発者に提供することです。
最高の開発者とは、自身のコードに精通し、システムを深く理解し、決して制御を手放さない者です。

