サイトへ戻る

プレゼン管理アプリ

AIを使ったアプリ開発

なぜこのアプリを作ったの?

今回は、私が最近取り組んだプロジェクト、プレゼン管理アプリについてお話しします。CoderDojoの発表会、最近はどんどん盛り上がってきていますよね。参加者が増えて、発表時間も長くなってきました。これはうれしい悲鳴なのですが、同時に運営の効率化が必要になってきました。

これまでも、発表用シートを用意したり、メンター陣で役割分担をしたりと工夫を重ねてきました。でも、さらなる改善の余地がありそうだと感じていたんです。そこで思いついたのが、このプレゼン管理アプリです。

https://npo-solaris.sakura.ne.jp/presen/index.php

broken image

AIによるプログラミング

開発過程はちょっと面白かったんです。まず、手書きのイメージ図をAI(Claude 3.5 Sonnet)に見せて、HTMLの雛形を作ってもらいました。そこから少しずつ機能を追加していく方法で開発を進めました。インプットはこんな手書きの仕様書一枚でOKなんです。凄くないですか。

broken image

最終的にはPHPで動作するようにして、発表者リストをサーバー上に保存できるようにしました。これでメンターや保護者の方々も、いつでも発表順序を確認できるようになりました。

面白いことに、HTML版は不具合なしの100点満点。わずか1時間でAIが完璧に作ってくれたんです。

ただ、PHP版に移行する際、CSS、JavaScriptファイルを分けたこともあって、ちょっとした困難に直面しました。ファイル名の設定ミスや、ファイルの作成漏れなどで不具合が出始めたんです。

ここにきてAIが凡ミス連発です。

プログラミングスキルまだまだ必要

HTMLアプリを作成していて疑問が浮かびました。「AIがあれば、もうプログラミングスキルはいらないのでは?」

確かに、簡単なアプリならプログラミングの知識がなくても作れました。でも、不具合が出たときは話が別。スキルがないとかなり苦労します。

AIに不具合の原因を聞いても的確でない場合があります。時には、余計な修正をしてしまうこともあるんです。AIは原因を正確に特定してテストしてくれるわけではなく、対症療法的にコードを修正してしまうことがあります。余計なことしないで~ってなるわけです。

結局、自分で原因を調べたほうが近道だったりするんですよね。
PHP版の公開までは半日程度でしょうか。それでも爆速です。

AIとうまく付き合うコツ

AIを使ってプログラミングする際のコツもつかめてきました。

1. AIが書いたコードが理解できないときは、丁寧に解説してもらう
2. ソースにコメントを入れてもらう
3. 関数の使い方を教えてもらう
4. アルゴリズムの選択理由を聞く
5. 変数の役割を確認する

要するに、わからないところは遠慮なく聞きまくるんです。そうすることで、自分の実力アップにもつながり、不具合解決の可能性も高くなります。細かい修正は自分でやってしまったほうが早くなるはずです。

みんなで使って、みんなで改善

このアプリのソースコードはGitHubで公開しています。CoderDojo Aizu専用に設計していますが、PHPを実行できる環境があれば、カスタマイズして使っていただけます。

機能拡張も大歓迎です!みなさんのアイデアで、このアプリがさらに便利になっていくのを楽しみにしています。

https://github.com/CoderDojoAizu/dojoPresentation

プログラミングの世界は日々進化していますが、人間の創造力とAIのパワーを組み合わせることで、まだまだ面白いものが作れそうです。これからもCoderDojo Aizuでは、新しい挑戦を続けていきます。みなさんも、一緒に楽しんでいきましょう!