
みなさん、こんにちは! タカハシ(@ntakahashi0505)です。
本日は書籍『#100日チャレンジ 毎日連続100本アプリを作ったら人生が変わった』を紹介します。
チャレンジの日々とその成長、それによるサクセスストーリーとともに繰り出される「一般常識」への挑戦状、そんな感じです。
ということで、今回は「ChatGPTで毎日連続100本アプリ開発!大学生の人生はどう変わったのか?」です。
では、行ってみましょう!
怠惰な大学生とChatGPTの出会い
今回ご紹介するのは、日経BPから出版された大塚あみさん著『#100日チャレンジ 毎日連続100本アプリを作ったら人生が変わった』です。
ある日、あの『ゲームセンターあらし』の作者である、すがやみつる先生のXポストが目に入りました。
ワクワクドキドキしながら一気読みしてしまいました
と紹介されていたのが本書。漫画界のレジェンドも大絶賛の一冊。確かにタイトルからして超気になる…
この本の主人公は、怠け者の大学4年生。宿題をサボるためにChatGPTを使おうとしたところから物語は始まります。
最初は楽をしようとしていただけなのに、ChatGPTがプログラミングもできることを知ってしまい、大塚さんは「#100日チャレンジ」を思いつきます。
これは、毎日1本、新しいアプリ(作品)を作り、X(旧ツイッター)に投稿すること、そしてそれを100日続けるというチャレンジです。
なんだか無謀な挑戦のようにも思えますが、ChatGPTがあればできると感じたのでしょう。このチャレンジが彼女の人生を急激に変えていきます。
100日チャレンジ、スタート!
さあ、ここからが本番です。全体の流れとともに、面白かったポイントをお伝えします。
ステップ0:プロローグ
ステップ0のプロローグでは、主人公がChatGPTと出会い、オセロゲームを作るまでのエピソードが語られます。
授業でこそこそオセロをつくっていたところ、先生にうっかりバレてしまいます。怒られるかと思いきや、これをもとに論文を書いて学会発表することになるんです。すでに、人生が変わりはじめた香りがプンプンします。
しかし、わかる人にはわかりますが、最初のオセロはMatplotlibでつくるという斬新なものでした。
ステップ1:チャレンジ開始(Day1~6)
そして、いよいよステップ1、Day1からDay6。100日チャレンジの始まりですね。
「ChatGPTにつくらせてみて、動かなかったら、どうやったら動くのか教えてもらう」というスタイル。
内容はほぼわかっていない状態だったそうですが、それでも基本1日10時間以上をかけて、アプリ開発に没頭。
本当に続けられるのか…心配になります。
ステップ2:チャレンジの意義(Day7~23)
ステップ2、Day7からDay23。
引き続き、インベーダーゲーム、ホッケー、砲弾ゲームなど、様々なゲームをなんとか作っていきます。
ゲームづくりでは避けられない衝突判定や、数学的な弾道計算も、ChatGPTの力を借りながらなんとか乗り越えていきます。やっぱ、同じプログラミングでもゲームづくりって大変ですね~
ステップ3:作品は私次第(Day24~31)
ステップ3、Day24からDay31では、これまで避けていた「クラス」を使い始めます。
これはプログラミングでいうと中級的なやや難解な概念なのですが、ChatGPTがちょいちょいクラスを使ったコードを提案してくると。授業で習って存在は知っていたこともありトライ。
ポーカーやビリヤードなど、より複雑なアプリ開発に挑戦する中で、チャレンジスタートして1ヶ月あたりで「ChatGPTは使い手以上のことはできない」という重要な気づきを得ます。
ステップ4:私と誰かの未来(Day32~Day50)
ステップ4、Day32からDay50。
さらに彼女はチャレンジにUML(統一モデリング言語)をつかいはじめます。これは、「言語」とありますが、プログラムの構造を図で表すための手法で、設計に用います。
この頃から、これまではいきなりChatGPTにつくらせていたのですが、UMLを用いて設計をしてから取り組むというスタイルに変わります。
Day50は、それも踏まえて、最初のつくったオセロに新たに取り組むというものでした。
ステップ5:理想と現実(Day51~Day65)
しかし、ステップ5、Day51からDay65では、イライラする場面も。
キーワードは「再利用」。これまでのチャレンジで大量のコードがあり、かつ毎日新しいアプリをつくる必要がある中、過去のコードを再利用できたらとても有利になります。しかしなかなかうまくいかない…
まさに、理想と現実のギャップによる苦しみ…わかります。
ステップ6:最適解を求めて(Day66~Day100)
そして、ステップ6、Day66からDay100。
ここで、デザインパターンを活用しはじめます。これは、再利用可能な設計のひな形で、23パターンもあるそうです。まさか、2ヶ月ちょっとでデザインパターンを使い始めるとは…。
こうして、100日目を達成するのですが、ラストは壮絶です。
就職活動、自らの学会発表や期末試験に加え、別のゼミ生がブッチした別の学会のピンチヒッターを務めるなど、獅子奮迅の活躍をしながら、チャレンジもするという…すさまじいバイタリティです。
ステップ7:エピローグ
そして、ついにエピローグ。
124日間、合計1600時間、そして8,123個ものプロンプトを経て、100日チャレンジを達成。
そして、この挑戦の集大成として、彼はスペインで開催された国際学会で発表を行うことになりました。
100日チャレンジが教えてくれること
この本は、怠惰だった大学生が、100日間のチャレンジを通じて、自分の可能性に気づき、成長していく物語です。
目まぐるしいスピード感の中で繰り広げられる、プログラミング技術の半ば強引ともいえる上達、学生という立場での目まぐるしい成果、それと心の成長。
痛快に楽しむことができますので、みなさんも手にとってみてください。
まとめ
以上、「ChatGPTで毎日連続100本アプリ開発!大学生の人生はどう変わったのか?」についてお伝えしました。
引き続き、みなさんがいきいきと学び・働くためのヒントをお届けしていきます。次回をお楽しみに!
この話を耳から聴きたい方はこちらからどうぞ!