<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Google Data &#187; Jonathan LeBlanc</title>
	<atom:link href="/author/jonathan-leblanc/feed/" rel="self" type="application/rss+xml" />
	<link>https://googledata.org</link>
	<description>Everything Google: News, Products, Services, Content, Culture</description>
	<lastBuildDate>Fri, 10 Apr 2015 22:28:52 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<item>
		<title>OpenSocial Version 2.0.1 Final open for voting</title>
		<link>https://googledata.org/google-opensocial/opensocial-version-2-0-1-final-open-for-voting/</link>
		<comments>https://googledata.org/google-opensocial/opensocial-version-2-0-1-final-open-for-voting/#comments</comments>
		<pubDate>Wed, 16 Nov 2011 19:26:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=9c568794d7eed7963fe1f0ee176dd7b4</guid>
		<description><![CDATA[Version 2.0.1 of the OpenSocial specification has been released for voting.  One of the major updates to the specification is finalized support for the <a href="http://oauth.net/2/" target="_blank">OAuth 2.0 specification</a>.  <br /><br />For more information on the changes to the specification and related components, please see the voting thread and file diffs <a href="http://code.google.com/p/opensocial-resources/source/detail?r=1545" target="_blank">here</a>.  <br /><br /><div><img alt="Jonathan LeBlanc" height="40" src="http://jcleblanc.com/images/profile_picture_40x40.jpg" width="40"><br /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b><br />Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></div></div>]]></description>
				<content:encoded><![CDATA[Version 2.0.1 of the OpenSocial specification has been released for voting.  One of the major updates to the specification is finalized support for the <a href="http://oauth.net/2/" >OAuth 2.0 specification</a>.  <br /><br />For more information on the changes to the specification and related components, please see the voting thread and file diffs <a href="http://code.google.com/p/opensocial-resources/source/detail?r=1545" >here</a>.  <br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; }  </style><br /><div class="author"><img alt="Jonathan LeBlanc" height="40" src="http://jcleblanc.com/images/profile_picture_40x40.jpg" width="40" /><br /><div class="note"><span class="Apple-style-span"><b><a class="fn url" href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b><br />Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/opensocial-version-2-0-1-final-open-for-voting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Join The W3C Social Business Jam</title>
		<link>https://googledata.org/google-opensocial/join-the-w3c-social-business-jam/</link>
		<comments>https://googledata.org/google-opensocial/join-the-w3c-social-business-jam/#comments</comments>
		<pubDate>Wed, 19 Oct 2011 15:46:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=0f48bec1c8225f6474a6ae48da33ed27</guid>
		<description><![CDATA[OpenSocial made significant strides over the past year with the introduction of new capabilities, and broadening its support and alignment with other standards like Activity Streams (http://activitystrea.ms/) and OAuth 2.0 (http://tools.ietf.org/html/d...]]></description>
				<content:encoded><![CDATA[OpenSocial made significant strides over the past year with the introduction of new capabilities, and broadening its support and alignment with other standards like Activity Streams (<a href="http://activitystrea.ms/" >http://activitystrea.ms/</a>) and OAuth 2.0 (<a href="http://tools.ietf.org/html/draft-ietf-oauth-v2-22" >http://tools.ietf.org/html/draft-ietf-oauth-v2-22</a>). One of the fundamental tenants of the community is to engage across the standards ecosystem to leverage adjacent standards and technologies when and where possible.<br /><br /> One way to continue the momentum of OpenSocial is to make a clear connection between the specification, the standards it includes and the needs of businesses.   Social technologies are changing the businesses that have embraced and applied them but not not only for media. Businesses are using social technologies to better connect with partners, suppliers and employees -- as well as with customers.<br /><br /> But how are the ideas, technologies and standards in the social space holding up as business-use cases are applied ?<br /><br /> The W3C Social Business Jam is a global, online conversation with business leaders, subject matter experts and like-minded individuals about the current state of social business, the future role that social technologies can play in improving the bottom line, and how social technology should evolve in order to support business objectives.   A primary objective of the Jam is to cooperatively explore key trends and concepts in social business with an eye  towards how social standards can facilitate business goals. The Jam should produce a better understanding for participants of how  businesses are using social technologies and the challenges they face integrating the technologies into their existing environments.<br /><br /> Mark Weitzel, president of the OpenSocial Foundation, is one of the noted hosts for the Jam.  While Mark will be an active participant throughout the Jam, he is hosting a conversation on the Seamless Integration Of Social from 12 pm to 4 pm US eastern time on November 8.<br /><br /> Come share your insights and opinions.  Registration is open and free, and takes just a few moments of your time. For more information, go to : <a href="http://www.w3.org/2011/socialbusiness-jam/" >http://www.w3.org/2011/socialbusiness-jam/</a><br /><br /> <span class="byline-author">David Robinson</span>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/join-the-w3c-social-business-jam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Bring OpenSocial gadgets to Moodle</title>
		<link>https://googledata.org/google-opensocial/bring-opensocial-gadgets-to-moodle/</link>
		<comments>https://googledata.org/google-opensocial/bring-opensocial-gadgets-to-moodle/#comments</comments>
		<pubDate>Mon, 17 Oct 2011 22:14:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=e6afdf3d1d94a493cc098142051179f2</guid>
		<description><![CDATA[We present here a plugin that allows to bring OpenSocial gadgets into Moodle. OpenSocial gadgets are rendered via Apache Shindig (extension of version 2.0 that supports Spaces).Moodle is a Learning Management System used in many Educational Institution...]]></description>
				<content:encoded><![CDATA[We present here a plugin that allows to bring OpenSocial gadgets into Moodle. OpenSocial gadgets are rendered via Apache Shindig (extension of version 2.0 that supports Spaces).<br /><br />Moodle is a Learning Management System used in many Educational Institutions (Universities) to manage courses. It is a plugin based PHP application that can be extended by installing additional modules. These modules have to be installed on a Moodle server by a system administrator. The Moodle view usually consists of a main center area and a rather narrow right column with blocks. The center area normally contains main resources, such as, wiki, forum, lesson, quiz, etc. The right block contains some helper plugins, such as, calendar, upcoming events, latest news, recent activity, etc. These are to extend the functionality of the main page.<br /><br />There are two different OpenSocial plugins for moodle. <a href="https://github.com/vohtaski/shindig-moodle-mod" >The first one</a> adds a new module to Moodle. It is very similar to pages in moodle, however in addition, OpenSocial gadgets can be specified. Once it is installed, a teacher can choose a "Widget space" to be added to the course and specify OpenSocial gadgets for it. The teacher can choose whether 1,2,3 column view should be used for gadgets. <br /><br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://4.bp.blogspot.com/-f1kqtv3JO8A/TpylZhM_iuI/AAAAAAAAADs/p8npWX4zpd0/s1600/fig1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="398" src="http://4.bp.blogspot.com/-f1kqtv3JO8A/TpylZhM_iuI/AAAAAAAAADs/p8npWX4zpd0/s400/fig1.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div>The resulting outcome is the iGoogle similar view where students can work with gadgets. <br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://3.bp.blogspot.com/-If-uIY7l8-E/Tpylqo_mt3I/AAAAAAAAAD4/TlVz9bC6oYI/s1600/fig2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="331" src="http://3.bp.blogspot.com/-If-uIY7l8-E/Tpylqo_mt3I/AAAAAAAAAD4/TlVz9bC6oYI/s400/fig2.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div><a href="https://github.com/vohtaski/shindig-moodle-block" >The second plugin</a> adds a new block to Moodle. Teacher can add OpenSocial gadgets to the right<br />column for already existing in Moodle wiki pages, lessons, forums, etc. <br /><br /><div class="separator" style="clear: both; text-align: center;"><a href="http://1.bp.blogspot.com/-s03N-Mkk7j4/TpylwMhesQI/AAAAAAAAAEE/0djBQlgOfcA/s1600/fig3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="331" src="http://1.bp.blogspot.com/-s03N-Mkk7j4/TpylwMhesQI/AAAAAAAAAEE/0djBQlgOfcA/s400/fig3.png" width="400" /></a></div><div class="separator" style="clear: both; text-align: center;"><br /></div>One of the main benefits is that the big pool of OpenSocial gadgets can be used by teachers. Thus, once the OpenSocial plugins are installed in Moodle, a teacher can extend the functionality of Moodle without bothering system administrators with plugins installation. The teacher can add and remove gadgets easily and even can write her own ones. The plugins greatly improve the flexibility in choosing the resources and applications for the course specifics. OpenSocial gadgets can be found in the open widget repositories, such as, <a href="http://www.role-widgetstore.eu/" >Role Widget Store</a>, <a href="http://www.google.com/ig/directory" >iGoogle Directory</a>, etc.<br /><br />In addition to reuse of applications existing in the Cloud and flexibility in choosing applications for the course, contextual gadgets and OpenSocial API are the other additional benefits. <br /><br /><a href="http://docs.opensocial.org/display/OSD/Space+Proposal" >Space extension</a> allows gadgets to adapt to a specific context. For example, wiki gadget saves data for a course and manages access to itself only by people engaged in this course. The same wiki gadget will behave differently being added to another course (different wiki history and different people to access it). Such space extension is already used in production in <a href="http://graaasp.epfl.ch/" >Graaasp</a> and planned in <a href="http://incubator.apache.org/rave/" >Apache RAVE project</a>.<br /><br />OpenSocial API brings the standard way to retrieve and exchange social information between different Moodle installations and other social networks, that improves data portability and interoperability.<br /><br />Plugins work for new version of Moodle 2.1. It should work for Moodle 2.0, though it was not tested. The installation instructions and source code can be found at github:<br /><a  href="https://github.com/vohtaski/shindig-moodle-mod">OpenSocial Moodle module</a><br /><a  href="https://github.com/vohtaski/shindig-moodle-block">OpenSocial Moodle block</a><br /><br /> This plugin was developed within the <a  href="http://www.role-project.eu/">ROLE Integrated Project</a> and is already used in 5 courses at <a href="http://en.sjtu.edu.cn/" >Shanghai Jiao Tong University</a>.<br /><br /><span class="byline-author">Evgeny Bogdanov</span>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/bring-opensocial-gadgets-to-moodle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>OpenSocial 2.0 Brings Us Closer to the Socialized Enterprise</title>
		<link>https://googledata.org/google-opensocial/opensocial-2-0-brings-us-closer-to-the-socialized-enterprise/</link>
		<comments>https://googledata.org/google-opensocial/opensocial-2-0-brings-us-closer-to-the-socialized-enterprise/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 21:36:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=fd55c4d5abceb8e499488897f6fd34d2</guid>
		<description><![CDATA[<br />Now that the final version of the OpenSocial 2.0 spec has been announced, we at Wrike, as one of the companies leading the charge on social collaboration, are excited about seeing more enterprises lean into this type of integration. In fact, we&#8217;ve just developed our own OS 2.0 widget, which will help transform email functionality within Wrike&#8217;s collaboration tools. But before we tell you more about that, here&#8217;s why OpenSocial has our collaborative juices flowing. <br /><br /><h3>    Open season for innovation</h3><br />It&#8217;s a safe bet that the typical iPhone user is used to working with direct access to multiple apps that can help him work and play more effectively. iPhone Marketplace was a bigger source of innovation for users than the phone hardware itself. Many enterprise solutions miss that&#160;open ecosystem opportunity today. For example, Outlook has millions of users spending their&#160;whole working days in front of it, who would love the same type of easy access to useful apps&#160;that would enhance their workflow. Yet, how many of those users installed Outlook plug-ins?&#160;OpenSocial 2.0 has the potential to open up innovation for enterprise software, bringing the right&#160;apps with the right integrations in a safe package, directly in front of users who want to benefit&#160;from them.<br /><br /><h3>   Bridging gaps between the apps</h3><br />The improved safety, compatibility and connectivity that the OpenSocial standard offers, makes&#160;it a lot easier to build bridges between useful enterprise apps. Bridges that go beyond simple&#160;data integrations into the land of fully integrated user experiences. Taking my own company,&#160;Wrike, as just one example, we&#8217;re based on the belief that project management tools should&#160;be inherently social, and this is a fundamental part of our value proposition to companies&#160;around the world. So, it&#8217;s easy to see why OpenSocial has us excited about ways we can keep&#160;improving our users&#8217; experience and their productivity, by plugging into the networks and tools&#160;they are already comfortable using.<br /><br /><h3>   Potential to turn email into a structured, real-time platform</h3><br />A couple of days ago, Wrike&#8217;s widget appeared in the OpenSocial 2.0 sandbox with examples&#160;of&#160;embedded experiences in the activity stream, emailbox and a compact dashboard. I&#8217;d like to&#160;focus a bit more on the email component of the widget and share why we see great potential in&#160;it.<br /><br />Email software has effectively been on &#8220;lock-down&#8221; since its inception. When you receive&#160;dozens of emails on a daily basis, it gets really challenging to turn that type of inbox chaos&#160;into the cohesive big picture of your projects and goals. From the start, a key pillar of Wrike&#8217;s&#160;product vision has always been to open up that software and bring emails into a centralized&#160;system, turning long email discussion threads into neat plans. This is why Wrike created its&#160;email integration, which allows users to create, assign, schedule and discuss tasks right from&#160;their inboxes.<br /><br />Today, people use email even more than when Wrike was conceived. So, instead of try to push&#160;email out of the office toolkit &#8220;nest&#8221; (which seems like a hard and unproductive thing to do),&#160;we wanted to leverage the good things about it. OpenSocial 2.0 gives us new opportunities&#160;to implement our exciting idea &#8211; to turn 40-year email functionality into a structured, well-organized, real-time platform that supports sharing, discussions and other actions you need&#160;for collaboration. Wrike&#8217;s widget brings emails to life and integrates them fully into the project&#160;management process. Users don&#8217;t even need to change anything in their working habits.<br /><br />In parallel with developing our widget for OpenSocial 2.0, we&#8217;ve been working on Wrike&#8217;s new&#160;add-on for Outlook. For the end user, the experience will be very similar to what they get with&#160;our OS widget. However, if we look at it from the development side of things, building this add-on atop Outlook is a more laborious and complicated process, a whole other world. That&#8217;s&#160;where we see the big difference between open platforms and closed systems &#8211; in how easily&#160;can you plug into them.<br /><br />With the potential that OpenSocial 2.0 offers and the ease that you can build widgets on top of&#160;it, I believe that the world will quickly become attuned to getting this kind of experience for many&#160;more email clients. People still strongly rely on email in their work and they just need a way to&#160;naturally bring those messages into their collaboration process. So, it turns out that <a href="http://www.slideshare.net/wrike/email-is-dead-long-live-email-2520943" target="_blank">email isn&#8217;t dead</a> as some claim, it just needed a rebirth, And OpenSocial 2.0 is an essential part of that&#160;evolution.<br /><br /><h3>   What&#8217;s next?</h3><br />The new generation of apps, built on the open platform, will bring a new wave of innovation&#160;and productivity. OpenSocial has already gained support from many players in the enterprise&#160;software market. I&#8217;m sure we can expect new marketplaces and ecosystems, and faster&#160;innovation as others follow suit.<br /><br />Users will of course be the ones to benefit, but it&#8217;s a win-win for everyone, as we continually&#160;find new ways to improve the way that we work. Your company&#8217;s mission should they choose to&#160;accept it? To socialize the enterprise.<br /><br /><div><img alt="Andrew Filev" height="40" src="http://i.imgur.com/3bp7D.jpg" width="40"><br /><div><span><b><a href="http://twitter.com/andrewsthoughts">Andrew Filev</a> (<a href="http://twitter.com/andrewsthoughts">@andrewsthoughts</a>)</b><br />Andrew Filev is a software entrepreneur with more than 10 years of experience in project and product management. He is the founder and CEO of Wrike, a Silicon Valley-based provider of <a href="http://www.wrike.com/" target="_blank">project management and collaboration software</a>. To learn more about Andrew and his views, you can subscribe to his <a href="http://www.wrike.com/projectmanagement/" target="_blank">Project Management 2.0 blog</a> or follow him on Twitter (<a href="http://www.twitter.com/andrewsthoughts" target="_blank">@andrewsthoughts</a>).</span></div></div>]]></description>
				<content:encoded><![CDATA[<br />Now that the final version of the OpenSocial 2.0 spec has been announced, we at Wrike, as one of the companies leading the charge on social collaboration, are excited about seeing more enterprises lean into this type of integration. In fact, we’ve just developed our own OS 2.0 widget, which will help transform email functionality within Wrike’s collaboration tools. But before we tell you more about that, here’s why OpenSocial has our collaborative juices flowing. <br /><br /><h3>    Open season for innovation</h3><br />It’s a safe bet that the typical iPhone user is used to working with direct access to multiple apps that can help him work and play more effectively. iPhone Marketplace was a bigger source of innovation for users than the phone hardware itself. Many enterprise solutions miss that&nbsp;open ecosystem opportunity today. For example, Outlook has millions of users spending their&nbsp;whole working days in front of it, who would love the same type of easy access to useful apps&nbsp;that would enhance their workflow. Yet, how many of those users installed Outlook plug-ins?&nbsp;OpenSocial 2.0 has the potential to open up innovation for enterprise software, bringing the right&nbsp;apps with the right integrations in a safe package, directly in front of users who want to benefit&nbsp;from them.<br /><br /><h3>   Bridging gaps between the apps</h3><br />The improved safety, compatibility and connectivity that the OpenSocial standard offers, makes&nbsp;it a lot easier to build bridges between useful enterprise apps. Bridges that go beyond simple&nbsp;data integrations into the land of fully integrated user experiences. Taking my own company,&nbsp;Wrike, as just one example, we’re based on the belief that project management tools should&nbsp;be inherently social, and this is a fundamental part of our value proposition to companies&nbsp;around the world. So, it’s easy to see why OpenSocial has us excited about ways we can keep&nbsp;improving our users’ experience and their productivity, by plugging into the networks and tools&nbsp;they are already comfortable using.<br /><br /><h3>   Potential to turn email into a structured, real-time platform</h3><br />A couple of days ago, Wrike’s widget appeared in the OpenSocial 2.0 sandbox with examples&nbsp;of&nbsp;embedded experiences in the activity stream, emailbox and a compact dashboard. I’d like to&nbsp;focus a bit more on the email component of the widget and share why we see great potential in&nbsp;it.<br /><br />Email software has effectively been on “lock-down” since its inception. When you receive&nbsp;dozens of emails on a daily basis, it gets really challenging to turn that type of inbox chaos&nbsp;into the cohesive big picture of your projects and goals. From the start, a key pillar of Wrike’s&nbsp;product vision has always been to open up that software and bring emails into a centralized&nbsp;system, turning long email discussion threads into neat plans. This is why Wrike created its&nbsp;email integration, which allows users to create, assign, schedule and discuss tasks right from&nbsp;their inboxes.<br /><br />Today, people use email even more than when Wrike was conceived. So, instead of try to push&nbsp;email out of the office toolkit “nest” (which seems like a hard and unproductive thing to do),&nbsp;we wanted to leverage the good things about it. OpenSocial 2.0 gives us new opportunities&nbsp;to implement our exciting idea – to turn 40-year email functionality into a structured, well-organized, real-time platform that supports sharing, discussions and other actions you need&nbsp;for collaboration. Wrike’s widget brings emails to life and integrates them fully into the project&nbsp;management process. Users don’t even need to change anything in their working habits.<br /><br />In parallel with developing our widget for OpenSocial 2.0, we’ve been working on Wrike’s new&nbsp;add-on for Outlook. For the end user, the experience will be very similar to what they get with&nbsp;our OS widget. However, if we look at it from the development side of things, building this add-on atop Outlook is a more laborious and complicated process, a whole other world. That’s&nbsp;where we see the big difference between open platforms and closed systems – in how easily&nbsp;can you plug into them.<br /><br />With the potential that OpenSocial 2.0 offers and the ease that you can build widgets on top of&nbsp;it, I believe that the world will quickly become attuned to getting this kind of experience for many&nbsp;more email clients. People still strongly rely on email in their work and they just need a way to&nbsp;naturally bring those messages into their collaboration process. So, it turns out that <a href="http://www.slideshare.net/wrike/email-is-dead-long-live-email-2520943" >email isn’t dead</a> as some claim, it just needed a rebirth, And OpenSocial 2.0 is an essential part of that&nbsp;evolution.<br /><br /><h3>   What’s next?</h3><br />The new generation of apps, built on the open platform, will bring a new wave of innovation&nbsp;and productivity. OpenSocial has already gained support from many players in the enterprise&nbsp;software market. I’m sure we can expect new marketplaces and ecosystems, and faster&nbsp;innovation as others follow suit.<br /><br />Users will of course be the ones to benefit, but it’s a win-win for everyone, as we continually&nbsp;find new ways to improve the way that we work. Your company’s mission should they choose to&nbsp;accept it? To socialize the enterprise.<br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; }  </style><br /><div class="author"><img alt="Andrew Filev" height="40" src="http://i.imgur.com/3bp7D.jpg" width="40" /><br /><div class="note"><span class="Apple-style-span"><b><a class="fn url" href="http://twitter.com/andrewsthoughts">Andrew Filev</a> (<a class="url twitter" href="http://twitter.com/andrewsthoughts">@andrewsthoughts</a>)</b><br />Andrew Filev is a software entrepreneur with more than 10 years of experience in project and product management. He is the founder and CEO of Wrike, a Silicon Valley-based provider of <a href="http://www.wrike.com/" >project management and collaboration software</a>. To learn more about Andrew and his views, you can subscribe to his <a href="http://www.wrike.com/projectmanagement/" >Project Management 2.0 blog</a> or follow him on Twitter (<a href="http://www.twitter.com/andrewsthoughts" >@andrewsthoughts</a>).</span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/opensocial-2-0-brings-us-closer-to-the-socialized-enterprise/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Announcing a New OpenSocial and Emerging Social Technology Book</title>
		<link>https://googledata.org/google-opensocial/announcing-a-new-opensocial-and-emerging-social-technology-book/</link>
		<comments>https://googledata.org/google-opensocial/announcing-a-new-opensocial-and-emerging-social-technology-book/#comments</comments>
		<pubDate>Thu, 08 Sep 2011 23:18:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=64188296885792dd6f317feec792f402</guid>
		<description><![CDATA[<a href="http://shop.oreilly.com/product/0636920014201.do" target="_blank"><img alt="Programming Social Applications" height="236" src="http://covers.oreilly.com/images/0636920014201/cat.gif" width="180"></a> I'm happy to announce that, as of yesterday, <a href="http://shop.oreilly.com/product/0636920014201.do" target="_blank">Programming Social Applications</a> is officially out in print.  I normally wouldn't post on the OpenSocial blog about my own book but the content is specifically designed for this community, so it's a good fit.  Within the book I cover topics on:  <br /><ul><li>Building social applications and containers using Shindig and OpenSocial.</li><li>The vast array of features and functionality within the OpenSocial specification.</li><li>Front-end code security tools like Caja and ADsafe.</li><li>Authentication systems with OpenID</li><li>Authorization systems with OAuth 1.0a and 2.0</li><li>Emerging social technologies like Activity Streams, Open Graph Protocol, PubSubHubbub, Salmon and others.</li></ul>I will be conducting a webcast through O'Reilly on October 4th, 2011 at 1pm PDT to talk with everyone about the technology within the book and explore some of the interesting emerging technologies that are upcoming.  More details to come shortly.<br /><br />You can purchase the book <a href="http://shop.oreilly.com/product/0636920014201.do" target="_blank">here</a> or get a free sample <a href="http://cdn.oreilly.com/oreilly/booksamplers/9781449394912_sampler.pdf" target="_blank">here</a>.    For those of you that pick up the book, remember that Chapter 12 (OpenID / OAuth hybrid extension), Appendix I (Environment Setup) and Appendix II (Terms) are offered as an online only download from O'Reilly since the book was getting a little large and we didn't want to simply delete content.<br /><br />Please send feedback and tell me what you think - I'd love to hear from the community!  <br /><br /><div><img alt="Jonathan LeBlanc" height="40" src="http://jcleblanc.com/images/profile_picture_40x40.jpg" width="40"><br /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b><br />Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></div></div>]]></description>
				<content:encoded><![CDATA[<a href="http://shop.oreilly.com/product/0636920014201.do" ><img alt="Programming Social Applications" height="236" src="http://covers.oreilly.com/images/0636920014201/cat.gif" style="float: right; margin: 10px;" width="180" /></a> I'm happy to announce that, as of yesterday, <a href="http://shop.oreilly.com/product/0636920014201.do" >Programming Social Applications</a> is officially out in print.  I normally wouldn't post on the OpenSocial blog about my own book but the content is specifically designed for this community, so it's a good fit.  Within the book I cover topics on:  <br /><ul><li>Building social applications and containers using Shindig and OpenSocial.</li><li>The vast array of features and functionality within the OpenSocial specification.</li><li>Front-end code security tools like Caja and ADsafe.</li><li>Authentication systems with OpenID</li><li>Authorization systems with OAuth 1.0a and 2.0</li><li>Emerging social technologies like Activity Streams, Open Graph Protocol, PubSubHubbub, Salmon and others.</li></ul>I will be conducting a webcast through O'Reilly on October 4th, 2011 at 1pm PDT to talk with everyone about the technology within the book and explore some of the interesting emerging technologies that are upcoming.  More details to come shortly.<br /><br />You can purchase the book <a href="http://shop.oreilly.com/product/0636920014201.do" >here</a> or get a free sample <a href="http://cdn.oreilly.com/oreilly/booksamplers/9781449394912_sampler.pdf" >here</a>.    For those of you that pick up the book, remember that Chapter 12 (OpenID / OAuth hybrid extension), Appendix I (Environment Setup) and Appendix II (Terms) are offered as an online only download from O'Reilly since the book was getting a little large and we didn't want to simply delete content.<br /><br />Please send feedback and tell me what you think - I'd love to hear from the community!  <br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; }  </style><br /><div class="author"><img alt="Jonathan LeBlanc" height="40" src="http://jcleblanc.com/images/profile_picture_40x40.jpg" width="40" /><br /><div class="note"><span class="Apple-style-span"><b><a class="fn url" href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b><br />Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/announcing-a-new-opensocial-and-emerging-social-technology-book/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>List of OpenSocial Containers</title>
		<link>https://googledata.org/google-opensocial/list-of-opensocial-containers/</link>
		<comments>https://googledata.org/google-opensocial/list-of-opensocial-containers/#comments</comments>
		<pubDate>Thu, 25 Aug 2011 20:45:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=100dc828bb05dfe818d55d874d68eaca</guid>
		<description><![CDATA[Recently there was a <a href="http://groups.google.com/group/opensocial-and-gadgets-spec/browse_thread/thread/7dc98f79068b726c/e3d637edaa47d171" target="_blank">thread</a> going around the <a href="http://groups.google.com/group/opensocial-and-gadgets-spec" target="_blank">OpenSocial and Gadgets Specification</a> discussion board about providing an updated list of OpenSocial containers, both at the open and enterprise levels.
<br /><br />From this discussion, we have put together a <a href="http://docs.opensocial.org/display/OSD/List+of+OpenSocial+Containers" target="_blank">living document</a> to provide a list of those OpenSocial containers and implementers that we are aware of, including links to their associated information pages or developer networks.  You can view the list <a href="http://docs.opensocial.org/display/OSD/List+of+OpenSocial+Containers" target="_blank">here</a>.<div>
<br /><h2>We Need Your Help</h2>Since this is a living document, the content will always be changing as new containers surface or if we have left something off of the list.  For everyone working with different container implementations, we ask that you review the list and help update the content if something is incorrect or missing.  We really need the help from container implementers, users and those of you with an extensive OpenSocial container knowledge base to help out.
<br /><br />Thank you everyone.
<br /><br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40"><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div></div>]]></description>
				<content:encoded><![CDATA[Recently there was a <a href="http://groups.google.com/group/opensocial-and-gadgets-spec/browse_thread/thread/7dc98f79068b726c/e3d637edaa47d171" >thread</a> going around the <a href="http://groups.google.com/group/opensocial-and-gadgets-spec" >OpenSocial and Gadgets Specification</a> discussion board about providing an updated list of OpenSocial containers, both at the open and enterprise levels.
<br />
<br />From this discussion, we have put together a <a href="http://docs.opensocial.org/display/OSD/List+of+OpenSocial+Containers" >living document</a> to provide a list of those OpenSocial containers and implementers that we are aware of, including links to their associated information pages or developer networks.  You can view the list <a href="http://docs.opensocial.org/display/OSD/List+of+OpenSocial+Containers" >here</a>.<div>
<br /><h2>We Need Your Help</h2>Since this is a living document, the content will always be changing as new containers surface or if we have left something off of the list.  For everyone working with different container implementations, we ask that you review the list and help update the content if something is incorrect or missing.  We really need the help from container implementers, users and those of you with an extensive OpenSocial container knowledge base to help out.
<br />
<br />Thank you everyone.
<br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/list-of-opensocial-containers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Announcing the Release of the OpenSocial 2.0 Specification</title>
		<link>https://googledata.org/google-opensocial/announcing-the-release-of-the-opensocial-2-0-specification/</link>
		<comments>https://googledata.org/google-opensocial/announcing-the-release-of-the-opensocial-2-0-specification/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 23:28:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=1abe0156c9236e7527a599d78a669031</guid>
		<description><![CDATA[Following the <a href="http://groups.google.com/group/opensocial-and-gadgets-spec/browse_thread/thread/4759a30ed73c5af8/59f713d4f6889465?show_docid=59f713d4f6889465" target="_blank">11:59 PDT voting cutoff last night</a>, version 2.0 of the OpenSocial specification has officially passed with 22 positive and 0 negative votes.
<br />
<br />Version 2 of the OpenSocial specification opens up integration with other well known open source social specifications, ties in both a simplified gadget format as well as new powerful tools, plus announces some deprecated features.
<br />
<br />Some of the major revisions to the specification include:<ul>   <li><span>Activity Streams support</span>: <a href="http://activitystrea.ms/" target="_blank">Activity Stream</a> provides a mechanism for defining rich and detailed social activities, defined in a simple actor / object / target format.  The adoption of this open specification allows OpenSocial to not only provide richer data sources but also to be interoperable with more open streams.</li>
<br /><li><span>Deprecated support for ATOM</span>: It was determined that the ATOM serialization format for OpenSocial information was not being utilized in practice.  Since there were a number of adjacent specification utilizing JSON for the preferred data format, the community has decided to deprecate support for ATOM.</li>
<br /><li><span>Simplified gadget format</span>: Providing a mechanism for embedding template libraries into a gadget specification file, the ability to integrate data pipelining and templating features within a gadget has been greatly simplified.</li>
<br /><li><span>Embedded Experiences</span>: The community saw a need to provide a mechanism for providing <a href="http://docs.opensocial.org/display/OSD/Embedded+Experiences" target="_blank">embedded experiences</a> directly within the gadget.  By integrating these features, the content host is able to tell a service how to render its content instead of having the service figure it out themselves. This will provide a higher degree of control over data in a gadget.</li>
<br /><li><span>New Incubating API</span>
<br /> <ul>
<br />    <li><span>OAuth 2 support</span>: The OpenSocial 2.0 specification now includes support for <a href="http://oauth.net/2/" target="_blank">OAuth 2</a>.  Since the OAuth 2.0 specification has not been finalized by the time of this release, OAuth 2 support is currently in an incubating mode. Currently <a href="http://tools.ietf.org/html/draft-ietf-oauth-v2-20" target="_blank">revision 20</a> of the OAuth 2 specification is being integrated.  Support for OAuth 1.0a is still included in the OpenSocial 2.0 specification and has not been deprecated.</li>
<br />    <li><span>Common Container</span>: In OpenSocial 2.0, a new optional specification has been added for a common container API. The goal is to simplify the container and gadget integration model. It provides a set of common services that Container developers can leverage for features like in-browser Gadget lifecycle event callbacks, embedded experiences, and selection and action handlers.</li></ul></li></ul>Here are a few links that will help you get up to speed on the recent changes and additions:<ul>   <li><a href="http://opensocial-resources.googlecode.com/svn/spec/2.0/OpenSocial-Specification-Release-Notes.xml#OpenSocial20" target="_blank">Release notes</a>.</li>   <li><a href="http://docs.opensocial.org/display/OSD/Specs" target="_blank">OpenSocial specifications</a>.</li>   <li><a href="http://code.google.com/p/opensocial-resources/issues/list?can=1&#38;q=OpenSocial=2.0%20status=Published&#38;colspec=ID%20Type%20Container%20Stars%20Summary%20Status" target="_blank">Full list of the published features in version 2</a>.</li></ul>In addition to this announcement, Andrew Davis has another piece of great news on the Shindig side:<blockquote>Along with releasing the OpenSocial 2.0 spec today, the OpenSocial Foundation is working together with our members companies, and implementor friends at Shindig are proud to announce the availability of the first OpenSocial 2.0 Container, running the latest Shindig 3.0 build, the Open Social Sandbox, at <a href="http://sandbox.opensocial2.org:8080/" target="_blank">http://sandbox.opensocial2.org:8080/</a>.  The site is a live demo of the latest features of the OpenSocial 2.0 spec including Embedded Experiences, Declarative Actions, OpenSearch and powerful new open gadgets APIs to enable gadgets to jump out of the box.  The site provides tutorials, demo videos and is geared towards enabling gadget developers immediately to build new gadgets, and test them out on the site through the "Customize" button.
<br /></blockquote><span>Lastly, I wanted to say thank you to the entire community and dedicated participants who have made this major release possible.
<br /></span>
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div>]]></description>
				<content:encoded><![CDATA[Following the <a href="http://groups.google.com/group/opensocial-and-gadgets-spec/browse_thread/thread/4759a30ed73c5af8/59f713d4f6889465?show_docid=59f713d4f6889465" >11:59 PDT voting cutoff last night</a>, version 2.0 of the OpenSocial specification has officially passed with 22 positive and 0 negative votes.
<br />
<br />Version 2 of the OpenSocial specification opens up integration with other well known open source social specifications, ties in both a simplified gadget format as well as new powerful tools, plus announces some deprecated features.
<br />
<br />Some of the major revisions to the specification include:<ul>   <li><span style="font-weight:bold;">Activity Streams support</span>: <a href="http://activitystrea.ms/" >Activity Stream</a> provides a mechanism for defining rich and detailed social activities, defined in a simple actor / object / target format.  The adoption of this open specification allows OpenSocial to not only provide richer data sources but also to be interoperable with more open streams.</li>
<br /><li><span style="font-weight:bold;">Deprecated support for ATOM</span>: It was determined that the ATOM serialization format for OpenSocial information was not being utilized in practice.  Since there were a number of adjacent specification utilizing JSON for the preferred data format, the community has decided to deprecate support for ATOM.</li>
<br /><li><span style="font-weight:bold;">Simplified gadget format</span>: Providing a mechanism for embedding template libraries into a gadget specification file, the ability to integrate data pipelining and templating features within a gadget has been greatly simplified.</li>
<br /><li><span style="font-weight:bold;">Embedded Experiences</span>: The community saw a need to provide a mechanism for providing <a href="http://docs.opensocial.org/display/OSD/Embedded+Experiences" >embedded experiences</a> directly within the gadget.  By integrating these features, the content host is able to tell a service how to render its content instead of having the service figure it out themselves. This will provide a higher degree of control over data in a gadget.</li>
<br /><li><span style="font-weight:bold;">New Incubating API</span>
<br /> <ul>
<br />    <li><span style="font-weight:bold;">OAuth 2 support</span>: The OpenSocial 2.0 specification now includes support for <a href="http://oauth.net/2/" >OAuth 2</a>.  Since the OAuth 2.0 specification has not been finalized by the time of this release, OAuth 2 support is currently in an incubating mode. Currently <a href="http://tools.ietf.org/html/draft-ietf-oauth-v2-20" >revision 20</a> of the OAuth 2 specification is being integrated.  Support for OAuth 1.0a is still included in the OpenSocial 2.0 specification and has not been deprecated.</li>
<br />    <li><span style="font-weight:bold;">Common Container</span>: In OpenSocial 2.0, a new optional specification has been added for a common container API. The goal is to simplify the container and gadget integration model. It provides a set of common services that Container developers can leverage for features like in-browser Gadget lifecycle event callbacks, embedded experiences, and selection and action handlers.</li></ul></li></ul>Here are a few links that will help you get up to speed on the recent changes and additions:<ul>   <li><a href="http://opensocial-resources.googlecode.com/svn/spec/2.0/OpenSocial-Specification-Release-Notes.xml#OpenSocial20" >Release notes</a>.</li>   <li><a href="http://docs.opensocial.org/display/OSD/Specs" >OpenSocial specifications</a>.</li>   <li><a href="http://code.google.com/p/opensocial-resources/issues/list?can=1&amp;q=OpenSocial=2.0%20status=Published&amp;colspec=ID%20Type%20Container%20Stars%20Summary%20Status" >Full list of the published features in version 2</a>.</li></ul>In addition to this announcement, Andrew Davis has another piece of great news on the Shindig side:<blockquote>Along with releasing the OpenSocial 2.0 spec today, the OpenSocial Foundation is working together with our members companies, and implementor friends at Shindig are proud to announce the availability of the first OpenSocial 2.0 Container, running the latest Shindig 3.0 build, the Open Social Sandbox, at <a href="http://sandbox.opensocial2.org:8080/" >http://sandbox.opensocial2.org:8080/</a>.  The site is a live demo of the latest features of the OpenSocial 2.0 spec including Embedded Experiences, Declarative Actions, OpenSearch and powerful new open gadgets APIs to enable gadgets to jump out of the box.  The site provides tutorials, demo videos and is geared towards enabling gadget developers immediately to build new gadgets, and test them out on the site through the "Customize" button.
<br /></blockquote><span class="Apple-style-span">Lastly, I wanted to say thank you to the entire community and dedicated participants who have made this major release possible.
<br /></span><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/announcing-the-release-of-the-opensocial-2-0-specification/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Vote Now! OpenSocial and Open Source Presentations at SXSW</title>
		<link>https://googledata.org/google-opensocial/vote-now-opensocial-and-open-source-presentations-at-sxsw/</link>
		<comments>https://googledata.org/google-opensocial/vote-now-opensocial-and-open-source-presentations-at-sxsw/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 01:12:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=076fcc05396b7d4d360f2a7b8e67864d</guid>
		<description><![CDATA[<div>As a followup to our <a href="http://blog.opensocial.org/2011/07/opensocial-and-sxsw-interactive-2011.html" target="_blank">OpenSocial and SXSW Interactive 2012</a> post last month, we wanted to make available the links to the OpenSocial and associated technology proposals that have been submitted to the conference. </div><div>
<br /></div><div>We would all greatly appreciate it if you could vote up these proposals to ensure that we have a technology presence at the conference next year, presenting the extensive new technology stack that is inherent within OpenSocial 2.0.  There are a total of 3178 proposals in for this year and 30% of the decision-making process is up to community votes, so the more votes and comments we can get the better.</div><div>
<br /></div><div>The proposals that we have available are:</div><div><ul>   <li><b>Distributed Web Frameworks: The Future of Social</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/10692" target="_blank">http://panelpicker.sxsw.com/ideas/view/10692</a></li>
<br /><li><b>Revolution! Open Apps Will Change the Enterprise</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/12817" target="_blank">http://panelpicker.sxsw.com/ideas/view/12817</a></li>
<br /><li><b>Building Social Apps for Business Using Opensocial</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/12187" target="_blank">http://panelpicker.sxsw.com/ideas/view/12187</a></li></ul>If you have a proposal on the technology or features behind OpenSocial I'd be glad to add it into this blog post - please comment on this post with the details.</div><div>
<br /></div><div>Thanks everyone.</div>
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div>]]></description>
				<content:encoded><![CDATA[<div>As a followup to our <a href="http://blog.opensocial.org/2011/07/opensocial-and-sxsw-interactive-2011.html" >OpenSocial and SXSW Interactive 2012</a> post last month, we wanted to make available the links to the OpenSocial and associated technology proposals that have been submitted to the conference. </div><div>
<br /></div><div>We would all greatly appreciate it if you could vote up these proposals to ensure that we have a technology presence at the conference next year, presenting the extensive new technology stack that is inherent within OpenSocial 2.0.  There are a total of 3178 proposals in for this year and 30% of the decision-making process is up to community votes, so the more votes and comments we can get the better.</div><div>
<br /></div><div>The proposals that we have available are:</div><div><ul>   <li><b>Distributed Web Frameworks: The Future of Social</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/10692" >http://panelpicker.sxsw.com/ideas/view/10692</a></li>
<br /><li><b>Revolution! Open Apps Will Change the Enterprise</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/12817" >http://panelpicker.sxsw.com/ideas/view/12817</a></li>
<br /><li><b>Building Social Apps for Business Using Opensocial</b>
<br />Link: <a href="http://panelpicker.sxsw.com/ideas/view/12187" >http://panelpicker.sxsw.com/ideas/view/12187</a></li></ul>If you have a proposal on the technology or features behind OpenSocial I'd be glad to add it into this blog post - please comment on this post with the details.</div><div>
<br /></div><div>Thanks everyone.</div><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/vote-now-opensocial-and-open-source-presentations-at-sxsw/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building Dynamic Applications with Data Pipelining, Templating and YQL</title>
		<link>https://googledata.org/google-opensocial/building-dynamic-applications-with-data-pipelining-templating-and-yql/</link>
		<comments>https://googledata.org/google-opensocial/building-dynamic-applications-with-data-pipelining-templating-and-yql/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 23:12:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=69082e5ff3bd95e9894027e12798a433</guid>
		<description><![CDATA[Hello again everyone,
<br />
<br />Today I wanted to go over one of the interesting things that you can do with OpenSocial using templating and data pipelining.  Since these were introduced in version 0.9 of the specification, this functionality will not be available if:<ul>  <li>The container that you are using does not support OpenSocial version 0.9 or later.</li>  <li>The container that you are using does not support data pipelining or templating.</li></ul>With that said, let's get right down to an example.  For this example, we're going to go through a few steps in order to scrape and display the recent headlines from <a href="http://www.reddit.com/" target="_blank">Reddit</a>:<ul>  <li>We will use data pipelining to load in the headlines from Reddit.</li>  <li>The URL of the data pipe will be a dynamic call to the <a href="http://developer.yahoo.com/yql" target="_blank">Yahoo! Query Language (YQL)</a>.  YQL will be used to scrape the HTML from the page, then use an xpath to drill down to the repeating anchor tags that denote the headlines.</li>  <li>Lastly, from the JSON data that is returned back from YQL into the data pipe, we're going to use OpenSocial templating to display out the headline results.</li></ul>Let's take a look at the gadget code behind this:
<br /><pre><span>&#60;?</span><span>xml</span> <span>version</span><span>=</span><span>"1.0"</span> <span>encoding</span><span>=</span><span>"utf-8"</span><span>?&#62;</span>
<br /><span>&#60;</span><span>Module</span><span>&#62;</span>
<br /><span>   &#60;</span><span>ModulePrefs</span> <span>title</span><span>=</span><span>"</span><span>Reddit Headline Fetch</span><span>"</span>
<br /><span>      title_url</span><span>=</span><span>"</span><span>http://www.jcleblanc.com</span><span>"</span>
<br /><span>      description</span><span>=</span><span>"</span><span>Obtains reddit.com headlines via YQL</span><span>"</span>
<br /><span>      author</span><span>=</span><span>"</span><span>Jonathan LeBlanc</span><span>"</span><span>&#62;</span>
<br /><span>      &#60;</span><span>Require</span> <span>feature</span><span>=</span><span>"</span><span>opensocial-0.9</span><span>"</span><span>/&#62;</span>
<br /><span>      &#60;</span><span>Require</span> <span>feature</span><span>=</span><span>"</span><span>opensocial-data</span><span>"</span> <span>/&#62;</span>
<br /><span>      &#60;</span><span>Require</span> <span>feature</span><span>=</span><span>"</span><span>opensocial-templates</span><span>"</span> <span>/&#62;</span>
<br /><span>   &#60;/</span><span>ModulePrefs</span><span>&#62;</span>
<br /><span>   &#60;</span><span>Content</span> <span>type</span><span>=</span><span>"</span><span>html</span><span>"</span><span>&#62;</span>
<br /><span>   &#60;![CDATA[</span>
<br />   &#60;script type="text/os-data" xmlns:os="http://ns.opensocial.org/2008/markup"&#62;
<br />      &#60;os:HttpRequest key="reddit" href="http://query.yahooapis.com/v1/public/yql?
<br />      q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com
<br />      %22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'
<br />      &#38;format=json"/&#62;
<br />   &#60;/script&#62;
<br />   &#60;script type="text/os-template" require="reddit"&#62;
<br />      &#60;ul&#62;
<br />         &#60;li repeat="${reddit.content.query.results.a}"&#62;
<br />            &#60;a href="${Cur.href}"&#62;${Cur.content}&#60;/a&#62;
<br />         &#60;/li&#62;
<br />      &#60;/ul&#62;
<br />   &#60;/script&#62;
<br /><span>   ]]&#62;</span>
<br /><span>   &#60;/</span><span>Content</span><span>&#62;</span>
<br /><span>&#60;/</span><span>Module</span><span>&#62;</span></pre>Let's break down the components of this gadget.  First let's start with the meta data within the <i>&#60;ModulePrefs&#62; node</i>.  There are three features that we will need to require:
<br /><pre>   &#60;Require feature="opensocial-0.9"/&#62;
<br />   &#60;Require feature="opensocial-data" /&#62;
<br />   &#60;Require feature="opensocial-templates" /&#62;</pre>First we have the OpenSocial version that we want to include.  For our needs we can include version 0.9 of the specification since that will allow us to include the other features we need, namely our second and third Require statements for opensocial-data (Data Pipelining) and opensocial-templates (Templating).  These three will give us the features that we need for the example.
<br />
<br />Next we have the innards of the <i>&#60;Content&#62;</i> node.  Let's explore the first <i>&#60;script&#62;</i> block:
<br /><pre>   &#60;script type="text/os-data" xmlns:os="http://ns.opensocial.org/2008/markup"&#62;
<br />   &#60;os:HttpRequest key="reddit" href="http://query.yahooapis.com/v1/public/yql?
<br />   q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com
<br />   %22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'
<br />   &#38;format=json"/&#62;
<br />   &#60;/script&#62;</pre>This is our data pipelining section.  When the gadget loads in the container that we are running it in, this section will issue an HTTP request to populate an object with the return value of the request.  In our case this will be a GET request to the YQL service.
<br />
<br />To define a data pipe, we set the type of the script block to <i>text/os-data</i> and then define the <i>os</i> XML namespace.  Within the script block, we set the object that we want the data returned to to be "reddit".  We then issue a data pipelining HTTP GET request to the YQL service, using the href attribute.  This URL used includes the following components:<ul>  <li>The public YQL URL: http://query.yahooapis.com/v1/public/yql</li>  <li>q: The YQL query to run, placed as a query string parameter.</li>  <li>format: The format to return our data in, in our case JSON.  This is also placed as a query string parameter.</li></ul>If we look at the <a href="http://developer.yahoo.com/yql/console/?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com%22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'" target="_blank">query that we are using</a>, we can see what the components of the request are:
<br /><pre>  SELECT * FROM html WHERE url="http://www.reddit.com"
<br />  AND xpath='//a[@class="title"]'</pre>YQL uses a query syntax much akin to SQL.  In our request we are using the <i>html</i> table, which defines request functionality to allow us to scrape data from an HTML page and then apply an xpath to drill down to the nodes on the page that we want to capture.  In our case, we are capturing all data from <a href="http://www.reddit.com/" target="_blank">http://www.reddit.com</a> where the xpath (or nodes that we want to return) is any anchor tag that contains a class of title.  If we explore the source code of http://www.reddit.com we can see that each title on the page is indeed an anchor tag with a class of title.  At the end of the request the <i>reddit</i> object should now contain the return value from the request or, in other words, the headlines from the Reddit homepage.
<br />
<br />Now let's look at the templating script block:
<br /><pre>&#60;script type="text/os-template" require="reddit"&#62;
<br />&#60;ul&#62;
<br />   &#60;li repeat="${reddit.content.query.results.a}"&#62;
<br />      &#60;a href="${Cur.href}"&#62;${Cur.content}&#60;/a&#62;
<br />   &#60;/li&#62;
<br />&#60;/ul&#62;
<br />&#60;/script&#62;</pre>This is the block that will define the template for displaying our results.  To define a templating script block, we define the type to be "text/os-template" and then we can include the object (in our case from the data pipelining request) that we want to make available to the template - we set this to "reddit" - the same value that we set as the key of the data pipelining request.
<br />
<br />Now we can simply define the HTML that we want to use, with the variables, to display our results.  For this simple use case we'll simply create an unordered list with all of the headlines displayed as anchor tag links.  In OpenSocial templating, we can insert the value from a data source by including the variable that we want to act upon, displaying it in the format <i>${VARIABLE}</i>.  For instance, in our data pipe if we defined our key to be "foo" and in the foo object we have a sub-element named "bar", we could display it using ${foo.bar}.  Another aspect about templating that we're going to be taking advantage of is repeaters.  This will allow us to repeat a block of code for each object available, and is done so by adding a <i>repeat="${OBJECT}"</i> attribute on the block that should be repeated, in this case the <i>&#60;li&#62;</i> tag.  This will create a list item for each headline we encounter.
<br />
<br />Now, if we look at the HTML block knowing this, we can see that we are creating a root unordered list node, then creating a list item for each headline we encounter in the Reddit headlines object.  The headlines are embedded in the object at <i>reddit.content.query.results.a</i>.  Within each list item we display an anchor tag.  The href of the anchor is set to that of the headline link and the text of the link is set to the headline that we get back from the query.
<br />
<br />Once the gadget has rendered you should be presented with a very unstyled unordered list, which you may then apply CSS on to.  Using this type of setup with a service like YQL, data pipelining, and templating, you can create gadgets that render very dynamic content while reducing the amount of coding that is needed.
<br />
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div>]]></description>
				<content:encoded><![CDATA[Hello again everyone,
<br />
<br />Today I wanted to go over one of the interesting things that you can do with OpenSocial using templating and data pipelining.  Since these were introduced in version 0.9 of the specification, this functionality will not be available if:<ul>  <li>The container that you are using does not support OpenSocial version 0.9 or later.</li>  <li>The container that you are using does not support data pipelining or templating.</li></ul>With that said, let's get right down to an example.  For this example, we're going to go through a few steps in order to scrape and display the recent headlines from <a href="http://www.reddit.com/" >Reddit</a>:<ul>  <li>We will use data pipelining to load in the headlines from Reddit.</li>  <li>The URL of the data pipe will be a dynamic call to the <a href="http://developer.yahoo.com/yql" >Yahoo! Query Language (YQL)</a>.  YQL will be used to scrape the HTML from the page, then use an xpath to drill down to the repeating anchor tags that denote the headlines.</li>  <li>Lastly, from the JSON data that is returned back from YQL into the data pipe, we're going to use OpenSocial templating to display out the headline results.</li></ul>Let's take a look at the gadget code behind this:
<br /><pre style="color:#000000;background:#ffffff;"><span style="color:#004a43; ">&lt;?</span><span style="color:#004a43; ">xml</span> <span style="color:#004a43; ">version</span><span style="color:#808030; ">=</span><span style="color:#008c00; ">"1.0"</span> <span style="color:#004a43; ">encoding</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"utf-8"</span><span style="color:#004a43; ">?&gt;</span>
<br /><span style="color:#a65700; ">&lt;</span><span style="color:#5f5035; ">Module</span><span style="color:#a65700; ">&gt;</span>
<br /><span style="color:#a65700; ">   &lt;</span><span style="color:#5f5035; ">ModulePrefs</span> <span style="color:#274796; ">title</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">Reddit Headline Fetch</span><span style="color:#0000e6; ">"</span>
<br /><span style="color:#274796; ">      title_url</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">http://www.jcleblanc.com</span><span style="color:#0000e6; ">"</span>
<br /><span style="color:#274796; ">      description</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">Obtains reddit.com headlines via YQL</span><span style="color:#0000e6; ">"</span>
<br /><span style="color:#274796; ">      author</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">Jonathan LeBlanc</span><span style="color:#0000e6; ">"</span><span style="color:#a65700; ">&gt;</span>
<br /><span style="color:#a65700; ">      &lt;</span><span style="color:#5f5035; ">Require</span> <span style="color:#274796; ">feature</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">opensocial-0.9</span><span style="color:#0000e6; ">"</span><span style="color:#a65700; ">/&gt;</span>
<br /><span style="color:#a65700; ">      &lt;</span><span style="color:#5f5035; ">Require</span> <span style="color:#274796; ">feature</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">opensocial-data</span><span style="color:#0000e6; ">"</span> <span style="color:#a65700; ">/&gt;</span>
<br /><span style="color:#a65700; ">      &lt;</span><span style="color:#5f5035; ">Require</span> <span style="color:#274796; ">feature</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">opensocial-templates</span><span style="color:#0000e6; ">"</span> <span style="color:#a65700; ">/&gt;</span>
<br /><span style="color:#a65700; ">   &lt;/</span><span style="color:#5f5035; ">ModulePrefs</span><span style="color:#a65700; ">&gt;</span>
<br /><span style="color:#a65700; ">   &lt;</span><span style="color:#5f5035; ">Content</span> <span style="color:#274796; ">type</span><span style="color:#808030; ">=</span><span style="color:#0000e6; ">"</span><span style="color:#0000e6; ">html</span><span style="color:#0000e6; ">"</span><span style="color:#a65700; ">&gt;</span>
<br /><span style="color:#606060; ">   &lt;![CDATA[</span>
<br />   &lt;script type="text/os-data" xmlns:os="http://ns.opensocial.org/2008/markup"&gt;
<br />      &lt;os:HttpRequest key="reddit" href="http://query.yahooapis.com/v1/public/yql?
<br />      q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com
<br />      %22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'
<br />      &amp;format=json"/&gt;
<br />   &lt;/script&gt;
<br />   &lt;script type="text/os-template" require="reddit"&gt;
<br />      &lt;ul&gt;
<br />         &lt;li repeat="${reddit.content.query.results.a}"&gt;
<br />            &lt;a href="${Cur.href}"&gt;${Cur.content}&lt;/a&gt;
<br />         &lt;/li&gt;
<br />      &lt;/ul&gt;
<br />   &lt;/script&gt;
<br /><span style="color:#606060; ">   ]]&gt;</span>
<br /><span style="color:#a65700; ">   &lt;/</span><span style="color:#5f5035; ">Content</span><span style="color:#a65700; ">&gt;</span>
<br /><span style="color:#a65700; ">&lt;/</span><span style="color:#5f5035; ">Module</span><span style="color:#a65700; ">&gt;</span></pre>Let's break down the components of this gadget.  First let's start with the meta data within the <i>&lt;ModulePrefs&gt; node</i>.  There are three features that we will need to require:
<br /><pre>   &lt;Require feature="opensocial-0.9"/&gt;
<br />   &lt;Require feature="opensocial-data" /&gt;
<br />   &lt;Require feature="opensocial-templates" /&gt;</pre>First we have the OpenSocial version that we want to include.  For our needs we can include version 0.9 of the specification since that will allow us to include the other features we need, namely our second and third Require statements for opensocial-data (Data Pipelining) and opensocial-templates (Templating).  These three will give us the features that we need for the example.
<br />
<br />Next we have the innards of the <i>&lt;Content&gt;</i> node.  Let's explore the first <i>&lt;script&gt;</i> block:
<br /><pre>   &lt;script type="text/os-data" xmlns:os="http://ns.opensocial.org/2008/markup"&gt;
<br />   &lt;os:HttpRequest key="reddit" href="http://query.yahooapis.com/v1/public/yql?
<br />   q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com
<br />   %22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'
<br />   &amp;format=json"/&gt;
<br />   &lt;/script&gt;</pre>This is our data pipelining section.  When the gadget loads in the container that we are running it in, this section will issue an HTTP request to populate an object with the return value of the request.  In our case this will be a GET request to the YQL service.
<br />
<br />To define a data pipe, we set the type of the script block to <i>text/os-data</i> and then define the <i>os</i> XML namespace.  Within the script block, we set the object that we want the data returned to to be "reddit".  We then issue a data pipelining HTTP GET request to the YQL service, using the href attribute.  This URL used includes the following components:<ul>  <li>The public YQL URL: http://query.yahooapis.com/v1/public/yql</li>  <li>q: The YQL query to run, placed as a query string parameter.</li>  <li>format: The format to return our data in, in our case JSON.  This is also placed as a query string parameter.</li></ul>If we look at the <a href="http://developer.yahoo.com/yql/console/?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Fwww.reddit.com%22%20and%0A%20%20%20%20%20%20xpath%3D'%2F%2Fa%5B%40class%3D%22title%22%5D'" >query that we are using</a>, we can see what the components of the request are:
<br /><pre>  SELECT * FROM html WHERE url="http://www.reddit.com"
<br />  AND xpath='//a[@class="title"]'</pre>YQL uses a query syntax much akin to SQL.  In our request we are using the <i>html</i> table, which defines request functionality to allow us to scrape data from an HTML page and then apply an xpath to drill down to the nodes on the page that we want to capture.  In our case, we are capturing all data from <a href="http://www.reddit.com/" >http://www.reddit.com</a> where the xpath (or nodes that we want to return) is any anchor tag that contains a class of title.  If we explore the source code of http://www.reddit.com we can see that each title on the page is indeed an anchor tag with a class of title.  At the end of the request the <i>reddit</i> object should now contain the return value from the request or, in other words, the headlines from the Reddit homepage.
<br />
<br />Now let's look at the templating script block:
<br /><pre>&lt;script type="text/os-template" require="reddit"&gt;
<br />&lt;ul&gt;
<br />   &lt;li repeat="${reddit.content.query.results.a}"&gt;
<br />      &lt;a href="${Cur.href}"&gt;${Cur.content}&lt;/a&gt;
<br />   &lt;/li&gt;
<br />&lt;/ul&gt;
<br />&lt;/script&gt;</pre>This is the block that will define the template for displaying our results.  To define a templating script block, we define the type to be "text/os-template" and then we can include the object (in our case from the data pipelining request) that we want to make available to the template - we set this to "reddit" - the same value that we set as the key of the data pipelining request.
<br />
<br />Now we can simply define the HTML that we want to use, with the variables, to display our results.  For this simple use case we'll simply create an unordered list with all of the headlines displayed as anchor tag links.  In OpenSocial templating, we can insert the value from a data source by including the variable that we want to act upon, displaying it in the format <i>${VARIABLE}</i>.  For instance, in our data pipe if we defined our key to be "foo" and in the foo object we have a sub-element named "bar", we could display it using ${foo.bar}.  Another aspect about templating that we're going to be taking advantage of is repeaters.  This will allow us to repeat a block of code for each object available, and is done so by adding a <i>repeat="${OBJECT}"</i> attribute on the block that should be repeated, in this case the <i>&lt;li&gt;</i> tag.  This will create a list item for each headline we encounter.
<br />
<br />Now, if we look at the HTML block knowing this, we can see that we are creating a root unordered list node, then creating a list item for each headline we encounter in the Reddit headlines object.  The headlines are embedded in the object at <i>reddit.content.query.results.a</i>.  Within each list item we display an anchor tag.  The href of the anchor is set to that of the headline link and the text of the link is set to the headline that we get back from the query.
<br />
<br />Once the gadget has rendered you should be presented with a very unstyled unordered list, which you may then apply CSS on to.  Using this type of setup with a service like YQL, data pipelining, and templating, you can create gadgets that render very dynamic content while reducing the amount of coding that is needed.
<br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/building-dynamic-applications-with-data-pipelining-templating-and-yql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New OpenSocial Community Groups on Facebook</title>
		<link>https://googledata.org/google-opensocial/new-opensocial-community-groups-on-facebook/</link>
		<comments>https://googledata.org/google-opensocial/new-opensocial-community-groups-on-facebook/#comments</comments>
		<pubDate>Mon, 25 Jul 2011 20:38:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=0a780f472fe6f66cd36daced2efeda2e</guid>
		<description><![CDATA[Hello Everyone,<div>
<br /></div><div>This will be a quick update for the OpenSocial community.  I wanted to let everyone know that we have two new upcoming avenues for people to reach out to us on Facebook.  This will allow us to build more communication channels for those wishing to talk with others who are working with or interested in OpenSocial, or the many open source technologies that it is integrated with.
<br /><div>
<br /></div><div>So, with that said, here are the two new channels on Facebook for to take a look at - a page and a group:</div><ul><li>Group: <a href="https://www.facebook.com/groups/206139742771249" target="_blank">https://www.facebook.com/groups/206139742771249</a></li><li>Page: <a href="https://www.facebook.com/pages/OpenSocial/104087289690470" target="_blank">https://www.facebook.com/pages/OpenSocial/104087289690470</a></li></ul></div><div>I will be adding and filling in the content on these pages in the coming days so that they are complete.  Please feel free to use these channels to engaged with others in the community.</div>
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div>]]></description>
				<content:encoded><![CDATA[Hello Everyone,<div>
<br /></div><div>This will be a quick update for the OpenSocial community.  I wanted to let everyone know that we have two new upcoming avenues for people to reach out to us on Facebook.  This will allow us to build more communication channels for those wishing to talk with others who are working with or interested in OpenSocial, or the many open source technologies that it is integrated with.
<br /><div>
<br /></div><div>So, with that said, here are the two new channels on Facebook for to take a look at - a page and a group:</div><ul><li>Group: <a href="https://www.facebook.com/groups/206139742771249" >https://www.facebook.com/groups/206139742771249</a></li><li>Page: <a href="https://www.facebook.com/pages/OpenSocial/104087289690470" >https://www.facebook.com/pages/OpenSocial/104087289690470</a></li></ul></div><div>I will be adding and filling in the content on these pages in the coming days so that they are complete.  Please feel free to use these channels to engaged with others in the community.</div><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/new-opensocial-community-groups-on-facebook/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Calling All OpenSocial Container and Application Developers</title>
		<link>https://googledata.org/google-opensocial/calling-all-opensocial-container-and-application-developers/</link>
		<comments>https://googledata.org/google-opensocial/calling-all-opensocial-container-and-application-developers/#comments</comments>
		<pubDate>Fri, 15 Jul 2011 14:42:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=39d3513b3dcdd39c82acb110676cc0d9</guid>
		<description><![CDATA[Do you work on the implementation of a container or develop applications within existing OpenSocial containers?  If so, we’d love to interview you in a new blog post series that will allow developers to showcase the new and innovative things that they are doing with OpenSocial.
<br />
<br />We’re especially interested in hearing from the community about:<ul>   <li>The challenges you’ve experienced while working with the specification and how you overcame them.</li>   <li>Are there any technologies or specifications that you’ve integrated with an OpenSocial container or application that you believe married well with the OpenSocial specification?</li>   <li>How is OpenSocial being used within enterprise solutions?</li><li>How is OpenSocial being used on mobile devices?</li>   <li>Are there any technical implementations that you thought worked especially well?  Code implementations to showcase these integrations are always welcome.</li><li>Do you have any helpful tips, techniques or snippets that have been useful to you in the past?</li></ul>Using these “OpenSocial in the wild” posts, we’re hoping to hear more voices from the community and give creators the spotlight.  These are the people that are on the front lines, implementing, and hearing from them what works, what failed, and what customers took to as far as features will allow us all to better understand how this technology is being used.
<br />
<br />If you would like to be heard, please e-mail me at <b><i>nakedtechnologist at gmail dot com</i></b> and tell me, in brief, what you’re doing with OpenSocial.  I’ll ask you a series of questions from that initial overview and then feature you in our new “OpenSocial in the wild” blog posts.<div>
<br /></div><div>Thank you.
<br />
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div>]]></description>
				<content:encoded><![CDATA[Do you work on the implementation of a container or develop applications within existing OpenSocial containers?  If so, we’d love to interview you in a new blog post series that will allow developers to showcase the new and innovative things that they are doing with OpenSocial.
<br />
<br />We’re especially interested in hearing from the community about:<ul>   <li>The challenges you’ve experienced while working with the specification and how you overcame them.</li>   <li>Are there any technologies or specifications that you’ve integrated with an OpenSocial container or application that you believe married well with the OpenSocial specification?</li>   <li>How is OpenSocial being used within enterprise solutions?</li><li>How is OpenSocial being used on mobile devices?</li>   <li>Are there any technical implementations that you thought worked especially well?  Code implementations to showcase these integrations are always welcome.</li><li>Do you have any helpful tips, techniques or snippets that have been useful to you in the past?</li></ul>Using these “OpenSocial in the wild” posts, we’re hoping to hear more voices from the community and give creators the spotlight.  These are the people that are on the front lines, implementing, and hearing from them what works, what failed, and what customers took to as far as features will allow us all to better understand how this technology is being used.
<br />
<br />If you would like to be heard, please e-mail me at <b><i>nakedtechnologist at gmail dot com</i></b> and tell me, in brief, what you’re doing with OpenSocial.  I’ll ask you a series of questions from that initial overview and then feature you in our new “OpenSocial in the wild” blog posts.<div>
<br /></div><div>Thank you.
<br /><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/calling-all-opensocial-container-and-application-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenSocial and SXSW Interactive 2012</title>
		<link>https://googledata.org/google-opensocial/opensocial-and-sxsw-interactive-2012/</link>
		<comments>https://googledata.org/google-opensocial/opensocial-and-sxsw-interactive-2012/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 20:17:00 +0000</pubDate>
		<dc:creator><![CDATA[Jonathan LeBlanc]]></dc:creator>
				<category><![CDATA[Google OpenSocial]]></category>
		<category><![CDATA[open social]]></category>
		<category><![CDATA[opensocial]]></category>
		<category><![CDATA[opensocial api]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=4e68f3bad77bf2ebcf41c94f9aa58142</guid>
		<description><![CDATA[<div><span>On June 20th, <a href="http://sxsw.com/interactive" target="_blank">SXSW Interactive</a> announced that they have opened their <a href="http://panelpicker.sxsw.com/" target="_blank">panel picker</a> for submissions to the 2012 SXSW Interactive festival.  </span></div><div><span>
<br /></span></div><div><span>With all of the community efforts going on around OpenSocial 2.0, this would be a perfect time to submit a panel or talk on the wonderful efforts going on for OpenSocial and we ask that, as a community, we get involved in spreading the word around the integrated technology that are revitalizing the landscape of social application and container development.  </span></div><div><span>
<br /></span></div><div><span>An official panel will be submitted to discuss the new standards and technologies that are being integrated within OpenSocial 2.0.  This will cover much of the work done on the specification, the future of OpenSocial, our enterprise involvement and the technology backbone that the new specification is being built around.</span></div><div><span>
<br /></span></div><div><span>We would also love to see other members of the community submit talks about some of their involvements with OpenSocial.  For instance, we'd love to see submissions about some of the following, just to name a few:</span></div><div><ul><li>How OpenSocial foundations and techniques can be applied in a mobile strategy.</li><li>How new authorization models like OAuth 2 are fostering adoption of open standards.</li><li>How standardization of activities through Activity Streams are building a foundation for social sharing across platforms.</li><li>How OpenSocial is driving the socialization and communication channels of enterprise platform solutions. </li></ul></div><div>If you submit a panel or talk, please respond to this thread to let us know (with a link to that talk) and I will work on compiling a list of the "OpenSocial community talks" for a future blog post.  This will allow us to all vote as a community and show each other some support.</div><div>
<br /></div><div>You can submit your talks <a href="http://panelpicker.sxsw.com/" target="_blank">here</a>.</div><div><span>
<br /></span></div><div><span>I look forward to hearing from all of you.</span></div>
<br /><div><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div><span><b><a href="http://www.jcleblanc.com/">Jonathan LeBlanc</a> (<a href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" target="_blank">Programming Social Applications</a>".</span></span></div></div><div><img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/3767917694929724035-5064895452348573373?l=blog.opensocial.org" alt="" /></div>]]></description>
				<content:encoded><![CDATA[<div><span class="Apple-style-span">On June 20th, <a href="http://sxsw.com/interactive" >SXSW Interactive</a> announced that they have opened their <a href="http://panelpicker.sxsw.com/" >panel picker</a> for submissions to the 2012 SXSW Interactive festival.  </span></div><div><span class="Apple-style-span">
<br /></span></div><div><span class="Apple-style-span">With all of the community efforts going on around OpenSocial 2.0, this would be a perfect time to submit a panel or talk on the wonderful efforts going on for OpenSocial and we ask that, as a community, we get involved in spreading the word around the integrated technology that are revitalizing the landscape of social application and container development.  </span></div><div><span class="Apple-style-span">
<br /></span></div><div><span class="Apple-style-span">An official panel will be submitted to discuss the new standards and technologies that are being integrated within OpenSocial 2.0.  This will cover much of the work done on the specification, the future of OpenSocial, our enterprise involvement and the technology backbone that the new specification is being built around.</span></div><div><span class="Apple-style-span">
<br /></span></div><div><span class="Apple-style-span">We would also love to see other members of the community submit talks about some of their involvements with OpenSocial.  For instance, we'd love to see submissions about some of the following, just to name a few:</span></div><div><ul><li>How OpenSocial foundations and techniques can be applied in a mobile strategy.</li><li>How new authorization models like OAuth 2 are fostering adoption of open standards.</li><li>How standardization of activities through Activity Streams are building a foundation for social sharing across platforms.</li><li>How OpenSocial is driving the socialization and communication channels of enterprise platform solutions. </li></ul></div><div>If you submit a panel or talk, please respond to this thread to let us know (with a link to that talk) and I will work on compiling a list of the "OpenSocial community talks" for a future blog post.  This will allow us to all vote as a community and show each other some support.</div><div>
<br /></div><div>You can submit your talks <a href="http://panelpicker.sxsw.com/" >here</a>.</div><div><span class="Apple-style-span">
<br /></span></div><div><span class="Apple-style-span">I look forward to hearing from all of you.</span></div><style>div.author{ position:relative; background-color:#f4f4f4; margin:5px 0; padding:10px; }div.author img{ position:absolute; top:10px; left:10px; }div.author div.note{ margin-left:55px;font-size:90%; } </style>
<br /><div class="author"><img src="http://jcleblanc.com/images/profile_picture_40x40.jpg" alt="Jonathan LeBlanc" height="40" width="40" /><div class="note"><span class="Apple-style-span"><b><a href="http://www.jcleblanc.com/" class="fn url">Jonathan LeBlanc</a> (<a class="url twitter" href="http://twitter.com/jcleblanc">@jcleblanc</a>)</b>
<br /><span>Jonathan LeBlanc is a principal developer evangelist with X.commerce.  Jonathan has been a member of the OpenSocial community for over three years and is the author of O'Reilly's "<a href="http://oreilly.com/catalog/0636920014201" >Programming Social Applications</a>".</span></span></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3767917694929724035-5064895452348573373?l=blog.opensocial.org' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-opensocial/opensocial-and-sxsw-interactive-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
