[Phpcamp]Shindig An OpenSocial container

4,680
-1

Published on

Blog Link: http://projectbee.org/blog/archive/how-to-implementing-shindig/
The presentation is all about getting started with implementing Shindig for your existing social portal. Presented at PHPCamp, Pune, on Sept'20th, 2008.

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,680
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
110
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • [Phpcamp]Shindig An OpenSocial container

    1. 1. Shindig – OpenSocial Container Bipin Upadhyay , Satyam Computers ( http://projectbee.org/ ) Sharmishtha Gupta , Satyam Computers
    2. 2. <ul><li>… No, it (love) is a word. What matters is the connection the word implies. … </li></ul><ul><li>--RamaKandra in “Matrix Revolutions” </li></ul>
    3. 3. Agenda <ul><li>Introduction </li></ul><ul><li>Social Networking & OpenSocial </li></ul><ul><li>Shindig </li></ul><ul><li>Implementing Shindig </li></ul>
    4. 4. Agenda <ul><li>Introduction </li></ul><ul><li>Social Networking & OpenSocial </li></ul><ul><li>Shindig </li></ul><ul><li>Implementing Shindig </li></ul>
    5. 5. Introduction <ul><li>Name: Bipin Upadhyay </li></ul><ul><li>Firm: Satyam Computers </li></ul><ul><li>Work: Training, Coding, PHP, App Sec,… attending meetings  </li></ul><ul><li>Hobbies: Photography, Blogging, Poetry (Reading) etc. </li></ul><ul><li>Blog: http://projectbee.org/ </li></ul>
    6. 6. Introduction <ul><li>Name: Sharmishtha Gupta </li></ul><ul><li>Firm: Satyam Computers </li></ul><ul><li>Work: Coding, Meetings, Tea Breaks  </li></ul><ul><li>Hobbies: Trekking, Chess, Movies, & (definitely) Shopping. </li></ul>
    7. 7. Agenda <ul><li>Introduction </li></ul><ul><li>Social Networking & OpenSocial </li></ul><ul><li>Shindig </li></ul><ul><li>Implementing Shindig </li></ul>
    8. 8. Social Networking <ul><li>Six Degrees – It’s a small world after all </li></ul>
    9. 9. Social Networking <ul><li>Six Degrees – It’s about Connecting People </li></ul>
    10. 10. Social Networking <ul><li>Six Degrees – the Kevin Bacon Game </li></ul>
    11. 11. Social Networking <ul><li>Fundamental point: Man is a social animal </li></ul>
    12. 12. Social Networking <ul><li>Online Social Networking - A huge step ahead </li></ul>
    13. 13. Online Social Networking <ul><li>Online Social Networking – Better connectivity for users </li></ul>
    14. 14. Online Social Networking <ul><li>Online Social Networking – Huge data for analysis to providers </li></ul>
    15. 15. Online Social Networking <ul><li>Online Social Networking – Monetization for everyone  </li></ul>
    16. 16. Online Social Networking <ul><li>However, there’s one problem ! </li></ul>
    17. 17. Online Social Networking <ul><li>However, there’s one problem ! </li></ul><ul><ul><li>(Too) many networks – Same people!  </li></ul></ul>
    18. 18. Online Social Networking <ul><li>However, there’s one problem ! </li></ul><ul><ul><li>(Too) many networks – Same people!  </li></ul></ul>
    19. 19. OpenSocial <ul><li>(Google) OpenSocial – One for all & All for one </li></ul><ul><ul><li>Many networks – One API </li></ul></ul>
    20. 20. OpenSocial <ul><li>(Google) OpenSocial – One for all & All for one </li></ul><ul><ul><li>Many networks – One API </li></ul></ul><ul><li>Two main aspects: </li></ul><ul><ul><li>Social Apps or Gadgets </li></ul></ul><ul><ul><li>OpenSocial Container </li></ul></ul>
    21. 21. OpenSocial <ul><li>(Google) OpenSocial – One for all & All for one </li></ul><ul><ul><li>Many networks – One API </li></ul></ul><ul><li>Two main aspects: </li></ul><ul><ul><li>Social Apps or Gadgets </li></ul></ul><ul><ul><li>OpenSocial Container : Shindig </li></ul></ul>
    22. 22. OpenSocial - Jargon <ul><li>Owner: The user who has installed the App </li></ul><ul><li>Viewer: The user who is using the App </li></ul><ul><li>Friends: Relationship between two users </li></ul><ul><li>OpenSocial App: A Gadget Specification compliant XML </li></ul><ul><li>App Data: Data stored by an App, for persistence </li></ul><ul><li>Activity : Data stored by a user (what a user does) </li></ul>
    23. 23. Agenda <ul><li>Introduction </li></ul><ul><li>Social Networking & OpenSocial </li></ul><ul><li>Shindig </li></ul><ul><li>Implementing Shindig </li></ul>
    24. 24. Shindig <ul><li>Shindig : Apache Incubator Project </li></ul><ul><ul><li>Java & PHP versions available </li></ul></ul><ul><ul><li>Under active development </li></ul></ul><ul><ul><li>Version 1.0 expected in Sept. end </li></ul></ul><ul><ul><li>No logo yet  </li></ul></ul>
    25. 25. Shindig <ul><li>Shindig = Gadget Specification + OpenSocial Specification </li></ul>
    26. 26. Shindig <ul><li>Shindig = Gadget Specification + OpenSocial Specification </li></ul><ul><ul><li>Gadget Container : gadget layout & content </li></ul></ul><ul><ul><li>Gadget Server : Gadget XML to HTML rendering </li></ul></ul>
    27. 27. Shindig <ul><li>Shindig = Gadget Specification + OpenSocial Specification </li></ul><ul><ul><li>OpenSocial Container: Container for the OpenSocial API </li></ul></ul><ul><ul><li>OpenSocial Data Server: Backend implementation </li></ul></ul>
    28. 28. Shindig <ul><li>Shindig = Gadget Specification + OpenSocial Specification </li></ul>
    29. 29. Shindig - Architecture
    30. 30. Agenda <ul><li>Introduction </li></ul><ul><li>Social Networking & OpenSocial </li></ul><ul><li>Shindig </li></ul><ul><li>Implementing Shindig </li></ul>
    31. 31. Shindig - Implementation <ul><li>Implementation: </li></ul><ul><ul><li>Convert your social n/w into an OpenSocial n/w in 3 easy steps </li></ul></ul>
    32. 32. Shindig - Implementation <ul><li>Step 1: Implement Service Interfaces </li></ul><ul><ul><li>PeopleService </li></ul></ul><ul><ul><li>AppDataService </li></ul></ul><ul><ul><li>ActivityService </li></ul></ul><ul><ul><li>MessagesService </li></ul></ul>
    33. 33. Shindig - Implementation <ul><li>Step 1: Implement Service Interfaces </li></ul><ul><ul><li>PeopleService </li></ul></ul><ul><ul><li>AppDataService </li></ul></ul><ul><ul><li>ActivityService </li></ul></ul><ul><ul><li>MessagesService </li></ul></ul><ul><li>Use Partuza or SampleContainer for reference </li></ul>
    34. 34. Shindig - Implementation <ul><li>Step 2: Configure & Deploy </li></ul><ul><ul><li>Host as virtual host on a separate server </li></ul></ul><ul><ul><li>OR </li></ul></ul><ul><ul><li>Make changes in configurations files to reflect path </li></ul></ul>
    35. 35. Shindig - Implementation <ul><li>Step 3: A couple of changes in Social Network </li></ul><ul><ul><li>Add a couple of tables to database </li></ul></ul><ul><ul><li>Create a gadget rendering location/page </li></ul></ul><ul><ul><li>Override gadget rendering layout , if necessary </li></ul></ul>
    36. 36. Shindig - Implementation <ul><li>Implementation: </li></ul><ul><ul><li>Convert your social n/w into an OpenSocial n/w in 3 easy steps </li></ul></ul><ul><ul><li>Implement Service Interfaces </li></ul></ul><ul><ul><li>Configure & Deploy </li></ul></ul><ul><ul><li>A couple of changes in Social Network </li></ul></ul>
    37. 37. Shindig - Implementation <ul><li>Implementation: </li></ul><ul><ul><li>Convert your social n/w into an OpenSocial n/w in 3 easy steps </li></ul></ul><ul><ul><li>Implement Service Interfaces </li></ul></ul><ul><ul><li>Configure & Deploy </li></ul></ul><ul><ul><li>A couple of changes in Social Network </li></ul></ul><ul><li>What? Expecting anything more? </li></ul><ul><ul><li>Apologies to disappoint  </li></ul></ul>
    38. 38. Acknowledgement <ul><li>My employer, Satyam Computers </li></ul><ul><li>My Teammates for their support </li></ul><ul><li>http://www.flickr.com/photos/restlessglobetrotter/2513014001/ </li></ul><ul><li>http://www.flickr.com/photos/aeioux/35979393/ </li></ul><ul><li>http://alumni.indiana.edu/about/fun/images/IU-Bacon-chart_full.jpg </li></ul><ul><li>http://www.flickr.com/photos/projectbee/2112538734/ </li></ul><ul><li>http://www.flickr.com/photos/crystaleagle/2386230724/ </li></ul><ul><li>http://www.flickr.com/photos/62396887@N00/1459838222/ </li></ul><ul><li>http://www.flickr.com/photos/markwitton/1386125619/ </li></ul><ul><li>http://www.flickr.com/photos/kiki99/1062744637/ </li></ul><ul><li>http://www.flickr.com/photos/donnagrayson/195244498/ </li></ul><ul><li>http://www.flickr.com/photos/slateford/2610390757/ </li></ul><ul><li>http://www.flickr.com/photos/thevince/2650139618/ </li></ul>
    39. 39. About Satyam <ul><li>PHP </li></ul><ul><ul><li>Satyam’s PHP Unit is actively involved in consulting and developing PHP Based Web Applications </li></ul></ul><ul><ul><li>Also competent in smooth migration from existing infrastructure to PHP based solutions </li></ul></ul><ul><ul><li>A well defined stack of tools, e.g. PHPUnit, Phing, Xdebug, Xinc, etc., being used by developers for streamlined development </li></ul></ul><ul><li>OpenSocial </li></ul><ul><ul><li>Early adopters of OpenSocial </li></ul></ul><ul><ul><li>Dedicated t eam of Java & PHP developers working on OpenSocial </li></ul></ul><ul><ul><li>Currently helping a Social Network, with 10 million registered user base, become OpenSocial complaint </li></ul></ul>
    40. 40. Got Questions??? <ul><li>Shoot them </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×