Skip to main content

Webエンジニア武勇伝 第24弾 蓑輪太郎 氏 | サイボウズ・ラボ株式会社

Popularity Report

Total Popularity Score: 0

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Rank

Groups (1)

Bookmark History

Saved by 3 people (2 private), first by anonymouse user on 2008-05-30


Public Sticky notes

あとはその頃に、C言語っていうプログラミング言語に一回チャレンジしてみたんですけどポインタっていう概念がまったく理解できずに挫折したことがあるんです

Highlighted by waltz8

大学はどういった学部に進んだんですか?

Highlighted by waltz8

理工学部です。

Highlighted by waltz8

4年生になると研究室に配属されて、そこで1人1台のパソコンが支給されて、それからちょこっとずつプログラミングをするようになりました。

Highlighted by waltz8

その頃ちょうど流行りだしていたブラウザで動くJavaAppletを使って、オセロとか作っていたんですが、それがプログラミングを本格的に始めたきっかけですね。

Highlighted by waltz8

その頃は本も見ずにやっていたんですか? 蓑輪:その時はインターネットを利用して調べていました。 川井: じゃあ。ハッカーって言われる方としてはちょっと遅めなんですねぇ。 蓑輪:そうですね。だいぶ遅いですね。

Highlighted by waltz8

そうですね。物理の大学院に行こうって決めていたんですけど、ギリギリになって「あれ?別にそんな物理好きじゃないな」って事に気がついて、それで、だいぶ遅めの就職活動だったんでめぼしい所はあんまりなくて、大手グループのシステム会社に入って、プログラマというかシステムエンジニアみたいなことをやっていました。

Highlighted by waltz8

4年くらいですね

Highlighted by waltz8

まず、入って1年目は色んなこと学べるので楽しいじゃないですか。2年目くらいになってだんだん周りの人の力量とかもわかってきて、でも、まぁある程度裁量をまかされてくるので仕事もわりと楽しくて、でも、社内だけではどうも技術は身につかないなっていうのが分ってきて、オープンソースでOSを作ってみようかなっていう思いに至ったんです。

Highlighted by waltz8

僕を含めて3、4人は コードを書くような部署で、僕は割とそういう部署に行きたいといっていたので、めぐまれていて、コーディングはしていましたね。

Highlighted by waltz8

web開発をやられたんですか?

Highlighted by waltz8

関連会社向けの社内システムを作成していました

Highlighted by waltz8

営業さんが見積もりを取るためのwebの画面

Highlighted by waltz8

ボタンを押すとPDFで出力されたりするもの

Highlighted by waltz8

発注画面とか

Highlighted by waltz8

そういう環境の中で技術力をつけるために個人的に、オープンソースのほうに行くわけですね

Highlighted by waltz8

自分でOSを作っちゃおうみたいな話だと思うんですが、普通の人にはできませんよね? この時点で2年くらいじゃないですか? どのへんでそういうことができる実力がついたんですかね?

Highlighted by waltz8

OSを作るには、まず最初にフロッピーディスクとかCDとかから起動しないといけないんですけど、起動するためには何が必要なのかというのから調べて、どうもアセンブラが理解できないといけないっていうのが分かって、サンプルのソースコードを検索して調べてみてみるんですが、さっぱりわからないじゃないですか。そうすると一行一行自分なりにマニュアル読みながら、こういう命令が発行されているっていうのを書いてみて、「こうこうやってみたけど、やっぱり分からなかったよ」って2chに書くと「それはこういう背景で、こういう動作になるよ」と親切に教えてくれる人がいて、割と自分で学習しつつ、分からない部分はフォローしてもらって成長させていただいたところはありましたね。

Highlighted by waltz8

サンプルコードを一行一行丹念に読んで、分かんない所を聞いて、それに対するレスポンスで勉強するというのを繰り返ししてきた

Highlighted by waltz8

これは、ブログでコメントいただいた「宮下尚(himi)さんの武勇伝」に出てくるEmacsのコードを頭から全部読み続けて、6ヶ月かかってやっと分かったっていうのと似てる感じですね。

