Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day...

44
thanks for the ad(d). “Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen” E-Day 2011 / IT Carinthia - Part 3

description

Überblick über Social Software Development auf Facebook & Co. für Einsteiger. Explore the Graph API, JavaScript SDK, OpenGraph Protocol, Social Plugins (Like-Button...), andere Social Web-Plattformen (Google+, Foursquare, Twitter).

Transcript of Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day...

Page 1: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

thanks for the ad(d).

“Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen”

E-Day 2011 / IT Carinthia - Part 3

Page 2: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

Hands on:5. Explore the Graph!

Page 3: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

http://developers.facebook.com/tools/explorer

Hands-on:5. Explore the Graph!

Page 4: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Einholen von zusätzlichen Berechtigungen:

Hands-on:5. Explore the Graph!

Page 5: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Einholen von zusätzlichen Berechtigungen:

Hands-on:5. Explore the Graph!

Page 6: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für Entwickler JavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Applikations-Authorisierung:

Jede Applikation muss vom Benutzer vor dem ersten Start explizit authorisiert werden. Dabei wird auch festgelegt, auf welche Profil-Infos die App zugreifen darf!

Page 7: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerJavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Feed-Dialog (“Wall-Posting”):

Der wichtigste und meist-genutzte Dialog -dient dem Veröffentlichen von Wall-Postingsauf der eigenen Wall, oder auf der Wall einesFreundes.

Page 8: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerJavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Feed-Dialog (“Wall-Posting”):

Dialoge werden über eine von Facebook bereitgestellte JavaScript-Methode aktiviert:

Page 9: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerJavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Applikations-Requests (“Invite”):

Dienen dazu, andere Benutzer zurNutzung einer App einzuladen.

Kein “Giesskannen-Prinzip”: Benutzer können nur eine bestimmte Anzahlan Freunden pro Tag einladen, dieserVorgang muss zu dem immer manuellpassieren!

Page 10: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerJavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Send-Dialog (“Private Message”):

Einem oder mehreren Freunden oderGruppen eine nicht-öffentliche Nachricht senden.

Add Friend:

Freundschafts-Anfrage versenden.

Page 11: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerJavaScript SDK

Die JavaScript-SDK ermöglicht es Entwicklern, in ihren Apps die gewohnten Facebook-Dialoge zu nutzen.

Pay-Dialog (Facebook Credits):

Abwicklung eines Zahlungsvor-gangens mit Facebook Credits, dem Micropayment-System der Facebook-Plattform.

Page 12: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Einbindung der Facebook JavaScript SDK in die eigene Web-App:

Facebook für EntwicklerJavaScript SDK

Page 13: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

Hands on:6. Explore the JavaScript SDK!

Page 14: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

http://developers.facebook.com/tools/console/

Hands-on:6. Explore the Graph!

Page 15: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

http://developers.facebook.com/tools/console/

Hands-on:6. Explore the Graph!

Page 16: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Wiederholung:

Das Open Graph Protokoll ermöglicht es, Inhalte der eigenen Website optimal in den Social Graph von Facebook zu integrieren. Um die eigene Website “Open-Graph-Fit” zu machen, benötigt man:

- Erweiterung der Meta-Daten auf der eigenen Site: Facebook liest diese Meta-Daten ein, um die eigenen Inhalte darstellen zu können (etwa in Wall-Postings)

- Integration des Like-Buttons auf der eigenen Site

- Jedes “Like” oder Share erzeugt ein angepasstes Wall-Posting im Feed des Benutzers

Facebook für EntwicklerOpen Graph

Page 17: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerOpen Graph

Beispiel: Event-Community Stadtkinder.com

