エンジニア長期インターン GREE Studio 2010 6日目

おはようございます。堀内公平ことhamheiです。
我々のインターンもどうやら佳境に入ってきたみたいで、皆が異様にテンションが高い中、一人マイペースなインターンシップ報告をさせて頂きます。ィヤッホーーーイ!!!!

さーて、今回のIntern Blogは…

  • GREEでのインターン生活の実態に迫る!?

今話題のGREEだけどそもそもインターンってぶっちゃけ何してるの?楽しいの??

  • サブプログラム6日目: naoya氏による『過去15年間のWeb開発を振り返る』

「IT業界に時の人ランキングがあったら」番付で堂々1位のnaoya氏の講義を拝聴しました!!

の豪華2本立てです。

GREEでのインターン生活の実態に迫る!?

  • 開発

まあ基本放置ですね。というか、僕らに対する厚い熱い信頼をひしひしと感じます。
最初に大局的な目標<過去のエントリー参照>を与え、その後は「分からないことがあったら気兼ねせずに何でも聞いてくれたまえ」というスタイルを貫かれております。一方でしっかりと僕らが質問し易い雰囲気を常に作って下さっており、社内チャットに独り言る感覚で気軽に疑問を呟くと、masaki_fujimotoさん、sotarokさん等が24時間態勢ですかさず返事を返して下さいます!ありがとうございます!!
この状況を名言風に表現するとこんな感じですかね。

最高の環境は与えた。最善のサポートもしよう。さあ後は君次第だ。

非常に恵まれた環境過ぎて、段々とそれがプレッシャーに変わってきた今日この頃です。

  • 交流

営業時間内はみんな真面目に作業に没頭しているのですが、御飯時になると気持ちをスッパリと切り替え、インターン生もGREEの方々もヒルズの美味しいレストランに仲良く吸い込まれていきます。食事のときばっかりは真面目な話はあまり出ず、それぞれの趣味や馬鹿話(漫画とかアニメとかコミックとか…)などが話題の中心です。このインターン期間中で、僕らは目に見えない熱い友情で結ばれたように思えます!!


上の写真はKajidaiさんが「ヒルズにピザは届くのか」という実験がてら、みんなにピザを注文してくれたときのものです。無事届きました。Kajidaiさん、ありがとうございました!

  • 講義

そして忘れてならないのが、サブプログラム!
GREEの中にいる大勢のスペシャリストたちが自身の専売特許を惜しげも無く披露して教授して下さるというこの贅沢!!ショートケーキの苺だけ食べて回っているような気分ですよ。これだけでもインターンに来た価値は十二分にあると強く感じています。
そして、サブプログラム6日目、今回の講義にはとうとうあの人が登場です…!!

サブプログラム6日目: naoya氏による『過去15年間のWeb開発を振り返る』

今日の講義は、前・はてな CTO、現・GREE ソーシャルメディア総括部のnaoyaさんによる、「ここ15年間でWeb開発はどのような変遷を辿り、そして現在のWebエンジニアはどうあるべきなのか」というお話でした。

判然と言って、大変面白い講義でした。naoya氏の口から紡がれる「Web開発の15年間」をたったの1時間に凝縮した物語。それは、昔は蔑まれることも屢々だったというWeb開発者がどんな変遷を経て重要性を認識されるに至ったか、そしてnaoyaさんがどう考えどう行動してきたことによって今のnaoyaさんがあるのか、とてもこのBlogでは書ききれない素晴らしくとても濃い内容でした。

講義の内容を全てここに書き記すのは些か冗長なので、ここでは印象に残ったエピソードを書くに留めたいと思います。

  • HTMLの日本上陸当初

1995年頃はHTMLを書けばお金が稼げる時代だった。Webオーサリングツールなどがある現在では考えられないが、当時はHTMLの仕様を知っている人は殆どおらず、HTMLを1ページ書けば1万円という対価を得られた。

  • プログラミング言語の優劣に関する論争

