自由研究でプログラミングをしたいんだけどテーマは何にしたらいいかな?具体的にどういうふうにプログラミングしたらいいか教えてほしいな。
こんな疑問にお答えします。
- 自由研究でプログラミングをするときのテーマの決め方【身の回りの課題解決がおすすめ】
- 身の回りにある課題の見つけ方3選
- 自由研究でプログラミングをするのにおすすめの方法
私は大手メーカーでソフトウェアエンジニアを6年以上経験していまして、高専、大学、大学院では研究過程でロボットのプログラムを作ってきました。
そんな私が解説します。
自由研究でプログラミングをするときのテーマの決め方【身の回りの課題解決がおすすめ】
結論としては「身の回りの課題解決」がおすすめです。
なぜなら、他の人とかぶりにくいからです。身の回りの課題は人それぞれですからね。
身の回りの出来事に不満や改善点を見つけて自動化できないか考えることはプログラミング的思考の基本です。
なので、「身の回りの課題解決」をテーマにしましょう。
身の回りにある課題の見つけ方3選
と言われても「身の回りに課題なんて無いよ」という方もいるでしょう。なので、身の回りの課題を探す方法を紹介します。
身の回りの課題を探す方法は次の3つです。
- ① 自分の一日の行動から改善点を探す方法
- ② 生活の中で手間(時間)がかかることから改善点を探す方法
- ③ 自分の失敗から改善点を探す方法
一つずつ順番に解説しますね。
① 自分の一日の行動から改善点を探す方法
1つ目は自分の一日の行動から改善点を探す方法です。
まずは、自分の一日の行動を箇条書きにします。
- 起床
- トイレ
- 朝食
- 歯磨き
- 着替え
- 登校
- 授業
- 昼食(給食)
- 歯磨き
- 下校
- 宿題
- 夕食
- お風呂
- 歯磨き
- トイレ
- 就寝
一日の行動を観察すると「歯磨き」の回数が多いことに気づきます。
虫歯にならないためには正しく磨く必要があります。その一つの目安として歯磨きの時間があります。
なので、「時間をかけて歯磨きをする」という課題が見つかります。
このように自分の行動を書き出してみることで課題や改善点に気づくことができるので、これを研究テーマにすればいいです。
プログラミングと関係あるのか?
「プログラミングとどう関係があるの?」と思われるかもですが、実現方法によっては関係があります。
「時間をかけて歯磨きをする」方法は色々考えられます。
そこでプログラムの登場です。プログラムは色々なことを自動で行ってくれます。
なので例えば、下記のようにすることで「時間をかけて歯磨きをする」手助けができます。
このように身の回りの課題をプログラミングで解決することができます。
これが、自分の一日の行動から改善点を探す方法です。
② 生活の中で手間(時間)がかかることから改善点を探す方法
2つ目は普段の生活の中で手間(時間)がかかることから改善点を探す方法です。
生活の中で毎度手間(時間)がかかることはないか探します。
例えば、「いつも学校の席替えに時間がかかるからすぐに決まるようにしたい」とかです。
そういう課題であれば、下記の方法で解決することもできます。
その時に、次のような工夫をすることができます。
- 視力が低い人は優先的に前方の席を割り当てるようにする
- 前回の席替えで隣同士の人は次回の席替えで隣同士にならないようにする
これが、普段の生活の中で手間(時間)がかかることから改善点を探す方法です。
③ 自分の失敗から改善点を探す方法
3つ目は自分の失敗から改善点を探す方法です。最近、なにか失敗したことはないか探します。
例えば、「雨が降っているのに窓を締め忘れて家の中が濡れた」とかです。
そこで、窓を締め忘れないためにプログラミングを活用(≒自動化)できないか考えます。
例えば、次のとおり。
これなら、雨が降ってきたことに気づけるので窓を締め忘れる心配がありません。
これが、自分の失敗から改善点を探す方法です。
以上のようなやり方で「身の回りの課題」を探し、自由研究でプログラミングをするときのテーマにするといいですよ。
自由研究でプログラミングをするのにおすすめの方法
最後に、自由研究でプログラミングする具体的な方法を紹介します。
結論は「プログラミングおもちゃ」を使う方法です。
なぜなら、プログラミングおもちゃは初心者でもプログラミングを理解しやすいように作ってあるからです。
なので、先程挙げた例を作りやすいおすすめプログラミングおもちゃを紹介しますね。
汎用性が高い「Studuino Liteであそぼう!はじめてのプログラミング工作」
自由研究に使うなら「Studuino Liteであそぼう!はじめてのプログラミング工作」が簡単でおすすめです。
これはブロックタイプのプログラミングロボットで、ロボットを組み立てて、パソコン(PC)でプログラミングするキットです。
特徴は豊富な入力装置(センサー類)を備えていることです。
また、豆電球とブザーが付属しているので、明かりや音で知らせることができます。
豆電球
ブザー
なので、1つ目の例に挙げた下記のプログラムを作ることができます。
また、付属のテキストがわかりやすいのもうれしいポイントです。
全74ページで、プログラミングソフトの使い方から身の回りのプログラミング例などの説明もあります。
結構分厚いです。
やっぱり、センサーが多いと組み合わせしだいでいろいろなプログラムを作れるので、クラスメイトと作るものがかぶりにくいのもうれしいポイントです。
関連「Studuino Liteであそぼう!はじめてのプログラミング工作」の詳細レビューはこちら
子供向けプログラミング教材の定番「Scratch」
子供向けプログラミング教材でいちばん有名なのはScratchですね。
公式サイトの統計データによると日本だけで約130万人のユーザーがいるようです。
Scratchをおすすめする理由は次のとおりです。
- 完全無料
- 初心者にわかりやすいビジュアルタイプのプログラミングソフト
- 有名なので書籍やネット上の情報が多い
Scratchは完全無料で使用できるビジュアルタイプのプログラミングソフトで、画像中央の様に命令のブロックを組み立てながらプログラムを作っていきます。
作れるものとしてはパソコンやタブレット上で動くプログラムです。
なので、2つ目の例に挙げた下記のプログラムを作ることができます。
高機能な「mBot2」にチャレンジ!
最後に紹介するのは「mBot2」です。これは組み立て式のロボットカーです。
ロボットの頭脳であるマイクロコンピュータ(マイコン)に入力装置が8種類もあります。
また、スピーカーも搭載しているので音を鳴らすこともできます。
なので、3つ目の例に挙げた下記のプログラムを作ることができます。
別売りでメーカー公認の教材があるので、あわせて購入すると役に立ちますよ。
結論:テーマ選びに時間をかけよう!
具体的なプログラミング方法も紹介しましたが、一番大事なのはテーマ選びです。
プログラミングはあくまで手段なので、身の回りの改善点をどのように改善したらいいか考えることが一番の自由研究です。
自由研究の考え方(≒まとめ方)は「【具体例7つ】自由研究でプログラミングをしたときのまとめ方を解説」に詳しく書いていますので、先にこの記事を読んでからテーマを考えるのもありですよ。
では、自由研究を楽しんでください(^_^)/~