Slide 1

Slide 1 text

Yesod Ͱ Blog Engine Λͭͬͯ͘Έͨ @mr_konn 2012೥4݄22೔೔༵೔

Slide 2

Slide 2 text

ࣗݾ঺հ • @mr_konn • ਺ֶՊࡾ೥ • auehtnticate-oauth / yesod-auth-oauth ϝϯςφ • ϒϩάɿhttp://blog.konn-san.com • Powered by Yesod & Mighty • ͜Ε࡞ͬͨͱ͖ͷ࿩͠·͢ 2012೥4݄22೔೔༵೔

Slide 3

Slide 3 text

Yablog: Yet Another Blog-engine 2012೥4݄22೔೔༵೔

Slide 4

Slide 4 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ 2012೥4݄22೔೔༵೔

Slide 5

Slide 5 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ 2012೥4݄22೔೔༵೔

Slide 6

Slide 6 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ • ΢ΣϒαʔϏεͱͷ࿈ܞ 2012೥4݄22೔೔༵೔

Slide 7

Slide 7 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ • ΢ΣϒαʔϏεͱͷ࿈ܞ • SocialɿTwitter / ͸ͯϒ / ͸ͯελ / G+ / ͍͍Ͷʂ 2012೥4݄22೔೔༵೔

Slide 8

Slide 8 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ • ΢ΣϒαʔϏεͱͷ࿈ܞ • SocialɿTwitter / ͸ͯϒ / ͸ͯελ / G+ / ͍͍Ͷʂ • Google CSE / Google Analytics / Amazon Associates 2012೥4݄22೔೔༵೔

Slide 9

Slide 9 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ • ΢ΣϒαʔϏεͱͷ࿈ܞ • SocialɿTwitter / ͸ͯϒ / ͸ͯελ / G+ / ͍͍Ͷʂ • Google CSE / Google Analytics / Amazon Associates • ଟ͘ͷϚʔΫΞοϓݴޠɺ Syntax Colouring Λαϙʔτ 2012೥4݄22೔೔༵೔

Slide 10

Slide 10 text

Yablog: Yet Another Blog-engine • ϒϩάͱͯ͠Ұ௨Γͷػೳ • ෳ਺ਓࣥච / ίϝϯτ / τϥοΫόοΫ / Real Time Preview / λά / ϑΟʔυ / ίϝϯτ௨஌ • ΢ΣϒαʔϏεͱͷ࿈ܞ • SocialɿTwitter / ͸ͯϒ / ͸ͯελ / G+ / ͍͍Ͷʂ • Google CSE / Google Analytics / Amazon Associates • ଟ͘ͷϚʔΫΞοϓݴޠɺ Syntax Colouring Λαϙʔτ • MathJax ʹΑΔඒ͍͠਺ࣜ 2012೥4݄22೔೔༵೔

Slide 11

Slide 11 text

ཉ͍͠ػೳ͸ɺ Ұ௨Γɻ 2012೥4݄22೔೔༵೔

Slide 12

Slide 12 text

ཉ͍͠΋ͷ͸ ࡞Ζ͏ʂ 2012೥4݄22೔೔༵೔

Slide 13

Slide 13 text

࡞Δͷ͸ େม……ʁ 2012೥4݄22೔೔༵೔

Slide 14

Slide 14 text

ͦΜͳ͜ͱ͸ͳ͍ʂ 2012೥4݄22೔೔༵೔

Slide 15

Slide 15 text

͔ͭͬͨ΋ͷ 2012೥4݄22೔೔༵೔

Slide 16

Slide 16 text

͔ͭͬͨ΋ͷ • Yesod 2012೥4݄22೔೔༵೔

Slide 17

Slide 17 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ 2012೥4݄22೔೔༵೔

Slide 18

Slide 18 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ • ඇಉظ൛ʹ͸ॻ͖׵͑·ͨ͠ɻ 2012೥4݄22೔೔༵೔

Slide 19

Slide 19 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ • ඇಉظ൛ʹ͸ॻ͖׵͑·ͨ͠ɻ • Newsfeed ͷੜ੒΍ࠃࡍԽ΋ָνϯ 2012೥4݄22೔೔༵೔

Slide 20

Slide 20 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ • ඇಉظ൛ʹ͸ॻ͖׵͑·ͨ͠ɻ • Newsfeed ͷੜ੒΍ࠃࡍԽ΋ָνϯ • ೝূػߏ΋޷͖ͳ΋ͷΛ࢖͑Δ 2012೥4݄22೔೔༵೔

Slide 21

Slide 21 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ • ඇಉظ൛ʹ͸ॻ͖׵͑·ͨ͠ɻ • Newsfeed ͷੜ੒΍ࠃࡍԽ΋ָνϯ • ೝূػߏ΋޷͖ͳ΋ͷΛ࢖͑Δ • Yablog Ͱ͸ͦͷ·· Google ͔ BrowserId 2012೥4݄22೔೔༵೔

Slide 22

Slide 22 text

͔ͭͬͨ΋ͷ • Yesod • Google Analytics ͸࠷ॳ͔Βαϙʔτ • ඇಉظ൛ʹ͸ॻ͖׵͑·ͨ͠ɻ • Newsfeed ͷੜ੒΍ࠃࡍԽ΋ָνϯ • ೝূػߏ΋޷͖ͳ΋ͷΛ࢖͑Δ • Yablog Ͱ͸ͦͷ·· Google ͔ BrowserId • HashDB ͱ͔ͷ͕Α͔͔ͬͨͳ͊ɻ 2012೥4݄22೔೔༵೔

Slide 23

Slide 23 text

͔ͭͬͨ΋ͷʢଓʣ 2012೥4݄22೔೔༵೔

