OpenSocial

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

OpenSocial ist eine Sammlung an Programmierschnittstellen für Anwendungen in webbasierten sozialen Netzwerken. OpenSocial wird von Google entwickelt und wurde am 1. November 2007 veröffentlicht.

Anwendungen, welche die OpenSocial-API nutzen, sind mit jedem anderen sozialen Netzwerk interoperabel, welches dieses auch unterstützt, so können Funktionen von Seiten wie MySpace und Friendster miteinander verknüpft werden. Zum Start von OpenSocial waren aus Deutschland lediglich das Business Netzwerk XING und der Einladungs- und Ticketservice amiando dabei.[1]

Seit Dezember 2009 wird die OpenSocial-API auch von StudiVZ, SchülerVZ und MeinVZ unterstützt.[2]

Technik[Bearbeiten]

OpenSocial besteht im Wesentlichen aus zwei Teilen. Zum einen aus der OpenSocial-API, die Schnittstellen für den einheitlichen Zugriff auf das soziale Netzwerk bereitstellt. Die API selbst, besteht wiederum aus 3 Kernkomponenten.

  • Data ermöglicht den Zugriff und Austausch von Personendaten.
  • People erlaubt den „Blick“ auf den sozialen Graphen aus „Sicht“ einer Person. Somit lassen sich zum Beispiel personenspezifische Beziehungen (sog. Relationships) abfragen.
  • Activities für die textbasierte Kommunikation zwischen Personen

Zum anderen besteht OpenSocial aus den sogenannten OpenSocial Gadgets, die mittels der OpenSocial-API Inhalte aus dem sozialen Netzwerk beziehen und beschreiben, wie diese vom Webbrowser darzustellen und zu verwalten sind. Technologisch betrachtet basieren OpenSocial Gadgets auf den Google Gadgets und erweitern diese um nicht-proprietäre Schnittstellen für den Zugriff auf die OpenSocial-API mittels JavaScript-Funktionen oder das OpenSocial-REST-Protokoll. Prinzipiell bestehen Gadgets aus einem XML-Grundgerüst, welches HTML-Text, JavaScript-Code und eventuelle CSS-Referenzen kapselt.

Beide Komponenten zusammen ermöglichen eine einfachere, einheitliche und interoperable Möglichkeit zur Entwicklung von Anwendungen im Kontext des Social Networking, sogenannter Social-Apps. OpenSocial-Anwendungen sollen deshalb die bisher proprietär entwickelten Lösungen ersetzen.

OpenSocial-Applikationen[Bearbeiten]

Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Die Entwicklung von OpenSocial-Applikationen erfolgt mittels offener Standards wie z. B. HTML, XML und JavaScript. Alle OpenSocial-Anwendungen benötigen für ihre Ausführung und Anzeige einen sogenannten Container. Dieser dient den Applikationen dabei als eine Art Laufzeitumgebung, welche die OpenSocial-API integriert. Es werden prinzipiell drei Typen (sogenannte Social Design Patterns) von Applikationen unterschieden.

Social Mashups

OpenSocial-Applikationen dieser Art sind äußerst schmal konzipiert und kombinieren lediglich Inhalte und Funktionen anderer Applikationen mittels RSS oder Ajax. Die Ausführung erfolgt innerhalb des sozialen Netzwerks, wobei kein externer Server als Container notwendig ist. Der Vorteil besteht in der guten Skalierbarkeit bezüglich der Ressourcen, deren eingeschränkte Verfügbarkeit jedoch stets beachtet werden muss. Für die Entwicklung von Social Mashups kann (kombinierbar) HTML, JavaScript, CSS, OpenSocial Templates und Flash genutzt werden.

Social Application

