未来を生き抜く子供たちへVol.1:Microsoft MVP 鈴木孝明さん
プロキッズの新企画「未来を生き抜く子供たちへ」。
ITの世界で活躍する大人たちの過去を振り返りながら、未来を生きる子供たちへのメッセージを送ります。
記念すべき第1回目は・・・?
プログラミングは自己表現と生きがい
<鈴木孝明さんプロフィール>
福井県出身。2012年7月にMicrosoft MVP for Visual Studio and Development Technologies(C#)を受賞。
現在は、株式会社グラニ 開発本部VR部にて「Project Sonata」という、空間と言語の壁を超えた次世代コミュニケーションプラットフォームの開発に従事。
―早速ですが、現在のお仕事は?
スマホのゲーム会社で、2016年10月からAR (拡張現実) / VR (仮想現実) に関するサービス開発を行う部署働いています。
―ARとVR?
AR (拡張現実)は、現実のものが見えている状態で、メガネのようなデバイスを通して見ると目の前のものの上に映像などを映し出し、現実にあるような状態に見せるものです 。
VR(仮想現実)は、目の前を全部覆ってしまうデバイスを使って、今の現実とは違う世界にいるかのように体験させるものです。
言語の壁だけでなく、空間の壁も越えていく開発を「Project Sonata」でやっています。
このサービスは、HoloLensというゴーグル型のコンピュータを身に付けて、英語や中国語で会話をするとリアルタイムに日本語などの翻訳言語が表示され、耳で聞くこともできるものです。
出張中や地球の反対側にいる人と会話がしたい時もVRの技術を使えば、コミュニケーションできるんです。
―そもそもプログラミングを始めたきっかけは?
実は社会人までプログラミングをしたことがなかったんです。
大学では理系だったんですが、、エクセルやワードを使って研究をする位でした。
ただパソコンが好きだったから、就職では地元でコンピュータを扱える仕事として「プログラミング」を選びました。
その会社に就職して運が良かったことが2つあります。
研修講師が優秀なMicrosoft MVP(以下、MVP)の人だったこと、1年間すごく時間をかけて研修してくれたことです。
新入社員時代は、研修室にこもってプログラミングの基礎勉強をひたすら行っていました。
1日会社に8時間、家に帰っても本を読む宿題がでて、勉強だけの生活を4ヵ月間やっていました。
その後の半年も、みんなが作った製品チェックを行うデバッカーとしてバグのテストをずっとやっていました。
―最初からプログラミングって楽しめました?
「文字を入力すると、こういう風に動くんだ」っていう所から楽しかったです。
「なんで動かないんだ」って最初は思うこともありました。
でも、「やっぱりコンピュータは正しい」って境地に達し、きちんとコードで命令できるようになっていったときにどんどんおもしろくなっていきました。
―わからない時はどうしていましたか?
研修講師の師匠に聞いていましたね。
今でもよく覚えているんですけど、自分がコードを書いてできないと「キーボードを貸せ」と自分が書いたコードのどこがまずくて、どこを書き換えないといけないかを修正しながら教えてくれました。
MVPをとったきっかけも、師匠への憧れが強いです。
今は転職して会社も違うけど、師匠とは超仲良しです。
―子どもの頃はどんな子でした?
先生や友達に「一言多い」とよく言われてました。
自分で確認するまで信じないというか、自分の意見を持っていました。
プログラミングでも本の内容は、自分で動くのを必ず試してから納得していました。
―お子さんにプログラミングを教えていますか?
最近、自分の子どもにもプログラミングを教えています。
僕は教えるのも好きですが、やはり将来的にプログラミングができるか、できないかで人生が変わると思います。
プログラマーにならずに経理になったとしても、エクセルでマクロを1つ組めば効率化ができます。
それができる人とできない人は、給料に差がでてもおかしくないわけじゃないですか。
子どもの頃からプログラミングをやると、時間の確保もしやすいから上達しやすいと思うし、いつか「お父さんのコード、こうしたほうがいいよ」という話ができたら楽しいですね。
―ぜひ、プログラミングが上達するコツを教えてください!
プログラミングで最初に教えられたことですが、難しい問題を難しく考えちゃダメなんですよ。
「Divide and Conquer(分割統治)」というのですが、難しいことを細かくして1つ1つ解決していくことを繰り返していくのが大事です。
たとえば、数学も分解していくと実は掛け算、割り算というように単純な問題に分割できるんですね。
プログラミングも、それが理解できると一気に成長できるんじゃないですかね。
あと、大事なことは、例えば名前の付け方にせよ、アルゴリズムにせよ、どうしてそう書いたのかの理由をいつも説明できる状態にしておかないといけないですね。
大抵1年後とかに見返すと絶対忘れているし、さらに自分だけわかってもダメで、相手にも書いたコードの意図をきちんと理解してもらう必要があります。
そのため、コメントの丁寧さだったり、コードの見易さだったり、名前だったり、僕が言っていることを代弁してるという気持ちで書かないといけません。
―鈴木さんにとってプログラミングとは?
「プログラミングコードは芸術」って言ったら笑われたことありますが、実は絵画と一緒です。
コードを見れば、その人の気持ち、意思、人柄が全部でます。
テクニックに凝って爆速で動くものを作る人もいるけど、それだけではコードが難しくて他の人が後から理解できないかもしれない。
逆に、可読性や動作速度などのバランスのよいコードを見ると、「美しい」「エレガント」ってセンスがいいなと思いますね。
子どもたちも独学でプログラミングを学ぶ子がいると思うけど、他の人のコードを見る癖をつけたほうがいいです。
自分のコードとの差分を感じることが大事です。
すると、「早く作ることを最優先で作ったんだろうな」とか裏の意図まで感じられますよ。人柄もでていますからね(笑)。
―これからの目標を教えてください!
「これは僕が作った」と自慢できるようなプロダクトを作りたいです。
社会人 5年目で Microsoft MVP を受賞したての頃、前の会社で「電話応対システム」を半年間で一人で作ったんです。
他社が作るより見た目もいいし「もう売れるじゃん」って感じのものでした。
社員から「この機能が欲しい」と依頼がくれば、対応も即効でしていたので、コスパもよかったと思いますよ。
当時作った電話応対システムは社内向けだったけど、今度は自分が作ったプロダクトをもっと多くの人に知ってもらいたい。
次に作るプロダクトが自分の代名詞になるようにしたいです。
MVPという肩書きもありますけど、「この製品はご存じかと思いますが、これを作ったのが僕です」と説明できたほうが説得力もあがりますよね。
―最後に10~15年後に社会へでる子どもたちへのメッセージをお願いします!
今の子どもたちにおススメすることは、プログラミングと英語の2つですね。
プログラミングを学ぶうえでも英語が必要ですし、英語はできないと損します。
どれくらい損をするかというと、海外のマイクロソフトで最先端の情報を一緒に聞いているのに、他の国の人たちと同じように質問ができない。
これはただプログラミングができるだけではダメだという所ですね。
僕が手がける「Project Sonata」のモチベーションもそういう所にあります。
やりなさいとはいえないけど、今の子どもたちは英語を聞いて話せるようになる所までやったほうが得しますよ!
―鈴木さん、ありがとうございました
プログラミングコードには人柄がでるとのことで、
そんな鈴木さんのインタビューが終わってふと見ると、お菓子の袋が美しくたたまれておりましたw
あぁ、人柄はこんな所にも。。