アンドリュー・ングと30分で自分だけのアプリを作ろう

アンドリュー・ングと30分で自分だけのアプリを作ろう

コーダーでなくてもできるAI駆動型ソフトウェア開発

機能するソフトウェアを作るのに、もはや手でコードを書く必要はありません。代わりに、AIシステムに効果的にプロンプトを与える能力が求められます。アイデアを英語で説明し、結果を繰り返し改善することで、ユーザーは数分でウェブアプリ(ブラウザ上で直接動くプログラム)を作成できます。

効果的なプロンプトの5つの構成要素

曖昧なアイデアから予測可能で動作するアプリへと進めるために、アンドリュー・ングはプロンプトに5つの具体的な要素を組み込むことを推奨しています。これらは段階的に、あるいは一つの長いプロンプトで提供できますが、まずは「ゴール」から始めることが重要です。

  1. ゴール: 作りたいものの明確な説明(例:"誕生日カード作成のためのウェブページを生成する")
  2. 入力: ユーザーが提供すべき情報の指定(例:名前、年齢、趣味)
  3. 出力: 入力に基づいてソフトウェアが生成すべきもの(例:面白い誕生日メッセージ)
  4. レイアウト: アプリの視覚的な配置(例:"右側に色を表示し、誕生日カードの内側のように見せる")
  5. 特別機能: アプリを拡張する追加機能(例:"クリップボードにコピーするボタン"や、"自動で項目を埋める『ラッキー』ボタン")

反復的開発とトラブルシューティング

AIを使ったソフトウェア開発は、一度で完了する実行ではなく、改善を繰り返すプロセスです。

ユーザー体験の洗練

基本的なプロンプトから始めると、機能はするもののシンプルすぎる結果が得られがちです。ユーザーは「もっと見た目を良くして」や「祝祭的な色を加えて」などの追加入力でアプリを改善できます。指示が具体的であるほど、結果は予測しやすくなります。たとえば、"ハムとチーズを乗せたマルチグレインパンのベジタリアンサンドイッチ" と要求すれば、単に "サンドイッチ" と言うよりも望む結果が得られやすくなります。

"バグ" の修正

AIが生成したアプリが期待通りに動かない場合(例:ボタンをクリックしても何も起きない)は「バグ」と呼ばれます。修正するには、失敗をAIに明確に伝えます(例:"カード生成ボタンをクリックしても何も起きません。修正してもらえますか?")。AIは通常、JavaScript のクリックイベントなど専門用語を理解しなくても、基本的なバグを特定し解決できます。

実践例:誕生日カードからゲームまで

ゴール、入力、出力、レイアウト、機能というフレームワークは、どんなシンプルなウェブアプリにも応用できます。

  • 誕生日カードアプリ: ユーザー入力から個別の面白いメッセージを生成し、青または紫のカラーテーマとクリップボードコピー機能を備えるツール。
  • ピンポンゲーム: HTML 1 ファイルだけで構成された卓球ゲーム。ユーザーは矢印キーでコンピュータと対戦し、難易度レベルや勝利ポイントのカスタマイズ、緑のプレイヤーとベージュのパドルといったグラフィックを追加して拡張可能。

"ビルダー" マインドセット

"AI ビルダー" になるには、理論的学習と実践的応用のバランスが必要です。アンドリュー・ングは、単に作るだけでは車輪の再発明に終わり、講座だけ受けても実装スキルが身につかないと指摘します。最も効果的なビルダーは、AI をブレインストーミングツールとして新しいアイデアを生み出し、友人・家族・同僚からのフィードバックでソフトウェアを磨く、という両方のアプローチを組み合わせます。

Sources