見出し画像

『namael』開発記録 第6回・AIは怒らないらしいので思い切って聞いてみた

>> 前の記事「第5回・あえてレンタルサーバ+PHPを選んだ」はこちら。


 開発インフラ(レンタルサーバとドメイン)は確保したので、次は設計。

 この設計段階から、ChatGPTにはかなりお世話になった。当時は無料版がGPT3.5のみだったんだけど、学習データが2年ぐらい前までしかなくてWEBアプリケーションの開発に使うには不安しか感じなかったため、思い切って月20ドルの有料版を契約した。

「人を雇う代わりにAIを雇った」感覚。なので、高価とは思わなかった。


で、使い始めたときの最初の質問がコレ。

  ↓  ↓  ↓


引用『野望の王国』原作:雁屋 哲 / 画:由起 賢二


 せ、生成AIで作ったハンコ記事じゃないんだからね! という念押しの意味も込めて、ときどきこういうクダラナイのを入れるようにしてます。


 さて。気を取り直してこの命令(↓)

 上が正真正銘、「namael」開発を目指して最初に入れた指示である。

 ちなみに、入力途中に改行のつもりでEnter入れたらそのまま指示が実行されてしまったものの、問わんとするコト(=WEB大喜利の作成手順を教えてください)には忠実に答えてくれているので良しとした。

 逆に言えばこんないい加減な命令でも「続きを察して」回答してくれたりするので、生成AIに命令をどう入れたらいいのか、だの、正しい/正しくないだの、そんなコトで悩む必要はないといえる。


 それと、いきなり「大喜利って何?」と思った人もいるかも知れないので補足すると、namael の名前募集サービスは、仕組み的にいうとまさにWEB大喜利の応用である。


 一般的なWEB大喜利ってのはこういう仕組み。

  ↓  ↓  ↓

 誰かユーザが文章なり画像なりでお題を出す。そこに他の多くのユーザがコメントで面白いネタを返す。回答を締め切ったあと、お題を立てた人がコメントの中から一番ウケたネタを認定する。ま、こういうモンだよね。

 で、このガワを「名前募集」に着せ替えて、あとは若干ゴニョゴニョして課金システムを追加したりセキュリティを強化したり……したのがnamael。


 つづいて、カンタンに設計してもらった。

 「設計とは何か?」を本気で突き詰めると分厚い本ができあがるんだけど、手っ取り早くサービスの基幹部分だけでもさっさと作るのであれば、まず行うべきはデータベースの設計だ……というのが自分の考え。

 データベースの設計とはざっくり言い換えれば、そのWEBアプリが目指す機能を果たすために必要なデータは何であるかの洗い出しである。

 端的な例を出すと、男女別にサービス内容や提供価格を分けたいのならユーザテーブル(表)に性別欄が必須となる。性別欄がないと男女の区別をつけられないから。同様に、未成年の利用を弾きたいなら生年月日の欄が必要だ。

 ChatGPTにはこんな感じでオーダーした。

  ↓  ↓  ↓

全部載せると長いんで一部省略してます

 テーブルというのは日本語に訳すと「表」である。


 ちなみに、設計の順序として先にモックアップ(=見た目のサンプル)から生成してもらうやり方もある。

 特に会社として作る場合など、データベースの設計だけ見て「うん、いいね」と分かる人は少ないので、先に見た目で分かるデザインイメージを用意した方がいい場合はあると思う。

 ただ、今回はひとりで開発しているためそんな他人の意向は気にしなくてよかった。

 また、先にデータベースを作っておくと、後でChatGPTにモックアップを作るよう指示したときにその(データベース作成時に決めた)項目名を素直に使ってくれるし、修正の際に「項目名○○の部分はこう直してくれ」という具体的な指示も出しやすくなる。結果、手戻りが少なくて済む。


 ま、マニュアルとして有料記事にする目的で作っているワケではないのであんまり詳細に書いてないんだけど、この先もなんか一緒に作ってる気分で読んでもらえたら嬉しいかなと。

>> 次の記事「『namael』開発記録 第7回・ChatGPTで究極のやっつけWEBデザイン」はこちら


いいなと思ったら応援しよう!