at the front―前線にて

第2回 JavaScriptの呪いから解き放たれて

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

第2回目のゲストとしてお迎えしたのはamachangこと天野仁史さん。これまでのこと,これからのこと,熱く語ってくださいました。

画像

天野 仁史 さん

2012年にプログラマーとして起業。その後,スマートニュースにバイアウトし,エンジニアリングマネージャーとして開発チームを作る仕事に携わる。

Twitter:@amachang
URL:https://amachang.hatena
blog.com/

JavaScriptのスターからベンチャーの立ち上げへ

天野:天野仁史です。amachangのハンドルネームで活動しています。2007年ぐらいにインターネットで活躍していました。サイボウズ・ラボでJavaScriptをがんばっていた時期があって,そこで技評さんにお世話になったり,いろんな勉強会に顔を出したりしていました。2010年以降はベンチャーを立ち上げたり手伝ったり。

経歴を言うと,高専でコンピュータ系の科目は得意だったので,先輩に誘われて中堅通信機メーカーに入りました。そこで交換機とかを作っていたんですけど,そこに音声通話ガイダンスを流すプログラムがありました。その中にVoice XMLという業界標準の仕様があって,そこでECMAScriptが動いていたんですね。それで,その調査をすることがあって。

当時まだJavaScriptが日の目を見ない時代だったので,自分で実行エンジンをビルドしたりして,そこでちょっとJavaScriptに詳しくなっていました。その後,AjaxAsynchronous JavaScript and XMLが流行ったときに,騒がれているけどこれってただのJavaScriptだよなって思っていて,当時流行っていたPrototype.jsの発表をしたら大ウケ。それが2005年。

竹馬:僕がプログラミングの勉強を始めたのが2008年ごろなんですが,そのときにamachangさんが界隈のスターで,ブログ「IT戦記」はよく読んでました。⁠JavaScriptなら,この人を倒せばよいのか!」みたいに思って勉強していました。

天野:(笑)⁠そういう意味では,ちょうど世代交代したのかもしれないですね。僕も2007年がピークで,2009年は活動を減らしていった時期だった気がします。2008年ごろから,ブログはほとんど書かなくなったのかな。その後は6年くらい会社をやっていました。引きこもって誰にも会わないように,ただひたすら会社の成長を追い続けてやったんですけど,この前,スマートニュースに会社を売却しました。

自分では会社を成功させることはできなかったけど,スマートニュースはまだまだベンチャーの気質も残っているし,一エンジニアでも会社の価値に直接貢献できるくらいのコンパクトさで,それでかつ成長の角度が大きいっていうところで。自分の起業した経験もUIUser Interfaceの経験も活かせるんじゃないかと。

今はiOSやAndroidを束ねたアプリケーションチームのエンジニアリングマネージャーをやっています。コードを書く時間は少なくなりましたけど,UIに長けたエンジニアの人がいたら一緒に成長する会社を作っていきませんか,という宣伝。

竹馬:なんでアウトプットが減っていたんですか?

天野:ブログをやめたきっかけは,自分の中ではけっこう明確なんですよね。これからベンチャーでやっていくうえで,ブログを書くよりも実質的にアントレプレナー的な,起業家としてもう少し有名になるまでは,いったんゼロから始めよう。そう思ってブログをやめました。

竹馬:ちょうどスキルをリセットするタイミングだったと。

天野:そうです。それとは別に,JavaScriptをやめようという意思も,ちょっとありました。僕はプログラミングが得意だという自覚はないんですが,サイボウズ・ラボの技術者集団に入ったときに,すごく自分の限界を感じたんですよね。JavaScript以外のこともできるようになって,ちゃんとしたエンジニアとして活躍して認められるなら納得できるけど,JavaScriptしかできないのにっていう劣等感があって,それ以外のこともちゃんとやろう,という想いが強くありました。2007年にデブサミでベストスピーカー賞をとったあたりが一番僕の中の違和感のピーク。僕がこんな目立って,ちょっと違うんじゃないかな,みたいな。

周りがJavaScript以外を許してくれない

竹馬:JavaScriptしか書けないのに目立っても,っていうの,僕もすごくわかるんです。僕の場合,逆に時代が勝手に追いついてしまって,JavaScriptでなんでも作れるようになってしまって,それ以外を書く動機がどんどんなくなってしまった。結局その仕事しか来なくなっちゃって。

天野:今になって思うと,1つのジャンルに突き抜けることによって広いジャンル,UIそのものの深淵に触れられるってのも,あるんじゃないかと思っています。

サイボウズのプロジェクトで,まだコモディティになっていないころに,SPASingle Page Applicationと呼べるような複雑なアプリケーションを作ったんですね。その過程で,どうしたってMVVMModel-View-ViewModel的な考えとか,設計論が必要になってくるわけですよ。

起業してからはネイティブアプリケーションのコードを書く仕事が多かったんですが,その過程でも一番大事なViewとデータの分離とか,UIのライフサイクルとか,前に見た別のアレ,という感じでうまく書けたという実感がありました。

本質的な部分がわかっていれば,AndroidでもObjective-Cでもぜんぜんイケるじゃないですか。でも,JavaScriptが得意だと周りがそれ以外を書くのを許してくれないって話ですよね。僕はその危機を感じて自ら離れていったけど,どうなんでしょうね。運に任せるのも怖くないですか? JavaScript衰退しました,みたいな未来が。

竹馬:あー,それはあるんですけど,僕は少なくとも国内においては自分から自分のスキルが活かされる環境を作りに行こうしています。それが僕のブログを書く動機なので。

GoogleやAppleの事情に振り回されるのはあるんだけど,技術的に正しいことをしていれば報われると思っています。良いコードは何か? ってのは,言語に限られない普遍的な部分だと思っています。

天野:そうですね。言語に依存しない部分を,逆に一つの言語に集中することによって,本当に大事な部分を学べるってことがあるのかもしれないです。

著者プロフィール

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

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

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