Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Imagining the future of real time kr tconf 2011

863 views

Published on

We live on the unexplored frontier of the real-time web. Current applications inspire and amaze, but new ideas and products are still waiting to be discovered and built. Current tools make it easier to do what is already possible, but how will we accomplish what is today considered impossible?

How will we build a web-based MMORPG or a first person shooter? How will we handle data exchange when every part of our app is a collaborative experience? How will we deal with combinations of future real-time services that must all work together?

In this talk, I'll introduce some ideas that may be helpful for the next generations of applications.

  • Be the first to comment

  • Be the first to like this

Imagining the future of real time kr tconf 2011

  1. 1. Imagining the Future of Real Time
  2. 2. Where are we?
  3. 3. How do we buildsomething bigger?
  4. 4. The Obvious
  5. 5. The Page Jail
  6. 6. Peer to Peer
  7. 7. Multiplexing
  8. 8. Search
  9. 9. The Not-So-Obvious
  10. 10. Algorithms
  11. 11. Average value
  12. 12. solution:store a running sum and count
  13. 13. solution:windowing
  14. 14. Variance
  15. 15. Set membership
  16. 16. 1. build a set of members2. test if input is a member
  17. 17. Bloom filters
  18. 18. State
  19. 19. Distributed Databases how to trade C and A for P
  20. 20. Consistent
  21. 21. Paxos
  22. 22. Available
  23. 23. Vector Clocks
  24. 24. Example:What did you play?
  25. 25. jack:1{ pacman }
  26. 26. jack:1, julien:1{ pacman, pinball }
  27. 27. jack:1, julien:1, bear:1{ pacman, pinball, racing }
  28. 28. jack:1, julien:1, fritzy:1{ pacman, pinball, starwars }
  29. 29. jack:1, julien:1, bear:1 { pacman, pinball, racing } jack:1, julien:1, fritzy:1{ pacman, pinball, starwars }
  30. 30. jack:2, julien:1, bear:1, fritzy:1 { pacman, pinball, racing, starwars }
  31. 31. Shared Editing
  32. 32. adam, henrik edit: ktcof
  33. 33. adam: henrik:A: add(r, 2) krtcof
  34. 34. adam: henrik:A: add(r, 2) krtcof A: add(r, 2) krtcof
  35. 35. adam: henrik:A: add(r, 2) krtcof A: add(r, 2) krtcof H: add(n, 6) krtconf
  36. 36. adam: henrik:A: add(r, 2) krtcof A: add(r, 2) krtcof H: add(n, 6) krtconfH: add(n, 6) krtconf
  37. 37. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconf
  38. 38. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconfH: add(n,5) A: add(r, 2) krtcnof krtconf
  39. 39. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconfH: add(n,5) A: add(r, 2) krtcnof krtconfWTF?!?
  40. 40. Transformation
  41. 41. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconf
  42. 42. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconfH: add(n, 5) A: add(r, 2)
  43. 43. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconfH: add(n, 5) A: add(r, 2)H: add(n, 6) A: add(r, 2)
  44. 44. adam: henrik:A: add(r, 2) H: add(n, 5) krtcof ktconfH: add(n, 5) A: add(r, 2)H: add(n, 6) A: add(r, 2) krtconf krtconf
  45. 45. Implementation< 200 lines of JS
  46. 46. Tomorrows apps will be awesome.
  47. 47. Building tomorrows apps will be challenging.
  48. 48. Make the future.
  49. 49. Jack Moffittjack@metajack.imhttp://metajack.im @metajack

×