Highlighted by waltz8

でも宮下さんとか他のハッカーがすごいなと思うのは、自力でやられている点ですね

Highlighted by waltz8

僕は人に助けられまくっていて何とかやれてきたので、個人の能力としてはそんなに高くないと正直自分では思っていますね。

Highlighted by waltz8

僕も、一人でできる力があればもっと違う方向に行っていたと思うんですが、ほんと自分は頭が悪いなぁと思うことが多いです

Highlighted by waltz8

仕事で欲求不満がたまって、帰ってから発散するみたいなのは、あったと思いますね

Highlighted by waltz8

やりたいことをやりきれないみたいな欲求

Highlighted by waltz8

知的好奇心を満たしたいというのがあって、その対象が今はコンピュータなのかなと思っていますね。「今日はひとつも新しい発見なかったな」っていう日の夜はブルーなんですよね。「今日、俺なんにも頑張らなかった」みたいな(笑)

Highlighted by waltz8

僕は自分が、能力が低いとか頭が悪いのはよく分かっていて、それを補うための工夫みたいのでなんとかやってきたんで、そういうのをうまく伝えられればなぁ、と思っています。

Highlighted by waltz8

確かに一芸に秀でるのっていうのはすごく難しいことだと思うんですよ。なので今のお話ってよく分かりますね。高橋征義さんも同じようなことをおっしゃっていまして、 彼もすごいなと思うんですが、その彼が、Rubyではトップハッカーにはかなわないので 「文章を書く力がある」ということを併せ技にして、一流に近づいたっておっしゃってましたね。

Highlighted by waltz8

プログラマの世界は、本当に力の差がわかりやすいんですよ。あの技術者は自分よりすごいっていうのがぱっとわかるんで、「あぁ、俺って駄目だぁ~みたいな」感じで結構打ちのめされるんですね。

Highlighted by waltz8

作ろうって思ったのは、プログラミングの勉強をするにあたって、題材がほしかったんですね。そのときに、一般の人がよく使うであろう物のほうが作りがいがあると思ったんですよ。なので、例えばブラウザとかメーラーとかを考えた時に、よく考えればOS作ったら多くの人に使ってもらえるんじゃないのかって思って、今思えば恥ずかしいですが、 そこでOSっていう題材を選んだんです。

Highlighted by waltz8

その頃はそういう思想はなくて、とにかく動くものが作りたいっていう感じでしたね。

Highlighted by waltz8

よく言うんですけども、プログラマは自分が作ったツールの上で生活できると幸せなんですね。Emacsとかもまさにそうなんですけども、自分の作ったOSの中でまず自分が生活できることを目指してがんばっているんです。でもまだ道のりは遠いなぁって感じですね。

Highlighted by waltz8

いやいや。知り合いでお絵かきツールを作っている人がいるんですが、その人も自分が漫画を書く人なので、自分が書きやすいようなツールを作って、そのツールの上で生活したいっていうのがあると言ってたんです。そういうモチベーションが結構大きいですね。

Highlighted by waltz8

エンジニアのエキスパートとしての道は残っていなかったのと、そろそろ小さいプロジェクトのリーダーを任された時期で、その後はそれこそ工数管理をやるみたいな仕事をすることが控えていまして、ちょっと自分がやりたいことじゃないなあって思ったので転職を決断しました。

Highlighted by waltz8

「一日中好きなコードを書いていたいんですよ」「とにかくコード書きたいんですよ」って言ったら「書かせてあげるよ」みたいなことを言われて(笑) その頃は一日コードを書いていればいいだけの生活っていうのがなかったんです

Highlighted by waltz8

一日中コードかける環境を用意するよって言われて、それなら魅力的だってことで選びましたね。

Highlighted by waltz8

最初の1年くらいものすごい刺激的で楽しかったですね。 周りが自分より完璧に優秀であるっていう状況で働くと、学ぶところも多いですし、とっても楽しいんですよ。

Highlighted by waltz8

