at the front―前線にて

最終回 今生きるプログラマーが,この仕事をあこがれのものにする

この記事を読むのに必要な時間:およそ 4 分

ご好評いただいた本連載も今回で最終回。いつもとは趣向とは変え,竹馬氏がこれまでのインタビューを振り返りながら,未来への展望を綴ります。

一皮むけば高度なコンピュータサイエンスが

今まではインタビュアーとして抑えた感じでやってきましたが,今回は自分のブログmizchi's blogの読者はご存じのような,いつもの感じで行きます。

この連載インタビュー企画の依頼を受けたときの個人的な狙いとして,技術評論社の名前を使って,いつもは会いづらい人に会いに行く口実を作ろう,ということを考えていました。その目的はほぼ達成できたので,関係者諸氏には,とても感謝しています。

……という個人的なテーマとは別に,僕自身が本連載を通して一貫して表明したい課題感があり,それは「高度なコンピュータサイエンス/プログラミングスキルの現場適用の難しさ」というものです。

僕自身,大学でコンピュータサイエンスを修めたわけではないので,このテーマを語るのに若干の申し訳なさがあるのですが,プログラマーとして経験を積むにつれてコンピュータサイエンスの基礎の必要性を痛感するようになりました。高度に抽象化されたフレームワークから入門する最近のプログラミング学習では,最初は気付きづらいものの,一皮むくとそれらが表出してきます。また,実務に関係ないほど無関係な低層,というわけでもありません。バグ調査やその修正,パフォーマンスチューニングでは,それらによってプロダクトの成否に関わるほど重要なファクターになり得ます。

竹馬光太郎氏

竹馬光太郎氏

この連載に先立ち,僕が本誌で書いたテーマは「仮想DOM革命」注1というものでしたが,これは木構造の差分適用というアルゴリズムが,いかにUIUser Interfaceの更新を抽象し,それによってパフォーマンスと開発効率を両立させることができるか,という内容でした。Reactなどをビューのライブラリとして表面的に使うだけでも効果はありますが,アルゴリズムを学ぶことで,それらが提供するAPIの意味を真に学ぶことができる,というのが大事なことだと思っています。

仮想DOMDocument Object Model技術に限らず,この連載で取り上げた第1回の中川博貴氏の「WebWorkerのようなブラウザ技術⁠⁠,第4回の松本勇気氏の「ブロックチェーン技術⁠⁠,第5回の奥一穂氏の「HTTP/3周辺のネットワーク技術」は,いずれも高度なコンピュータサイエンスの知識が下敷きとなっています。最近ではAIArtificial Intelligence人工知能)技術がまさにそういうものでしょう。

注1)
本誌Vol.106の特集3「仮想DOM革命─⁠─ReactでGUI設計が変わる!」

人に伝える,圧倒的な技術で実装する

第2回の天野仁史氏は,筆者にとってプログラミングを勉強しはじめたときにIT戦記というブログを通してお世話になった人物で,彼とこのタイミングでお話できたのは,夢が1つかなったという気持ちです。天野氏には,技術者,そして経営者という立場を経て,いかにプログラマーがユーザーにとっての価値と向き合うようになったか,という話をしていだきました。

第3回の結城浩氏は『数学ガール』シリーズ注2などの理数系の書籍の長年の執筆を通して,コンピュータサイエンスの本質につながる学習パスを提示してくださっています。また,執筆に必要なのは読者への愛,という一貫したスタンスを示していただきました。

松本勇気氏は,筆者と同世代の30歳で,DMMという大企業のCTOChief Technology Officer最高技術責任者)に就任し,技術と経営という立場から,技術者が何の期待に応えるべきか,結局のところ組織が必要とするものはいったい何か,という話をしていただきました。またブロックチェーンの社会適用の何が難しかったか,解決すべき点は何か,という点を示していただきました。

ここで大事なのは,いかに高度な技術もそれを必要とする人に説明しなければ,そして同時に中川氏や奥氏のように圧倒的な技術で現実的に信頼できる品質で実装できなければ,その技術は有用であると言えない,ということです。必要な技術を必要な人へ,適切な場所とタイミングで提示するためには,技術者が自分に求められているさまざまな期待を理解し,そしてその期待を超えていく必要があると思っています。

これはポジショントークであると自認したうえでの意見ですが,僕はプログラマーという職業はあこがれの存在であってほしい,夢を持って目指す対象であってほしいと思います。自分はそう思ってこの業界に入りました。プログラマーがあこがれの対象であるために,プログラマーは社会の期待に応えなければならないし,同時に本質を追い求めないといけない,という2つの柱があると思っています。それには,松本氏の回で述べられたように,経営者と技術者の相互理解が必要で,また国や文明全体としてのITリテラシーというものがその実現の土台になるはずです。

理想的には,⁠全員がプログラマーであり,そして同時に何者か(本職)でもある」という状態が,社会にとっての理想だと思っています。今で言うと,全員が表計算のマクロを書いたり,繰り返し作業をスクリプトで自動化したり,Slackのbotを書いたり,データ分析ツールでSQLを実行したり,必要とあれば業務システムそのものを改善しながら,それぞれの業務に取り組む,といったイメージでしょうか。そのとき,プログラマーという職種は,各分野に溶けてなくなっているかもしれません。

……というのはあまりに理想論で頑張りすぎな感はあり,現実にはこれとは違うアプローチが主流で,⁠十分に発達した科学技術は,魔法と見分けが付かない」⁠アーサー・C・クラーク,Arthur Charles Clarke)のを受け入れて,技術が十分に発達するまで頑張る,それまでは運用でカバーする,というものです。コンピュータやAI技術が進化して人間と見分けが付かなくなれば,そのとき人間が必要とするのは,⁠よく練られた直感的なメタファ」になります。SiriやAlexaによる音声による対話インタフェースなどはこの路線ですね。今はディープラーニングがそこにたどり着けるかどうか,という時代です。

また,スマートフォンの流行で判明したように,卑近なデバイスのインタフェースが思考を規定するというのが,天野氏とのインタビューで焦点になりました。仮にARAugmented Reality拡張現実)グラスなどで拡張現実が主流になれば,また違う世界が訪れるでしょう。

何にせよ,人間の使うプログラミング技術とコンピュータの知性が歩み寄って「溶けた」時代では,人間の知性や倫理と言ったものの再定義が必要になるのではないでしょうか。

中川博貴氏(第1回)

中川博貴氏(第1回)

天野仁史氏(第2回)

天野仁史氏(第2回)

注2)
結城氏の代表作の1つ。2007年の第1作に始まり,姉妹作の『数学ガールの秘密ノート』シリーズと合わせてこれまで16作品が刊行されている。SBクリエイティブ刊

著者プロフィール

竹馬光太郎(ちくばこうたろう)

フリーランスで先端技術の導入などを行う。

GitHub:mizchi
Twitter:@mizchi
URL:https://mizchi.hatenablog.com/