DEVELOPMENTOR*LEARNING RESOURCE LAB.

ソフトウェア開発現場の視点からソフトウェアと開発者の価値を高める「ホットな何か」をお届けします。(休止)

「健康応援レシピ1000 DS献立全集」予約しました。

2006年12月04日 | 使えるグッズ

テレビCMで流れている「健康応援レシピ1000 DS献立全集」を予約しました。

健康応援レシピ1000 DS献立全集
健康応援レシピ1000 DS献立全集
しゃべる!DSお料理ナビ
しゃべる!DSお料理ナビ

「しゃべる!DSお料理ナビ」は料理の仕方をサポートすることが目的でレシピも200品目程度でした。「健康応援レシピ1000 DS献立全集」はレシピが中心のようですね。オレンジページ監修ということで、冊子を使うのと比較して、どのくらいDSを活かしているかそのアイディアがとても気になります。


del.icio.us JSON Tag Feedsを使ってビデオを検索する

2006年12月04日 | Web 2.0

AOLVS Ajax APIで関連タグを表示、そしてビデオを検索する」の続きです。del.icio.usとマッシュアップしてみます。

さらにdel.icio.usの「JSON Tag Feeds」を使った自分のタグを表示し、「AOL Video Search Ajax API」を使ってそのタグでビデオを検索できるように改良しました。↓こんな感じです。

JSON Tag Feedsを使って自分のタグを取得し、そのタグをWEBページの右下にリスト表示します。タグをクリックすると、そのタグをキーワードに見立ててAOL Video Search Ajax APIの「getVideosメソッド」を使ってビデオを再検索します。


View example

del.icio.usの「JSON Tag Feeds」は次のように使っています。

「JSON Tag Feeds」は次のようなscript要素で取り込みます。アドレス中の「developmentor」はdel.icio.usの「username」に対応しますので、あなたのusernameに置き換えてみてください。「countパラメータ」は取り込むタグの数を表します。「sortパラメータ」はタグの並び順を表します。ここではタグ付け数を指定しました。他にアルファベット順も指定できます。「callbackパラメータ」を使えばJSONPもできますが、ここでは使っていません。

<script type="text/javascript" 
  src="http://del.icio.us/feeds/json/tags/developmentor?count=20&sort=count"></script>

このscript要素は次のような「Delicious.tagsオブジェクト」を出力します。Delicious.tagsのプロパティがタグで、その値がタグ付け数になります。いわゆるタグとタグ付け数のハッシュテーブルです。

if(typeof(Delicious) == 'undefined')
  Delicious = {};
Delicious.tags = {
  "Ajax": 8,
  ...
}

Delicious.tagsを繰り返しながらタグをリスト表示します。このコードはprototype.jsを使っています。「$H」を使ってハッシュテーブルに変換し、「eachメソッド」とDOMを使ってタグのリストを生成しています。

<script type="text/javascript">
  var ul = $('mytags');
  $H(Delicious.tags).each(function(pair) {
    var a = document.createElement('a');
    a.href='#'+encodeURIComponent(pair.key);
    a.onclick = function(e) {
      return update(pair.key);
    };
    a.appendChild(document.createTextNode(pair.key +' ('+pair.value+')'));
    var li = document.createElement('li');
    li.appendChild(a);
    ul.appendChild(li);
  });
</script>

del.icio.usのほかにも、検索キーワードに使えるデータを出力するサービスがあれば、同じような手順で簡単に追加できると思います。試しに「BLOGRANGER 2.0」の「トピックマイニング」を使ってRelated Topicsなんてのも表示してみようかな。できたらまた紹介します。