「ハッカーへの遠回り」って部分に書いてありましたね。周りが全部優秀でっていう環境だと、引いちゃう人は引いちゃうと思うんですけど、やっぱりそこに入ってみるっていうのが重要なんですよね。

Highlighted by waltz8

インターネットが広まって、すごい人のブログとか読むじゃないですか?ブログの行間にすごさがにじみでているんですけど、実際に会ってみると、すごさの質がちょっと違って「あ、こういう人間的な部分でそのすごさってできてるんだ」っていうのが見えてきたりするのが結構楽しいんですよね。

Highlighted by waltz8

そうですね。ブログだけ見ていると、毎日のように技術記事をあげていたり、すごいコードを書いていて、鉄人みたいじゃないですか。でも実はそういう人も隣で「あー!!わかんねー!!」とか言って弱音を吐いていたりするんですよ(笑) そういうのを見ると、何か自分でもやれそうだなっていうのがわかるんですよね。

Highlighted by waltz8

武勇伝にも登場していただいた小山哲志(koyhoge)さんがおっしゃっていたんですが、「IT系の技術雑誌が同人誌に見える瞬間がある」っていうようなことがあるらしいんですよ。雲の上の人が書いてるっていうものが、そこに参加することによって同人誌みたいに感じるようになったそうなんです。それに似ているかもしれないですね。

Highlighted by waltz8

意外と、遠いようで近い世界なんですねぇ。

Highlighted by waltz8

僕はそういう所は結構若い人とか他の人にも伝えたくて、自分の日記では弱音を吐くまではいかないですけど「おー。わかんねー!!」みたいな心境もわざと書くようにしているんです。自分を格好良く演出するのであれば、過程を出さずに結果だけをポンと出してやれば「おー。Coolだ!!」ってなるんですけど、悩んでいる過程とかも全部外に出してしまえば「あの人もこう悩んでいたんだな」ってあとで検索とかでたどりついたりするじゃないですか。そういうのがあって、多少弱い部分もブログには書こうかなみたいなのはありますね。

Highlighted by waltz8

はてなRSSっていうRSSリーダーを任された時とか、そのあとにRimoってサービスをやった時はやっぱり、自分に任される自由度がすごい上がったので、もちろん責任も伴いますけども、そこはすごく楽しかったですね。むしろ、そういうポジションを目指して、なんとかこういうものができてきたって所がありますね。僕はどうも人に指図されるのが嫌みたいなので(笑)

Highlighted by waltz8

極端な話、今日はこの仕事をしなさいって言われるような職業の人もいるわけじゃないですか。僕はもう絶対そういうのは耐えられなくて、「2週間でも3週間でもほっておいてくれ。結果は出すから」みたいな感じでやっていましたね

Highlighted by waltz8

Rimoの時とかは、特に本当にいちからWebサービスの立ち上げをしたので、それは楽しかったですね。何万人って人に使われるサービスを構想、企画段階から作り上げて、リリースまで持っていくのは非常に勉強になりましたね。

Highlighted by waltz8

多分リリースされるまでは3、4ヶ月だったと思います。社員旅行でコンペみたいのがあって、そこに出すために、まず最初プロトタイプみたいのができてその後、これはよさそうだってことで開発が始まったんです。

Highlighted by waltz8

面白かったことは、 ものすごく小さな会社だったので、経営者がすごい近くにいるんですよ

Highlighted by waltz8

それが、経営者が身近に感じられることで、経営者が何を考えて決断して、その結果、社員にこういうものが来てるっていう経路がすごくよく分かって、それがすごく勉強になりましたね

Highlighted by waltz8

そういうのが全部分かったりして、会社経営が割りと身近に感じられるようになって、今までは、自分は絶対会社作るなんてことないだろうなって思っていたのが、会社を40歳くらいで作るかもしれない確率が、0%から0.5%に上がったのがかなり大きい影響でしたね。

Highlighted by waltz8

改めて振り返ってみると「はてな」を辞めてしまわれたのって、どうしてなんですか?

Highlighted by waltz8

