$30 off During Our Annual Pro Sale. View Details »

小海嚴選

 小海嚴選

Talking about how and why curator.im is developed, including services, techonology are used, and performance related with various free resources.

website: http://curator.im/

Ming Shien Tzang

May 17, 2014
Tweet

More Decks by Ming Shien Tzang

Other Decks in Programming

Transcript

  1. View Slide

  2. 關於我
    小海 / tzangms

    View Slide

  3. ⼤大綱
    • 關於⼩小海嚴選
    • ⼩小海嚴選如何開發
    • 零元營運
    • Open API
    • 軟體應⽤用中⼼心

    View Slide

  4. 是什麼?

    View Slide

  5. 我們先來看⼀一下畫⾯面
    這時候 PyCon APAC 在場的⼯工作⼈人員應該都很緊張

    View Slide

  6. View Slide

  7. 「it’s just pixels!」

    View Slide

  8. curator.im

    View Slide

  9. 為何想做⼩小海嚴選

    View Slide

  10. 因為 Facebook ⼀一直推薦我
    推薦我⼀一堆正妹

    View Slide

  11. 所以我就⼀一直按
    從 2013 年開始 整整按了⼀一年多

    View Slide

  12. 發現很難回頭找照⽚片
    只會在 FB 的 Activity logs 出現

    View Slide

  13. ⽽而且好東⻄西怎能不分享
    所以我便開始研究 如何把按過的資料抓出來

    View Slide

  14. 策展的時代
    資訊爆炸 需要有⼈人幫你過濾

    View Slide

  15. 所以決定今年
    ⼀一天推⼀一個正妹
    持續 365 天, 除⾮非今年不是 365 天

    View Slide

  16. ⼩小海嚴選
    開發的重點精髓

    View Slide

  17. FQL
    select object_id from like where user_id = me()

    View Slide

  18. Python + Django
    Of course!

    View Slide

  19. ⼩小海嚴選如何開發

    View Slide

  20. ⽤用 iPad 開發出雛形
    花了兩天

    View Slide

  21. View Slide

  22. View Slide

  23. 另外就是 Python 很少括號
    ⽤用到括號多的語⾔言的話就 …

    View Slide

  24. 搭配可部署到 Heroku 的
    Django 樣板
    django project template

    View Slide

  25. Django heroku template
    $ django-admin.py startproject —template \!
    https://github.com/cyberdelia/django-heroku-template/zipball/master

    View Slide

  26. 幾乎就可以上線
    讓我可以專⼼心開發核⼼心功能

    View Slide

  27. Django 的⽣生態環境
    讓你開發快到沒話說

    View Slide

  28. 需要會員系統
    $ pip install django-userena

    View Slide

  29. 需要開放 API
    $ pip install django-rest-framework

    View Slide

  30. 需要 OAuth 2 Provider
    $ pip install django-oauth2-provider

    View Slide

  31. 需要 Facebook 登⼊入
    $ pip install django-social-auth

    View Slide

  32. FB 登⼊入 + FQL
    取得 access_token 就可以完成核⼼心功能

    View Slide

  33. 使⽤用 django command
    搭配 requests, 每⼩小時抓⼀一次

    View Slide

  34. ⼼心得
    !
    沒事不要在 iPad 上開發

    View Slide

  35. 動態縮圖
    thumbor + CDN

    View Slide

  36. http://thumbor.curator.im/unsafe/300x300/media.curator.im/1.jpg
    http://thumbor.curator.im/unsafe/100x100/media.curator.im/1.jpg
    搭配 CDN 後, 簡直就是無敵

    View Slide

  37. 部署 thumbor 到 heroku
    https://github.com/tzangms/thumbor-heroku

    View Slide

  38. 使⽤用的服務

    View Slide

  39. 免費的時代
    近乎 0 元營運

    View Slide

  40. 免費服務可以撐多少流量
    Heroku (1 dyno) + Cloudflare

    View Slide

  41. ⼩小海嚴選網站點閱率

    View Slide

  42. ⼩小海嚴選 Chrome 外掛點閱率
    上班時間平均 100 ⼈人同時在線

    View Slide

  43. 平均流量 6GB/天

    View Slide

  44. 對於新創事業來說
    還算⾜足夠

    View Slide

  45. Open API
    正妹是屬於⼤大家的

    View Slide

  46. django rest framework
    這樣就⼀一⽀支 API 了

    View Slide

  47. ⾺馬上有前端可以操作
    但是其實⽂文件很複雜 …

    View Slide

  48. 軟體應⽤用中⼼心

    View Slide

  49. curator-cli (node.js)
    by Ferrari

    View Slide

  50. Curator-iOS
    by NelsonT

    View Slide

  51. by Tangblack

    View Slide

  52. Windows Phone 8
    by ericsk

    View Slide

  53. Mac 螢幕保護程式
    by siuying

    View Slide

  54. hubot plugin
    by myself

    View Slide

  55. Chrome extension
    by fukuball

    View Slide

  56. 「多到你裝不完。」

    View Slide

  57. 因為你可能沒那麼多⽀支⼿手機
    ⽽而且軟體還不⽌止這些 ...

    View Slide

  58. 圖⽚片版權問題
    Copyright

    View Slide

  59. 規則
    只抓取 FB 粉絲⾴頁公開權限的的圖⽚片

    View Slide

  60. DMCA
    通知下架

    View Slide

  61. 下⼀一個階段

    View Slide

  62. View Slide

  63. Q & A

    View Slide