ZAPAnet総合情報局 > ZAPAブログ2.0 >

はじめてのiGoogleガジェット開発

どうも、「公開APIを利用したサンプルサイトを作っていくよ」管理人のZAPAです。
今日は、マッシュアップツールを作るための第一歩として、「iGoogleガジェット」の開発方法を解説します。

Googleからのプレゼントが届いたよー!!!」に登場した、iGoogleガジェット。
「ガジェット大好き!」って人も、「これからの時代はガジェットだ!」って人も、「ガジェットって何だろう?」って人も、これからの時代は自分でガジェットを作れるとカッコイイと思うよ!!
iGoogleガジェットに興味を持っても、開発情報を調べるのはなかなか大変です。
公式サイトに重要な情報はたくさん載っていますが、コンパクトにiGoogleガジェット開発方法を理解できるページがありませんでした。
公式ドキュメントをマジメに読むと30分以上かかり、やる気がそがれてしまいますので、ここに「iGoogleガジェット開発方法」を簡単にまとめておきます。
プログラミングできる人なら、「Hello,world」が作れるようにさえなれば、後は知りたい情報をピンポイントで調べていけば何とかなるはずです。

というわけで、「iGoogleガジェットの開発環境」、HTMLで「Hello,world」、JavaScriptで「こんにちは」、「iGoogleガジェット公開方法」などを解説していきます。

1. iGoogleガジェットとは
2. iGoogleガジェット開発に必要なもの
3. iGoogleガジェット開発の流れ
4. iGoogleガジェットでHello,world(HTML版)
5. iGoogleガジェットでこんにちは(JavaScript版)
6. iGoogleガジェット公開方法
7. さいごに
2007年11月11日 プログラミングTIPS

Googleからのプレゼントが届いたよー!!!

もうすぐ冬だね!寒くなってきたね!こんにちはこんにちは!!!
こんな季節は、ボトル缶で冷たいジュースを飲むのがイケてるよね!

iGoogleガジェットコンテストの参加賞として、「Googleロゴ入りボトル缶&ケース」をもらっちゃったんだ…!!
カラビナの付いたアルミ製のボトル缶で、登山やハイキングに重宝します。ケースは赤、青、黄、緑の4色があります。サイズ:高さ19cm、幅6.5cm。


箱には「I'm Feeling Lucky」の文字が書かれてたよ><
黄色いカバーを外すと、ボトル缶の方にもGoogleロゴと「I'm Feeling Lucky」の文字が書かれてたんだ…!!
でも、ぼく子供だからなんて書いてあるのかわからないや…!!!
しかも、エポキシ樹脂でコーティングされてるせいで、ちょっと臭うのがたまにキズだね!!!
2007年11月10日 プログラミングTIPS

わずか681バイトで動くぷよぷよ

わずか565バイトテトリスのプログラミング解説」で載せた、「10行ぷよぷよ」の作者pascalさんからトラックバックが来ました。
Short Coding - pascal's memo
勝手にソースコードを晒してしまって、すみません…。
テトリス以上に、ぷよぷよの方に感動している方もたくさんいました、とご報告しておきます。
(テトリスからぷよぷよへの感動の連鎖や!)

しかも今確認してみたところ、前回載せていたソースコードと動作サンプルとして動かしていたページのソースコードが違っていました。
前回載せていたソースコードは古い方で、動作サンプルの方は新しいソースコードでした。(下キーで加速するバージョン)

最新版のソースコードは、pascalさんのサイト
ぷよぷよ
に載っています。
2007年11月09日 ゲーム全般

わずか96キロバイトの超絶FPSゲーム

この前の「わずか565バイトテトリスのプログラミング解説」にも登場した初代スーパーマリオは、容量にしてたった40キロバイト。
その80分の1の0.5キロバイトで動くテトリスにも感動ですが、初代スーパーマリオの2倍ちょっとの容量で、本格的な3DFPSゲームが楽しめることもわかりました!
わずか96キロバイトの超絶FPSゲームの名前は、「.kkrieger」。

実際のゲーム画面のスクリーンショットはこちらです。

この画像1枚の容量は約45キロバイトです。
「.kkrieger」本体のファイルサイズ96キロバイトのすごさがうかがえます。

操作方法は、
操作内容 対応キー
前後左右移動 W/S/A/D
ジャンプ Spaceバー
武器使用 マウス左クリック
武器選択 1〜5
となっています。

実際どの辺が超絶かというと、その圧縮技術の高さです。(あるいは、圧縮技術と生成技術の高さ)
96キロバイトの実行ファイルを実行すると、自動的に300メガバイト近くまで展開されてゲームが始まります。
そこそこの動作スペックを要求されますが、3年半も前に開発された体験版ですから、現在のPCのスペックであれば多くのマシンで動作します。

ダウンロードは一瞬で終わりますので、興味のある方は、
アクション - .kkrieger - 体験版
からダウンロードしてプレイしてみてください。

