見出し画像

0617「CS4ALL」

1日20分、興味のある技術分野を勉強するということをずっと続けている。この日記を書く習慣は、11月後半に1周年を迎えるか、今年いっぱいとかで止めると思うのだが、こっちの勉強の習慣はたぶんずっとやめないだろうと思う。

基本的には今やっている仕事に関係する技術を深く理解するようなことをやっている。この1週間くらいは、iOSで使える機械学習エンジンであるCreateMLとCoreMLで遊んでいて、これは簡単に動くのですごく楽しかった。月曜日、電通の近くのタリーズコーヒーで早朝からこれで遊んでいて、自分の3人の子供の顔写真の分類エンジンが10分くらいでできたのは感動した。

で、この日記を見て頂けるとわかるようにそれなりに疲弊しているので、ちょっと座学をやろうと思った。で、どんな座学をやろうかと思って考えたのが、「コンピュータ・サイエンスを学び直してみる」ということだ。コンピュータとは何か、というところから、世の中にある様々なソフトウェアやハードウェアの仕組みを理解していくような感じだ。

ここしばらく、昔のゲーム系のエンジニアのインタビューを読んでいたのだが、ゼビウスの遠藤雅伸さんにしろ、光栄の社長の襟川さんにしても、マシン語とかアセンブラとか、いわゆるコンピュータの根本的な仕組みを使ってものをつくっていたよ、みたいなことが結構書いてあって、そりゃ時代的にそういう時代だったからそうなんだろうけど、そこまでわかってると、今の世の中をかなり高解像度で理解することができるし、自分が使っているコンピュータというものを完全に手のうちに入れることができるよなあと思った。実際は私がマシン語をスラスラ書けるようなところまで行けるのかというとまあ無理だけど、ノリがわからないといけない感じがした。

いわゆる私たちが普段書いているいろんなプログラミング言語というのは、そういったマシン語とかアセンブラとか原始的なプログラミング言語というかコードをベースにして、より人間がわかりやすい形に編集されたものなので、何重にも「翻訳」された言語だったりする。

で、プログラミング教育だなんだと日本でもいろいろ話題になっているが、アメリカではわりとそれ以前に、この「コンピュータとは何か。どうやって動いているのか」をちゃんと教育しようとしているように見える。今朝も子供を幼稚園に送ったときに、幼稚園の壁に「CS4ALL」という横断幕が貼ってあって、なんだろうと思ったら、「Computer Science for All」だった。これはちょっと素晴らしいと思う。ニューヨーク市偉い。ウェブサイトもあった。

で、私も文系プログラマなので、結構このへんが何だかよくわからないまま普段コンピュータを使っているところがある。YouTubeで見つけた、この新山祐介さんという方が個人で上げているコンピュータサイエンス講座が素晴らしい。

なんで「クロック数」が速いとコンピュータの演算速度が速いのかとか、あんまりよくわかっていなかったが、これなんか見るとすごいわかりやすい。

確かに、ここをすっ飛ばしてプログラミング教育というのも、ちょっと表層的に過ぎる気がするし、そういえば、お友達がやっているSFPCなんかも、実際に最初の授業はバイナリ(2進数)から始めるわけで、これは結構AIだのなんだの技術的空気標語がふわふわ飛び交う昨今だからこそ、みんながちゃんと知っておくべき仕組みのような気がする。


みんなにも読んでほしいですか?

オススメした記事はフォロワーのタイムラインに表示されます!