BeEngineer Journal
タイピングゲームを自動化!?遊びから学ぶプログラミングの真髄
こんにちは。BeEngineer梅田校責任者の藤原圭吾です。
梅雨明けが待ち遠しい今日このごろ、中高生のみなさんは定期試験の準備や学校行事で忙しい日々を送られているのではないでしょうか。そんな中でも、週末に教室へやってくる生徒たちのプログラミングへの熱量はますます高まっています。
本日は、週末の授業冒頭で生徒たちに共有した、少しユニークでワクワクする「自動化」のテーマについてお話しします。
「意味がない」からこそ面白い、究極のプログラミング遊び
私たちが授業のオープニングで掲げたテーマは、なんと「タイピングゲームの自動化」です。
生徒たちからは思わず「えっ、それを自動化したらゲームの意味ないじゃん!(笑)」とツッコミが入りましたが、これこそが今回の狙いです。一見すると意味のない遊びの中にこそ、プログラミングの本質が隠されています。
仕組みとしては、Pythonの外部モジュールを導入し、さらにWebサイト(HTML/CSS)のコードを読み解いて、どの文字(クラスやID)を狙うかを解読します。そこに対して「画面にこの文字が出たら、人間の代わりにこの速度でタイピングせよ」という詳細な命令をあらかじめコーディングしておくことで、プログラムが全自動で100点満点を叩き出す仕組みが完成します。
生徒たちは「どうすれば一番速く、正確に自動処理できるか」をゲーム感覚で楽しみながら、自然と高度な技術を学んでいました。
教室での「遊び」が、社会の「業務効率化」へ直結する
実は、この一見おふざけに見える「タイピングゲームの自動化」は、現代のIT社会で最も求められている技術の一つである「スクレイピング」や「RPA(業務自動化)」の基礎そのものです。
私自身の話をすると、日々の教室運営業務の中で、まさにこのタイピングゲームを自動化した経験をそのまま応用しています。これまで手作業でコツコツと時間をかけて行っていたデータの確認や数値の収集作業を、今ではプログラムの「実行ボタン」を1回ポチッと押すだけで、一瞬で自動収集することに成功しています。
面倒な手作業が、自分の書いたコードひとつで自動化される。この圧倒的な便利さと快感があるからこそ、プログラミングは最高に面白いのです。
「おもしろそう!」を起点に、自分で創る力を育てる
BeEngineerが大切にしているのは、教科書の文字をただ暗記するだけの勉強ではありません。「これって自動化できるのかな?」「どうすればもっと楽にできるだろう?」という、日常のちょっとした好奇心や疑問から逆算して、自らロジックを組み立てる力を養うことです。
今回の授業でも、ゲームの自動化を通して「じゃあ、この技術を応用して普段見ているあのサイトの情報を集めるにはどうすればいい?」という、次のステップへの探究心が自然と芽生え始めていました。
子どもたちの「おもしろそう!」というエネルギーを、社会で通用する本物の技術へと昇華させていく。今年の夏も、そんなワクワクする挑戦をたくさん用意して、生徒たちと走っていきます。
自分の手でアイデアを形にし、世の中の仕組みをハックしていく楽しさを、ぜひこの夏に体験してみませんか?教室の雰囲気や、夏限定の特別講座のスケジュールは、公式サイトよりご覧いただけます。
新しい世界への一歩を、ぜひ一緒に踏み出しましょう。