最近ハードまで学習し始めるソフトウェア学科の学生さん達

今、僕は大学のある学科のソフトウェア分野で指導を行っています。ソフトウェアといっても、最近変わってきたなぁー、と感じることを書いてみました。(あくまで個人的に思うことです)

元々はこの学科は組み込み技術という分野でソフトウェアとハードウェアのコースがあって、つい近年まではパチンコなどで使われる液晶グラフィックの分野(ソフト)から、それを制御する基盤など(ハード)を学習する学生さんがいたようです。

開発環境も独自のものがあったりする中、それを変えてソフトウェアはWeb標準技術、まあ、いわばHTML5に切り替えたのが数年前ということ。

では、ソフトウェアコースの学生はWebアプリを作るのかというと、最近のカリキュラムではそれに加えハードウェアの実習が入ってきてます。ハードウェアといってもArduinoを始めとした小型コンピュータです。
今期のソフトウェアコースの実習ではこのEdison for Arduinoという、インテル製の小型コンピュータで、Web制作している人なら馴染みのJavaScriptでもプログラミングできます。 (正直、導入が難しいという印象がありました、人によりますが…)

  
自分でもある程度やってみました。

Webページを作って動的なページを動かすところまでは完全にソフト部分だけど、WebページのUI(ボタンやスライダー)を操作して、マイコンにつながれたLEDやサーボを動かすところまでの流れを学習する、といったソフトウェア学科のカリキュラムは今、もしくはこれから広く導入されることが増えるんだろうなと感じます。
僕らがこの仕事を始めた時のWebページやソフトウェアという考えとは違うソフトウェアの概念を持った若い世代の人たちがどんどん現れてくるのかな?と。
そうなるとハードウェア学科は?
個人的に触れてみた感想ですが、、
昨年度の発表会に参加した時に見たものは、画像解析の分野だけでも自作アルゴリズム、クロマキーでキレイに合成したり、麻雀牌の判別ロジックまでを自作したりする学生さんがいました。
今世に出ているライブラリよりもっと精度の良いものを作るのだと熱気ムンムンといった感じです。
おそらく彼らがハードウェアの基礎をつくり、ソフトウェア学科はその基礎をソースコードでもっとカジュアルで便利なものにしていくことになるのかな?とも考えてしまう。
JavaScriptで動かすマイコン、Tesselは面白いコンセプトで、配線の知識がなくてもまずはWebアプリとハード部分、例えば照度センサで明るさをCanvasやSVGにビジュアル化するまでのハードルを下げてくれています。ハードウェアエンジニアの恩恵と言ったところだろうかと感じます。

部屋の明るさを取ってCanvasに描画するまでを試してみました。ハードウェアエンジニアの恩恵を受けている気がします。

そういえばこないだ小学生の甥っ子がRaspberry Piを使っていました。小学生。。
 

学校も学生さんも変わりつつあるな、と感じる今日この頃。