端的に言うと、もっと好きなようにやりたいって感じですねぇ。やっぱり、小さい会社だし、社長の近藤さんの会社じゃないですか。なので、基本的には近藤さんが舵取りして、その時によりますが、近藤さんが細かい所まで指示を出すような会社なので、もう少し技術者として自由度が高い状態でやりたいなぁと思ったんです。

Highlighted by waltz8

結構、インターネットというかプログラマが活躍できる業界って狭いのでそんなに候補はないんですね(笑) その時、サイボウズ・ラボの竹迫良範(TAKESAKO)さんと知り合いだったので、「ちょっと、遊びに行かせてください」みたいな感じで来たのがきっかけですね。

Highlighted by waltz8

去年、一昨年くらいですと、リクルートのメディアテクノロジーラボも同じ動きで、あとはカヤックのBM11とかは稼動と完全に切り離されているって感じで動いてるみたいですけどね。でも限られていますよね。決め手はやっぱり自分の好きなようにできるって言う所ですかね?

Highlighted by waltz8

あとはやっぱり、とびっきり優秀な同僚が揃っているって、それが大きいですよね。

Highlighted by waltz8

「はてな」とはぜんぜん質の違う優秀さですね。どっちがいい悪いじゃなくて、多分レイヤーが違うと思うんですよ。

Highlighted by waltz8

「はてな」は完全にWeb寄りな会社で、例えば使ってる言語はPerlですとかRubyですとかなんですけど、サイボウズ・ラボの場合は、ものすごくCPUの命令に詳しい人とか、あとは組み込み系でプログラムをしたことがある人とか、数学的素養があってプログラムしてる人ですとか、あとは最近流行のJavaScriptを極めちゃっている人とかなんか、ちょっとそれぞれがものすごい強みを持ってとんがってる人たちの集まりなんです。

Highlighted by waltz8

各分野の相当専門性が高くてその幅が広いってことですね。

Highlighted by waltz8

「はてな」はWebって世界に集約されているって感じですもんね。

Highlighted by waltz8

Webの世界でとんがってる人たちがいっぱいいるって感じですね。

Highlighted by waltz8

僕もどっちかっていうとOSを作るくらいですから、自分ではWebエンジニアだとは思っていなくて、そういった専門性の高いレイヤーのエンジニアだと思っているので、結構今楽しいですね。

Highlighted by waltz8

IPAの未踏とかって、どういう人が選ばれるのかって想像がつかないんですよね。スーパークリエータに認定されるというのは、どういう基準でどういう人が選ばれるのかさっぱり分からないんですが、そのあたりについて教えていただけませんか。

Highlighted by waltz8

まさか自分が選ばれるとは思わなかったですよ。未踏に採択されるとプロジェクトマネージャーっていう学校の先生だったり、偉い人の下でプロジェクトをやっていくんですけど、そのプロジェクトマネージャーの方が選んでくださるって感じですね。

Highlighted by waltz8

ある意味スポンサーがついて、公にこれを世の中で開発していこうっていうことですね。

Highlighted by waltz8

こういった方々ってどれくらいの人数選ばれるんですかね?

Highlighted by waltz8

1回で10人未満くらいで、今まで何回かあるんで全国に100人くらいいるんじゃないですかね?

Highlighted by waltz8

この未踏ソフトウェアはエンジニア的には転機かなぁと思っていて、仕事をしながら別の仕事を引き受けたような感じになるんですね。「はてな」で19時、20時まで働いて、その後、寝るまでの時間と土日で開発をする、みたいな契約だったので、自分をいかにうまくコントロールしてコンスタントに働くかっていうノウハウをひたすら貯めた時期で、それが結構今の自分にとって役立ってるかなぁと思いますね。

Highlighted by waltz8

