「まただ。またダメだった…。」
分厚いプログラミングの参考書を前に、私は何度目かのため息をついた。ページを開いても、難解なコードの羅列はまるで呪文のよう。オンライン講座の動画は流し見するばかりで、いざ自分で手を動かそうとすると、指が固まってしまう。少しでもコードを書き進めれば、待っているのは冷たいエラーメッセージ。
「なんでみんなあんなにスラスラ書けるんだろう? 私には才能がないんだ…」
画面に表示された赤い文字を見るたび、私の心は深く沈んだ。時間だけが過ぎていき、結局何一つ完成させることなく、また一つ挫折の記録が積み重なっていく。数万円を払ったオンライン講座も、途中で止まったまま。積み重なる自己嫌悪と、無駄になった時間への後悔が胸を締め付ける。
「このままじゃ、いつまで経っても何も変わらない。でも、あの退屈な勉強をまた始めるなんて…考えただけで吐き気がする…」
私は、プログラミング学習を諦めかけていた。真面目にやろうとすればするほど、その重さに押しつぶされそうになる。まるで、楽典をひたすら暗記して、一度も楽器に触れずに音楽家になろうとするようなものだ。指も動かせず、音すら出せないまま、私はずっと立ち止まっていた。もっと楽しく学べたらいいのに。誰か、私にもできる方法を教えてよ…
そんなある日、私はふとChatGPTと雑談していた。「ねぇ、AI。プログラミングって、もっと楽しく学べないかな? 勉強って感じじゃなくて、遊びながら…」
その瞬間、AIはまるで私の心の声を聞き取ったかのように、こう提案したのだ。
「では、一緒に『しりとりゲーム』を作ってみませんか? 遊びながら、Pythonの基礎を学びましょう。」
退屈な教科書はもういらない!AIと「しりとり」でPythonを遊び倒せ
「しりとりゲーム?」
半信半疑ながらも、私はChatGPTの提案に乗ってみることにした。まさか、あの退屈なプログラミングが「遊び」になるなんて。まるでAIが私の専属コーチになったかのように、ChatGPTは優しく、そして的確に私を導いてくれた。
「まず、しりとりのルールをPythonでどう表現しますか? ユーザーからの入力をどう受け取りますか?」
ChatGPTは、いきなり完成されたコードを提示するのではなく、私に問いかけ、考えさせてくれた。私が詰まると、ヒントを出し、具体例を示してくれる。まるで、隣に座って一緒にコードを書いているような感覚だ。これこそが、AIとの「ペアプログラミング」体験なのだと、後で知ることになる。
① AIと「言葉のキャッチボール」で変数と文字列をマスター
「しりとり」の最初のステップは、言葉を受け取ること。ChatGPTは、input()関数と「変数」の概念を教えてくれた。
word = input("しりとり!最初の言葉を入力してください: ")
print(f"次はこの言葉に続く言葉をどうぞ: {word}")
「なるほど、こうやって言葉を記憶するんだ!」
今まで抽象的だった「変数」が、「言葉をしまう箱」として目の前に現れた瞬間だった。AIとの言葉のキャッチボールを通じて、私は自然とPythonの基本を吸収していく。
② 「最後の文字」と「最初の文字」を合わせる条件分岐の魔法
しりとりで最も重要なのは、「前の言葉の最後の文字」と「次の言葉の最初の文字」が一致するかどうか。ChatGPTは、このロジックをif文とelse文、そして文字列操作のメソッドを使って教えてくれた。
last_char = previous_word[-1] # 最後の文字を取得
first_char = current_word[0] # 最初の文字を取得
if last_char == first_char:
print("OK!")
else:
print("残念!つながっていません。")
「うわ、これなら間違った時もAIが教えてくれる!」
エラーが出ても、ChatGPTに「このコード、なんでエラーが出るの?」と聞けば、すぐに原因と解決策を教えてくれる。まるで、ゲームの攻略本を片手に進んでいるような安心感だ。以前は絶望しか生まなかったエラーが、今では「AIとの対話のきっかけ」に変わっていた。
③ 「ん」で終わったらゲームオーバー!無限ループを制御せよ
しりとりは、「ん」で終わる言葉を言ったら負け。そして、ゲームは誰かが負けるまで続く。ChatGPTは、「ループ」と「ブレイク」の概念を、このルールの中で教えてくれた。
while True: # 無限ループ
# ... (しりとりの処理) ...
if current_word.endswith('ん'):
print("「ん」で終わったのでゲームオーバー!")
break # ループを終了
「なるほど、while Trueでずっと続けて、特定の条件でbreakすればいいのか!」
無限に続く「しりとり」という「遊び」の中で、「ループ」と「条件分岐」というプログラミングの根幹が、私の血肉となっていくのを感じた。これはまさに「ゲーミフィケーション」だ。学習が「作業」ではなく「攻略」に変わる瞬間だった。
④ 過去の言葉を記憶する「リスト」の秘密
さらに、ChatGPTは「一度使った言葉は使えない」というルールを実装するため、「リスト」というデータ構造を教えてくれた。これは、使った言葉を記録しておく「履歴書」のようなものだ。
used_words = [] # 空のリストを作成
# ...
if current_word in used_words:
print("その言葉はもう使われています!")
else:
used_words.append(current_word) # リストに追加
リストという概念も、しりとりゲームの中で具体的な意味を持ち始めた。まるで、AIシェフと一緒にキッチンに立ち、好きな料理を創造する体験。失敗しても、AIというシェフが横で「ここはこうだよ」と教えてくれる。そのうち、自分でアレンジしたり、新しい料理を作りたくなるのだ。
AIと遊ぶうち、気づけばあなたは、コードを操る魔法使いに
「んー、完璧じゃないけど、ちゃんと動く!」
数時間後、私はChatGPTと一緒に、シンプルな「しりとりゲーム」を完成させていた。完璧ではないかもしれない。でも、自分の手で、AIの助けを借りながら、一つの「動くもの」を作り上げた達成感は、これまでのどんな勉強よりも大きかった。
「もう『勉強』なんて言わせない。これは『遊び』だ!」
私は、プログラミングへの苦手意識が嘘のように消え去っていることに気づいた。そして、次にどんなゲームを作ろうか、どんな機能を追加しようかとワクワクしている自分がいた。ChatGPTは、私にとって最高の遊び相手であり、同時に最高の家庭教師だったのだ。
退屈な教科書はもういらない。あなたの隣には、最高の遊び相手がいる。AIと遊ぶうち、気づけばあなたは、コードを操る魔法使いに。真面目な勉強にうんざりしているあなたも、今日からChatGPTと一緒に、プログラミングという「遊び」の世界へ飛び込んでみませんか?
その一歩が、あなたの未来を大きく変えることになるかもしれません。
▼ 今すぐここからコピペして、ChatGPTに話しかけてみてください!
あなたはプログラミングの優しい先生です。 私と一緒にPythonで「しりとりゲーム」を作ってください。いきなり正解のコードを書くのではなく、
- まず「変数の作り方」
- 次に「文字の判定方法」
- 最後に「ループ処理」
というように、私にクイズを出しながら、ステップ・バイ・ステップで教えてください。
私が間違えても、優しくヒントをくださいね。
