Behind Pinkoi Window Redesign

3,197 views

Published on

PyConTW 2013

Behind Pinkoi Window Redesign

  1. 1. @co_founder@cto@mike_leedef pycontw2013():“””Behind Pinkoi Window Redesign”””
  2. 2. 65000+ Unique Products
  3. 3. 3000+ Brands and 8000+ Designers
  4. 4. •25% visitors from outside ofTaiwan - Hong Kong, NorthAmerica, China, Japan, Singapore,Malaysia•Help designers grow business to7 countries worldwideWhat We’ve AccomplishedInternationally
  5. 5. Our vision is to build the biggest onlinecommunity and marketplace for designers in Asia.
  6. 6. and Enable people to live around good designs every day.
  7. 7. http://pinkoi.com/window
  8. 8. Window Before
  9. 9. Window BeforeWindow After
  10. 10. Infinite Scroll
  11. 11. Use same endpointhttp://www.pinkoi.com/windowAjaxhttp://www.pinkoi.com/window?page=n
  12. 12. Use same endpointhttp://www.pinkoi.com/windowAjaxhttp://www.pinkoi.com/window?page=ncode reuseGA comparabledescriptive
  13. 13. Single-Page Navigation
  14. 14. Issue: browser history
  15. 15. Issue: browser historyHTML5 history APIhistory.pushState()
  16. 16. Issue: browser historyHistory API?HTML5 history APIhistory.pushState()
  17. 17. Issue: browser historyI don’t careHTML5 history APIhistory.pushState()
  18. 18. Issue: browser historyI don’t careopen new tabProgressive Enhancement<a></a>HTML5 history APIhistory.pushState()
  19. 19. Sub-template for Code ReuseMako
  20. 20. Offload Processing to User-side
  21. 21. Counter
  22. 22. Issue: response latency on hot windowdatabase table (row) lock
  23. 23. Issue: response latency on hot windowcounter stored in MySQLasync instead of syncmessaging systemRabbitMQaccumulate and then bulk updatedatabase table (row) lock
  24. 24. Favorite ♥
  25. 25. store unstructured data in CouchDBNoSQLflexibility
  26. 26. store unstructured data in CouchDBNoSQLflexibilityfast
  27. 27. Rankingviewcnt ↑ score +favcnt ↑ score ++long tail windows? score -
  28. 28. Simple and Fast Algorithmlog(factor * weight, days)
  29. 29. GunicornDjangoMakoMySQL (MySQLdb)CouchDB (couchdb-python)RabbitMQ (carrot)ModernizrOpen Sources used
  30. 30. Thank you!http://pinkoi.com/product/1BE15FrN
  31. 31. Thank you!btw, were Recruitingmike.lee@pinkoi.com

×