生産性の向上ですかね。例えば、大人になってから大分経つので、自分は頭が悪いとか、すぐ飽きてしまう性格だなとかが分かるじゃないですか。そういう時にどうやったら飽きないだろうかっていうのを考えましたね。例えば飴とムチ方式で、30分コードを書いたら15分くらい他の楽しいコード書きをしようとか、あとは、インターネットに繋がった状態で開発をしていて、気づいたらYahooのTopページを見てることがあったりとか、気づいたらmixiを見てることがあるので、わざとオフラインの状態、例えばスターバックスに行ってネットに繋がないで開発をするですとか。あとは、必ず仕事が終わった後なので頭が疲れた状態なんですね。仕事は仕事としてちゃんとやっていますからね。なので、すぐ疲れてしまうんで、頭が疲れたときはこれをやろうみたいなToDoリストを書いておくんです。必ずしも頭が冴えている必要がなくて、頭が疲れているときでもやれることって結構いっぱいあるじゃないですか。「あれこれについて調べる」とか「テレビの上が汚いから雑巾がけする」とかなんでもいいんですけどね。そういうことを書いておいて「頭が疲れてきたな」って思ったら、そのリストを見てこっちをやろうとかして頭をリフレッシュさせるとか。あとは、プールに行くと気分が変わるので、頭が疲れたタイミングでプールに行って、戻ってくると朝起きたときみたいな状態にリセットされててまた生産性よくできるとか、そういうことですね。

Highlighted by waltz8

そうですね。本当に頭が疲れている時って「次に何をやるんだっけな?」って事も忘れたりするじゃないですか。それを思い出すのに時間がかかったりするので、本当に頭が疲れている時は、1から10まで次やることをリストにしてから、頭からこなしていくとかやると多少は生産性があがりますよね。結構、無理やり働いてるって感じがしますけども(笑)

Highlighted by waltz8

そういう時は違うことやった方がトータルな生産性が高いってことがよくあるんですよね(笑)

Highlighted by waltz8

現在、MonaOSの他に、テーマとして何かご自身で取り組んでいる事とかあるんですか?

Highlighted by waltz8

仕事ですか?プライベートですか?

Highlighted by waltz8

両方含めてで結構ですが。

Highlighted by waltz8

どっちもちょっとかぶっているんですけど、プログラミング言語処理系を作っていまして、「Scheme」っていうプログラム言語なんです

Highlighted by waltz8

プログラミング言語っていうのは、ソースコードを書いてインタプリタで実行したりとか、コンパイルして実行したりとかするんですけど、そういう言語処理系って今まで遠い世界のことで、自分は絶対に作れないんだなって思っていたんです

Highlighted by waltz8

でも、ある本を読んだのがきっかけで「あ、自分でも作れるんだ」ってことが分かったので、実用的なものを作ってみようかなってことで、その「Scheme」の処理系を今、書いていますね

Highlighted by waltz8

言語の仕様は決まっていて、それを動かすプログラムを作っている感じですね

Highlighted by waltz8

笹田耕一さんがやっていることに近い

Highlighted by waltz8

「エンジニアっていうのはだいたいOSを作るか、言語処理系を作るかに分かれる」らしいんです

Highlighted by waltz8

ものすごく奥が深いんですよね。

Highlighted by waltz8

一応スピードは速いっていうのと、ゆくゆくはWebプログラミングが簡単にできるようなフレームワークを上にのせて公開したいなぁと思っています。最近ですとRuby on Railsとかありますけど、あんな感じですね。

Highlighted by waltz8

一番得意な言語は何ですかね?

Highlighted by waltz8

どれも中途半端なんです。(笑) C++かSchemeかどっちかですねぇ。

Highlighted by waltz8

「ハッカーズデスクトップ」というサイトを立ち上げたいと思っているんです

Highlighted by waltz8

机の上の写真を本当は一枚取りたいんですよ。どんなエディターを使っているのか、どんなパソコンとかどんなキーボードを使っているのかとかをデータベース化していきたいなぁと思っているんです。

Highlighted by waltz8

物理的なツールでも、フォントとかパソコン上のツールでもいいんですが、今、何にしようかっていう項目の洗い出しをしているんです。これはエンジニアの誰に聞いても、「すごく興味がある」って感じなんですよねぇ。