プレイするのが面倒な人は、ニコニコ動画にプレイ動画がアップされていますので、動画をどうぞ。
ニコニコ動画(RC2)‐96KBしかないFPS“.kkrieger”
2007年11月09日 ゲーム全般

今更だけど、愛唄と僕が一番欲しかったもの



2007年11月07日 音楽

XCacheのインストールメモ2

XCacheのインストールとphp用アクセラレータ比較」以来、約1年ぶりにXCacheをインストールしました。今現在、このサーバーはXCacheがインストールされた状態で動いています。
XCacheはPHP用アクセラレータのひとつで、PHPコードのキャッシュや最適化を自動で行ってくれます。インストールするだけで、PHPプログラムの実行速度が数%〜数倍速くなってしまう魔法のアイテムです。今まではPHP用アクセラレータとしてeAcceleratorを使っていましたが、今回、安定版のXCache 1.2.1をインストールしました。
XCache - Boost PHP Performance - Trac
以下、XCacheのインストールメモ(Linux向け)です。
2007年11月07日 プログラミングTIPS

あの565バイトテトリスが、ついに500バイトを切った!

各所で話題になった「わずか565バイトテトリスのプログラミング解説」。
あの565バイトテトリスの作者がわかったとともに、さらにプログラム行数の圧縮が進められていました!

詳細は、
482バイトテトリス - Cozy Ozy
に載っています。
(リンク先は482バイトとなっていますが、手元で改行コードを2バイトで確認してみたところ493バイトでした→追記:Ozyさんからコメントを頂きました。「改行位置を工夫すれば、セミコロンが省略できるので489バイトにできますよ」だそうです)

565バイトテトリスを作ったのは、nanagyouさんという方で、Short Coding本にも名を刻んでいる超絶スーパーコーダーらしいです。

そして初期の565バイトテトリス完成から5年半以上経ち、新しく500バイトを切ったテトリスのソースコードはこちら。
<body id=D onKeyDown=K=event.keyCode-38><script>Z=X=[B=A=12];function Y(){for(C
=[q=c=i=4];f=i--*K;c-=!Z[h+(K+6?p+K:C[i]=p*A-(p/9|0)*145)])p=B[i];for(c?0:K+6?h
+=K:t?B=C:0;i=K=q--;f+=Z[A+p])k=X[p=h+B[q]]=1;h+=A;if(f|B)for(Z=X,X=[l=228],B=[
[-7,-20,6,h=17,-9,3,3][t=++t%7]-4,0,1,t-6?-A:2];l--;)for(l%A?l-=l%A*!Z[l]:(P+=
k++,c=l+=A);--c>A;)Z[c]=Z[c-A];for(S="";i<240;S+=X[i]|(X[i]=Z[i]|=++i%A<2|i>228
)?i%A?"■":"■<br>":"_");D.innerHTML=S+P;Z[5]||setTimeout(Y,i-P)}Y(h=K=t=P=0)
</script>
もう少しで400字詰めの原稿用紙1枚に収まってしまいそうです。
もちろん、このソースコードもメモ帳に貼り付けて、htmlで保存すればテトリスが動きます。
→テトリスの動作サンプルはこちら
操作方法は、SPACEキーで回転、カーソルキー(左右)で移動です。
2007年11月05日 プログラミングTIPS

今年もまたアルファブロガーを決めるらしい

Alpha Bloggersで、今年もまたアルファブロガーを決めるそうです。
今年からは、シックス・アパートとAMN、「アルファブロガー・アワード 2007」を開催となりました。
このコンテストは、質の高いブロガーの発掘とブログの普及を目的として開催されるもので、シックス・アパートとAMNが共同で「アルファブロガー運営委員会」として事務局を務める。同委員会ではアルファブロガーを「多くの人に影響を与えているブログの書き手」と定義、これまでFPNニュースコミュニティのボランティアメンバーによって運営されていたアルファブロガー投票企画を受け継ぐ形でコンテストを開催する。

さて、一番気になるのは「アルファブロガーの定義」です。
このブログでも、
アルファブロガーって何?
で取り上げたように、「アルファブロガーの定義」、「アルファブロガーの意義」、「アルファブロガーの選出方法」などに以前から疑問を持っています。
2007年11月04日 ブログ全般

プログラマとそうでない人の反応の違い

わずか565バイトテトリスのプログラミング解説」を読んだときの、プログラマとそうでない人の反応の違い。
(この記事でのプログラマとは、プログラミングできる人という意味です)

プログラマの反応

すっ、すげぇ!テトリスのコードがこんなに短く!!

プログラマでない人の反応

すっ、すげぇ!ブラウザでテトリスが動く!!
2007年11月04日 雑記

今すぐApacheログ設定の見直しを!

「あぁ、Apacheのログの設定方法を間違えていた…!」
2年間も。2年間も、間違ったまま運用していました…!

Apacheのアクセスログ設定の詳細は以下に。
2007年11月03日 プログラミングTIPS