2010年01月31日

京都GTUG Google Waveプロトコル勉強会 開催

東京でGoogle Waveプロトコル勉強会があるけれど、さすがに勉強会で東京まで行ってられない!
と言うことで自分で勉強会を開催することにしました。

マニアックすぎるので開催日のアンケートを採り、参加できる人の数が多い日にします。
つーことでGoogle Waveのプロトコルに興味がある方は是非参加をっ!

---------------------------------------------------------------------

2月の後半から3月の前半にかけて、京都でGoogle Waveプロトコル勉強会を開催したいと思います。
参加人数が少なそうなので、2/21(日) , 2/28(日) , 3/7(日) のうち参加人数が多い日に開催する予定です。
最大人数は15人を想定しています。
それほど集まらないと思いますが、人数が集まり次第募集を締め切ります。

参加希望の方は次のアンケートフォームから参加希望の日を投稿していただけますでしょうか。
http://spreadsheets.google.com/a/kyoto-gtug.org/viewform?hl=ja&formkey=dE1vOGw5Ty1GT3laVnNOQm9aRUZYZVE6MA

会場は人数に応じて決定する予定です。
京都リサーチパーク周辺になる可能性が高いですが、まだ未定です。

勉強会の日時
日にちは未定
13:00-18:00

勉強会の内容
・1時間程度 Google Waveプロトコル、FedOneについての解説(北村)
・皆の疑問点、不明点をみんなで解決

勉強会で必要な物
・ノートPC
・FedOneのソースコード(各自チェックアウトしておいてください。FedOneが動作できる環境があればより良いです。)
 FedOneのインストールは http://rainbowdevil.jp/wave/install-fedone.html などを参考
にしてインストールしておいてください。

皆が皆に教えあう勉強会で、FedOneのソースコードを追いかけながらとか結構マニアックな内容になる予定です。
Google Wave自体の解説等はいたしませんので、ご注意ください。

この勉強会に関し、何か質問等がある場合は京都GTUGのメーリングリスト、もしくは京都GTUGスタッフ北村( kenji@kyoto-gtug.org , Twitter: @kenji1203 )までお願いいたします。

2010年01月19日

Javaでグローバルフック

現在、SWTを用いたアプリケーション開発をしていて、グローバルフックを使った入力が必要になった。
通常Javaからはグローバルフックは無理だけど、SWTの拡張でグローバルフックを使う事が出来るライブラリがあったので使ってみる。

SWT Win32 Extension

次のような事が出来る。サンプルもあるので気軽に動作を確認する事が出来る。
# Window Decorations: making windows always-on-top, transparent, flashing on the taskbar, etc.
# Custom Shape Window: creating non-rectangular windows using custom Regions.
# Access to Windows Registry.
# Shell Folders: getting paths and icons of the user folders (Favorites, My Pictures, etc)
# Shell Links: managing the system link files.
# System Info: gathering CPU, memory, system variables information.
# Hooks: using system hooks and allowing to intercept some system events.
# System Menu Manager: managing the shell system menu, user can define custom menu item.
# Windows Session: managing system session. User can logoff, shutdown, reboot computer.
# Ole Control: providing some ole control wrappers, such as flash.

グローバルフックでマウスのイベントを取るやり方。

Mouse_LLHook.addHookInterceptor(new Mouse_LLHookInterceptor() {
public InterceptorFlag intercept(Mouse_LLHookData hookData) {
int wParam = hookData.getWParam();
switch (wParam) {
case Mouse_LLHookData.WM_LBUTTONDOWN:
// 左クリック
break;
case Mouse_LLHookData.WM_RBUTTONDOWN:
// 右クリック
break;
}
return InterceptorFlag.TRUE;
});
Mouse_LLHook.installHook();

使い終わったら Mouse_LLHook.unInstallHook(); して解放しないとダメ。

2010年01月14日

WaveのURLからWaveエンベッド用HTML生成ツールを作りました

Waveを一般のWebサイトに貼り付けることができるWave Embed APIと言う物があります。
Waveを貼り付けるだけなのに、そんなAPI勉強してられないYO!!!と言う方のためにWaveURLを入力するとWaveを埋め込むためのHTMLを生成するツールを作成しました。

WaveのURLを入力すると、そのWaveを貼り付けるHTMLを生成します。
高さや幅も指定することができます。

Google Waveにログインしていると、下にWaveが表示されます。

2010年01月13日

LiveCoding#8+1にLiveCoderとして参戦します!

プログラマが20分で"何か"を開発し、その開発の様子を解説者がリアルタイムに実況するというマニアックなイベント、LiveCodingにLiveCoderとして参戦いたします。
LiveCoding#8+1

LiveCodingのページによる説明
一人の"LiveCoder"が、20分の制限時間で何かソフトウェアを作り、デモをします。 LiveCoderがどのようにコーディングしているかの全てがプロジェクターで大画面に映し出され、さらに解説役が常にLiveCoderの挙動を説明します。

A 「コンパイル中です・・・、お、おおお、なんと、Syntax error!」

B 「これは恥ずかしい…」

LiveCoder 「(/// 」

けんじはAndroidで"何か"を開発する予定です。

興味のある方は是非。

2010年01月06日

Google WaveのSharedState.reset()でstateUpdatedが呼ばれない件

勉強会の資料を作っていたときはSharedStateをresetしても、SharedStateの更新イベントが発生しなかったが、今は直っているようだ。
Issue 457: state.reset() does not trigger stateHandler

資料を作ったときはバグが直っていなかったけど、勉強会やったときにはすでに直っていたんだなorz

2010年01月05日

ファイルシステムをext4にしてみる

2TのHDDを買ったので、さっそく新しいサーバ機に接続してみる。
ファイルシステムはext4だ。

$ sudo mkfs.ext4 -c /dev/sdc1

-c オプションを付けるとbad blocksのチェックを行う。
2TのHDDでチェックするとチェックに5時間ぐらいかかりそうだ・・・。

2010年01月その他のエントリー