Google I/Oサイトのイースター・エッグを探そう!

Google I/Oサイトのイースター・エッグを探そう! 1

一体何が隠されてるかな?

グーグルのイベントGoogle I/O 2013が5月に開催されます。公式サイトがオープンして、今月13日からイベント申し込みが開催されます。が、その公式サイトにイースター・エッグが仕込まれていました。I/Oのロゴが、特定のコードを入力すると様々なものに変化するのです。ネコやハンバーガーやアスキーアート等々、全部で12種類。

・ネコ:IIIOOIII

・宇宙:OOIOIOIO

・ピンポンゲーム:IOOOOOOI

・ベーコン&玉子:IOOIOOOO

・Simoneゲーム:IIOIOOII

・8ビット:OIOIOOII

・シンセ:IOOOIOOO

・音:IIOIIOII

・アスキーアート:OIIIIIII

・ボーリング:OIIIOIOI

・ロケット:OIOOOIOI

・ハンバーガー:OOIIIOOI

12種類全てを見つけたのは、Zak El Fassiさん。もちろんひたすらIとOを打ち込んだのではなく、以下の方法で見つけ出しました。

Google I/Oサイトのイースター・エッグを探そう! 2

これが、/js/app/min/js以下にあるメインのコード。Zakさんは、Chromeの拡張Sightを使って作業を効率化。コードを読みやすくして見て行きました。

お、これは何かありそうです。キッカケが掴めました。

Google I/Oサイトのイースター・エッグを探そう! 3

さらに、ww.mode.register機能を検索。「Klass」「Pattern」「len」が何なのかを探っていきます。

Google I/Oサイトのイースター・エッグを探そう! 4

「Klass」が何かを探しているとこちらが。では、「ww.util.pad」「d.pattern」「d.len」とは何なのか。

Google I/Oサイトのイースター・エッグを探そう! 5

「ww.util.pad」は、D.le-bitバイナリのコンバージョンを行なっていました。Zakさんが試したパターンだと8ビット。d.pattern」は「ww.mode.register」ファンクションの中の「c param」

Google I/Oサイトのイースター・エッグを探そう! 6

「ww.util.pad」をスタンドアローンのファンクションとして書き出せば、謎は全て解けました。

こうして得られた、IとOの組み合わせをgoogle I/Oサイトで入力してみると、12種類のロゴを見ることができたというわけです。

...いやー、なにがなんだか。さすがコーダーですね。

Zakelfassi

そうこ(Zak El Fassi 米版