libido driven development shibuya.pm tech talk #8
TRANSCRIPT
1
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
yusukebe : yusuke(at)kamawada.com
2
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
注意
心配御無用今回は(モ有)ヴァージョンにて
お送りいたします
「リビドー駆動開発はストリーミング中継できるのかどうか心配 」
Shibuya.pm リーダーは言いました
3
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
自己紹介
yusukebe or id:kamawada和田裕介 / Yusuke Wada
( 株 ) ワディット @ 鎌倉 代表取締役2003 年度未踏ユース準スーパークリエーター
" つながる " 音楽再生ソフト「 VACUUN! 」の開発
ACM SIGGRAPH2005 Emerging echnologies 採択moo-pong : Kaleidoscope of Movie
慶應義塾大学 政策・メディア研究科 修士Erogeek
ようは鎌倉で Erogeek やってます
4
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
5
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
詳しくは
http://yusukebe.comをみてね
6
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
リビドーとは?
衝動、とりわけ性的衝動
リビドー [( ラテン ) libido]〔欲望の意〕フロイトの用語。性的衝動の基になるエネルギー。また、ユングでは、あらゆる行動の根底にある心的エネルギーを広くいう語。
三省堂提供「大辞林 第二版」より
7
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
リビドー駆動開発Perl 初心者の yusukebe がリビドーに駆られ、Plagger & Catalyst で Web サイトを作り、
Perl の世界にのめり込んでいく物語
*
*otsune 氏が命名丁度 1 年前に本格的に Perl を始めた
8
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
リビドーその 1
9
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
エロ
10
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
サイト事例 1: Ero Pla「たくさんあるエロ動画配信サイトの新着情報が
まとめてわかるサイトが欲しい!」
無料サンプルもあるかもよ!今夜のおかずになるよ!
11
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
それ Plagger でRSS 配信していないエロ動画サイトを EntryFu
llText で Feed & Entry オブジェクト化→Publish::Planet
12
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
エロ動画情報は Entry で表現できる!
title
date
tags
author
icon
body
13
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
caribbeancom.yaml
# http://www.caribbeancom.com/index2.htm
custom_feed_handle: http://www\.caribbeancom\.com/index2\.htmcustom_feed_follow_link: |http://www\.caribbeancom\.com/moviepages/.*?\.htmlhandle: http://www\.caribbeancom\.com/moviepages/.*?extract: <META name="keywords" content="(.*?)">.*?<h2>(.*?)</h2>.*?<p class="between2"></p>.*?<img src="(.*?)".*?<textarea class=text_basic name=textarea wrap=VIRTUAL cols=55rows=8>(.*?)</textarea>.*?<td class="value">(\d{4}/\d{2}/\d{2})</td>extract_capture: tags title img body date
14
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
ひたすら EntryFullText の YAML 書きまくり
・エロサイトに行く・ HTML のソース眺める・ YAML 書く・正規表現分からなす・勉強する・なんとかキャプチャできた!・次のエロサイトの YAML 書く・母ちゃん部屋に入ってこないかびびる・以後、繰り返し
15
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
夢の YAML達
yusuke@com:~/www/pulpsite/eropla/feeds/assets/plugins/Filter-EntryFullText$ ls
1046034.yaml dmm_monthly.yaml himemix.yaml r-shodo.yaml10musume.yaml duga.yaml ittele.yaml s-angels.yaml1pondo.yaml eroerooyaji.yaml movie-girls.yaml sexyrose.yaml99bb.yaml eroseven.yaml newplay-st.com.yaml smooth-movie.yamlademusume.yaml exotica-xxx.yaml omany.yaml sukiyakiav.yamlcaribbeancom.yaml g-area.yaml onacle.yaml tokyo-247.yamlcutie82.yaml h4610.yaml peachbomb.yaml tora-tora-tora.yaml
優良動画配信サイトほぼ網羅、現在 28YAML!
16
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
config.yaml 前半global: timezone: Asia/Tokyoplugins: - module: Subscription::Config config: feed: - url: http://www.caribbeancom.com/index2.htm - url: http://www.1pondo.tv/home.htm - url: http://www.10musume.com/home.html - url: http://www.smooth-movie.com/rss/rss.rdf?a_aid=3950&a_bid=001 - url: http://www.onacle.tv/podcast/rss.rdf?a_aid=3950&a_bid=001 - url: http://www4.omany.tv/rss/rss.rdf?a_aid=3950&a_bid=001 - url: http://www.ittele.tv/rss/rss.rdf?a_aid=3950&a_bid=001 - url: http://www.cutie82.com/list.php?category=10 - url: http://www.exotica-xxx.com/list.php?category=8 - url: http://www.newplay-st.com/list.php?category=8 - url: http://www.ademusume.com/list.php?category=10 - url: http://www.peachbomb.com/movie_list.php?category=10 - url: http://www.eroerooyaji.com/list.php?category=10 - url: http://www.1046034.com/list.php?category=10 - url: http://www.sexyrose.tv/list.php?category=12 - url: http://duga.jp/main/ - url: http://rss.99bb.com/ja/new_release/rss_ppv.xml - url: http://rss.99bb.com/ja/new_release/rss_monthly.xml
17
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
config.yam 後半 - module: Filter::EntryFullText
- module: Filter::TruePermalink config: follow_redirect: 0
- module: SmartFeed::All rule: module: Fresh duration: 3 days config: title: ERO Pla description: Everything ERO from the Web
- module: Publish::Planet rule: expression: $args->{feed}->id eq 'smartfeed:all' config: dir: ./ theme: eropla template: style_url: http://pulpsite.net/eropla/theme-eropla/theme-eropla.css url: base: http://pulpsite.net/eropla/
18
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Ero Pla 完成
19
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
その後、ネットランナーに掲載
ネットランナー 2007 年 8月号
20
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
サイト事例 2 : Erolyst
「 Ero Pla は 1ページのみアーカイブしてページングできるようにしたい!さらに、女優別など様々な方法でエロ動画情報を見たい!」
21
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Plagger::Plugin::Store::DBIC を発見
root/branches/feature-serverPlagger の Feed & Entry を DB 化
し、 SQLite で書き出す Plugin
22
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
「それ Plagger と Catalyst で」が可能に
Plalyst or PlaCata メソッドを考案
23
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Plalyst or PlaCata メソッド
Plagger で Feed と Entry をアグリゲート
Web サイトWeb サイト Web サイト
Store-DBIC
entry entry_tag feed feed_tag entry_meta feed_meta …
SQLite形式の DB
DBIx::Class
モデルとして Catalyst で扱う
24
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
ページングの例
package Erolyst::Controller::Entry;
use strict;use warnings;use base 'Catalyst::Controller';
sub index : Private { my ( $self, $c ) = @_; my $page = $c->req->param('page') || 1; my $entries = $c->model('DBIC::Entry')->search( undef, { page => $page, rows => 20, order_by => 'date DESC', }); $c->stash->{entries} = $entries;}
25
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Plalyst or PlaCata メソッドで実現できたこと
26
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
アーカイブ&ページング
「ちょw 1万件超えてるwww」
27
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Entry の Permalink 化
28
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Feed別 Entry の表示
29
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
そして、タグクラウド&タグ別表示
30
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Plalyst or PlaCata メソッドを応用して、さらにリビドーを昇華
リビドー 2 : 無料で音楽 PV を見たいリビドー 3 : 物欲
31
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
サイト事例 3 : CDTube
http://pulpsite.net/cdtube/Mashup the Single CD ranking with YouTube
32
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
サイト事例 4 : これ☆ほしい
http://pulpsite.net/wewantit/ウェブで話題の「みんなの物欲」がひとめでわかるサイト
33
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
CDTube はなんと 6 つの紙面に掲載
TVBros. 2007 年 1月 6日号 ネットランナー 2007 年 3月号 YAHOO ! Internet Guide 2007 年 06月号
ネットランナー 2007 年 9月号ネットランナー 2007 年 8月号ネットコンテンツ・ビジネスの行方
34
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
Plalyst or Catalyst メソッド使用上の注意
「一歩間違えばスパムサイト」容量・用法を守って正しく使いましょう
35
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
まとめ
リビドー駆動で Perl の世界に飛び込もうPlagger はフィードとして「ウェブ API 」
を作れる道具Plalyst or PlaCata メソッドによって
情報を集約させ、見せ方・インタラクションに変化をつける
→うまくやれば情報の価値を高めるこ とができる
36
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
謝辞
miyagawa さんをはじめとした (Plaggerを含めた ) モジュール Author の方々、いつもお世話になってますありがとうございます
自分も人の役に立つモジュール作りたい!
ご清聴ありがとうございました
37
リビドー駆動開発による Plagger と Catalyst を使った (Mashup) サイト開発
2007/10/01 shibuya Perl Mongersテクニカルトーク #8 Lightning Talks Yusuke Wada / yusukebe.com
おまけ : Erogeek の宣伝
ErogeekConference#1 が開催されます!
■ 開催日時2007-10-17(Wed) 20:00 からぐらいかね(予定)
■ 開催場所渋谷のなんか暗い部屋
■ 参加資格ま○こをお持ちの方あるいはち○ぽをお持ちの方
■基調講演ヌイッター開発者 イエイリー氏(交渉中)
http://erogeek.org/