Slide 24

Slide 24 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc 2012೥4݄22೔೔༵೔

Slide 25

Slide 25 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… 2012೥4݄22೔೔༵೔

Slide 26

Slide 26 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • ϚʔΫΞοϓͷύʔζ&HTML੔ܗʹ 2012೥4݄22೔೔༵೔

Slide 27

Slide 27 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • ϚʔΫΞοϓͷύʔζ&HTML੔ܗʹ • HTML ͸Yesodͱڞ௨ͷ blaze Λར༻ 2012೥4݄22೔೔༵೔

Slide 28

Slide 28 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • ϚʔΫΞοϓͷύʔζ&HTML੔ܗʹ • HTML ͸Yesodͱڞ௨ͷ blaze Λར༻ • highlighting-kate 2012೥4݄22೔೔༵೔

Slide 29

Slide 29 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • ϚʔΫΞοϓͷύʔζ&HTML੔ܗʹ • HTML ͸Yesodͱڞ௨ͷ blaze Λར༻ • highlighting-kate • γϯλοΫεΧϥʔϦϯάɻ 2012೥4݄22೔೔༵೔

Slide 30

Slide 30 text

͔ͭͬͨ΋ͷʢଓʣ • Pandoc • Markdown (+lhs) / ReST / HTML / TeX… • ϚʔΫΞοϓͷύʔζ&HTML੔ܗʹ • HTML ͸Yesodͱڞ௨ͷ blaze Λར༻ • highlighting-kate • γϯλοΫεΧϥʔϦϯάɻ • Yablog Ͱ͸௚઀ୟ͍͍ͯ·͕͢ɺPandoc ͔Β΋ୟ͚ Δɻ 2012೥4݄22೔೔༵೔

Slide 31

Slide 31 text

Amazon Associates • Pandoc + SYB ͷҖྗ • URL Λݟ෇͚ͨΒ Amazon ͔Ͳ͏͔൑ ఆɺࣗಈͰΞϑΟϦϯΫԽ 2012೥4݄22೔೔༵೔

Slide 32

Slide 32 text

͔ͭͬͨ΋ͷ 2012೥4݄22೔೔༵೔

Slide 33

Slide 33 text

͔ͭͬͨ΋ͷ • MongoDB 2012೥4݄22೔೔༵೔

Slide 34

Slide 34 text

͔ͭͬͨ΋ͷ • MongoDB • όοΫΤϯυɻϞμϯʂ 2012೥4݄22೔೔༵೔

Slide 35

Slide 35 text

͔ͭͬͨ΋ͷ • MongoDB • όοΫΤϯυɻϞμϯʂ • Day ΍ TimeOfDay Λͦͷ··Ͱ͸อ ଘͰ͖ͳ͍ͷͰ஫ҙʂ 2012೥4݄22೔೔༵೔

Slide 36

Slide 36 text

͔ͭͬͨ΋ͷ • MongoDB • όοΫΤϯυɻϞμϯʂ • Day ΍ TimeOfDay Λͦͷ··Ͱ͸อ ଘͰ͖ͳ͍ͷͰ஫ҙʂ • auth ͷֻ͔ͬͨDBʹΞΫηεग़དྷͳ ͍ʁ 2012೥4݄22೔೔༵೔

Slide 37

Slide 37 text

͔ͭͬͨ΋ͷ • Bootstrap • ͓खܰʹ Twitter ϞυΩͷWeb UI Λʂ • ࠷৽ͷ Yesod ͔Β͸ಉࠝ……ʁ 2012೥4݄22೔೔༵೔

Slide 38

Slide 38 text

͔ͭͬͨ΋ͷ 2012೥4݄22೔೔༵೔

Slide 39

Slide 39 text

͔ͭͬͨ΋ͷ • Mighty • @kazu_yamamoto ͞ΜͷHTTPαʔό • Reverse Proxy Λ࢖ͬͯαϒυϝΠϯ Ͱӡ༻͍ͯ͠Δ 2012೥4݄22೔೔༵೔

Slide 40

Slide 40 text

ࠓޙͷ༧ఆ • τϥόඈ͹͢ػೳ • ໘౗ͳͷͰ࡞ͬͯͳ͔ͬͨʈʈʀ • ը૾ͷຒΊࠐΈ • Ͳ͜ʹͲ͏อଘ͢΂͖ʁ • JavaScript ॏ͍ͷΛԿͱ͔͢Δ • ద౰ʹಥͬࠐΜͩΒಡΈࠐΈ͕ੌ͘஗͍……ɻ • USTҎ֎ͷ࣌ؒଳͷαϙʔτ 2012೥4݄22೔೔༵೔

Slide 41

Slide 41 text

഑෍৔ॴ • ϨϙδτϦɿhttp://gitweb.konn-san.com/ repo/Yablog/tree/master • ͜ͷϨϙδτϦ΋ Yesod ΞϓϦ • ·ͩൃల్্ͳͷͰɺཁ๬͕͋Ε͹ GitHub ͷํʹ΋Ϩϙ࡞Γ·͢ 2012೥4݄22೔೔༵೔

Slide 42

Slide 42 text

·ͱΊ • Haskell ʹ͸୔ࢁͷϥΠϒϥϦ͕͋Δ • ૊Έ߹Θ͍ͤͯΔͱ͍ͭͷؒʹ͔׬ ੒͍ͯ͠Δ • ཉ͍͠΋ͷΛ࡞ΕΔʂ 2012೥4݄22೔೔༵೔

Slide 43

Slide 43 text

Any Questions? 2012೥4݄22೔೔༵೔

Slide 44

Slide 44 text

ޚਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ 2012೥4݄22೔೔༵೔