March 7, 2009

hatebu_monkey

hatebu_monkey は、表示しているページの はてブコメント を表示する Greasemonkey スクリプトです。

hatebu_monkey.png

インストールは以下のページから。

hatebu_monkey for Greasemonkey

これ、非常に便利です。
僕は日常的に使用しています。
右下の青くて四角い所にマウスカーソルを持っていくと はてブコメント が表示されます。
初回表示時にデータを取りに行きます。

hatebu_monkey_hidden.png

February 5, 2009

google_tasks.user.js

Google の ToDo リストを表示する greasemonkey スクリプトを書きました。
これはかなり使えると思いますよ!

ソース

http://jugyo.org/gm/google_tasks.user.js

スクリーンショット

画面右下に出てくる灰色のところにマウスカーソルをのせると…

picture-5

じゃーん!

picture-4

Google の ToDo リストが出てきます。

どういうふうに実装しているかというと、単に iframehttp://mail.google.com/tasks/ig を表示してるだけです。

参考:
GmailのToDoリストをFirefoxのサイドバーへ表示 : ライフハッカー[日本版]

December 8, 2008

Processing on Canvas

Processing.js というのがあって、これは Processing を Javascript 上で動かすライブラリなんですけど、これを使ってブラウザ上で簡単に processing を試せるようなものを作りました。
Firefox 3 と Safari で正常に動作することを確認しました。
IE では動きません。ごめんなさい。

http://jugyoo.org/processing/

processing_js

「Run」ボタンを押すとテキストエリアの内容が実行されます。
実行結果は画面右側に出てきます。

やってることは本当に簡単で、テキストエリアの文字列を Processing.js のオブジェクトに渡して実行しているだけです。
Processing.js すごいですね。

問題点

何度も実行してると CPU の負荷が上がる。
描画のループが回り続けてるのかなぁ。
原因を調査中。

参考:
ブラウザでお絵描きプログラミング! Processing.js 登場! – IT戦記

November 11, 2008

google_ja2en.user.js – 「日→英」翻訳 Greasemonkey スクリプト

日本語の文章を英語に翻訳してくれる Greasemonkey スクリプトを書きました。

スクリプト

google_ja2en.user.js

スクリーンショット

ja2en.png

使い方は以下を参考にしてください。

System.Exit – google_en2ja.user.js – Google で翻訳してくれる Greasemonkey スクリプト
System.Exit – google_en2ja.user.js をもうちょっと便利にしました

google_en2ja.user.js をもうちょっと便利にしました

前に google_en2ja.user.js というのを作ったんですけど、それをもうちょっと便利にしました。
何が便利になったかというと、任意の英文を入力して翻訳できるようになりました。
前まではウェブページ上で選択したテキストしか翻訳できないという若干不便な仕様でした。

以下にスクリーンショットを貼り付けておきます。

en2ja.png

上のテキストエリアでテキストを入力して「Enter」キーを押すと翻訳します。
「Esc」キーで非表示になります。
便利でしょ?

インストールは以下から。

google_en2ja.user.js

October 21, 2008

JJUG Cross Community Conference 2008 Fall レポート2

これの続き。

DOMパフォーマンスチューニング入門

講師: amachang

JavaScript は遅い遅いといわれているけど
ベンチマーク取ってみると Rerl とか Ruby 並みの速度
遅いのは DOM に 関する処理

DOM 関連の処理を分解してみると、

  1. コンポーネントとの通信
  2. DOMノードの追加
  3. スタイルの再計算
  4. レイアウトの再計算

となる。

1 コンポーネントとの通信
XPConnect や COM との通信
IE が特に遅い
無駄なプロパティアクセスを減らすと良い
→ 変数に入れるなどして

2 DOMノードの追加
ノードに「変更されたフラグ」が立つ
「parent.appendChild(child)」とすると parent と child にフラグが立つ
(DOM に対する処理をすぐに実行するのではなくて後でまとめてやるためにマークを付けとく、みたいな感じですかね。)

3 スタイルの再計算
スタイルの再計算が行われるタイミングを把握しておく必要がある
スタイルの再計算はどんな時に行われるか

  1. 変更フラグが立っているノードがあるまま JavaScript が終了した時
  2. 変更フラグが立っている状態でスタイルの再計算が必要な処理を行った時
    offsetWidth プロパティの値を取得したり

処理の順番を意識する必要がある
スタイルの再計算が行われるエレメントを意識する必要がある
子ノードとか下にあるエレメントとかもスタイルの再計算が行われる

4 レイアウトの再計算
要素の幅、高さ、位置の計算がここで行われる
激しく重い
→ 親ノードにも影響を及ぼすことがあるので
基本、スタイルの再計算に気をつけていればいい

プロファイラのデモ
各メソッドの実行時間とか、呼び出し回数なんかが簡単に調べられる
(safari 4 にはプロファイラが搭載されるらしい)

質問タイム
Q: 再計算のタイミングを知るには
A: Webkit をデバッガで起動。ログを仕込んだりして調べる。

Q: Webkit のソース解読 Tips
A: Webkit の IDL ファイルを見ると良い

ギークなお姉さんができるまで

講師: べにぢょ (アルカーナ株式会社), purprin (エスカフラーチェLLC)

個人的にはあまり興味がわかない内容でした。
おもしろかったけど。
(というか、人の話を聞くのって基本おもしろい。退屈な話しかしない人もいるけど、自分が何を考えているのかということをちゃんと話そうとして話している人の話はだいたい面白い。)
purprin さんの話がもうちょっと聞けたらよかったかも。
Web デザインの話とか。

『JavaからRubyへ』・アンド・ナウ

講師: 角谷 信太郎 (株式会社永和システムマネジメント), 高井 直人, 和田 卓人

Java から Ruby、EJB から Rails という流れの裏にどのような歴史があるのか、というようなお話
以下はスピーカーの方達のブログ記事。

YET ANOTHER GREEN IT

講師: 和田 卓人, 角谷 信太郎 (株式会社永和システムマネジメント)

息が合えばペアプログラミングってすごく楽しそうだなぁと見てて思った。
こういうセッションも楽しいですね。
他人が開発してるところとか普段そんなに注意深く見てないし。

Agileは現場に適用できるのか? ~オンナだらけのパネル・ディスカッション~

講師: 片山 智咲子 (Java Edge), きたむら (日本XPユーザグループ), 柳本芙友子 (要求開発アライアンス)

なにかこう、釈然としないディスカッションでした。
アジャイルという言葉の意味が人によってまちまちだなぁ、とすごく思いました。

java-jaプレゼンツ・第十一回 第2回チキチキ JJUG だよ全員集合 ライトニングトーク大会

おもしろかったです。
え?、西尾さんビーズの話して終わり?みたいな。

October 15, 2008

google_en2ja.user.js – Google で翻訳してくれる Greasemonkey スクリプト

Google で翻訳してくれる Greasemonkey スクリプトを作りました。
Web ページ上の英文を日本語に翻訳することができます。

更新履歴

2.0 – 任意のテキストを入力しての翻訳もできるようにしました。詳しくは以下。
System.Exit – google_en2ja.user.js をもうちょっと便利にしました

スクリプト

google_en2ja.user.js

使い方

翻訳したい英文を選択し、左上の四角やつにカーソルを合わせてください。

en2ja_2.png

すると、翻訳された文章が出てきます。

en2ja.png

感想

他に似たようなツールがある気はするんですけど、探すよりは作った方が早い気がしたので作りました。
でも Google の翻訳精度ってなんか微妙なんですよねぇ。