
この記事はそんなモヤモヤを少しでも解消するために書きました。
ちなみに、この記事を書いている私は2年前からIoTのプログラミングに関わっていますが、最初は同じ疑問でモヤモヤしました。
その時の思いとこれまでの実績を元に記事を書いていきます。
目次
モノのインターネット?

よく耳にするIoTは、このような説明ではないでしょうか。
モノのインターネットってイメージ湧きますか??
この少しわかりにくい訳が、IoTそのものをわかりにくくしている原因の一つだと私は感じています。
Internet of Thingsの略で、すべてのモノがインターネットにつながる事
こちらの訳のほうが、まだわかりやすいと私は思いますし初心者はここまでの理解で十分だと思います。
身近なIoT
まだ、なかなかピンとこないと思いますが、現在は身の回りに様々なIoTが溢れています。
もうすでに当たり前になっていますが、身近なIoTを紹介します。
スマートフォン

電話機能のみであった携帯電話(俗に言う「ガラケー」)ですが、
2000年頃に「iモード」や「ezweb」といったインターネットサービスが追加されました。
その後,10年の間に「カメラ付き携帯」・「iPhone日本上陸」といった事が続き、
いつのまにか身近な携帯電話はほぼ全てスマートフォンになっています。

初期のガラケーに入っている機能は買った時のまま使うのが当たり前でした。
今では不具合の修正や新しい機能(アプリ)を追加できたり、パソコン顔負けの機器となっています。
スマートウォッチ

スマートウォッチはスマートフォンほど普及はされていませんが、身近な例の一つです。
今でも多く残る時計機能のみであった腕時計ですが、2000年頃まではデジタル表示を行うのみで、インターネットサービスはついていませんでした。
その後、続々とスポーツ用、健康管理用の機能が追加されていき、
2015年「Apple Watch」が発売されると、スマートウォッチが一気に広まりました。

今ではスマートフォンでできる事の多くがスマートウォッチでもできるようになってきています。
プログラマーがIoTを学ぶ「基本の基!3ステップ」

身近にあるIoTですが、プログラマーとしてどのようにしたら関わっていけるでしょうか。
実体験から、最初の取っ掛かりとなるステップを3つ紹介したいと思います。
ステップ1 身近なIoTに触れる

IoTはソフトウェアだけでなくハードウェア(モノ)が絡むため、少し分野が異なります。
IoTに関わりたいと思う気持ちをより強くしないとなかなか長続きしません。
よって、身近なIoTに触れて「面白そうだなぁ」「少しイジってみたいなぁ」と思うことが大切です。
最近は、スマートフォン・スマートウォッチだけでなく、エアコンや冷蔵庫、テレビなどの「スマート家電」も発売されています。
それらの操作や音楽も流せる「スマートスピーカー」、忘れ物を防止する「スマートタグ」もすぐに触れられるIoTです。
どれも家電量販店に行けばすぐ手に取ることができますので、ぜひお試しください。
ステップ2 ラズベリーパイを試す

次に初心者プログラマーとして、IoTを体験しやすい製品が「Raspberry Pi=ラズベリーパイ」です
「ラズパイ」という言葉を耳したことがある方もいらっしゃるかもしれません。
この記事では「ラズベリーパイ」を詳細に書きませんが、超小型(名刺サイズ大くらい)のパソコンと思ってください。
HDMI/USB/LAN等のインターフェイスを利用することも可能で、カメラやセンサーなどを取り付けやすくなっています。
また、価格も数千円と試すのにはもってこいです。
初心者向けのスターターパックも売っているので、そちらを使えば
MacやWindowsパソコンと似たUIで比較的すぐに使用することができます。
ステップ3 IoTでも使えるプログラム言語を学ぶ

「IoTではこの言語」という決まりや標準なく、実際はケースバイケースになると思います。
よって、ここでは汎用的に使えて且つラズベリーパイを使う際のオススメ言語を紹介します。
それは「python」と「Java」です。
どちらの言語も、ラズベリーパイのOS「Raspbian(ラズビアン)」内に最初からインストールされています。
また、「python」と「Java」は業務でも多々使えるプログラミング言語ですので、学んで損はありません。
実際私も仕事でどちらの言語も使っています。
当ブログ内でも「python」と「Java」の記事がありますので、良かったらそちらも御覧ください。
こんなIoTあったらいいな?を自分なりに考えてみよう
自分の身の回りでこういったIoTがあったらいいな?便利だな?と思えるものが何かあるはずです。
また、それぞれ置かれている環境は様々ですので新たな発見があるかもしれません!
IoTは小さく始めたほうが、取り組みやすいので是非チャレンジしてみてください。