Raspberry Piでプログラミングをはじめよう

はじめに

プログラミングに興味があるけどどれをやればいいのかわからない、という声をよく耳にします。また、機械学習でよく使われるPythonに可能性を感じるけどすごいものを作る前にモチベーションが低下しそうで不安になる方もいます。人間が継続して学ぶために一番必要なことはモチベーションだと私は考えていますが、プログラミングの世界では初学者であればあるほどモチベーションを維持することは難しくなっているのが現状です。文字を画面に出力させるだけ、数字を計算させた結果を出力させるだけ、これでモチベーションを維持させるのは至難の業です。どうせ始めるならたのしく学びたい、そう考える方にRaspberry Piは適しています。Raspberry Piを使えばWebカメラやセンサーを自作することも可能です。

Raspberry Piの要素は大きく分けて2つ

Raspberry Pi本体を組み上げる

RaspberryはLinuxOSで動く小型のパソコンです。通常のパソコンと異なる点は、自作の機械(通称ガジェットと言います)とつなぐためのピンが設置されており、それを介してプログラムでコントロールすることができます。一般的なプログラミングはモニタの中に結果が表示されますが、Raspberry Piは実際にモノを動かすことができます。
LEDランプを点灯させることがRaspberry Piでのチュートリアルです。実際に行ってみてもらうと、同じチュートリアルでも一般的なプログラミングと全く違うことを感じてもらえるかと思います。

Pythonでプログラミング

先述したようにRaspberry PiはLinuxOSで動作します。Windowsしか触ったことのない人は抵抗を感じるかもしれませんが、Windowsのようなデスクトップ画面が用意されているため安心して始めることができます。Linuxをこれから学んでいきたいと考えている方にとっても良い入り口と言えます。
そして実際のプログラムはPythonで記述していきます。Pythonは機械学習などでよく用いられている言語です。柔軟性のある言語でデータ処理の記述がし易いことに加え、プログラミング初学者が直感的に記述しやすいことが特徴です。
Pythonで作ったプログラムでガジェットをコントロールするのがRaspberry Piの大きな特徴です。定期的にランプを明滅させるインテリアや、センサーをコントロールして障害物を避けるマシンを作成することもできます。

自分に合った方法でRaspberry Piをはじめよう

Raspberry Piを実際に始めようと思った場合、Raspberry Pi本体の購入や設置方法などを学ぶ必要があります。Webサイトの情報のみでも必要な知識を揃えることは可能です。ただし、ある程度の応用力を求められるため、なるべく敷居を低くしたい場合は、自分に合った書籍を利用するのがオススメです。初学者用の書籍も多数ありますので自分のレベルにあったものを選ぶことができます。

Raspberry Piを通して学べる事

相乗効果でプログラミングが上手くなる

プログラミングを行う場合、目的をゴールとして設計を行った後に作り始めるのが通常の流れです。この時重要なのが、どれだけ使い手の立場に立って使い勝手を想像できるかです。実務で使用した時、最高のパフォーマンスを発揮できるプログラムが良いことは誰の目から見ても明らかです。しかし大抵の場合は使用者≠開発者です。使用者の求めるゴールと開発者の考えるゴールには差異が生じるため、本当に求められていたものを作ることは想像以上に難しいことです。

では、ゴールの差異を縮めるにはどうしたらいいかですが、答えは簡単です。自分自身が、使用者=開発者の立場に慣れてしまえばいいだけです。Raspberry Piの良いところはチュートリアルの段階で、全体の流れを一通り網羅している点にあります。動かしたいガジェットを設計・組み立てを行い、それを理想通りに動かすプログラムを実行する、この一連の動作が実務に必要とされる知識の縮図となります。
これはプログラミングが上達してきて自分自身が作りたいものを作れるようになってくれば、自ずと考えることです。しかしプログラミング言語に慣れていないうちは、ここまで考える余裕がないのが実情です。一般的なチュートリアルは正しく実行されればOKで、使い勝手を考える必要はないですからね。
なので最初から実務に近い環境が味わえるRaspberry Piはおトクなので、一度試しに触ってみることをオススメします。

まとめ

今回はRaspberry Piの魅力について語ってみました。たのしくプログラミングを学びたい方や、電子工作を視野に入れている方に特にオススメします。
モーター駆動の制御なども可能ですのでロボット作成に興味がある方の足掛かりにもなります。プログラムを実行すると、ガジェットに対して電気が流れますので、注意をしながら実行することは忘れないでください。
是非Raspberry Piでたのしいプログラミング生活を送ってみてください。