AmmanTT - Lessons learned in building jawaker

1,899 views

Published on

Lessons learned in building Jawaker, an online multiplayer card games website. (Sinan Taifour, Jawaker)
#AmmanTT Gaming Edition

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,899
On SlideShare
0
From Embeds
0
Number of Embeds
44
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

AmmanTT - Lessons learned in building jawaker

  1. 1. El-Kol Bil3ab<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  2. 2. Jawaker is an online multiplayer cards gaming website, <br />with a focus on the social aspect.<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  3. 3. Social Aspect<br />In-Game Chat<br />Friends List<br />One-on-One Chat<br />Private Games<br />Competitions<br />Facebook Integration<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  4. 4. Being the Police<br />Users expect you to police everything<br />Flagging and Complaining System<br />Automatic Filtering System<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  5. 5. Understand User and Get Feedback<br />Ranking System<br />Tokens System<br />Took a lot of work<br />Took almost no work<br />We expected users to care<br />We expected users not to care<br />Users loved it without really understanding it<br />Users weren't interested<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  6. 6. Revenue Channels<br />Jawaker Basha (Freemium Model)<br />Advertisements<br />Virtual Goods<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  7. 7. Scalability<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  8. 8. What do you mean?<br />Scalability: The ability to handle a growing amount of traffic.<br />Realtime multiplayer gaming websites need to push updates to users fast<br />Web not originally designed for that<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  9. 9. Lesson 1: Multiple Connection Method<br />Polling<br />Long Polling<br />Raw TCP (aka Comet)<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  10. 10. Lesson 2: Separate into Processes<br />Advantages:<br />Engine<br />Can move a component to a new server<br />Web<br />Can make copies of a component<br />…<br />Orthogonality of code and better maintainability<br />Mux<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  11. 11. Lesson 3: Communicate Asynchronously<br />Engine<br />..<br />..<br />Web<br />Mux<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  12. 12. Lesson 4: Cache, Cache, Cache…<br />On many levels, like:<br />Database Query<br />Part of a View<br />A Whole Page<br />Client-Side in Javascript<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  13. 13. Lesson 5: Collect Live Stats<br />Very useful! Can be:<br />System Related (such as the System Load, IO delays, Network Traffic)<br />Application Related (such as Queue Length, Running Time (of some selected procedures), Lags in Schedulers)<br />Client-Side (such as Ping Times to Server, Occurrence of (selected) Events)<br />Amman Tech Tuesdays “Gaming Edition” – August 3rd<br />
  14. 14. Thank you!<br />
  15. 15. هل تأثرت تجربتك باللعب على الانترنت بسبب بطء سرعة الانترنت؟Have your online gaming experience got affected by slow bandwidth?<br />نعم<br />لا<br />1. Yes<br />2. No<br />للتصويت، الرجاء ارسال ما يلي باستخدام تويتر:<br />Please vote using twitter as follows:<br />[CHOICE NUMBER] #TTGE3 #AmmanTT<br />e.g. (1 #TTGE3 #AmmanTT)<br />

×