Anwendungen dieses Typs können eine sehr umfangreiche Funktionalität zur Verfügung stellen und werden im Gegensatz zu den Social Mashups auf einem externen Server gehostet, der als Container für die Verarbeitung und das Rendering der Daten zuständig ist. Ein solches Server-Projekt wurde von der Apache Software Foundation mit dem Namen Shindig entwickelt und vorangetrieben. Der Nachteil einer solchen Social Application besteht in der schlechten Skalierbarkeit bezüglich der Ressourcen, da bei großer Popularität der Anwendung (nicht zuletzt wegen des Funktionsumfangs) die Kapazitätsgrenzen des Servers schnell erreicht sein können. Realisieren lässt sich eine Social Application durch eine Vielzahl von Möglichkeiten, unter anderem HTML, JavaScript, CSS, OpenSocial Templates, Flash, PHP, Python, Java, Perl, .NET oder Ruby.

Social Website / Social Mobile Application

Diese Applikationen werden außerhalb des sozialen Netzwerks ausgeführt. Dennoch tragen beide die Bezeichnung „Social“, da sie Daten aus sozialen Netzwerken mittels der OpenSocial-API über die REST- oder RPC-API beziehen. Der Nutzer erteilt dazu mittels OAuth direkt den Zugriff auf seine Daten.

OpenSocial REST-Protokoll[Bearbeiten]

Das OpenSocial REST-Protokoll wurde für die Kommunikation zwischen Servern konzipiert und ermöglicht den Austausch von Personendaten, Beziehungsinformationen und Aktivitäten zwischen OpenSocial-Hosts oder Containern. Ein Beispiel hierfür sind OpenSocial-Anwendungen die nicht mehr nur als Gadgets ausgeführt sondern serverseitig erzeugt werden und z. B. mittels JSP oder ASP über das REST-Protokoll auf Daten eines OpenSocial-Containers zugreifen. Somit lassen sich auf eine Person, inhaltlich „maßgeschneiderte“ Applikationen realisieren. Weiterhin profitieren Entwickler von einer Vielzahl bereits vorhandener Client-Utility-Bibliotheken der gängigsten serverseitigen Sprachen wie z. B. Java, PHP oder Ruby, die durch die REST-API zur Verfügung gestellt werden.[3]

Geschichte[Bearbeiten]

Entwicklung[Bearbeiten]

Berichten zufolge steht hinter OpenSocial der Webentwickler Brad Fitzpatrick, der Gründer von LiveJournal. Nachdem er im Jahr 2005 die Firma Danga Interactive, welche LiveJournal betreibt, Six Apart verkaufte, entwickelte Fitzpatrick OpenID. Im Jahr 2007 verließ Fitzpatrick Six Apart, um weiter an der Integration sozialer Netzwerke für Google zu arbeiten.

Gerüchteweise ist OpenSocial ein Teil eines größeren Projekts Googles zum Thema soziale Netzwerke namens „Makamaka“, was hawaiisch „enger Freund mit dem man im freien Austausch steht“ bedeutet.[4]

Implementierungen[Bearbeiten]

Derzeit existieren über 20 Container, die OpenSocial integrieren. Aufgrund der Popularität sozialer Netzwerke ist mit einer steigenden Anzahl zu rechnen. Eine aktuelle Liste der verfügbaren Implementierungen und der jeweils verwendeten OpenSocial-Release findet sich unter [1]. Neben bekannten Vertretern wie MySpace, StudiVZ oder XING für Nutzer, existieren auch einige Container speziell für Entwickler und deren Bedürfnisse.

Hintergrund[Bearbeiten]

Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.

OpenSocial wird als eine plattformunabhängige Alternative zu Facebook genannt.

Nachdem Facebook im Mai 2007 begann, Schnittstellen zu veröffentlichen und zu erlauben, dass Dritte Anwendungen für Facebook schreiben, wurde Facebook als Herausforderer von Google angesehen, ein universelles „Web-Betriebssystem“ zu etablieren.

Weblinks[Bearbeiten]

Quellen[Bearbeiten]

  1. Launchpartner von OpenSocial
  2. Community: VZ-Netzwerke öffnen sich für Apps - SPIEGEL ONLINE
  3. Enterprise OpenSocial Whitepaper - OpenSocial (englisch)
  4. makamaka in Hawaiian Dictionaries