2006-01-01から1年間の記事一覧

[javascript][抜粋]Function.prototype.*

javascriptはFunction.prototypeに追加したメソッドで元の関数の挙動を変更することができる。 later 最速インターフェース研究会 :: Function.prototypeを拡張して遅延実行を実現する 関数の実行を指定時間後に行なう。 var func = function(v){alert(v)}; …

Function.prototype.cached

この前の続き。 Function.prototype.cached = function() { var f = this; var args = arguments; f._cache = new Cache(function_name(f) || "", args[0] || 10, args[1] || function(){return 1}, args[2] || function(){return 1}); return function() { …

かっこいいCDケース

http://www.5inch.com/で販売されているもので、SYNCHRO/FROM TOKYO TO NEW YORK compiled by FPMのジャケットとして同じ型のものが使われている。日本でこれが使われているのを初めて見た。5inch.comはtowatei.comで2004年春ころに知りました。

Firefox extensionやGreasemonkeyを使うとjavascriptで動的に書いたmicroformatsも認識できる

demoTails, Google hCalendarで確認した。TechnoratiのEvents Feed Serviceは予想通りだめ。どちらかというとクローラーに拾ってもらって広がっていくほうがいいはず。使えるような、使えないような。参考 Firefox microformatsエクステンション (suwanoki.c…

Far From Home / Tiga

http://youtube.com/watch?v=jaRcA9mSjG8 dir.野田凪。基本的に一枚絵なのがグラフィックだなぁってのとなんか日本っぽい、と感じるのは多分ドリフのせいだと思う。最初は電柱のせいだと思っていたけど。 Tigaのmyspace Partizanの野田凪ページ

Cache

これもldrの劣化コピー,キューの数によるFIFOなキャッシュ。ちょっと変わってるのは、MochiKit使いなのでキーチェック&生成にAdapterRegistry使ってるくらい。 Cache = function(name, max, key_checker, key_generator) { this.name = name; this.max = ma…

斜めタイトル、見出し

最近のSTUDIO VOICEの特集の見出しページがかっこいい。ちょっと斜め、太めのtypo。日本語フォント自体は割と普通のゴシックだけど斜め効果でかっこよくなってる。 今月のSTUDIO VOICEは写真集特集(asin:B000KRN6T0)。

IntervalDeferred

Deferredに登録した関数が次に実行されるまでの期間も設定できるようにしたものです。ldrの遅延描画的なことを実現してみたかったので。以下のような感じに使います。 var id = new IntervalDeferred(); id.add_action(function() { Hoge.update_item(0); },…

synonym.pl - CLI for synonym.com -

#!/usr/bin/env perl use strict; use warnings; =head1 DESCRIPTION Command Line Interface for synonym.com =head1 NAME synonym.pl - command line interface for synonym.com =head1 SYNOPSIS synonym.pl [word] =head1 AUTHOR t.koyachi =cut use LWP:…

正しいパクリ。 / BITING CORRECTLY

アイデアの出発点は多かれ少なかれ、 何かにインスパイアされる事がある。 よくある。後で気付く事もよくある。 しかし、出口が別なら( 入り口は同じでいいと思う。 Ideas are more or less inspired by other ideas. It is at a later time that we ourselv…

今日のプレイリスト / Fall in jazz

The More I See You / Brad Mehldau (from Portrait of Bill Evans) Tip toe Walking / Maria Kannegaard Trio (from Breaking the Surface) Great Pumpkin Waltz / Vince Guaraldi (from Oh, Good Grief!) Christmas Time Is Here / Vince Guaraldi Trio (f…

Pythonic class definition

An alternative JavaScript class frameworkで見つけたPythonicなクラス定義方法。 以下は自分用にちょっとだけいじったクラス定義関数。 class = function(base, props) { var constructor, key, result; if (props.hasOwnProperty('__init__')) { construc…

namespace

YUIのコードで見つけた名前空間定義関数。 以下はグローバルをYAHOOからthisに変えただけ。 GLOBAL = this; namespace = function(ns, global) { if (!ns || !ns.length) { return null; } var levels = ns.split("."); if (typeof(global) == "undefined") …

module

気持ちPythonぽく。中身ははてなアンテナっぽく。 module = function(ns, impl) { new_module = update( namespace(ns), { NAME: ns }, impl ); bindMethodsExceptClass( new_module ); new_module.TYPE = "MODULE"; return new_module; }usage: module( "Da…

except

exceptFilter = function(excepts, src) { return ( filter( function(e){ return (e!=src) ? 1 : 0; }, excepts).length != excepts.length) ? 0 : 1; } except = function(srcList, excepts) { return filter( partial(exceptFilter,excepts), srcList ); …

今日の元ネタ / Blue Monday

As Heard on Radio Soulwax Pt 2の最後のほうに入ってるThe Beach / Sandwiches聴いていて、何で2ManyDJsがFLASHBACK DISCO使ってるんだろうと、ともう一回聴いたらKylieのCan't Get You Out of My Head 1と同じネタか、と気がついた。 しばらく2ManyDJs聴い…

今日のUI / onclickによるアクションの変更とステータスバー表示

last.fmで試聴しようとして、再生ボタンにカーソルを合わせるとブラウザのステータスバーにはサービス加入ページへのリンクが表示されるので曲タイトルにカーソルを合わせてみると長めのURLがステータスバーに表示され、タイトルにアンダーラインが表示され…

今日のUI

cnet.jpでインタビュー記事等で複数ページになった場合に現れるページャ。リンクしてないならアンダーラインやめて欲しい。Page 1/2に、いつもだまされている。

DOM.TAL

Zope内蔵のテンプレートシステム、ZPT(Zope Page Template)ではTemplate Attribute Language (TAL)という記法が使われている。HTMLタグ属性にテンプレート記法を書く。繰り返し、条件分岐、変数定義、置換等、一般的な機能は持っている。 以下の例では、cont…

クロージャの話

特定言語についてのみ書くのは良くないと思っているけど、だからといって同じことを言語変えて複数書くのも冗長かと思っている。それとHOPの資料がperlだってだけでとりあえずperlで書いているけど、クロージャ使える高級言語ならこのあたりの知識はそのまま…

Tシャツ

はてなTシャツ欲しい!ハマゾー!浜僧なら色は何でもいいです。 そういえば少し前からlast.fm始めてみました。ただiTunesで再生してるだけで、今のところlast.fm側は何もいじってませんが。

Iterator,Closure v.s. OOP

イテレータはオブジェクトインターフェースの一つで、nextメソッド等でオブジェクトが保持する次の要素を必要な時に取得することができるものです。リスト自体が巨大であったり、リストの生成に時間がかかる場合や、必要となるリストや要素についての情報が…

Table,Caching,Memoize,Closure,Profiler

入力に対して決まった値を返し、入力値のレンジが広く、何度も値を取得する必要がある場合、Cなんかでは初期化時に全入力値に対する結果を保持するテーブルを生成したりします。速度重視する場合のsinテーブルとか。割と制約がシビアでない環境では、新しい…

日記

部屋の雨戸に鳥が住んでいる。冬の間、寒いので雨戸を半分出しっぱなしにしてた時に巣を作られたらしい。鳥に限らずだけど動物の名前に詳しくないのではてなで聞いてみたところ、ムクドリだそうだ。Dellってそういうことか、と今頃わかった。竹迫さんのプレ…

Shubuya.js #2

初めての出会い系。遅れていったら一人だけ17階うろうろしてる人がいてma.laさんのプレゼンのときにその方がしゃべってました。はじめまして。入ったらJavaVMの実装の話の途中でした。ma.laさんは色々悟ってる感じがいいなぁ。知りたかったらソース読めと。…

"ブックマークから主なwebブラウズ時間帯を得る"のconfig.yaml

下記設定だと、del.icio.usデータ2005年7月分のブックマークされ具合をグラフ化します(これの2005-07グラフ). global: plugin_path: - /home/koyachi/plagger/mine/Plugin timezone: Asia/Tokyo plugins: - module: CustomFeed::DeliciousBackup config: use…

Visualize::Graph::DensityCell

フックするのはPublishフェーズなんだけどPublishて感じでもないので勝手名前空間にしてみた.濃度が知りたかったから適当にDensityCellとかしたけどこういうグラフの正式名称知らないだけであるかもしれない. ImagerはいざとなったらCで書けるのでプロトタイ…

CustomFeed::DeliciousBackUp

Net::Deliciousでall_posts取得してるだけです.データ量にもよるけど、まとめて取ってくるのでFetch時間かかります.取得したらStore::DBIC等で保存しておけば良いかと. package Plagger::Plugin::CustomFeed::DeliciousBackup; use strict; use base qw( Pla…

ブックマークから主なwebブラウズ時間帯を得る

以下の画像はPlaggerプラグインCustomFeed::DeliciousBackupによりdel.icio.us/rtk2106全データを取得し, Visualize::Graph::DensityCellにより生成した*1。x軸が時間で左から0-23時, y軸が曜日で上から月-日曜日を示す。 主なブラウジング時間は朝で、次が…

Plagger::Plugin::Filter::Ruleで5月分のentryのみ取り出す

- module: Filter::Rule rule: expression: "($args->{entry}->{date}->{local_c}->{month} == 5)"モジュール名から推測して、Filter::DateTimeCronで"* * * 5 *"指定すればよいと思っていたけど、DateTimeCronはplagger起動時間が指定されたcrontab条件と一…