1995-2000年頃, PerlとCGIは動的なコンテンツを生み出す手法として一世を風靡した。しかし、やがてスクリプト言語によるCGIとWebサーバの組み合わせ時の欠点が発覚し、mod_perl など、アーキテクチャの欠点を補う実装が出てきて問題は解決されたものの、Perlは遅いという心証をもつ人が未だにいる。同じスクリプト言語であるPHPには使われ始めた当初からmod_php というWebサーバのアーキテクチャと相性の良い手法が用意されていたため、「PHPという言語そのものがPerlよりも高速なのだ」という、誤解を孕んだ認識が一般の人に受け入れられることになった。PerlとPHPの優劣についての論争は多いが、実際には、言語の特性やプログラムのアーキテクチャ、環境の制約とのトレードオフなどが問題であり、プログラミング言語自体に優劣を競わせるのは本質ではない。
※上記は私の解釈です。詳しくはnaoya氏のblogを参照のこと

  • 密結合から疎結合へ

フレームワークとは、MVCモデルとは、何か。例えばRuby on RailsやcakePHPなどのMVCフレームワークは、プログラム部品を3つに分離し、基本的に同じ処理を2度以上書かせなかったり、命名規約などによって一つの設計ファイルさえも用意せずに開発することを可能とする。これらは本質的には、それまで密結合だったプログラムを疎結合へ変えていく手法であり、WebとWebを疎に繋ぐXML WebサービスやWeb APIの流れへと繋がって行く。

  • サービスの質の底上げ

ドラッグアンドドロップでぐりぐり動かせるGoogle Mapsは衝撃的な登場だった。みんなそれがFlashで作られているのだと思い込み、右クリックでFlashのMenuが出ないことを訝しんだ。実際にはGoogle MapsはAjax(Asynchronous JavaScript + XML)という技術を用いて作られおり、これ以後に地図サービスを作る人々は常にGoogle Mapsと同等以上の機能を作ることを求められるようになった。新たな優れた技術は、消費者の感性を肥えさせ、開発者に新たな技術の習得を促し、サービス全体の質の向上を実現する。

  • Web開発は永遠にβ版

Web開発においては仕様や設計などはいくらでも変わる可能性があり、その都度アップデートを余儀なくされるのが当然で、長い時間をかけて綿密に設計を行ってもそれらがすぐさま使えなくなるかもしれない。そんな環境下では、ウォータフォール型のようなカッキリとした開発手法ではなく、アジャイル型のようなより変化に強い開発手法が適している。

  • naoya氏の知られざる顔

なんと、ほりえもんも使っているという、Amazonの商品のリンクを簡単に自分のBlogに貼れるというAmazletはnaoya氏が作ったものらしい。し、知らなかった。大変お世話になっております。

  • naoya氏は気さくな良い人

naoya氏とhamhei

naoya氏のサイン

講義終了後、2ショットとサインを頼むと快く応じてくれました。ありがとうございました。

  • 最後のスライド

これはnaoya氏の最後のスライドの文章です。

技術者としての誇りは、高度な技術を与えられることで得るのではなく、自らが使命とする問題領域をより高度な技術基盤で扱う世界に発展させることによって、自ら創造することができる

本当にありがとうございました。

おわりに

とうとうGREEのエントランスホールが完成しました。

ここに来たときは丁度エントランスホールの工事が始まった頃で、言うなれば我々インターン生はエントランスホールと共に成長してきたと行っても過言ではなく、いつからかエントランスホールを永遠のライバルとして意識するようになりました。
そして、あるインターン生がこう呟きました。

RT @hamhei: 僕らだってインターンシップが終わるまでにGREEのエントランスホールに負けないくらい立派なエントランスホール エンジニアになってみせるぜ

そして今がその正念場です。
残り期間は少ないですが、頼りになるメンターの方々と共にとてつもないモノをクリエイトしてみせます!
乞うご期待!!