AIエディタのインパクト
ある動画を観て、AIエディタをインストールしてみましたところ、ソフトウェア開発の生産性を大きくに向上させることを実感することができました。
今回はAIエディタについて記します。
1.プログラム開発におけるエディタ
(1)これまでのエディタ
ITシステム(例えば、販売管理システム)を開発する際、プログラマはソースコードでロジックを記述し、それを機械語に変換してコンピュータ上で動作させます。このソースコードを編集するために使用されるソフトウェアが「エディタ」です。大規模なソフトウェア開発では、複数のプログラマが何か月もかけてコーディングやデバッグを行います。
私がルータ開発を行っていた際は、UNIX系の開発環境で「vi」や「re」、「emacs」などのエディタを使ってプログラムを編集していました。基本的な操作は、コードをタイピング、もしくはコピー&ペーストを駆使しながら作業を進めていました。
一方、ExcelやWordではVBA(Visual Basic for Applications)というプログラム言語でロジックを編集し、実行することができます。VBAには専用のエディタが付属しており、Tabキーによるインデントの整列やステップ実行などのデバッグ支援機能を備え、プログラミングの利便性を向上させています。
(2)AIエディタの登場
近年、AIを活用したエディタが登場し、開発の効率を飛躍的に向上させています。今回インストールした「Cursor」というAIエディタは、生成AI基盤モデル各社のAPIを活用し、コード作成や広範囲なデバッグを支援する機能を持っています。
例えば、チャット欄に「Pythonで○○のプログラムを作成してください」と日本語で入力すると、コメント付きのコードが自動生成され、ワンクリックでエディタに適用できます。さらに、コードを実行しエラーが発生した場合は、そのエラーメッセージをチャット欄にコピーすると、AIが適切な解決策を提示してくれます。
また、単なるコード生成だけでなく、ライブラリや環境設定の問題解決もサポートし、例えばPythonの多くのライブラリの追加インストールを提案してくれます。
試しにインストールしてみたレベルですが、プログラミングの飛躍的な生産性向上を実感し、驚いています。(下動画)
今後、生成AI基盤モデルのエージェント機能が追加されることにより、PCアプリケーションの操作を一部自動化することも可能になることが予想されますが、その開発が各自でできるようになるかも知れません。
2.システム開発を容易にするツール
プログラムをコーディングせずにシステムをそのまま利用する方法としてSaaS(Software as a Service)があります。会計ソフトなど入力形式が定型で企業によってあまり変わらないものは、十分な場合も多いです。
また、設定のみで簡易な業務システムを構築できる方法として、ノーコードツールがあります。例えば、データの保存や入力画面の定義、ユーザ管理が可能で、SaaSよりも柔軟に対応できます。
上記は、コーディングを基本とするスクラッチ開発を行わずとも、社内でシステム導入を可能とする方法として普及してきましたが、オリジナル機能や多機能になれば限界があります。
AIエディタの登場は、スクラッチ開発を容易にし、自社に適したオリジナル業務ソフトを、社内で開発できる画期的な仕組みに発展する可能性があります。(下図)
3.まとめ
AIエディタの活用により、システム開発の敷居が大きく下がりました。欧米では、社内に開発者を配置して、業務プロセスを熟知した社内の人間が使い勝手の良いシステムを開発するケースがありますが、日本でもそれが可能になる時代がすぐそこに迫っています。
AIエディタの登場は、開発者の作業を補助するだけでなく、より多くの人々がプログラミングにアクセスできる未来を切り開いているのです。
ご興味のある方は、こちらからお願いします。