ようやく寒さが緩んできましたね。
いかがお過ごしでしょうか。
プログラマーの仕事ってどんなの?という事を、小学生のお子さんに時々お話しします。
今日は、私がプログラマーとしてしている最近の仕事について簡単に紹介しながら、プログラマーの日常を知って頂けたらと思います。
クラウド関連
Amazonという会社をご存知でしょうか?
本から紙オムツまで、さまざまなモノを売っている企業で、WEBサイトで注文するとだいたい翌日に届けてくれます(お急ぎ便というオプションがあります)。
さて、このAmazonという会社は、ただ通販をやっているだけではなく、私のようなプログラマーにとって無くてはならないサービスも売っています。
それは、クラウドサーバーです。
インタネットに接続されたサーバーコンピューターを、1台1秒単位でレンタルできるのです。
(秒ですよ、秒!)
Amazonは、レンタルサーバーだけではなく、メール配信や、データベース、データ解析など、さまざまなプログラミングで使うサービスを提供しています。
そのサービスの種類は、年々増えていて、現在では、なんと100個くらいあります。
そんな沢山のサービスの中から、必要なモノを選んで組み合わせるとシステムの土台をつくることができるのですが、数が多い(そしてどんどん増える)のでどんなサービスがあるのか知るだけでも一苦労です。
そういうわけで「Amazonのサービスの特徴や使い方をちゃんと知っていますよ!」というのは、プログラマーとしての重要なスキルのひとつになっていて、検定試験もあります。
前置きが長くなりましたが、そんな検定試験に勤務先の同僚を合格させるための教材を作るプロジェクトを最近はじめました。
ロボット関連
Softbankのお店で、白い丸い顔のロボット「ペッパー」君を見たことありますか?
そんなペッパー君と一緒に、パフォーマンスをしてくれる別のロボットのプログラムを作っています。
ロボットといっても、ペッパーのように顔がついているものではなくて、工場などにある腕だけのカタチのロボットです。
そんなロボット達は工場の生産ラインで働いているのですが、その仕事の内容は、どうやってロボットに教えているかご存知ですか?
ロボットには、たいてい、プログラムで動きを教えます。教える、というよりはプログラミングをするのですね。そのプログラミングをするための画面を作るプロジェクトに、1年くらい携わっています。
派手だけど地味な仕事
さて、こういったなんか凄そうな派手そうな仕事を、どんな風にこなしているかというと、かなり地味にやっています。
映画などでは、プログラマー(あるいはハッカー)が、だだだだだーっとキーボードを叩いて、見る間にプログラムが完成するシーンがありますよね。
ズバリ言いますが、あれは、嘘です。
だだだだーっとキーボードを叩いている時間は、現実のプログラミングでは、多分20%くらいしかありません。
ではそれ以外の時間は何をしているかというと、ほとんど動きません。ときどき瞬きするくらいで他は、じっとしています。
何もしていないわけでは無くて、画面に映し出されている自分のプログラムを見て、考えています。
さっきまで動いていたのに動かなくなったけど、一体どこが悪いのか? 変えたところは、この行だけだけど、ここは絶対これであっているはず、あれ? いやいや、やっぱり大丈夫..ということは、こっちがここと合っていないのかな…とずっと忙しく考えています。
そしてある瞬間「閃いた!!」ときに、今まで10分かかっても終わらなかった処理を、たった1秒で終わるよう改造できたりするところが、ものすごく面白いのです。
教室の生徒さんには、そういったプログラミングの面白さも伝えていきたいと思います。