数十年前に電卓が数学の面倒な計算を代行したように、人工知能(AI)はコーディングを変革している。シンガポールの8歳の少年Kyoの例を見てみよう。彼はわずか2時間で簡単なプラットフォームゲームを開発し、50万人以上のプレイヤーを惹きつけた。
Kyoは英語の簡単な指示だけを使い、コーディングアプリCursorと汎用AIのClaudeを活用して自分のビジョンを実現した。父親がコーダーであるにもかかわらず、Kyoはゲームの設計に父親の助けを借りず、正式なコーディング教育も受けていない。その後、彼は別のゲーム、アニメーションアプリ、描画アプリ、チャットボットを作成し、それぞれに約2時間を費やした。
これは、AIがソフトウェア開発の障壁を劇的に下げ、創造性と技術的スキルのギャップを埋めていることを示している。この目的のために特化したアプリやプラットフォームの中には、GoogleのAlphaCode 2やReplitのGhostwriterなどがある。
これらのアプリの力を示す別の例として、8歳のアメリカ人の少女Fayがハリー・ポッターを装うチャットボットを作成した。彼女はわずか45分でそれを稼働させ、その時点でチャットボットは死の秘宝に関する噂を聞いたかと尋ね、三本の箒で甘い飲み物を飲みながらそれについて話し合おうと提案した。
すでにコーディングの方法を知っている人々にとっても、数多くのAIアプリが非常に有用になっている。上記の自然言語コーディングアプリとは対照的に、TabnineやGitHub Copilotのようなツールは、入力時にコードを予測し自動補完する知的アシスタントとして機能する。
SourceryやDeepCodeなどの代替ツールはさらに一歩進んで、リアルタイムのコードクリーンアップ、改善の提案、脆弱性の修正を提供している。OpenAIのGPT Canvasのような新しいツールが毎週のように登場しており、これは高度なコーディングを支援するために設計された新しいGPTバージョンである。これらのツールの多くは、JavaScriptからPythonへなど、あるプログラミング言語から別の言語へのコードの翻訳も可能である。
これらのツールがもたらす生産性の向上は、ソフトウェア業界に革命をもたらしている。企業の70%がすでにGitHub Copilotのようなツールを採用しており、コーダーたちはAIによってより信頼性が高く、バグの少ないソフトウェアを書くことができるようになったと報告している。
人的エラーの修正に多くの時間を費やす必要がなくなったことで、コーダーはシステムアーキテクチャの設計や同僚とのコラボレーションなど、より付加価値の高いタスクに集中する時間を増やすことができるようになっている。
私のような大学教育者にとっても、これは状況を変えつつあり、我々は追いつくのに必死である。教材の再考が必要となり、評価方法についても、AIツールが多くの作業を行っている状況で学生のコーディングをどのように評価するかという問題に取り組んでいる。
現在の限界
これらすべてが興奮させるものであるが、AIコーディングはまだ初期段階にある。現段階では、非コーダーが単純なアプリケーションやゲームを構築するのを支援することしかできない。人間のコーダーのように全体像を理解して大規模で複雑なITプロジェクトを監督することはまだできない。
新しい問題解決方法を発明することもまだできず、宇宙船の航行のような高度に専門化された知識を必要とする分野では依然として遅れをとる可能性が高い。
多くのツールは完璧なコードを書くわけではない:プログラムは動作するかもしれないが、実世界で使用するには効率性やセキュリティが十分でない場合がある。同様に、AIツールは処理するデータの文脈を本質的に理解しないため、機密情報を誤って扱ったり、トレーニングに使用されたデータに存在するバイアスを永続させたりする可能性がある。
これらの理由から、プロフェッショナルな状況では、すべてが必要な基準を満たしていることを確認するためにコーダーがまだ必要である。将来的には、セキュリティの問題から高度に専門化された主題まで、すべてを扱うように設計されたAIコーディングツールを見ることができるかもしれない。非コーダーがアプリを構築するのを支援する能力も向上するだろう。しかし、少なくとも現時点では、AIコーディングはコーダーを完全に置き換えるのではなく、彼らのスキルを増幅しているにすぎない。
自分のゲームを作る方法
それでも、非コーダーとしてこれらのツールを使って既にできることは信じられないほどである。以下に、簡単なプラットフォームゲームを作るための簡単なガイドを示す:
ステップ1:AIツールにサインアップする:CursorやAlphaCode 2などのアカウントを作成し、セットアップ指示に従う。選択したツールによっては、クイックインストールが必要な場合がある。また、PythonなどのプログラミングOUJH言語や、VS Studio Code 2などのソースコードエディタをインストールする必要がある場合もある – コーディングプラットフォームがこれについて指示してくれる。
ステップ2:ゲームを開始する:ツールで新しいプロジェクトを開く。プロンプトに次のように入力する:「プラットフォームがお菓子でできている簡単なプラットフォームゲームを作成してください」
ステップ3:どのようなものかを確認する:「実行」または「プレビュー」をクリックして、作成したものを確認する(使用しているシステムによっては、ソースコードエディタでこれを行う必要がある場合がある)。キャンディやケーキでできたプラットフォームが表示されるはずである。
ステップ4:変更を加える:メインキャラクターをオウムに変更してみよう。プロンプトに単純に次のように入力する:「アバターを緑のオウムにしてください」
ステップ5:機能を追加する:次にプロンプトに入力する:「オウムをカーソルの矢印で操作できるようにし、集めるためのお菓子をいくつか挿入し、集めた数のスコアカウンターを追加してください」
ステップ6:テストと調整:更新されたゲームをテストするために再度「実行」または「プレビュー」をクリックする。次のように入力して変更を加える:「オウムを追いかけ回す黒いカラスを挿入してください。カラスがオウムに触れたら、画面を凍結させ、画面の中央に「Too Bad!!!」というメッセージを表示してください」。結果に満足するまでこれらのステップを繰り返す。
ステップ7:公開する:ここで友人やオンラインのアプリストアを通じてゲームを共有したいかもしれない。AIコーダーはまだこれをうまく行っていないため、事前の知識がなければこれはより難しいかもしれない。一つの選択肢は、ここで説明されているように、Zeaburなどの無料プラットフォームを通じてゲームをオンラインでデプロイすることである。
コメント