SlideShare a Scribd company logo
Submit Search
Upload
Yesod でブログエンジンをつくってみた
Report
Share
Hiromi Ishii
Graduate Student
Follow
•
5 likes
•
3,069 views
1
of
44
Yesod でブログエンジンをつくってみた
•
5 likes
•
3,069 views
Report
Share
Download Now
Download to read offline
Yesod 1.0勉強会(http://partake.in/events/76f421e7-c3ca-49bf-b28e-f9ede8032f0b)での発表資料です。
Read more
Hiromi Ishii
Graduate Student
Follow
Recommended
体験してみようWordPress.com by
体験してみようWordPress.com
Yusuke Hayasaki
1.1K views
•
21 slides
Bootstrapを使って効率よくWordPressオリジナルテーマを作る by
Bootstrapを使って効率よくWordPressオリジナルテーマを作る
Yoshinori Kobayashi
96.1K views
•
26 slides
Wordpressスマートフォンテーマ作成 by
Wordpressスマートフォンテーマ作成
Yoshie Nakayama
4.7K views
•
71 slides
WordBench熊本第3回勉強会 by
WordBench熊本第3回勉強会
Akinori Tateyama
1.4K views
•
100 slides
WordPressって何 by
WordPressって何
Kazue Igarashi
1.8K views
•
27 slides
第3回WordPress Cafe プラグイン紹介 by
第3回WordPress Cafe プラグイン紹介
foom_in
21.1K views
•
47 slides
More Related Content
Viewers also liked
実数の集合はどこまで可測になれるか? by
実数の集合はどこまで可測になれるか?
Hiromi Ishii
5.6K views
•
53 slides
ものまね鳥を愛でる 結合子論理と計算 by
ものまね鳥を愛でる 結合子論理と計算
Hiromi Ishii
3.8K views
•
66 slides
Ppl by
Ppl
Seizan Shimazaki
2.5K views
•
42 slides
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜 by
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
Hiromi Ishii
3.7K views
•
72 slides
Yesod(at FPM2012) by
Yesod(at FPM2012)
Seizan Shimazaki
2.7K views
•
32 slides
Yesod勉強会 by
Yesod勉強会
Hideyuki Tanaka
9.5K views
•
66 slides
Viewers also liked
(20)
実数の集合はどこまで可測になれるか? by Hiromi Ishii
実数の集合はどこまで可測になれるか?
Hiromi Ishii
•
5.6K views
ものまね鳥を愛でる 結合子論理と計算 by Hiromi Ishii
ものまね鳥を愛でる 結合子論理と計算
Hiromi Ishii
•
3.8K views
Ppl by Seizan Shimazaki
Ppl
Seizan Shimazaki
•
2.5K views
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜 by Hiromi Ishii
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
Hiromi Ishii
•
3.7K views
Yesod(at FPM2012) by Seizan Shimazaki
Yesod(at FPM2012)
Seizan Shimazaki
•
2.7K views
Yesod勉強会 by Hideyuki Tanaka
Yesod勉強会
Hideyuki Tanaka
•
9.5K views
実践・完全犯罪のつくり方 by Hiromi Ishii
実践・完全犯罪のつくり方
Hiromi Ishii
•
6.9K views
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項 by Hiromi Ishii
Lebesgue 可測性に関する Solovay-Shelah の結果に必要な記述集合論のごく基本的な事項
Hiromi Ishii
•
5.3K views
Freer Monads, More Extensible Effects by Hiromi Ishii
Freer Monads, More Extensible Effects
Hiromi Ishii
•
6.2K views
Template Haskell とか by Hiromi Ishii
Template Haskell とか
Hiromi Ishii
•
2.1K views
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性 by Hiromi Ishii
Lebesgue可測性に関するSoloayの定理と実数の集合の正則性
Hiromi Ishii
•
3K views
(数式の入った)本をつくる by Hiromi Ishii
(数式の入った)本をつくる
Hiromi Ishii
•
11.7K views
Algebraic DP: 動的計画法を書きやすく by Hiromi Ishii
Algebraic DP: 動的計画法を書きやすく
Hiromi Ishii
•
6.7K views
Monad tutorial by Hideyuki Tanaka
Monad tutorial
Hideyuki Tanaka
•
13.3K views
Alloy Analyzer のこと by Hiromi Ishii
Alloy Analyzer のこと
Hiromi Ishii
•
6K views
PFIセミナー 2013/02/28 「プログラミング言語の今」 by Preferred Networks
PFIセミナー 2013/02/28 「プログラミング言語の今」
Preferred Networks
•
11.4K views
技術者が知るべき Gröbner 基底 by Hiromi Ishii
技術者が知るべき Gröbner 基底
Hiromi Ishii
•
34K views
数学プログラムを Haskell で書くべき 6 の理由 by Hiromi Ishii
数学プログラムを Haskell で書くべき 6 の理由
Hiromi Ishii
•
32.8K views
御清聴ありがとうございました by Hiromi Ishii
御清聴ありがとうございました
Hiromi Ishii
•
51.8K views
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012) by mametter
Ruby を用いた超絶技巧プログラミング(夏のプログラミングシンポジウム 2012)
mametter
•
34.4K views
Similar to Yesod でブログエンジンをつくってみた
Firebase & BigQuery で Android アプリの成⻑を支える by
Firebase & BigQuery で Android アプリの成⻑を支える
健一 辰濱
1.2K views
•
80 slides
HTML5での制作、いつから始める? by
HTML5での制作、いつから始める?
Fuminori Mori
1.8K views
•
47 slides
WordPressってブログじゃないの? by
WordPressってブログじゃないの?
tokumotonahoko
3.4K views
•
75 slides
a-blogcsm な寺子屋 2 in Okazaki by
a-blogcsm な寺子屋 2 in Okazaki
Etsushi Ishii
279 views
•
68 slides
WordPress中級者への道!テンプレートタグはどう動くのか!? by
WordPress中級者への道!テンプレートタグはどう動くのか!?
Shinichi Nishikawa
5.3K views
•
53 slides
HTML5 for IA by
HTML5 for IA
Atsushi HASEGAWA, Ph.D.
5.9K views
•
28 slides
Similar to Yesod でブログエンジンをつくってみた
(20)
Firebase & BigQuery で Android アプリの成⻑を支える by 健一 辰濱
Firebase & BigQuery で Android アプリの成⻑を支える
健一 辰濱
•
1.2K views
HTML5での制作、いつから始める? by Fuminori Mori
HTML5での制作、いつから始める?
Fuminori Mori
•
1.8K views
WordPressってブログじゃないの? by tokumotonahoko
WordPressってブログじゃないの?
tokumotonahoko
•
3.4K views
a-blogcsm な寺子屋 2 in Okazaki by Etsushi Ishii
a-blogcsm な寺子屋 2 in Okazaki
Etsushi Ishii
•
279 views
WordPress中級者への道!テンプレートタグはどう動くのか!? by Shinichi Nishikawa
WordPress中級者への道!テンプレートタグはどう動くのか!?
Shinichi Nishikawa
•
5.3K views
HTML5 for IA by Atsushi HASEGAWA, Ph.D.
HTML5 for IA
Atsushi HASEGAWA, Ph.D.
•
5.9K views
Visual Studio2013 でGithub(1) セットアップ~同期 by Tomo Mizoe
Visual Studio2013 でGithub(1) セットアップ~同期
Tomo Mizoe
•
1.2K views
4時間まったりWordPressテーマ作成講座 by Shinichi Nishikawa
4時間まったりWordPressテーマ作成講座
Shinichi Nishikawa
•
4.3K views
20141101 handson by Six Apart
20141101 handson
Six Apart
•
419 views
版管理自動組版201412 by Daisuke Miyakawa
版管理自動組版201412
Daisuke Miyakawa
•
1.6K views
20141119 Movable Type HandsOn Seminar by Six Apart
20141119 Movable Type HandsOn Seminar
Six Apart
•
635 views
HTML5: New capabilities, new markup by ourmaninjapan
HTML5: New capabilities, new markup
ourmaninjapan
•
1K views
Introduction to Favmemo for Immature Engineers by Takeshi Arabiki
Introduction to Favmemo for Immature Engineers
Takeshi Arabiki
•
2.9K views
Wp html5 by regret raym
Wp html5
regret raym
•
1.2K views
Webteko 20090925 by だいすけ ふるかわ
Webteko 20090925
だいすけ ふるかわ
•
1.1K views
マルチサイトの構築 by Yoshitaka KATO
マルチサイトの構築
Yoshitaka KATO
•
4.6K views
Googleアナリティクスを活用したお手軽なランキングシステムの構築 ~ サーバー・クライアント側実装例 ~ by AppBank
Googleアナリティクスを活用したお手軽なランキングシステムの構築 ~ サーバー・クライアント側実装例 ~
AppBank
•
5.9K views
HTML5とCSS3でWebが変わる!でも導入は簡単! by Toshihito Gamo
HTML5とCSS3でWebが変わる!でも導入は簡単!
Toshihito Gamo
•
1.4K views
GitHub Handson by Yoichiro Shimizu
GitHub Handson
Yoichiro Shimizu
•
181 views
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」 by ericsagnes
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
ericsagnes
•
3.2K views
Yesod でブログエンジンをつくってみた
1.
Yesod で Blog
Engine をつくってみた @mr_konn
2.
自己紹介 •
@mr_konn • 数学科三年 • auehtnticate-oauth / yesod-auth-oauth メンテナ • ブログ:http://blog.konn-san.com • Powered by Yesod & Mighty • これ作ったときの話します
3.
Yablog: Yet Another Blog-engine
4.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能
5.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知
6.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知 • ウェブサービスとの連携
7.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知 • ウェブサービスとの連携 • Social:Twitter / はてブ / はてスタ / G+ / いいね!
8.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知 • ウェブサービスとの連携 • Social:Twitter / はてブ / はてスタ / G+ / いいね! • Google CSE / Google Analytics / Amazon Associates
9.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知 • ウェブサービスとの連携 • Social:Twitter / はてブ / はてスタ / G+ / いいね! • Google CSE / Google Analytics / Amazon Associates • 多くのマークアップ言語、 Syntax Colouring をサポート
10.
Yablog: Yet Another Blog-engine •
ブログとして一通りの機能 • 複数人執筆 / コメント / トラックバック / Real Time Preview / タグ / フィード / コメント通知 • ウェブサービスとの連携 • Social:Twitter / はてブ / はてスタ / G+ / いいね! • Google CSE / Google Analytics / Amazon Associates • 多くのマークアップ言語、 Syntax Colouring をサポート • MathJax による美しい数式
11.
欲しい機能は、 一通り。
12.
欲しいものは 作ろう!
13.
作るのは 大変……?
14.
そんなことはない!
15.
つかったもの
16.
つかったもの •
Yesod
17.
つかったもの •
Yesod • Google Analytics は最初からサポート
18.
つかったもの •
Yesod • Google Analytics は最初からサポート • 非同期版には書き換えました。
19.
つかったもの •
Yesod • Google Analytics は最初からサポート • 非同期版には書き換えました。 • Newsfeed の生成や国際化も楽チン
20.
つかったもの •
Yesod • Google Analytics は最初からサポート • 非同期版には書き換えました。 • Newsfeed の生成や国際化も楽チン • 認証機構も好きなものを使える
21.
つかったもの •
Yesod • Google Analytics は最初からサポート • 非同期版には書き換えました。 • Newsfeed の生成や国際化も楽チン • 認証機構も好きなものを使える • Yablog ではそのまま Google か BrowserId
22.
つかったもの •
Yesod • Google Analytics は最初からサポート • 非同期版には書き換えました。 • Newsfeed の生成や国際化も楽チン • 認証機構も好きなものを使える • Yablog ではそのまま Google か BrowserId • HashDB とかのがよかったかなぁ。
23.
つかったもの(続)
24.
つかったもの(続) •
Pandoc
25.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX…
26.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • マークアップのパーズ&HTML整形に
27.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • マークアップのパーズ&HTML整形に • HTML はYesodと共通の blaze を利用
28.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • マークアップのパーズ&HTML整形に • HTML はYesodと共通の blaze を利用 • highlighting-kate
29.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • マークアップのパーズ&HTML整形に • HTML はYesodと共通の blaze を利用 • highlighting-kate • シンタックスカラーリング。
30.
つかったもの(続) •
Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • マークアップのパーズ&HTML整形に • HTML はYesodと共通の blaze を利用 • highlighting-kate • シンタックスカラーリング。 • Yablog では直接叩いていますが、Pandoc からも叩け る。
31.
Amazon Associates • Pandoc
+ SYB の威力 • URL を見付けたら Amazon かどうか判 定、自動でアフィリンク化
32.
つかったもの
33.
つかったもの • MongoDB
34.
つかったもの • MongoDB •
バックエンド。モダン!
35.
つかったもの • MongoDB •
バックエンド。モダン! • Day や TimeOfDay をそのままでは保 存できないので注意!
36.
つかったもの • MongoDB •
バックエンド。モダン! • Day や TimeOfDay をそのままでは保 存できないので注意! • auth の掛かったDBにアクセス出来な い?
37.
つかったもの • Bootstrap •
お手軽に Twitter モドキのWeb UI を! • 最新の Yesod からは同梱……?
38.
つかったもの
39.
つかったもの • Mighty •
@kazu_yamamoto さんのHTTPサーバ • Reverse Proxy を使ってサブドメイン で運用している
40.
今後の予定 •
トラバ飛ばす機能 • 面倒なので作ってなかった^^; • 画像の埋め込み • どこにどう保存すべき? • JavaScript 重いのを何とかする • 適当に突っ込んだら読み込みが凄く遅い……。 • UST以外の時間帯のサポート
41.
配布場所 • レポジトリ:http://gitweb.konn-san.com/
repo/Yablog/tree/master • このレポジトリも Yesod アプリ • まだ発展途上なので、要望があれば GitHub の方にもレポ作ります
42.
まとめ • Haskell には沢山のライブラリがある
• 組み合わせているといつの間にか完 成している • 欲しいものを作れる!
43.
Any Questions?
44.
御清聴 ありがとうございました
Editor's Notes
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n