Highlighted by waltz8

パソコン上で使うツールって、エディターって何を使ってますか?とか、僕も色んな人に結構聞いていますね。あと、この人のコードを書いてる風景を動画で見たいってのがあって、画面上でプログラムを書いてると「あ!何か今キーボードが怪しい動きした!!これ何?」とかっていうのがあったりとかするんです。あとは、ウィンドウが何個もあってどういう配置にしていてどういうときに何を使っているかとかも分かるとすごいうれしいなぁと思います。

Highlighted by waltz8

そのうち、みなさんが投稿できるようにして、自分と同じ物を使っている人を検索とか、コミュニティっぽくしても面白いかなぁと思っています。これって、真似ができるじゃないですか。

Highlighted by waltz8

「Scheme」の他にはなにかテーマはあるんですか?

Highlighted by waltz8

そうですね。あとは、FireFoxの拡張の勉強とかも始めていて、そのあたりで面白いことができればなぁと思っています。

Highlighted by waltz8

「Scheme」のほうは個人的なお仕事ですか?

Highlighted by waltz8

個人もラボも両方ですね。

Highlighted by waltz8

ゆくゆくやりたいことって何かありますか?

Highlighted by waltz8

自分の歩んできたキャリアパス的に、ひとつ面白いなと思うのが、OSとか言語処理系のような普通のプログラマが目にしないレイヤーのプログラムとそれ以外にユーザが一番目に触れるであろうWeb系のプログラムの両方が分かるってことがあるんです。両方わかりますっていう人はそんなにいないんじゃないのかなと分析していて、それを生かしたようなサービスが作れればいいと思っています。

Highlighted by waltz8

OSは、自分がまずは使えるようにっていう感じ

Highlighted by waltz8

Webサービスに関しては、弱者の為のWebサービスがいいですね

Highlighted by waltz8

Rimoの場合は疲れているときにも気軽に見られるとか 、そんなに気張らなくても見られるとかいうのがテーマの1つでもありましたし、張り付いてなくてもいいってのがあったり

Highlighted by waltz8

でも、最近のインターネットサービスって結構めんどくさいっていうか、声の大きい人が強いとかがあるじゃないですか。そういうのじゃなくて、もっと一般の人が使うようなWebサービスが作りたいですね。

Highlighted by waltz8

例えば世の中には、家電製品に詳しくない普通の人が圧倒的に多いじゃないですか。でもたいていの人は説明書を読まなくても何となく使い方が分かりますよね?

Highlighted by waltz8

でも、Webの場合、現時点では「とっつきにくいけど、この説明の通りやればできるんだからやってよ」というサービスの方が多いと思うんです。こういう部分を改善して、説明書を読まなくても使えるとか、人間が本来持っている弱さや面倒くさがりな部分を肯定し、それを補うようなツールを作りたいなという、そういう方向ですね。

Highlighted by waltz8

10代なのにコンパイラをかいてますとか、中学生なのにあれこれやってます、みたいのを聞くたびに自分はびくびくしながら「やばいやばい」ってなりますね(笑)

Highlighted by waltz8

本当に若くて優秀な方が多いのは実感しますね。先日インタビューを公開した松野徳大(tokuhirom)さんも23歳なんですが、本当にすごいです。

Highlighted by waltz8

プログラミングの世界で生きていく為のアドバイス

Highlighted by waltz8

優秀な人との距離感だけは見誤らないほうがいいかなと思っています。ものすごく遠くに感じていたものが実はそんなに遠くなかったっていうことが今でもよくあるし、昨日まで呪文にしか見えなかったコードがすっと読めるようになるってこともあるんで、優秀な人との距離感で絶望してあきらめるのはもったいないと思いますね

Highlighted by waltz8

その人は元から優秀だったり急に優秀になったりするじゃないですか。でも、実はそこには過程があって、優秀になってきた積み重ねがあるので、そこは自分も同じようにやれば、それ以上になる可能性は十分にあるっていうのは分かっておいて損はないかなぁと思いますね。

Highlighted by waltz8