タグ

2008年7月11日のブックマーク (10件)

  • “Safety fence” for accessing properties

    As we all know, null not only does not have any properties, but their existence also can not be tested. So null.property retuns error instead of undefined. So things like if (node.nextSibling.className == ...) { ... } generate error where node has no nextSibling or if even node can be null. The obvious solution is to extend the if: if ((node) && (next = node.nextSibling) && ... ) { ... } When the

    monjudoh
    monjudoh 2008/07/11
    これはcool。(0).任意のプロパティ名とやるとTypeErrorにはならずundefinedが返ってくるのを利用している。例:((node || 0).nextSibling || 0).className
  • FFのtext eventに関して - KAYAC Engineers' Blog

    前回firebugのLog Event機能に関して紹介したんですが、そのとき見つけたちょっと面白いイベントに関して紹介したいと思います。 そのイベントは「text」 私もLog Eventで見るまで知らなかったんですが、これはIMEがONの時にkeypressの代わりに呼ばれるようです。 IE,safariはIMEがONでもkeyup(or keydown)が呼ばれるのですが、FFはIMEがONの間はkeyup(or keydown)が呼ばれないのでこのイベントは結構重要かもしれません。 ちなみにjQueryでは以下のようにして捕捉可能です。 $(':text').bind('text', function () {console.log(this.value)});

    FFのtext eventに関して - KAYAC Engineers' Blog
    monjudoh
    monjudoh 2008/07/11
    『FirefoxはIMEがONの間はkeyup(or keydown)が呼ばれない』、text eventは『これはIMEがONの時にkeypressの代わりに呼ばれるようです。』
  • FirebugのLog Eventsに関して - KAYAC Engineers' Blog

    こないだfirebugをいじってたら面白いものを見つけました。 ちょっと試してみたところ対象の要素に起こっているイベントを全てコンソールタブへ表示させることが出来るようです。 基的には良くあるイベントが表示されるだけなんですが、IMEをONにした状態でテキスト入力するとちょっと面白いイベントが表示されます。 あまり知られていないイベントなので、これに関しては別に紹介してみたいと思います。

    FirebugのLog Eventsに関して - KAYAC Engineers' Blog
  • プロジェクトとワークスペースの関係。 - 設計と実装の狭間で。

    ちょっと気になったっつうか、誤解してハマる人が出ると困るので、メモ。 Eclipseはワークスペースディレクトリの直下のディレクトリしか、Eclipseプロジェクトとして扱わない。というか、直下のディレクトリを全てプロジェクトとして扱う。 そんなに話が単純である訳がないですやん。 それは、あくまでも、デフォルトの挙動。 何のために org.eclipse.core.resources.IResource#getFullPath org.eclipse.core.resources.IResource#getLocation って似ている様で、全く違う挙動をするメソッドがあると思っているのか。 話をややこしくする為に、もう一つ似たようなAPIを持ち出すと、 org.eclipse.core.resources.IFile#createLink なんてのもある。 例えば、JDTのPackage

    プロジェクトとワークスペースの関係。 - 設計と実装の狭間で。
  • C言語をブラウザで実行、Ruby/Python/Perlも然り | エンタープライズ | マイコミジャーナル

    Mozillaの研究部門に所属しているAtul Varma氏のブログにおいて、Running C and Python Code on The Webのタイトルで興味深い内容が紹介されている。タイトルだけ見るとWebアプリケーションでC言語やPythonのコードを実行すると言う話のようだが… 同氏のブログによれば、Adobe Systems, Scott Petersen氏が現在C言語で作成したコードをTamarin仮想マシンで実行できるようにするツールチェインを開発しており、近々オープンソースソフトウェアとして公開するという。TamarinはAdobeからMozillaへ寄贈されたJavaScriptエンジンだ。Firefox 3.0には取り込まれていないが将来的にはTamarinベースのJavaScriptエンジン実装がFirefoxに取り込まれるとみられている。時期は未定だがFire

    monjudoh
    monjudoh 2008/07/11
    「Flashで」ということは、SilverlightでDLRがあるからRuby・Pythonが使えますというのへの対抗なのかな?
  • Protocol Buffers 使ってみた - Twisted Mind

    protobuf - Google Code Google が発表した素敵な素敵な Protocol Buffers 。 個人的にはかなり良い印象、以下チュートリアル終了までの流れ。 インストール編 $ cd ~/src $ curl -O http://protobuf.googlecode.com/files/protobuf-2.0.0beta.tar.bz2 $ tar xvfj protobuf-2.0.0beta.tar.bz2 $ cd protobuf-2.0.0beta $ ./configure --prefix=/opt/google $ make $ sudo make install $ cd python $ export PATH=/opt/google/bin:$PATH $ sudo /opt/local/bin/python setup.py insta

    Protocol Buffers 使ってみた - Twisted Mind
  • Yamashiro0217の日記

    特に非エンジニア向けに書く。 プログラマー仕事はエディタに向かうことではない。 「お前は何を言っているんだ?」 まぁ、待って欲しい。説明する。 「将棋指しの仕事は駒を動かすことだ」 ?おかしいですよね。将棋指しの仕事は駒を「どう」動かすか考えることだ。 実際にレベルの高い将棋指し同士は、盤面が無くても脳内だけで試合ができる。 もちろん、プログラミングを実際に行なわないとコンピューターは動かない。 さらに例える。 プログラミング作業におけるコードをコンピューターに打つという作業は、 将棋指しが駒を動かす。というのに近い。 ただし、場合によっては駒の重さが30kgぐらいある。 どんだけ優れた将棋指しでも、30kgの駒を100回とか動かしたら、 疲れて頭回らなくて素人にも負けてしまうかもしれない。 30kgもある駒を動かすのは大変だ。 だからプログラマーはエディタ工夫したり、 開発環境工夫した

    Yamashiro0217の日記
  • Route 477

    GitHubindexHello source: index.md View on github | Report issue Generated by middleman 3.1.6. Powered by Ruby 2.2.2.

  • 仕様違反実装をしない様に - 都元ダイスケ IT-PRESS

    なーーんか、なんとなく思い出して引っ張ってきたエントリ。 「Mapなんだけど、getした時に絶対nullが返ってきて欲しくないんだよねー。」という実装が欲しくなった時のお話。 Map<String, String> foo = new HashMap<String, String>() { @Override public String get(String key) { String result = super.get(key); return result == null ? "" : result; } }; Bar.baz(foo); ジェネリクス使ったメソッドのオーバーライド - 都元ダイスケ IT-PRESS マップがこのキーのマッピングを保持していない場合は null を返します。 http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/doc

    仕様違反実装をしない様に - 都元ダイスケ IT-PRESS
    monjudoh
    monjudoh 2008/07/11
    『implementsってのはインターフェイスを実装するのではなく、仕様を実装するんだ。』『インターフェイスってのは、Javadocも含めて、出来上がりなんですね。』
  • download/plugins - Terminal Emulator Poderosa

    Poderosaプラグイン † Poderosaのバージョン4で導入された新しいプラグインアーキテクチャにより、プラグインによってさまざまな機能を追加できます。 旧バージョンにあった機能の一部は、標準パッケージからは除外され、以下のプラグインとして提供されています。 必要に応じてインストールしてください。 ↑ プラグインのリスト † シリアルポート接続 COMポートへの接続機能です。 XModem,ZModem XModem/ZModemの通信を行います。(ZModemは今回のバージョンではじめて搭載されました) ポートフォワーディング SSHのポートフォワーディングツールです。独立したアプリケーションとしても使用できます。 マクロ 旧バージョンのマクロをサポートします。ただし一部仕様変更があります。 マクロから画面分割を行ったり、ターミナルのサイズを取得する機能は削除されました。この周辺

    monjudoh
    monjudoh 2008/07/11
    マクロplugin等の入手はこちらから