Ziel: Es sollen alle Location-Pages (z.b. http://stadtkinder.com/wien/stadthalle) Open-Graph-tauglich gemacht werden.

Page 18: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerOpen Graph

Beispiel: Event-Community Stadtkinder.com

1. Open Graph Meta-Tags setzen!

Page 19: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerOpen Graph

Beispiel: Event-Community Stadtkinder.com

2. Like-Button (Social Plugin) als iframe oder Javascript-Snippet einbauen!

Page 20: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Facebook für EntwicklerOpen Graph

Beispiel: Event-Community Stadtkinder.com

3. So sehen die “Likes” auf der Wall des Benutzers aus:

Page 21: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

Hands on:7. Social Plugins

Page 22: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

http://developers.facebook.com/docs/plugins/

Hands-on:6. Social Plugins

Page 23: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

http://developers.facebook.com/docs/plugins/

Hands-on:6. Social Plugins

Page 24: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Legen sie eine leere HTML-Datei “test” auf ihrem Rechner an:

Hands-on:6. Social Plugins

Page 25: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Legen sie <html>, <head>, <body>-Element an, und kopieren Sie den Plugin Code von Facebook. Wichtig: “http:” einfügen!

Hands-on:6. Social Plugins

Page 26: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Speichern sie die Datei als “index.html”.Wichtig: In Notepad “All Files” als Typ wählen!

Hands-on:6. Social Plugins

Page 27: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Nach dem Speichern, öffnen Sie die Datei im Browser:

Hands-on:6. Social Plugins

Page 28: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Klicken sie auf “Like” und besuchen sie danach ihr Facebook-Profil!

Hands-on:6. Social Plugins

Page 29: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Exkurs: Terms of Service

Die meisten Social Web-Plattformen haben gemeinsam, dass es keines formalen Vertrages zwischen Plattform-Betreiber und -Applikations-Hersteller bedarf.

Die Plattform-Betreiber wie Facebook legen aber in mehr oder weniger detaillierten Nutzungsbedingungen (“Terms of Service”) fest, was erlaubt ist und was nicht.

Beispiel Facebook:

- Terms of Service - Reglen die jeden Benutzer betreffen

- Facebook Platform Policies - Regeln für App-Entwickler

- Advertising Guidelines - Regeln betreffend Werbung auf Facebook

- Promotions Guidelines - Regeln f. Marketing-Aktivitäten, Gewinnspiele etc.

- Payment Terms - Regeln f. das Facebook Micropayment-System Credits

- Applikations Terms: jene Nutzungsbedingungen, die ein App-Entwickler zusätzlich definieren kann und zur Voraussetzung zur Nutzung der App macht.

Page 30: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Exkurs: Terms of Service

Beispiel Facebook:

- Erlaubt: Speichern von Benutzer-Daten

- Erlaubt: Nutzung von Benutzer-Daten für Marketing-Zwecke bei explizitem Einverständnis des Benutzers (z.b. Newsletter-Signup)

- Nicht erlaubt: Weitergabe von Benutzer-Daten an Dritte

- Nicht erlaubt: Gewinnspiele auf der Pinnwand von Pages

- Erlaubt: Gewinnspiele in Apps & Tabs

- Nicht erlaubt: Nutzung anderer Zahlungssysteme als Credits bei Games

Warnung: auch wenn einige dieser Regeln leider oft ignoriert werden, und Facebook meist nicht von sich aus aktiv wird: die Sperrung von Apps oder Pages ist ein reales Szenario bei Mißachtung der Terms of Service!

Page 31: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

Beyond Facebook: Andere Social Web-Plattformen im

Überblick

Page 32: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beyond Facebook: andere sozialePlattformen im Überblick

Twitter

XING, LinkedIn, VZ

LBS - Foursquare & Co.

Google+

Page 33: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beyond Facebook:TwitterDie wahrscheinlich erfolgreichste L1 (Access-)API im Web bietet:

- Identity-Management (Login mit Twitter-Account auf 3rd Party Apps)

- Klassische REST-API für Lese-/Schreibzugriffe

- Search API (aber keinen Zugriff auf “alle” Tweets aka “Firehose”)

- JavaScript-Plugins (“Tweet this”, “followe me”)

Page 34: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beispiel: Tweetshirt

Page 35: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Diese Plattformen bieten L1- & L2-APIs in Form eines Google Open Social-Containers an. Vorteil: Apps laufen ohne aufwendige Modifikationen gleich auf mehreren sozialen Plattformen.

LinkedInOpen Social App-Container

Beyond Facebook:XING, LinkedIn, VZ, Orkut, Myspace

Page 36: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

MySpaceOpen Social App-Container

Beyond Facebook:XING, LinkedIn, VZ, Orkut, Myspace

Page 37: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

OrkutOpen Social App-Container

Beyond Facebook:XING, LinkedIn, VZ, Orkut, Myspace

Page 38: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beyond Facebook:XING, LinkedIn, VZ, Orkut, MyspaceXING hat seine App-Plattform 2011 allerdings mangels Erfolg wieder eingestellt.

Angesichts des kommenden Google+ stellt sich die Frage nach der Zukunft von Open Social.

XINGOpen Social App-Container

Page 39: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beyond Facebook:Foursquare - BeispielDie L1-(Access-)API von Foursquare bietet:

- Identity-Management (Login mit Foursquare-Account auf 3rd Party Apps)

- Klassische REST-API für Lese-/Schreibzugriffe

- Foursquare-Buttons für die eigene Website

Page 40: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Foursquare - BeispielCheckin-Button auf der eigenen Website:

Page 41: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Beyond Facebook:Google+Google beginnt erst langsam, Google+ als Plattform zu öffnen, ausgewählte Hersteller betreiben aber bereits Games auf Google+. Was wir zu erwarten haben:

- OAuth-basiertes Identity-Management (Login mit Google-Account, bereits heute für App-Entwickler verfügbar)

- Zahlreiche bestehende L1-APIs und neue L1-APIs f. Google+ / Zugriff auf den Social Graph etc. (derzeit nur ausgewählte Partner bzw. eingeschränkt)

- L2-(Plugin-)API zur Ausführung von Apps innerhalb der Google+ Benutzeroberfläche (derzeit nur ausgewählte Partner)

- L3 Runtime Environment in Form von Google App Engine, die von App-Entwicklern optional zum Hosting der Apps genutzt werden kann (heute verfügbar).

Page 42: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

die.socialisten.atsocial network development

Page 43: Entwicklung von Social-Web-Applikationen auf Facebook und anderen Plattformen - E-Day 2011/IT-Carinthia - Part 3/3

Q&A