<?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; Susan Taing</title>
	<atom:link href="/author/susan-taing/feed/" rel="self" type="application/rss+xml" />
	<link>https://googledata.org</link>
	<description>Everything Google: News, Products, Services, Content, Culture</description>
	<lastBuildDate>Fri, 01 May 2015 22:41:24 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.4</generator>
	<item>
		<title>Review your birthdate on Orkut</title>
		<link>https://googledata.org/google-orkut/review-your-birthdate-on-orkut/</link>
		<comments>https://googledata.org/google-orkut/review-your-birthdate-on-orkut/#comments</comments>
		<pubDate>Mon, 07 Mar 2011 17:15:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Orkut]]></category>
		<category><![CDATA[do orkut]]></category>
		<category><![CDATA[google social network]]></category>
		<category><![CDATA[orkut]]></category>
		<category><![CDATA[para orkut]]></category>
		<category><![CDATA[recados orkut]]></category>

		<guid isPermaLink="false">https://googledata.org/?guid=e73c7f7ab5394e7fe2344890945fd646</guid>
		<description><![CDATA[(Updated post providing additional details and the new date for this change)Today, you are asked to enter your date of birth in a few different places for different Google products (for example, YouTube, Orkut, and Google Profiles). This is because we ...]]></description>
				<content:encoded><![CDATA[<div style="font-family: Verdana,sans-serif;"><span style="font-size: small;"><i>(Updated post providing additional details and the new date for this change)</i></span><br/><br/><span style="font-size: small;">Today, you are asked to enter your date of birth in a few different places for different Google products (for example, YouTube, Orkut, and Google Profiles). This is because we store this information in different back-end systems. To make this process more organized, and to prevent you from having to enter the same information in multiple locations, over the next few days we plan to consolidate the date of birth you’ve given us across these sites.</span><br/><br/><span style="font-size: small;">As a result, starting on April 7, the birthdate you have listed on Orkut will no longer be changeable. So take a minute to <a href="http://www.orkut.com">double-check your birthday</a> before this change takes place.</span><br/><br/><span style="font-size: small;">Posted by Rodrigo Paiva, Orkut Operations Team</span></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4712003749156164446-5162298839205181304?l=en.blog.orkut.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-orkut/review-your-birthdate-on-orkut/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Highlights from Google Developer Day 2010</title>
		<link>https://googledata.org/google-code/highlights-from-google-developer-day-2010/</link>
		<comments>https://googledata.org/google-code/highlights-from-google-developer-day-2010/#comments</comments>
		<pubDate>Tue, 07 Dec 2010 07:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[With our 3 Google Developer Days in Munich, Moscow and Prague last month, we wrapped up “GDD season” this year. It was great to meet many of you in person, and we’re happy to see all of the positive responses via your tweets and blog posts. Parti...]]></description>
				<content:encoded><![CDATA[With our 3 Google Developer Days in <a href="http://www.google.com/events/developerday/2010/munich/">Munich</a>, <a href="http://www.google.com/events/developerday/2010/moscow/">Moscow</a> and <a href="http://www.google.com/events/developerday/2010/prague/">Prague</a> last month, we wrapped up “GDD season” this year. It was great to meet many of you in person, and we’re happy to see all of the positive responses via your tweets and blog posts. Participating in the events was a great way to update you on where we are in our product development as well as to hear your feedback.<br /><br />Here is a 3-minute highlights video and a short summary of each of our Google Developer Day events. For all photos and videos, <a href="http://www.google.com/events/developerday/2010/gallery.html">see here</a>.<br /><br /><object width="480" height="295"><param name="movie" value="http://www.youtube.com/v/RDsrvRHtqv8?fs=1&amp;hl=en_US"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/RDsrvRHtqv8?fs=1&amp;hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"></embed></object><br /><br /><b>Sep 28, Tokyo</b>: Japan is the 2nd largest country for Android app uploads and App Engine usage, so we were happy to meet and thank the strong developer communities there. We hosted our largest Developer Day in Tokyo, with 1,500 developers in Tokyo and 200 developers at a satellite venue in Kyoto. Our developer sandbox had over 30 booths with 90 developers, from the <a href="http://phandroid.com/2010/09/29/hire-out-this-remote-controlled-android-for-your-next-event/">Android-based Android robot</a> to the <a href="https://groups.google.com/group/android-developers-club?pli=1">Android Developers' Club</a>, which presented more than 100 Android applications by its members. See <a href="http://youtube.com/GoogleDevelopersJa">youtube.com/GoogleDevelopersJa</a> for videos of all sessions.<br /><br /><a href="http://picasaweb.google.com/100655062218921769596/"><img style="cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://1.bp.blogspot.com/_hxeX-x2YPOw/TP2eN_xWsvI/AAAAAAAAAJc/K0Hw_62twfA/s320/gddjp_robot.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5547764279284249330" /></a><br /><br /><b>Oct 29, Sao Paulo</b>: Mario Queiroz, VP Product Management, <a href="http://www.youtube.com/watch?v=ith5K5mWr_g">opened the day</a> for Brazil’s 4th Google Developer Day with the announcement that Jambool will now provide payments support for Orkut, and we announced that Brazil is our second largest country in number of Chrome users. As Voice Search and Navigation for Android launched just the day before, we demoed live during the keynote, including a daring and successful voice search query, “number of people who attended the Bon Jovi concert”. We hosted 1300 developers throughout the day to packed sessions. See <a href="http://www.youtube.com/watch?v=ith5K5mWr_g">keynote video</a>, <a href="http://picasaweb.google.com/developerday2010/GoogleDeveloperDayBrazil2010">photos</a> and <a href="http://www.google.com/events/developerday/2010/sao-paulo/agenda.html">presentation slides</a> (linked from each session page).<br /><br /><a href="http://picasaweb.google.com/developerday2010/GoogleDeveloperDayBrazil2010"><img style="cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_hxeX-x2YPOw/TP2kZuem6yI/AAAAAAAAAJk/wEzKA_3KY8o/s320/gddbr_session.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5547771077870414626" /></a><br /><br /><b>Nov 9, Munich</b>: For the first time, we organized Google Developer Day in partnership with the Technical University of Munich, who co-hosted their own sessions and ran an Innovation Sandbox throughout the day. 1200 developers were in attendance, and we met with one of our most active GTUG communities, with 11 locations in Germany and 21 events in the last six months. We treated ourselves to beer &amp; pretzels and watched the Blinkendroid team put together <a href="http://code.google.com/p/blinkendroid/wiki/BlinkendroidGuinnesWorldRecordGDDDE2010">72 Android devices</a>, the highest number yet. See our <a href="http://www.youtube.com/watch?v=IswrkpP4Xf8">highlights video</a> and <a href="http://picasaweb.google.com/113712627869351924820/GoogleDeveloperDayMunich">photos</a>.<br /><br /><b>Nov 12, Moscow</b>: This year we reduced the number of simultaneous tracks from 6 to 4 to help developers choose between sessions. After a great <a href="http://www.youtube.com/watch?v=uihMUgq_ZVU">keynote</a>, 1300+ developers from over 85 cities attended 24 different sessions, 2 project showcase sessions, and participated in countless discussions, including one with a Duma member and Skolkovo advisor. The local <a href="http://www.moscow-gtug.ru/main.ark">GTUG</a> also hosted two hackathons - one focused on Android &amp; Chrome/HTML5, and one focused on Google Maps. Here are the <a href="http://www.youtube.com/watch?v=2rjt_8jLfhA">highlights video</a>, <a href="http://picasaweb.google.com/selanne2007/GDDMoscow2010">photos</a> and <a href="http://www.google.ru/events/developerday/2010/moscow/agenda.html">PDFs</a> (linked from each session page).<br /><div><div><br /><b>Nov 16, Prague</b>: Bringing almost 1000 Czech &amp; Slovak developers together, the third GDD in Prague was the biggest yet. We loved how much local stuff was happening there! The local <a href="http://gug.cz/">Google User Group</a> hosted a <a href="http://www.gugcamp.cz/2010/10/pozvanka-na-minigugcamp-2010.html">mini-barcamp</a> onsite and launched an internet TV station (<a href="http://gug.tv/">gug.tv</a>) during the event, developers competed in a QR hunting game, and <a href="http://google-cz.blogspot.com/2010/11/google-developer-day-2010-fotky.html">much more</a>. Almost every link regarding the event (including the <a href="http://www.youtube.com/view_play_list?p=25C4D980F95933C9">YouTube playlist</a>) was compiled by the community into this <a href="https://docs4.google.com/a/google.com/document/d/1tr7hIupR7tW3NP7jkczVzgZkZFM6uxiMMw9iAAK-fUU/edit?hl=en&amp;pli=1">freely editable Google Doc</a>.<br /><br />While we have great fun at these events, and love interacting with local developers, we’re usually only in town once or twice a year. However, there are vibrant developer communities <a href="http://www.gtugs.org/directory">all over the globe</a> that meet regularly to discuss and hack on all the technologies showcased at Developer Day. To get involved, find a local <a href="http://www.gtugs.org/directory">group</a> near you, or <a href="http://wiki.gtugs.org/so-you-want-to-start-a-gtug">start up your own</a>!<br /><br />Finally, based on the interest we saw from previous developer events, we created some <a href="http://www.google.com/events/developerday/2010/gallery.html">digital “souvenirs”</a> for you in the form of PC &amp; Mac wallpapers and an Android live wallpaper.<br /><br /><a href="http://www.google.com/events/developerday/2010/gallery.html"><img style="cursor:pointer; cursor:hand;width: 200px; height: 125px;" src="http://1.bp.blogspot.com/_hxeX-x2YPOw/TP2oK1j6cwI/AAAAAAAAAJ0/IGkihDRl0NA/s200/GDD+2010+Active+Wallpaper+1440x900.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5547775220120187650" /></a><br /><br /></div><div>Enjoy! </div><div><br /><span style="font-style: italic;" class="byline-author">By Susan Taing, Product Marketing Manager</span></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-4109385799269691825?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/highlights-from-google-developer-day-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Google Developer Day &#8211; After Japan, Ready for Brazil and Europe</title>
		<link>https://googledata.org/google-code/google-developer-day-after-japan-ready-for-brazil-and-europe/</link>
		<comments>https://googledata.org/google-code/google-developer-day-after-japan-ready-for-brazil-and-europe/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 15:21:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Google Developer Day Japan on September 28 welcomed 1700 attendees across Tokyo and a satellite location in Kyoto.During our keynote presentation, we shared updates and demos for each of our global priority areas: Android, Chrome &#38; HTML5 and Cloud ...]]></description>
				<content:encoded><![CDATA[Google Developer Day Japan on September 28 welcomed 1700 attendees across Tokyo and a satellite location in Kyoto.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hxeX-x2YPOw/TMBgqPPruBI/AAAAAAAAAHE/fOWyl5xConc/s1600/gdd_tokyo_2010_screen.JPG"><img style="cursor:pointer; cursor:hand;width: 400px; height: 268px;" src="http://2.bp.blogspot.com/_hxeX-x2YPOw/TMBgqPPruBI/AAAAAAAAAHE/fOWyl5xConc/s400/gdd_tokyo_2010_screen.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5530526621174052882" /></a><br /><div><div><br /></div><div><div><div>During our keynote presentation, we shared updates and demos for each of our global priority areas: Android, Chrome &amp; HTML5 and Cloud Computing. To watch the keynote video, go to <a href="http://youtube.com/GoogleDevelopersJa">http://youtube.com/GoogleDevelopersJa</a> (keynote starts 5 minutes in, some parts will be in Japanese). Thanks to our Japanese developer community, Japan is the 2nd largest global market for Android app uploads and App Engine usage. We were happy to share that worldwide, Android is now at 200,000 activations per day and App Engine is at 90,000 active developers per month. We announced an open source font for Mac OS and support for the Japanese Transliteration API.<br /><br />We also welcomed over 30 Sandbox developers and hosted 22 technical sessions, with speakers from both Google Mountain View and Google Tokyo. Two additional highlights at GDD Japan were the <a href="http://www.youtube.com/watch?v=_vmLFPAh9ZQ">Android-based Android robot</a>, built by one of the Sandbox developers, and the <a href="http://lh5.ggpht.com/_oqZyJBapt3E/TMBYndiXMwI/AAAAAAAAABI/TH-oXH5-qAw/gddjp-chrome-bento.png">Chrome bento lunch box</a>.<br /><br />Coming up very soon are the rest of our Developer Days, which will take place on:<br /><ul><li>October 29 in <a href="http://www.google.com/events/developerday/2010/sao-paulo/">Sao Paulo, Brazil</a></li><li>November 9 in <a href="http://www.google.com/events/developerday/2010/munich/">Munich, Germany</a></li><li>November 12 in <a href="http://www.google.com/events/developerday/2010/moscow/">Moscow, Russia</a>, and</li><li>November 16 in <a href="http://www.google.com/events/developerday/2010/prague/">Prague, Czech Republic</a>.</li></ul>Agenda details for all cities are now available on <a href="http://www.google.com/events/developerday/2010/">our website</a>. Please feel free to read up and start planning your day with us!<br /><br />Our GTUGs in Europe are planning hackathons the day before Developer Day, so be sure to find out more information on our country blogs and Twitter:</div><div><ul><li>Germany: <a href="http://google-produkt-kompass.blogspot.com/">Google Produkt Compass blog</a></li><li>Russia: <a href="http://rudeveloper.blogspot.com/">Developer blog</a> and <a href="http://twitter.com/gddru">@gddru</a></li><li>Czech Republic: <a href="http://google-cz.blogspot.com/">Google Česká republika blog</a> and <a href="http://twitter.com/gddru">@gddcz</a></li></ul><list out="" blogs="">Overall, we saw enormous demand for invitations to Google Developer Day. We do wish we could invite more of you, and please stay in touch with us here on the Code blog and your local developer blogs.<br /><br />Here again are our official hashtags: <a href="http://search.twitter.com/search?q=%23gdd2010jp">#gdd2010jp</a>, <a href="http://search.twitter.com/search?q=%23gddbr">#gddbr</a>, <a href="http://search.twitter.com/search?q=%23gddde">#gddde</a>, <a href="http://search.twitter.com/search?q=%23gddru">#gddru</a>, <a href="http://search.twitter.com/search?q=%23gddcz">#gddcz</a>. We look forward to hearing your thoughts!<br /><br /><span style="font-style: italic;" class="byline-author">By Susan Taing, Product Marketing, Developer</span></list></div></div></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-8849642145608347330?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-developer-day-after-japan-ready-for-brazil-and-europe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Google Developer Day Registration Now Open for Brazil</title>
		<link>https://googledata.org/google-code/google-developer-day-registration-now-open-for-brazil/</link>
		<comments>https://googledata.org/google-code/google-developer-day-registration-now-open-for-brazil/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 18:40:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[As promised, registration for our Sao Paulo Google Developer Day is now open. Developer Day in Brazil takes place on October 29, 2010. More details on sessions and speaker bios are now available on the site.Follow @googledevbr (hashtag: #gddbr) to stay...]]></description>
				<content:encoded><![CDATA[<div><a href="http://googlecode.blogspot.com/2010/09/google-developer-day-2010-agenda.html">As promised</a>, registration for our Sao Paulo Google Developer Day is <a href="http://www.google.com/events/developerday/2010/sao-paulo/register.html#utm_source=googlecode&amp;utm_medium=blog&amp;utm_campaign=codeblog">now open</a>. Developer Day in Brazil takes place on October 29, 2010. More details on sessions and speaker bios are now available <a href="http://www.google.com/events/developerday/2010/sao-paulo/#utm_source=googlecode&amp;utm_medium=blog&amp;utm_campaign=codeblog">on the site</a>.</div><br />Follow <a href="http://twitter.com/googledevbr">@googledevbr</a> (hashtag: <a href="http://search.twitter.com/search?q=%23gddbr">#gddbr</a>) to stay updated on developer news in Brazil.<br /><br /><div>UPDATE: Registration closes on Sep 28, 2010.<br /><div><br /><span style="font-style: italic;" class="byline-author">By Susan Taing, Google Developer Team</span></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-2861497662595688106?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-developer-day-registration-now-open-for-brazil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Developer Day 2010 Agenda: Android, Chrome &amp; HTML5 and Cloud Platform</title>
		<link>https://googledata.org/google-code/google-developer-day-2010-agenda-android-chrome-html5-and-cloud-platform/</link>
		<comments>https://googledata.org/google-code/google-developer-day-2010-agenda-android-chrome-html5-and-cloud-platform/#comments</comments>
		<pubDate>Thu, 02 Sep 2010 17:50:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[We are now ready to share the Google Developer Day agendas for Tokyo, Sao Paulo, Munich, Moscow and Prague. We have so much technical content to share but alas, Developer Day is a one-day event. There may still be changes to the agenda, but here is a s...]]></description>
				<content:encoded><![CDATA[<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/TH74kEw6wAI/AAAAAAAAAF8/SQUWwE0841U/s1600/developer_day-textbarsq.gif"><img style="cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/TH74kEw6wAI/AAAAAAAAAF8/SQUWwE0841U/s320/developer_day-textbarsq.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5512116292585963522" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_hxeX-x2YPOw/TH74dRK3W7I/AAAAAAAAAF0/5Y1T7tghrcw/s1600/developer_day-textbarsq.gif"></a><br />We are now ready to share the <a href="http://www.google.com/events/developerday/2010/">Google Developer Day</a> agendas for <a href="http://www.google.co.jp/events/developerday/2010/tokyo/agenda.html">Tokyo</a>, <a href="http://www.google.com/events/developerday/2010/sao-paulo/agenda.html">Sao Paulo</a>, <a href="http://www.google.com/events/developerday/2010/munich/agenda.html">Munich</a>, <a href="http://www.google.com/events/developerday/2010/moscow/agenda.html">Moscow</a> and <a href="http://www.google.com/events/developerday/2010/prague/agenda.html">Prague</a>. We have so much technical content to share but alas, Developer Day is a one-day event. There may still be changes to the agenda, but here is a sneak peek at where we are.<br /><br />Globally, we will feature three major tracks:<br /><ul><li><b>Android</b> - With the continued momentum and growth of the platform, we would like to continue the conversation with you at Developer Day. We will feature sessions on Android performance, mobile user experience and best practices on building apps, and we will also deep dive on a new feature, <a href="http://android-developers.blogspot.com/2010/05/android-cloud-to-device-messaging.html">Cloud to Device Messaging (C2DM)</a>.</li><br /><li><b>Chrome &amp; HTML5</b> - We will discuss how to build an app for the <a href="http://code.google.com/chrome/webstore/">Chrome Web Store</a> and how to improve its development and performance. We’ll show which aspects of HTML5, <a href="http://www.chromium.org/getting-involved/dev-channel">Chrome Developer Tools</a> and <a href="http://code.google.com/p/nativeclient/">Native Client</a> can be most useful to you. Finally, we will cover everything auth-related to show you when and where to use various authentication tools and how they integrate with our APIs and products.</li><br /><li><b>Cloud Platform</b> - Building off of our series of announcements at Google I/O, we will feature sessions on <a href="http://code.google.com/appengine/">App Engine</a>, <a href="http://code.google.com/appengine/business/">App Engine for Business</a>, <a href="http://googlecode.blogspot.com/2010/05/enabling-cloud-portability-with-google.html">Spring integration</a>, <a href="http://code.google.com/webtoolkit/">Google Web Toolkit</a>, <a href="http://code.google.com/apis/storage/">Google Storage for Developers</a>, <a href="http://code.google.com/apis/bigquery/">BigQuery</a> and <a href="http://code.google.com/apis/predict/">Prediction API</a>. Be prepared for code samples, how to optimize performance and a glimpse into what else is on our roadmap.</li></ul>We are happy to announce that Eric Tholome, Product Management Director for Developer Products, will be a keynote speaker in Sao Paulo, Munich, Moscow and Prague. In addition, we are happy to invite as our second keynote speaker:<br /><ul><li><b>Sao Paulo, Brazil</b> - Mario Queiroz, VP Product Management</li><br /><li><b>Munich, Germany</b> - Dr. Wieland Holfelder, Engineering Director</li><br /><li><b>Moscow, Russia</b> - Dr. Gene Sokolov, Head of Moscow Engineering </li></ul>Due to the success of the <a href="http://googlecode.blogspot.com/2010/05/new-species-of-io-speaker-vcs-who-can.html">Venture Capital sessions at Google I/O</a> and the growing VC activity in our global markets, a new addition this year is Venture Capital panels at most of our Developer Days. Come hear from your local VCs on what they look for in startups.<br /><br />The Sao Paulo and Moscow keynote presentations will have live translation, and for sessions, check the FAQ section of <a href="http://www.google.com/events/developerday/2010/">your Developer Day site</a>. We will have savvy gurus available to answer your questions during Office Hours, and you will have a chance to meet Googlers and each other over Happy Hour.<br /><br />Registration will open on September 15th for Sao Paulo and on September 22nd for Munich, Moscow and Prague. Tokyo’s registration is now closed. <div><br /></div><div>In the meanwhile, please follow us on this blog and on Twitter to keep up-to-date with the latest news on Google Developer Day and other development topics: <a href="http://twitter.com/googledevjp">@googledevjp</a> (Japan), <a href="http://twitter.com/googledevbr">@googledevbr</a> (Brazil) and <a href="http://twitter.com/gddru">@gddru</a> (Russia).<div><br />Hashtags: <a href="http://twitter.com/#search?q=%23gdd2010jp">#gdd2010jp</a>, <a href="http://twitter.com/#search?q=%23gddbr">#gddbr</a>, <a href="http://twitter.com/#search?q=%23gddde">#gddde</a>, <a href="http://twitter.com/#search?q=%23gddru">#gddru</a>, <a href="http://twitter.com/#search?q=%23gddcz">#gddcz</a><br /><br /><span style="font-style: italic;" class="byline-author">By Susan Taing, Google Developer Team</span></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-3330140714900844841?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-developer-day-2010-agenda-android-chrome-html5-and-cloud-platform/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Save the date for Google Developer Day in your country</title>
		<link>https://googledata.org/google-code/save-the-date-for-google-developer-day-in-your-country/</link>
		<comments>https://googledata.org/google-code/save-the-date-for-google-developer-day-in-your-country/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 13:56:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[We are excited to announce the 2010 Google Developer Day schedule:Sep 28: Tokyo, JapanOct 29: Sao Paulo, BrazilNov 9: Munich, GermanyNov 12: Moscow, RussiaNov 16: Prague, Czech RepublicWe will hold technical sessions on mobile and web technologies incl...]]></description>
				<content:encoded><![CDATA[<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_hxeX-x2YPOw/TCn--q3eYyI/AAAAAAAAAFY/OJkhmlFay34/s1600/developer_day-textbarsq.gif"><img style="cursor:pointer; cursor:hand;width: 128px; height: 128px;" src="http://4.bp.blogspot.com/_hxeX-x2YPOw/TCn--q3eYyI/AAAAAAAAAFY/OJkhmlFay34/s320/developer_day-textbarsq.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5488197973539971874" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/TCn8YFSv1EI/AAAAAAAAAFQ/J4-t8EZdUbI/s1600/developer_day-textbarsq.gif"><br /></a>We are excited to announce the <a href="http://www.google.com/events/developerday/2010/">2010 Google Developer Day schedule</a>:<ul><li>Sep 28: Tokyo, Japan</li><br /><li>Oct 29: Sao Paulo, Brazil</li><br /><li>Nov 9: Munich, Germany</li><br /><li>Nov 12: Moscow, Russia</li><br /><li>Nov 16: Prague, Czech Republic</li></ul>We will hold technical sessions on mobile and web technologies including Android, Chrome, Google Web Toolkit, App Engine and more.  It will also be an opportunity to meet both the Google team and other developers.<br /><br />For any cities not listed above, here are some other events we host throughout the year:<ul><li><a href="http://googlecode.blogspot.com/2010/06/devfest-tour-coming-to-city-near-you.html">DevFest</a> will be on tour through cities across Asia, Europe and Latin America. See the full schedule <a href="http://code.google.com/events/devfests/2010/">here</a>.</li><br /><li>Check for community-run <a href="http://www.gtugs.org/directory">Google Technology User Group</a> meetups near you!</li></ul>Registration is not open yet, but we will let you know when registration opens for each country in the coming months. For now, be sure to save the dates, and feel free to use our official hashtags for your discussions: <a href="http://twitter.com/#search?q=%23gdd2010jp">#gdd2010jp</a>, <a href="http://twitter.com/#search?q=%23gddbr">#gddbr</a>, <a href="http://twitter.com/#search?q=%23gddde">#gddde</a>, <a href="http://twitter.com/#search?q=%23gddru">#gddru</a>, <a href="http://twitter.com/#search?q=%23gddprague">#gddprague</a>.<br /><span style="font-style: italic;" class="byline-author"><br /></span><div><span style="font-style: italic;" class="byline-author">By Susan Taing, Google Developer Team</span></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-3413683757285569236?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/save-the-date-for-google-developer-day-in-your-country/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Google Wave at I/O: Learn new APIs &amp; Build your own Wave</title>
		<link>https://googledata.org/google-code/google-wave-at-io-learn-new-apis-build-your-own-wave/</link>
		<comments>https://googledata.org/google-code/google-wave-at-io-learn-new-apis-build-your-own-wave/#comments</comments>
		<pubDate>Mon, 07 Jun 2010 18:36:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Google Wave was first unveiled at Google I/O in 2009, alongside our first draft of Wave APIs and specifications for the open-source world. We worked hard this past year to bring you a host of new features on our first birthday at Google I/O 2010: open ...]]></description>
				<content:encoded><![CDATA[Google Wave was first unveiled at Google I/O in 2009, alongside our first draft of Wave APIs and specifications for the open-source world. We worked hard this past year to bring you a <a href="http://googlewavedev.blogspot.com/2010/05/google-wave-platform-updates-at-io-see.html">host of new features</a> on our first birthday at Google I/O 2010: <a href="http://googlewave.blogspot.com/2010/05/google-wave-available-for-everyone.html">open sign-ups</a>, attachments and data APIs and open-sourcing of a significant Wave component, the rich text editor.<br /><br />From seeing demos in the Wave pod in the Developer Sandbox to having conversations with attendees in person, we were excited to see all of the ways people are using Wave and the Google Wave Federation Protocol inside enterprises. It was extremely valuable for us to hear your questions and feedback in person and via the session waves.<br /><br />For developers out there who weren't able to attend I/O in-person, we hope you can join in virtually by watching the recorded videos of the various talks.<br /><ul><li><a href="http://code.google.com/events/io/2010/sessions/open-source-wave-provider.html" style="font-weight:bold;">Open source Google Wave: Building your own wave provider</a> - Learn how to get your own Wave server running using the currently open-sourced demos, and watch a demo of SAP Streamwork, Novell Pulse, and Google Wave all federating together.</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/smart-scalable-wave-robots.html" style="font-weight:bold;">Making smart &amp; scalable Wave robots</a> - Learn how to take advantage of version 2 of the Robots API to build more sophisticated robots, and watch a demo of the Go bot - the first example of a robot running on a non-App Engine server, written in the new open-source programming language.</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/waving-across-the-web.html" style="font-weight:bold;">Waving across the web</a>  - Learn how to use the APIs outside of Google Wave, including embedding waves for discussions on your site, integrating with the WaveThis service, and using the data APIs to build notifiers and alternative clients.</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/google-wave-media-apis.html" style="font-weight:bold;">Google Wave Media APIs</a> - Attachments can surf too!: Learn how to use the new media/attachments API for both retrieving and creating attachments, and watch demos of robots that turn waves into Powerpoint presentations -- and back!</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/google-wave-enterprise.html" style="font-weight:bold;">Google Wave and the enterprise environment</a> - Learn how different enterprises are using Wave today, see a walkthrough of Mr. Release, an extension built for our own software development enterprise use case, and watch a demo of SAP Streamwork, an enterprise collaboration software.</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/wave-api-design-extensions.html" style="font-weight:bold;">Google Wave API design principles</a> - Anatomy of a great extension: Learn how to build gadgets and robots that are user-friendly and collaborative, and watch a demo of ProcessWave, a collaborative UML editor.</li><br /><li><a href="http://code.google.com/events/io/2010/sessions/fireside-chat-wave.html" style="font-weight:bold;">Fireside chat with the Google Wave team</a> -  Watch our answers to questions about integration between Google Wave and other products, future features for robots and gadgets, and much more.</li></ul>In addition to the linked session titles where you'll find the videos and slides, you can also find all videos for Wave sessions in this <a href="http://www.youtube.com/view_play_list?p=3AC60BE50C522C90">YouTube playlist</a>.<br /><br />We welcome any follow-up questions in our <a href="http://code.google.com/apis/wave/forum.html">forum</a> for any of the video sessions above. Happy waving, and we look forward to seeing you all at next year’s Google I/O!<br /><br /><font style="font-style: italic;" class="byline-author">By Pamela Fox, Wave team</font><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-7601940317255328525?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-wave-at-io-learn-new-apis-build-your-own-wave/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mail Merge in the Cloud with Google APIs</title>
		<link>https://googledata.org/google-code/mail-merge-in-the-cloud-with-google-apis/</link>
		<comments>https://googledata.org/google-code/mail-merge-in-the-cloud-with-google-apis/#comments</comments>
		<pubDate>Thu, 20 May 2010 07:58:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Jonathan Howard, lead developer of Drawloop Technologies and one of the...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html" >Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://www.google-io.com/index.cfm?fuseaction=email.Redirect&amp;EID=613F6471770A" >Google I/O</a>. This guest post is written by Jonathan Howard, lead developer of Drawloop Technologies and one of the creators of DDPs for Google Apps, a cloud based document automation service. DDPs for Google Apps will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html#Enterprise" >Developer Sandbox</a>.</i><br /><br />One of the first comments we received upon releasing our <a href="https://sites.google.com/a/drawloop.com/ddpsupport/" >dynamic document packages (DDPs) for Google Apps</a> was the lack of mail merge anywhere in the cloud.  A DDP combines one or more documents together while also merging data into those documents, giving you a combined file with whatever page order you'd like.  What we were missing from this was a simple way of getting multiple sets of data into this DDP quickly and easily.  The business need was clearly there, and wasn't being filled.  Google Apps provides not only an excellent document management system, but also a set of great APIs that can be utilized by third parties to expand upon the already robust offerings within Google Docs.  Never ones to back down from a challenge, we set out to determine the requirements for a <a href="https://sites.google.com/a/drawloop.com/ddpsupport/ddp-learning-center/mail-merge" >cloud-based mail merge solution</a>.<br /><br />1. <b>Nothing local</b>.  Like any cloud-based solution, the only thing that should be required from a user is a solid internet connection.  Their interactions shouldn't rely on installing software or using a machine with a specific set up.  Our experiences from implementing DDPs for Google Apps served us well here, as we already were interacting with Google Docs.<br /><br />2. <b>Simple to manage and run</b>.  We wanted to keep the management piece as close to what already existed as possible.  This meant utilizing as much of our work on DDPs for Google Apps intact, and wrapping the mail merge piece around it.  At runtime, the user shouldn't have to deal with complicated forms or having to connect files together like is the norm for desktop applications.<br /><br />The first problem was easily solved by extending our <a href="https://sites.google.com/a/drawloop.com/ddpsupport/ddp-learning-center/ddp-management" >existing implementation</a> with Google Docs.  Leveraging Google APIs, we are able to use Google Docs for both management of the mail merge and storage of the results.  Since we wanted the management to leverage our existing technology and to be both simple and entirely based in the cloud, we decided it would be best to make it wrap around our existing DDP functionality.  To manage the merge data, we create a folder inside Google Docs and place within that folder a single spreadsheet.  All data for a merge can be placed in that spreadsheet, which we then tie directly to the existing DDP at runtime.  Each row is now considered a single DDP run with all the results streaming back to Google Docs.<br /><br /><img src="https://sites.google.com/a/drawloop.com/ddpsupport/_/rsrc/1270166038876/ddp-learning-center/mail-merge/ViewFolderFiles.png" ><br /><br />One of the biggest values of utilizing a Google spreadsheet for managing the mail merge as you have all the same functions as you normally have with spreadsheets, such as Google forms.  You can easily tie a form to the mail merge spreadsheet and allow your own customers to populate your data for you.<br /><br />You can install your free trial of <a href="http://www.google.com/enterprise/marketplace/viewListing?productListingId=3440+9197926189099505060" >DDPs for Google Apps</a> by visiting the Google Apps Marketplace and clicking on the "Add it now" button.<br /><br />If you have questions or ideas you'd like to share on this or any of our <a href="http://www.drawloop.com/solutions/" >other offerings</a>, please visit us this week in the <a href="http://code.google.com/events/io/2010/sandbox.html" >Developer Sandbox</a> at Google I/O!<br /><br /><span style="font-style: italic;" class="byline-author"> Posted by Jonathan Howard, Lead Developer of Drawloop Technologies </span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-3359074414994722891?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/mail-merge-in-the-cloud-with-google-apis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google App Engine Basic Text Search</title>
		<link>https://googledata.org/google-code/google-app-engine-basic-text-search/</link>
		<comments>https://googledata.org/google-code/google-app-engine-basic-text-search/#comments</comments>
		<pubDate>Thu, 20 May 2010 06:49:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Brian Dorry from LTech who is demoing as part of the Developer Sandbox....]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Brian Dorry from LTech who is demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />Having trouble implementing search on your App Engine Data Store? Try this technique for a basic search until official full text support is ready.<br /><br />Since adding <a href="http://code.google.com/appengine/">Google App Engine</a> to our technical tool belt in 2008, we at <a href="http://ltech.com">LTech</a> have utilized the platform for a wide range of products and customer solutions.  It is cost effective, easy to use, and will automatically scale your application on Google's immense infrastructure.  Knowing your applications will be running on the same technologies that Google's own systems take advantage of make it the easy choice again and again.<br /><br />From our own experiences and participation in the developer community, the biggest complaint we hear is the lack of a full text search in the datastore.  Google has marked this issue as "Started", but has not announced a release date yet, so alternative approaches are still going to be in play for the short term.  We are big fans of Lucene (<a href="http://lucene.apache.org/">http://lucene.apache.org/</a>), an open source indexing and search engine, but without the ability to save the index file to disk, it becomes a non-starter.<br /><br />We need a quick, non-CPU taxing solution that still takes advantage of the Google infrastructure.<br /><br /><b>Problem</b><br />Taking advantage of the App Engine Datastore, we can issue an inequalities query to perform a basic "starts with" search.  This can be a good solution for searching users, tags, and domains and works well for implementing a search box auto-complete feature.<br /><br /><b>Solution</b><br />Our example solution uses <a href="http://java.sun.com/jdo/">JDO</a> to generate a query that instructs the DataStore to return all records that start with the search string.   This is accomplished by issuing a greater than or equal condition against the search term, and a less than condition against the search input concatenated with the unicode replacement character ('\ufffd'). The resulting query limits results to items that start with the search input, as well as any other unicode characters that follow.<br /><br />This code uses JDO behind the scenes, but this trick will work with straight <a href="http://gql.sourceforge.net/">GQL</a> as well.  Let's take a look at the sample:<br /><pre class="prettyprint"><br />import java.util.List;<br />import javax.jdo.PersistenceManager;<br />import javax.jdo.Query;<br /><br />(...)<br /><br />public static List searchGreeting(String query) {<br /><br />  // let's clean up the input<br />  query = ( query != null ? query.toLowerCase() : "").trim();<br /><br />  PersistenceManager pm = PMF.get().getPersistenceManager();<br />  Query q = pm.newQuery(Greeting.class);<br /><br />  // set the filter and params<br />  q.setFilter("content >= :1 && content < :2");<br /><br />  // run query with param values and return results<br />  return (List) q.execute(query, (query + "\ufffd"));<br /><br />}<br /></pre><br />This code snippet is going to search the JDO defined Employee entity on the name column and return the full Employee payload for each match.  Let's focus on the last two lines of code.<br /><pre class="prettyprint"><br />q.setFilter("name >= :1 &amp;&amp; name < :2");<br /></pre><br />Here we set up the inequality.  We are asking the data store to return all matches where name is between a set of two values.  But how does that define a search?<br /><pre class="prettyprint"><br />return (List) q.execute(query, (query + "\ufffd"));<br /></pre><br />When we set our parameters, we pass the same query value to both with an extra character on the end of the second one.  This is essentially telling the data store to return all records that start with the query term.  In terms of sets, the first part of the query returns the set of all words greater than the query term, including words that don't even start with the query term.  The second part of the query returns the set of all words less than the query term including any that start with the query term.  The intersection of the two sets is the search result for all words starting with the search term.<br /><br />This simple to implement technique will solve many basic search problems until a full text solution is available.  It will work outside of JDO as well with regular GQL statements.  For a python implementation, please see our friend <a href="http://blog.pythoughts.com/posts/App-Engine-Datastore-Workarounds-and-Search">Graeme's blog</a>.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Brian Dorry, LTech team</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5878817894837405802?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-app-engine-basic-text-search/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OrangeScape makes Google App Engine ready for business applications</title>
		<link>https://googledata.org/google-code/orangescape-makes-google-app-engine-ready-for-business-applications/</link>
		<comments>https://googledata.org/google-code/orangescape-makes-google-app-engine-ready-for-business-applications/#comments</comments>
		<pubDate>Thu, 20 May 2010 00:57:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Mani Doraisamy from OrangeScape who will be demoing as part of the Deve...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Mani Doraisamy from OrangeScape who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br /><a href="http://code.google.com/appengine/">Google App Engin</a>e took two bold steps in the right direction for cloud computing in making its datastore distributed to ensure scalability and durability and in fixing its architecture to be stateless to ensure failover and availability. To quote Henry Ford: "Any customer can have any application that is scalable so long as he builds for this fixed architecture."<br /><br />To date, it has worked very well with the social web app companies, but the enterprise application development community has mostly stayed away from Google App Engine for three reasons:<br /><ul><li>“Newness” to Google App Engine's concepts of <a href="http://www.blogger.com/%E2%80%9Den.wikipedia.org/wiki/Gql%E2%80%9D">GQL</a>, lack of aggregate queries, denormalized schema.</li><li>Lack of transaction support: commit or rollback on distributed storage and read consistency within transaction scope. </li><li>Relying only on the cloud: not being able to run the same application on standard infrastructure inside your company. </li></ul>Now you can build business applications on Google App Engine, too! <a href="http://www.orangescape.com/">OrangeScape</a> is a Platform-as-a-Service for building business applications that run both on the cloud via Google App Engine and in your data center.<br /><br />It has three main benefits:<br /><ul><li>It provides a modeling environment to build business processes and rules, datamodel using a familiar process design and spreadsheet like interface. The application that you build on this interface can be deployed on Google App Engine in a single click. </li><li>It enhances the persistence layer of Google App Engine to support transactions and read consistency on <a href="http://labs.google.com/papers/bigtable.html">BigTable</a>. It makes it so transparent that there is absolutely no difference for you to build applications on BigTable or on relational databases. </li><li>If you are a solution provider building business applications today, you may not know if all your customers will accept running applications on the cloud. Some might expect that applications run on their data center. With OrangeScape, you can build it once and run it on both - cloud and data center. </li></ul>If you are excited to try it out, bookmark <a href="http://trial.orangescape.com/">http://trial.orangescape.com/</a>. We will making the public beta announcement shortly after Google I/O.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Mani Doraisamy, OrangeScape team</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-1199663569739558405?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/orangescape-makes-google-app-engine-ready-for-business-applications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WaveOne Wave Server Implementation</title>
		<link>https://googledata.org/google-code/waveone-wave-server-implementation/</link>
		<comments>https://googledata.org/google-code/waveone-wave-server-implementation/#comments</comments>
		<pubDate>Thu, 20 May 2010 00:15:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Mickaël Rémond, Founder of ProcessOne, who will be demoing as part of...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Mickaël Rémond, Founder of ProcessOne, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />When the Google Wave protocol and platform was <a href="http://googleblog.blogspot.com/2009/05/went-walkabout-brought-back-google-wave.html">announced at Google I/O in 2009</a>, ProcessOne became an immediate fan.<br /><br />What we like most is the real time nature of the protocol, which is currently critical in any new web service.  We also like the fact that it integrates well in an asynchronous workflow, allowing developers to work together at the same time on the same content, even the same character.  (This is, however, an extra feature and you don’t have to use it.)<br /><br />In addition, we are keen on the ability to integrate gadgets, acting as mini applications, inside each conversation.  This opens up a new level of opportunity to integrate various applications together in the same place.  It can be seen as ‘cloud glue’, a simple way to aggregate rich data available from different applications and different application providers.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_SBrhvyPaI/AAAAAAAAADY/olvEhZY14sY/s1600/WaveOne_screenshot.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_SBrhvyPaI/AAAAAAAAADY/olvEhZY14sY/s400/WaveOne_screenshot.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5473142031955148194" /></a><br /><br />However, the most powerful enabler is the <a href="http://www.waveprotocol.org/">Google Wave Federation Protocol</a>, which allows developers to have several domains, and thus build several different content management platforms, with the ability to act as a single interoperable tool.  It does not matter if you do not want to host your company data on Google Wave server; you can instead deploy your own Wave compliant tool internally and still collaborate with people outside your organisation on that content.  This is cross-organization document workflow.<br /><br />Since the announcement of Wave, ProcessOne has been excited by the possibilities offered by this new protocol.  Federation was build on top of XMPP (eXtensible Messaging and Presence Protocol), a domain in which ProcessOne is already a leading provider. It was a natural progression for us to extend our platform to support Wave.<br /><br />We decided to develop such an extension for our XMPP server, but we took the hard way.  We developed our own completely new Wave server, to prove that this protocol was really interoperable with implementations from different code bases.  We also wanted to prove that the new platform would meet our high expectations for integration, performance and scalability.  Of course, we read the FedOne code source to understand specific aspects of the underlying Wave protocol, but we did an implementation from scratch (in Erlang).<br /><br />So, how far has ProcessOne gotten?<br /><br />We are proud to have a full Wave server implementation, both with an operational transform engine and a Wave store.  We have designed a client protocol that works on XMPP, meaning that we can directly get the wave information in our OneTeam chat and VoIP client.  We have even implemented this protocol in two XMPP clients (Tkabber and OneTeam) to validate the concept.<br /><br />We have now reached a point where federation works, both with FedOne and Google Wave Developer Sandbox.  This means that you can host waves on our server and invite people to join from any other known Wave service, or do the reverse and participate in a Wave document that is managed by another service.<br /><br />What are the next steps?<br /><br />From here, we need to take a few more steps to fully unleash the full potential of Wave (like <a href="http://opensocial.org/">OpenSocial</a> support), but we have the foundation for an innovative collaboration platform.  This Wave service will be deployed as an experimental option on our hosted messaging offering (Hosted.IM) in June.  We therefore expect to become the first independent Wave Service Provider.<br /><br />We also hope that our implementation will be the first seed, from which many other large Wave services will grow and spread around the world.<br /><br />Let's meet in Google I/O <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> to talk about the future of the Wave platform.  We look forward to seeing you there.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Mickaël Rémond, Founder of ProcessOne</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-8157688116193474830?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/waveone-wave-server-implementation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Google I/O Day 1 Key Announcements</title>
		<link>https://googledata.org/google-code/google-io-day-1-key-announcements/</link>
		<comments>https://googledata.org/google-code/google-io-day-1-key-announcements/#comments</comments>
		<pubDate>Wed, 19 May 2010 17:50:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[We unveiled several exciting new products and features in our Day 1 keynote presentation, and we also have a few more surprises we announced online. Cutting edge HTML5, the Chrome Web Store, App Engine for Business, a new partnership, and more!  Some o...]]></description>
				<content:encoded><![CDATA[We unveiled several exciting new products and features in our Day 1 keynote presentation, and we also have a few more surprises we announced online. Cutting edge HTML5, the Chrome Web Store, App Engine for Business, a new partnership, and more!  Some of these announcements made it to the Google Code blog already, but <a href="http://googleblog.blogspot.com/2010/05/google-io-2010-day-1-more-powerful-web.html">see the Google Blog</a> for a recap of all the highlights.<br /><br /><span style="font-style: italic;" class="byline-author">Susan Taing, Google I/O Team</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-4601484825159490031?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/google-io-day-1-key-announcements/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transforming Paper and Plastic into a 3D Interactive Experience</title>
		<link>https://googledata.org/google-code/transforming-paper-and-plastic-into-a-3d-interactive-experience/</link>
		<comments>https://googledata.org/google-code/transforming-paper-and-plastic-into-a-3d-interactive-experience/#comments</comments>
		<pubDate>Wed, 19 May 2010 13:30:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Roundarch's Technical Architect Greg Knapowski and Sr. Front End Develo...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Roundarch's Technical Architect Greg Knapowski and Sr. Front End Developer Lawrence O’Sullivan who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />Our client, NYSTROM Herff Jones Education Division, the leading producer of maps and globes for schools, sees many classrooms replacing chalk boards and wall maps with interactive white boards and laptop computers. Our Roundarch team worked to develop StrataLogica™, a web-based learning application that delivers map and atlas content in an engaging 3D, interactive environment utilizing the <a href="http://code.google.com/apis/earth/">Google Earth API</a>.<br /><br />The Google Earth API was used as a foundation for StrataLogica™ to make use of its sophisticated image rendering logic, satellite imagery and access to built-in tools and navigation controls. As an enterprise scale application, we faced some interesting challenges and gained many insights along the way that we’d like to share.<br /><br />Our first task was to prove we could wrap Nystrom’s existing educationally-focused maps and globes onto Google Earth while retaining the same high quality resolution delivered in their print products.<br /><br />Achieving acceptable image resolution resulted in file sizes which were much too large.  In addition, we needed to deliver an increased level of map content and granularity of images as the user zoomed into the earth.  To address these two issues, we created a custom process that takes an Adobe Illustrator file and outputs Superoverlays in accordance with KML 2.1 standards. Using open source Python frameworks, we created a customized solution that outputs Superoverlays with various levels of content.<br /><br />Our next challenge was to provide support for authoring and maintaining content, in the browser, using the Google Earth plugin. All content is authored and maintained in a content management system (CMS) in much the same way as any dynamic website. One unique difference is that some of the content elements are geo-referenced coordinates that specify the location of content on earth. In the case of placemark balloons, the geo-referenced coordinates identify “hotspots” on the Nystrom maps which become clickable when the user turns on a setting. The placemark balloons provide supplementary audio, image, video and descriptive content such as the example shown above for the Appalachian Mountains.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hxeX-x2YPOw/S_Ok-N7ACaI/AAAAAAAAAC4/HM4eDycHxtQ/s1600/appalachian.jpg"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 600px; height: 354px;" src="http://2.bp.blogspot.com/_hxeX-x2YPOw/S_Ok-N7ACaI/AAAAAAAAAC4/HM4eDycHxtQ/s400/appalachian.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5472899360981256610" /></a><br /><br />An ETL (extract, transform, load) process is used to transfer published content into the StrataLogica™ application database. We then use Java Server Pages (JSPs) to generate the KML which renders the placemark balloons. The KML contains both the “hotspot” coordinates and embedded HTML to display the audio, video, images and text. This example illustrates that standard web technologies can be used to deliver content through the Google Earth API with the exception that KML is generated in addition to HTML.<br /><br />Once Nystrom was able to see their maps and content rendered on Google Earth through the plug-in, we needed to create a compelling and immersive educational experience to allow teachers and students to interact with maps, not just view them. Our team added features such as marking tools, custom content authoring tools and the ability for users to share and collaborate. For those of you attending Google I/O, stop by our booth in the Sandbox space to experience StrataLogica™ firsthand and chat with our team about the front-end development challenges we faced and how we overcame them. If you aren’t attending we encourage you to check out our blog post at <a href="http://blog.roundarch.com/">http://blog.roundarch.com</a> where we share more about how we developed StrataLogica™.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Greg Knapowski, Technical Architect, and Lawrence O’Sullivan, Sr. Front End Developer, Roundarch</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-2573705069280175662?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/transforming-paper-and-plastic-into-a-3d-interactive-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Building voice, instant messaging and Twitter applications in the cloud</title>
		<link>https://googledata.org/google-code/building-voice-instant-messaging-and-twitter-applications-in-the-cloud/</link>
		<comments>https://googledata.org/google-code/building-voice-instant-messaging-and-twitter-applications-in-the-cloud/#comments</comments>
		<pubDate>Wed, 19 May 2010 03:25:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Adam Kalsey, Developer Evangelist at Voxeo Developer Network, who will ...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Adam Kalsey, Developer Evangelist at Voxeo Developer Network, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />Connecting to your customers via voice, SMS, or even IM allows you to reach them when they aren't at their desks. These real-time communications mediums are skyrocketing in usage and ubiquity, as what is more ubiquitous than the phone? Building an application that works over the phone or instant messaging is easier than you think.<br /><br />Telephony has traditionally required complicated hardware and software or specialized programming languages. In recent years, however, web programming tools and models ranging from VoiceXML to web services APIs have made it easy for any developer to create communications services.<br /><br />Companies for years have been providing customer self-service applications as <a href="http://en.wikipedia.org/wiki/Interactive_voice_response">Interactive Voice Response</a> (IVR) systems as a way of boosting customer satisfaction while cutting service costs. These techniques and tools are starting to make their way into other mediums and at the same time are coming down in price, making them accessible to a whole new class of developers. This is leading to some great innovation as developers find creative ways to weave phones and text into their applications.<br /><br />It's not just voice. A rising percentage of the population is just as likely to communicate over text messaging, IM, and social networks as they are to pick up the phone. APIs and customer-self service systems must adapt to the preferences of the customers they want to help. Over the next decade, 50% of the automated communications that today happens over the telephone will shift to other mediums. It's important for the applications you develop to serve your customers to<br />be available on the networks they choose to use.<br /><br />Here's how an IVR application might work over instant messaging. Your company provides a Jabber IM address for people to contact you. Any of your customers using Google Talk can strike up a conversation. Your code intercepts their message and routes it to the right department based on the keywords used in the chat. Perhaps you even respond off hours letting people know when your agents are available or answer common questions automatically from a knowledge base.<br /><br />Have you ever wanted your Google Talk number to be answered by your code? When your friends call, you'd like to pick it up, and when telemarketers call, you’d like it to go straight to voicemail. In addition to accepting calls, your application can make calls, sending appointment reminders or triggering alerts using only a few lines of code. You can even set the caller ID of the outbound call to your Google Voice number so that return calls come to you.<br /><br />To demonstrate how easy it is for a developer to weave voice and text into their application, lets look at a sample application running on our <a href="http://tropo.com/">Tropo cloud communications platform</a>.<br /><br />We've created a mashup for the San Francisco Bay Area Rapid Transit (BART) schedules so you can see when the next train is due to arrive at the station of your choice. Call or SMS (407) 374-9954 or send an IM to bartdemo@tropo.im with Google Talk to try it. You can even talk to @tropobart on Twitter. Tropo treats Twitter as an IM network, sending all @mentions to your application just like an instant message would be.<br /><br />Tropo works by converting phone calls, IMs, and text messages to API calls that your code works with. An incoming call or message is delivered to your code and your code tells Tropo what to say back.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_NbbNrBAJI/AAAAAAAAACw/GHfrCZtxMUI/s1600/Tropo-how-it-works.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 119px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_NbbNrBAJI/AAAAAAAAACw/GHfrCZtxMUI/s400/Tropo-how-it-works.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5472818495269961874" /></a><br /><br />The <a href="https://www.tropo.com/docs/scripting/t_ruby-barteta.htm">code behind this</a> can sit in our cloud or on the web server of your choice, including <a href="http://code.google.com/appengine/">Google App Engine</a>. Other <a href="https://www.tropo.com/docs/scripting/samples.htm">sample applications are available</a> covering everything from simple games to directory assistance, to checking into <a href="http://www.foursquare.com">Foursquare</a>.<br /><br />Real-time communications APIs for voice allow you to give instructions to the phone system and IM networks to answer or make calls, accept text messages, interact with your users using speech synthesis and speech recognition, set up conferences, or just about anything else you can think of and mash it up with Google technologies, like this <a href="http://blog.tropo.com/2010/02/16/tutorial-adding-tropo-to-google-wave/">Wave robot that adds conference calls</a> to any Wave.<br /><br />To learn more about building voice and text applications and the real-time communications APIs that are available to you, visit Voxeo in the Google I/O <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> or visit the <a href="http://blogs.voxeo.com/">Voxeo blog</a> and <a href="http://blog.tropo.com/">Tropo blog</a>.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Adam Kalsey, Developer Evangelist at Voxeo Developer Network</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-6041034816424831273?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/building-voice-instant-messaging-and-twitter-applications-in-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Connecting to Google Apps inside and out</title>
		<link>https://googledata.org/google-code/connecting-to-google-apps-inside-and-out/</link>
		<comments>https://googledata.org/google-code/connecting-to-google-apps-inside-and-out/#comments</comments>
		<pubDate>Wed, 19 May 2010 02:52:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Jeremy Glassenberg from Box.net, who will be demoing as part of the Dev...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Jeremy Glassenberg from Box.net, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />Google's rich platform for developers is matched only by its variety of innovative web services. So when working with Google APIs, why use only one or two Google services?<br /><br />When launching with the <a href="http://www.google.com/enterprise/marketplace/">Google Apps Marketplace</a> in March, <a href="http://box.net/">Box.net</a> could see opportunities in connecting with Google services across the board, from sharing files in Gmail to enhancing collaboration in Google Sites. But how could we connect to half a dozen different services, while making the interaction with a partner completely seamless and easy to use?<br /><br />Luckily, for those who want to go all-out on the Google platform, Google's diverse APIs provide what you need to code efficiently, and organized to connect everything in a way that makes sense. Here is what we’ve found helpful to help you optimize your development experience:<br /><br /><b>1. Standards across APIs</b><br /><br />By leveraging <a href="http://code.google.com/apis/accounts/docs/OpenID.html">Google's support</a> for the OpenID and Oauth protocols, we can not only connect Google users to access Box.net easily, but also to make all features of Google accessible from Box. This way, when Google Apps accounts connect to Box, we can automatically connect users to Google Docs, Google Sites, Google Calendar and Gmail through the magic of a secure, centralized single sign-on process.<br /><br /><b>2. APIs and Gadgets make for a seamless integration</b><br /><br />We wanted to make it easy for users to access services like Gmail and Google Docs from within Box. With our <a href="http://developers.box.net/">OpenBox Developer Platform</a>, we could make those Google services accessible through our simple file menu. Users could right-click on a file, and choose to "Share in Gmail", "Edit with Google Docs", etc. But we wanted to go even further, and integrate "inside and out" - making Google accessible in Box, and Box accessible in Google's services. This was made possible with <a href="http://code.google.com/apis/gadgets/">Google Gadgets</a>.<br /><br />By adjusting gadgets we made for OpenSocial partners such as LinkedIn, we could easily create Box.net gadgets that also work with iGoogle, Google Sites, and even Gmail Labs and Google Calendar Labs.  These "Box.net inside Google" gadgets became surprisingly popular among new users.<br /><br />We even found it possible to connect Google services together more deeply through these two-way integrations.  By making our OpenBox features available in our Google Gadgets, our users could edit a document from Box in Google Docs, or share a file into Google Sites, from within the Gmail sidebar.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_hxeX-x2YPOw/S_NV1PFjwcI/AAAAAAAAACg/P41fT3n67pg/s1600/box_net_Gmail_sidebar.jpg"><img style="cursor:pointer; cursor:hand;width: 320px; height: 316px;" src="http://1.bp.blogspot.com/_hxeX-x2YPOw/S_NV1PFjwcI/AAAAAAAAACg/P41fT3n67pg/s320/box_net_Gmail_sidebar.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5472812345256559042" /></a><br /><br /><b>3. Focus on user experience</b><br /><br />With multiple connections to Google services in Box, and the placement of Box.net inside four Google services via Google Gadgets, this became an exciting engineering project.  But we couldn't forget that everything needed to work in a straightforward, easy-to-use manner for businesses in Google Apps. Luckily, Google Apps' design and installation process for the Marketplace helps to bring just about everything together for the user.<br /><br />The installation process enables you to obtain the OpenID information for a Google Apps administrator, access rights to various Google APIs, and connect users in the same Google Apps domains automatically. This sounds great for your code, but pay attention to the user experience. Google Apps administrators need to understand what they're about to make accessible to their users. Sub-users of the Apps account need to be able to sign up easily as well.<br /><br />Users and administrators will also want to choose which services to use. In our case, some users wanted to edit Google Docs in Box.net, while others just want to access Box.net from within Gmail or Google Sites. Thus, just like within Google Apps' administrative console, Box.net made individual components easy to enable and disable. We also provided detailed instructions for adding and using each piece of the integration.<br /><br />---<br /><br />At Box, we look forward to continuing work with Google, integrating even more deeply as Box.net and Google both expand our platforms.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Jeremy Glassenberg, Platform Manage at Box.net</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5053997139405267597?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/connecting-to-google-apps-inside-and-out/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Dito Directory &#8211; Matching Customer Demand with Google Cloud Technology</title>
		<link>https://googledata.org/google-code/dito-directory-matching-customer-demand-with-google-cloud-technology/</link>
		<comments>https://googledata.org/google-code/dito-directory-matching-customer-demand-with-google-cloud-technology/#comments</comments>
		<pubDate>Wed, 19 May 2010 00:38:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Jim McNelis, co-founder and principal of Dito, who will be demoing as p...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Jim McNelis, co-founder and principal of Dito, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />As an early Google Apps Authorized Resellers, <a href="http://ditoweb.com">Dito</a>, an IT services company I co-founded in 2007, has become a trusted advisor to a diverse group of organizations using Google Apps. We’ve established strong relationships with each of our customers and are a go-to source for information on specific features and functionality, best practices, and work flow processes.  This gives us a unique insight into end-users’ needs as they ramp up on <a href="http://www.google.com/apps/intl/en/business/index.html">Google Apps</a>, and we continually work to improve our service offerings and our customers’ experiences.<br /><br />Over time, we compiled feedback from our clients and noticed an interesting trend - customers wanted a better way to manage their shared contacts within Google Apps.  Out of the box, Google Apps handles shared contact management via API’s, as opposed to a Graphical User Interface (GUI) which is most common.  Many small organizations don’t have the resources to develop a solution to interface with API’s. So, we decided to develop one for them that could easily integrate with Google Apps to allow administrators to manage, and end-users to browse and search, shared contacts within their domain. <br /><br />We appreciate the reliability and scalability of cloud-based solutions and wanted our application to live “in the cloud” as well.   After extensive research, we determined that <a href="http://code.google.com/appengine/">Google App Engine</a> was the right platform for our application since it works seamlessly with other products and tools within the Google ecosystem like <a href="http://code.google.com/webtoolkit/">Google Web Toolkit</a> and the <a href="http://code.google.com/googleapps/">Google Apps APIs</a>.  From there, we set out to develop our app: Dito Directory for Google Apps.<br /><br /><a href="http://ditoweb.com/services/custom-development/dito-directory/">Dito Directory</a> represented Dito’s first foray into the development business.  Sure, our developers had years of experience, but our team was new and we were preparing to develop apps on the bleeding edge of technology.  In years prior, developing an application with this functionality and accessibility would have been an expensive and exhaustive process which would have required client-side application development and everything that goes with it.<br /><br />Google App Engine and the <a href="http://www.google.com/enterprise/marketplace/">Google Apps Marketplace</a> erased these challenges and provide us with a simple yet elegant platform and distribution channel to deliver our application to the masses.  From concept to delivery, the application took two developers less than four months to complete - just in time for the launch of the Google Apps Marketplace.<br /><br />Since then, almost 1000 Google Apps admins have <a href="http://www.google.com/enterprise/marketplace/viewListing?productListingId=142+17560572133792753109">installed Dito Directory</a> on their domain resulting in numerous happy admins and end-users.  I hate to say it, but it wasn’t hard to get 1000 people to install our app either.  We basically relied on our existing customer base and the popularity of the Google Apps Marketplace to advertise our apps.  There has been not been a significant marketing push or advertising dollar spent...we simply developed the application, launched it on the marketplace, and now watch about 15 domains install Dito Directory every day.<br /><br />With all of the installs, we received great feedback from our customers, and our team continues to improve the functionality and performance of the app.  As a result, Directory continues to evolve to meet customers needs.  We don’t have to guess what users want, we simply listen to what they have to say and iterate accordingly.  And since our app is cloud-based, upgrades are easy.  There is no additional software to install. After we release new features, simply refresh your browser and the app is updated.<br /><br />During Google I/O this week, our team will showcase Dito Directory in the Enterprise pod at the Developer Sandbox.  If you’re attending the conference, please stop by to chat about our app, give us feedback, or just say hello. We’ll also be giving away the paid version of our app  to 10 lucky winners at the conference, and other exciting prizes. I hope to see you there.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Jim McNelis, co-founder and principal of Dito</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5550285863758172119?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/dito-directory-matching-customer-demand-with-google-cloud-technology/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creating Rich Experiences In The Browser With HTML5</title>
		<link>https://googledata.org/google-code/creating-rich-experiences-in-the-browser-with-html5/</link>
		<comments>https://googledata.org/google-code/creating-rich-experiences-in-the-browser-with-html5/#comments</comments>
		<pubDate>Tue, 18 May 2010 21:13:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Ryan Massie, Product Manager at Clicker.com who will be demoing as part...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Ryan Massie, Product Manager at Clicker.com who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />Over the years, the technical gap between engineering for the Web and engineering for an operating system has continued to narrow. Third party plug-ins led the way in this progression, until their services eventually became standardized and built into the browser itself.  Now, using <a href="http://html5.org/">HTML5</a>, we're outgrowing many of the limitations that came with developing for a specific OS or device, enabling us to create next generation user-experiences that bring more utility to more platforms than ever before.<br /><br />In general, building for the Web enables us to be more agile. By establishing implementation guidelines for video, animation, audio and storage, HTML5 further reduces the level of fragmentation across the Web, empowering developers to efficiently build rich, browser-based experiences of superior quality.<br /><br />For us here at <a href="http://www.clicker.com">Clicker</a>, that means opportunities to create more unique and immersive experiences that guide users to the premium-quality TV shows, movies, music videos and Web originals available to watch online. Using HTML5, we’re able to offer more innovative in-browser experiences with movement and reflections while providing a faster performance.<br /><br />One reason the Web is an amazing platform is because changes made to a given website are instantaneous and can be viewed by anyone in the world with an Internet connection. By creating browser-based utilities, optimized for various screens and devices, we can continue to create consistent, reliable and scalable experiences that push the boundaries of what people can do online, making the Web an increasingly more interesting place.  And as developers, it's important to make the Open Web a success. HTML5 and other advancements give us more opportunities to stretch the boundaries of what we can enable people to do. And, without the hindrance of downloads and the added benefit of increased browser speed, consumers will increasingly expect rich, browser-based experiences. This end-user demand will continue to spur the overall pace of innovation and development on the Open Web.<br /><br />We look forward to meeting fellow developers and continuing the conversation in person at I/O this week!<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Ryan Massie, Product Management, Clicker.com</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-6553070473095548526?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/creating-rich-experiences-in-the-browser-with-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A full ERP in the cloud with GWT and the Google Apps Marketplace</title>
		<link>https://googledata.org/google-code/a-full-erp-in-the-cloud-with-gwt-and-the-google-apps-marketplace/</link>
		<comments>https://googledata.org/google-code/a-full-erp-in-the-cloud-with-gwt-and-the-google-apps-marketplace/#comments</comments>
		<pubDate>Tue, 18 May 2010 17:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by  myERP.com’s Francois Nadal (CEO) and Thomas Ricard (CTO) who will be...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by  myERP.com’s Francois Nadal (CEO) and Thomas Ricard (CTO) who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br /><a href="http://myERP.com/">myERP.com</a> is a full <a href="http://en.wikipedia.org/wiki/Enterprise_resource_planning">ERP</a> solution that has been <a href="http://www.google.com/enterprise/marketplace/viewListing?productListingId=3488+15547342742109397516">available in the Google Apps Marketplace</a> since its launch in early March.<br /><br />Our all-in-one business suite includes all the functions a company needs to run their business from CRM to accounting to supply chain management. We've gotten a tremendous response from customers: in less than 3 weeks, we signed up more than 3,000 new small and medium customers.<br /><br />Getting started was not easy. First, we had to convert our Java application to the cloud, using <a href="http://code.google.com/webtoolkit/">Google Web Toolkit</a> (GWT). It was a task that took us nearly 2 years to complete <span class="Apple-style-span"   style="  color: rgb(51, 51, 51); font-family:Arial, sans-serif;font-size:13px;">—</span> we launched the first released of our ERP in the cloud in late 2008. It attracted the interest of Google engineers who subsequently invited us to <a href="http://code.google.com/events/io/2009/sandbox/myerp.html">present at the Google I/O 2009 developer conference</a> in San Francisco.<br /><br />To prepare for the Google Apps Marketplace launch, we started modifying our codebase. There were two very separate tasks to achieve. The first one was to OpenID-enable myERP.com, and more specifically SSO-enable it.  A Google Apps user should never be asked to enter his or her credentials to login to myERP.com. When you work with Google, you have to focus even more than you are used to on the user experience. The user should never see the underlying technology and just navigate from his Gmail inbox or his Google Calendar to myERP.com as if everything was a single application. That was the toughest part to do, since our application was not ready for it. So, we did a lot of refactoring. We're proud today to use our myERP.com software through our own Google Apps account.<br /><br />The second part was easier since we were already integrated with Google Contacts and Calendar long before the Google Apps Marketplace. The main change was that we used to ask individual users for their credentials, which was a security risk.  Now, we use OAuth. This development took us 2 weeks. We currently use the Google Contacts API to retrieve (import), create, update and delete customers created in myERP.com. We also use the Provisioning API to synchronize accounts in myERP.com with accounts in Google Apps. MyERP.com now lets customers use Gmail and Calendar to manage their Business Actions. Our next Google Apps development will focus on Google Docs: frequently requested features include exporting data to a Google Spreadsheet and putting an invoice in a Google Document.<br /><br />We will be demoing in the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> at Google I/O, and we look forward to seeing you there!<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Francois Nadal (CEO) and Thomas Ricard (CTO), myERP.com</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5803088535345660339?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/a-full-erp-in-the-cloud-with-gwt-and-the-google-apps-marketplace/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>4 Tips to Becoming a Top App in the Google Apps Marketplace</title>
		<link>https://googledata.org/google-code/4-tips-to-becoming-a-top-app-in-the-google-apps-marketplace/</link>
		<comments>https://googledata.org/google-code/4-tips-to-becoming-a-top-app-in-the-google-apps-marketplace/#comments</comments>
		<pubDate>Tue, 18 May 2010 16:30:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Amit Kulkarni, Co-Founder and CEO of Manymoon, who will be demoing as p...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Amit Kulkarni, Co-Founder and CEO of Manymoon, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_JYFiYUvHI/AAAAAAAAACY/g_vlLVZztTk/s1600/Manymoon_logo_big2.png"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 29px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_JYFiYUvHI/AAAAAAAAACY/g_vlLVZztTk/s200/Manymoon_logo_big2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5472533349359991922" /></a><a href="http://www.manymoon.com/auth/loginGoogle">Manymoon</a> is a free social productivity tool that helps teams manage and share projects, tasks and conversations. We became part of the Google Apps Marketplace at launch and have seen tremendous early success. Over 1,000 new businesses sign up each week, making us one of the top apps in the Marketplace. Below are some of our tips for building a successful app:<br /><br />1. <b>Define the problem - and make sure it's a big one!</b><br />For us, that was all the communication that gets lost in email. We thought email is great for notifications and is great ... as of 10 years ago.<br />But the internet is now social and about communicating for fun and work and both!  And Google Apps has 25 million users and is signing up over 3000 new businesses a day.<br />We realized there was a significant opportunity.<br /><br />2. <b>Simplicity Sticks</b><br />Building a web app is different than building an enterprise app.  The premium is on intuitiveness and ease of use.  You've lost if the user has to read a manual, FAQ or go through a tutorial.  User attention spans are short and it's critical for them to get up to speed in minutes.  And that meant starting with something very simple: sharing tasks and projects.<br /><br />3. <b>Focus on What You're Great At</b><br />While in private beta, we had numerous customers asking for the ability to add documents to tasks and projects.  The more we discussed with customers the more we realized that they were asking for features outside of our core vision.  For example, they were asking for things like version control and co-browsing.  This would have taken us months to build and is a whole different startup in fact!  Instead, we decided to integrate with the Google Docs APIs.  From a technical perspective, it provided us with the features our private beta users needed and it only took us a few weeks to complete!  We immediately saw significant traction with users since our daily visits increased by 300%.<br /><br />As we receive feature requests from users, we always look to see how we can integrate existing Google Apps to provide a better user experience.  Another great example is our calendar feature.  Customers were asking for a graphical calendar feature that included all necessary project information: open tasks, events and milestones.  We were able to use the Google Calendar API and in just a few days provide this feature to users.  We did this by using the API to automate multiple steps: create a calendar, share it with people and seamlessly update it with the latest project information.<br /><br />4. <b>Re-Use and Drive Engagement</b><br />One major benefit of using Google APIs was the way it reduced the friction to get users engaged.  We did this by re-using each user's existing data in Manymoon!  Specifically, a user can use Manymoon for tasks and projects that immediately work with their existing Google Docs, Google Calendars, Google Sites and Google Accounts (including OpenID).  This dramatically reduces the barrier to the user trying a new app and increases relevance (since their existing data is available within the app).<br /><br />We're presenting at Google I/O next week where we'll share more tips on this topic in our session, <a href="http://code.google.com/events/io/2010/sessions/reach-new-customers-apps-marketplace.html">Reach new customers fast: Learn how to sell your cloud app on the Google Apps Marketplace</a>.  We’ll also be in the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> and would love for you to stop by our station and share any questions, tips or tricks.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Amit Kulkarni, Co-Founder and CEO of Manymoon</span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5370341920066946576?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/4-tips-to-becoming-a-top-app-in-the-google-apps-marketplace/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Building a cloud sharing service one Google technology at a time</title>
		<link>https://googledata.org/google-code/building-a-cloud-sharing-service-one-google-technology-at-a-time/</link>
		<comments>https://googledata.org/google-code/building-a-cloud-sharing-service-one-google-technology-at-a-time/#comments</comments>
		<pubDate>Tue, 18 May 2010 00:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Navin Kumar, founder and CTO of Socialwok, a business sharing and socia...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Navin Kumar, founder and CTO of Socialwok, a business sharing and social collaboration service for Google Apps running on Google App Engine Java. Navin will be demoing Socialwok as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> and will be <a href="http://code.google.com/events/io/2010/sessions/google-buzz-apis.html">speaking on Google Buzz</a>.</i><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_hxeX-x2YPOw/S_Hc_kEvdpI/AAAAAAAAACQ/v7P47usG9mM/s1600/socialwok_logo.png"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 150px; height: 30px;" src="http://1.bp.blogspot.com/_hxeX-x2YPOw/S_Hc_kEvdpI/AAAAAAAAACQ/v7P47usG9mM/s200/socialwok_logo.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5472398006805296786" /></a>Socialwok is built using a wide range of Google technologies like <a href="http://code.google.com/appengine/docs/whatisgoogleappengine.html">Google App Engine Java</a>, <a href="http://code.google.com/webtoolkit/">Google Web Toolkit</a> (GWT) and <a href="http://code.google.com/apis/gdata/">Google Data APIs</a>. It also utilizes HTML5 and open standards based social protocols like <a href="http://code.google.com/p/pubsubhubbub/">PubSubHubub</a>,  <a href="http://activitystrea.ms/">ActivityStrea.ms</a>, Atom, OpenID, and OAuth.<br /><br />I would like to share with you some of the cool stuff we have built using this technology stack and our experiences with building <a href="http://www.socialwok.com/">Socialwok</a> on the Google Platform.<br /><br />1) <b>AppEngine with Java language support</b>. Google AppEngine provides a fantastic deployment platform for web applications that scale tremendously.  When Socialwok won the DemoPit Award at the TechCrunch50 and presented on stage, the thousands of new signups and posts were handled beautifully and smoothly during this period.  Also, with Java language support and support of Java standards like HTTP servlets and JDO, we gain the flexibility to take our app "behind the firewall" as necessary.<br /><br />2) <b>Google Web Toolkit</b>. Google Web Toolkit allows us to develop powerful Ajax-enabled web applications using the Java language.  Forget about dealing with browser quirks and handrolling thousands of lines of Javascript.  Also, with AppEngine Java, we can write all our code in one language (Java), enabling us to rapidly deploy features our users love.<br /><br />3) <b>HTML5 and Mobile</b>.  At Socialwok, we make extensive use of the latest web standards.  From your iPhone or Android, you can access our highly optimized mobile web interface, which uses HTML 5 offline capabilities to deliver "nearly" native performance from your mobile web browser.  HTML5 also allows us to embed video using very standard HTML layout and Javascript.  We are very excited about many more upcoming features, and Socialwok will take advantage of several of them. Here is the Google Web Toolkit blog post on how we leveraged GWT and HTML5 to build Socialwok mobile web version in under 4 days.<br /><br />4) <b>Google Docs and Google Calendar support</b>.  We use the excellent GData libraries to provide sharing of Google Calendar and Google Docs in our feeds. These Java libraries are fully capable of most of the functionality you would expect in these excellent Google products.  If you use Socialwok with a Google Apps Premier domain, you can even upload and share arbitrary files in Google Docs through Socialwok. Here is the Google Apps developer blog post on how we use GData libraries to preview Google Docs and office documents in the Google Docs viewer.<br /><br />5) <b>OpenID login using your Google Apps account</b>.  Socialwok utilized OpenID and OAuth to authenticate you and access your Google Apps data.  This means that no passwords are stored with us, and you have complete control over the access of your data.  Socialwok can automatically detect your Google Apps domain via your email address or you can even use /a/<domain>/ on our URLs just like Google Apps.  In fact, you can login in multiple Google Apps domains in the same browser with Socialwok. See our <a href="http://blog.socialwok.com/2010/04/new-features-new-feed-wizard-direct.html">blog post</a> for more info.<br /><br />6) <b>Rapid deployment using Google Apps Marketplace</b>.  Socialwok can now be <a href="http://www.google.com/enterprise/marketplace/viewListing?productListingId=3417+12478002564835859903&amp;hp=topRated">added</a> to any Google Apps domain by the domain administrator with one-click using the Google Apps Marketplace API. Once added to a domain, Socialwok will appear in the Google Apps control panel of the domain and can be launched from inside the Google Apps user interface. <a href="http://www.socialwok.com/marketplace">See here</a> for screenshots of how Socialwok will look when added through the Google Apps Marketplace.<br /><br />7) <b>Pull in external feeds using PubSubHubbub</b>.  Socialwok uses PubSubHubbub to pull in external Atom and RSS from many different sources.  We can even import your Google Buzz feeds into Socialwok. For more information, see our <a href="http://www.socialwok.com/tour_feed">Social Media Suite tour</a>.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_Hcvkb1EOI/AAAAAAAAACI/QLtr15c-d_U/s1600/product_socialwok.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 182px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S_Hcvkb1EOI/AAAAAAAAACI/QLtr15c-d_U/s320/product_socialwok.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5472397732024226018" /></a><br />8) <b>ActivityStrea.ms in and out</b>.  Socialwok can not only bring in ActivityStrea.ms from outside sources like Facebook, Google Buzz, and many others, but also produces ActivityStrea.ms output through our API.  This means that you can use Socialwok with any ActivityStrea.ms capable client, and export this easily to other external sites.<br /><br />9) <b>At the forefront of new Social Web standards</b>. In addition to ActivityStrea.ms, Socialwok also supports <a href="http://code.google.com/p/webfinger/">WebFinger</a> to automatically discover your Google Profile and your Google Buzz feed.  We will also support many more standards like <a href="http://www.salmon-protocol.org/">Salmon</a> and others in order to enhance our integration with the rest of the social web.<br /><br />10) <b>OAuth access to our API - <i>Coming Soon!</i>  </b> Soon you will be able to access our own API using OAuth.  Users will still be able to login using their Google credentials and you can build your very own apps to take advantage of the great integrations we do with Google Apps.<br /><br />11) <b>Install it right now from the Google Apps Marketplace</b>. Join over 10k+ Google Apps domains that have already installed Socialwok! Experience Socialwok for yourself and <a href="http://www.google.com/enterprise/marketplace/viewListing?productListingId=3417+12478002564835859903&amp;hp=topRated">install it</a> your Google Apps domain today.<br /><br />If you're attending Google I/O 2010, you can chat with us about Google App Engine, GWT, Google Apps Marketplace, or any other of the technologies described here in the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> on May 19 and 20. We look forward to seeing you there. For the latest updates on our experiences at Google I/O, check out <a href="http://blog.socialwok.com/">our blog</a> and follow us <a href="http://twitter.com/socialwok">on Twitter</a>.<br /><br /><span style="font-style: italic;" class="byline-author">Posted by Navin Kumar, founder and CTO of Socialwok</span></domain><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-2473214806433626422?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/building-a-cloud-sharing-service-one-google-technology-at-a-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Bringing more value to web analytics and A/B testing</title>
		<link>https://googledata.org/google-code/bringing-more-value-to-web-analytics-and-ab-testing/</link>
		<comments>https://googledata.org/google-code/bringing-more-value-to-web-analytics-and-ab-testing/#comments</comments>
		<pubDate>Mon, 17 May 2010 17:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Arnaldo M Pereira from BTBuckets who will be demoing as part of the Dev...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Arnaldo M Pereira from BTBuckets who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-4FUbdhwWI/AAAAAAAAABo/O6lpZ2vPcvE/s1600/btbuckets-logo.png"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 100px; height: 90px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-4FUbdhwWI/AAAAAAAAABo/O6lpZ2vPcvE/s200/btbuckets-logo.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5471316445828858210"></a>One of our greatest concerns when starting <a href="http://btbuckets.com/">BTBuckets</a> was scaling our infrastructure. We needed both cloud and platform services to fit our needs, and we tested many cloud service providers. In the end, we decided to create a mixed environment, running the profiling engine on <a href="http://code.google.com/appengine/">App Engine</a> and the front end on <a href="http://aws.amazon.com/ec2/">Amazon EC2</a>.<br /><br />Our experience with App Engine was smooth. There were times when the datastore would time out too frequently, but it was manageable and the application kept them from affecting our users. The biggest gain with App Engine is not needing to maintain our backend servers anymore. The old model, whether with in-house servers or an outside data center, involved disaster recovery and other high costs of maintaining infrastructure. We are relieved now that we can just focus on our business.<br /><br />After creating a profiling and targeting framework with a small footprint and a very low cost per request, the next step was to integrate it with two great Google products to improve sales and conversions: <a href="http://www.google.com/analytics/">Google Analytics</a> and <a href="https://www.google.com/analytics/siteopt/splash">Google Website Optimizer</a>.<br /><br />Google Analytics helps us understand website navigation and usage, while Website Optimizer allows optimization via A/B testing. Built on top of them, BTBuckets and its Chrome plug-in allows you to create user segments right within Google Analytics, as well as to apply A/B testing to a subset of the website audience. The user might even go beyond that, by easily creating custom actions for each created segment.<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-4F0iOgyMI/AAAAAAAAABw/fmdgXUtfP-8/s1600/btb_capture_new.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 302px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-4F0iOgyMI/AAAAAAAAABw/fmdgXUtfP-8/s320/btb_capture_new.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5471316997400742082"></a><br />We believe BTBuckets is a disruptive product: it adds value to the most common web analytics tools, it's generic enough to allow any customization through the JavaScript API, and it's free to use.<br /><br />If you're attending <a href="http://code.google.com/events/io/2010/">Google I/O</a>, be sure to visit us at the App Engine pod in the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> to learn more about BTBuckets!<br /><br /><font style="font-style: italic;" class="byline-author">By Arnaldo M Pereira, BTBuckets team</font><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-8598111555352236330?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/bringing-more-value-to-web-analytics-and-ab-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Spiral Spreads to 80 Countries in 20 Weeks. Thanks, GWT!</title>
		<link>https://googledata.org/google-code/spiral-spreads-to-80-countries-in-20-weeks-thanks-gwt/</link>
		<comments>https://googledata.org/google-code/spiral-spreads-to-80-countries-in-20-weeks-thanks-gwt/#comments</comments>
		<pubDate>Fri, 14 May 2010 21:49:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Reuben S. Kerben and Andrei Volgin, CEO and President of Spiral Univers...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://code.google.com/events/io/2010/">Google I/O</a>. This guest post is written by Reuben S. Kerben and Andrei Volgin, CEO and President of <a href="http://www.spiraluniverse.com/">Spiral Universe</a>, who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />When we started working on a new school information management system a couple of years ago, we wanted to make it available to all schools around the world even if they could not pay for it. Cloud architecture was the only way to go. The key challenge was to build a user interface that could work with any modern browser, support any language, and did not require any plugins. We chose <a href="http://code.google.com/webtoolkit/">Google Web Toolkit</a> (GWT). There were other RIA frameworks available, but few matched the scalability, performance and flexibility of the Java + GWT combo.<br /><br />GWT was in its infancy at that time, and our first "webtop" UI was sluggish. It took a leap of faith to stick with the webtop concept. We hoped that advances in web browsers and the GWT compiler would improve our UI performance by the time we hit the market. The GWT team delivered! Once we upgraded to <a href="http://code.google.com/webtoolkit/doc/latest/ReleaseNotes.html">GWT 2.0</a>, the UI became very responsive, and now it closely mimics the desktop experience.<br /><br />We also must thank Darrel Meyer and the <a href="http://www.extjs.com/products/gwt/">Ext GWT</a> team for improving their library, on which we rely heavily, and the entire Chrome team for raising the performance bar so quickly. After more than two years of coding, we released our beta to the public this January. Today, our system is already used by schools in 80 countries! We are proud to participate in Google I/O to show off our technology and, hopefully, inspire other developers to rethink their approach to UI. We also plan to shop for apps that we can integrate with our system. If your company has a cool product or service that schools, teachers, students or parents will be interested in, send us a note, or come talk to us at the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.<br /><br /><object width="427" height="248"><param name="movie" value="http://www.youtube.com/v/PaQaft9YAcc&amp;hl=en_US&amp;fs=1&amp;hd=1"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed src="http://www.youtube.com/v/PaQaft9YAcc&amp;hl=en_US&amp;fs=1&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="427" height="248"></embed></object><br /><br /><i>Posted by Reuben S. Kerben and Andrei Volgin, CEO and President of Spiral Universe</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-7022486716244479410?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/spiral-spreads-to-80-countries-in-20-weeks-thanks-gwt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Meet your technical writers at I/O</title>
		<link>https://googledata.org/google-code/meet-your-technical-writers-at-io/</link>
		<comments>https://googledata.org/google-code/meet-your-technical-writers-at-io/#comments</comments>
		<pubDate>Fri, 14 May 2010 00:30:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[The Google technical writers who write for code.google.com and developer.android.com will be attending Google I/O—and we’re eager to meet the developers who use Google APIs.  Look out for us at Google I/O. We’ll be wearing spiffy colorful T-shirt...]]></description>
				<content:encoded><![CDATA[<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-uJia0c20I/AAAAAAAAABA/rXFAaAd1R5U/s1600/tshirt.png"><img style="cursor:pointer; cursor:hand;width: 240px; height: 320px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-uJia0c20I/AAAAAAAAABA/rXFAaAd1R5U/s320/tshirt.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5470617396779473730"></a><br /><div><br /></div>The Google technical writers who write for <a href="http://code.google.com/">code.google.com</a> and <a href="http://developer.android.com/">developer.android.com</a> will be attending Google I/O—and we’re eager to meet the developers who use Google APIs.  Look out for us at Google I/O. We’ll be wearing spiffy colorful T-shirts that say “I can explain Google to you.”<br /><br />Stop us in the hallways or drop by one of our <a href="http://code.google.com/events/io/2010/officehours.html">office hour sessions</a> for a chat. We want to hear how you learn about an API, what’s missing from our docs, and how we can help you code faster and smarter. See you at I/O!<br /><br /><i>posted by the Google EngDocs writing team</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5004328477226892036?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/meet-your-technical-writers-at-io/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Contextual Discovery: The Next Generation of Location-Based Services</title>
		<link>https://googledata.org/google-code/contextual-discovery-the-next-generation-of-location-based-services/</link>
		<comments>https://googledata.org/google-code/contextual-discovery-the-next-generation-of-location-based-services/#comments</comments>
		<pubDate>Thu, 13 May 2010 19:58:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Aloqa’s Head of Client Development Matthias Schicker who will be demo...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://www.google-io.com/index.cfm?fuseaction=email.Redirect&amp;EID=613F6471770A">Google I/O</a>. This guest post is written by Aloqa’s Head of Client Development Matthias Schicker who will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />In the last few years, the mobile industry has overcome several infrastructure hurdles that location-based services (LBS) have historically faced -- cheap, small GPS receivers have become ubiquitous, CellID / Wifi positioning has become available on platforms like Android and iPhone, and some carriers have even started to make location information available. Not surprisingly, a wave of LBSs has been unleashed in the market. Yet LBS has still not lived up to its much vaunted promise.<br /><br />The reason, we believe, is that most location services are still "reactive" -- they treat the phone like a PC. The user is required to launch an application that returns information based on the user's location. While these "finder" services are certainly useful, with Aloqa, we believe we are striking at the core of three things that are fundamentally wrong with mobile LBS today:<br /><br />1. <b>Mobile phones shouldn't have to be used as browsers.</b> A phone is an interrupt-based device that is intended to alert you - ring when someone calls or buzz when an SMS comes in. It should "proactively notify" you, as obtrusively or unobtrusively as you'd like, of content, people, and places in your surroundings. So you never miss an opportunity to socialize, play, work, shop, watch a show, or just grab a coffee with a friend.<br /><br />2. <b>Location is only one part of a user's current "context".</b> Historically, "location" has been used a little too simplistically by mobile apps. The canonical LBS example is to walk by a Starbucks and get a coupon sent to your phone. Even ignoring the fact that Starbucks doesn't even have coupons, if all we got all day from mobile apps is aggressive ads of various kinds, of course we would hate "LBS" too.<br /><br />Location is just one component of a user's context. Who the user is, what they like, the time of day, their social graph - these are all important inputs to context as well. Your phone can be trained in a much smarter way to know you and therefore is a perfect device to give you "Context Based Services".<br /><br />3. <b>Point applications are good but it's getting beaten to death by a thousand apps.</b> Restaurants, toilets, bars, music, events, even friend finders - why have separate apps for them? This information should just be available to users at their fingertips and at once, and without having to launch individual applications and type into them.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-xmW6UxLrI/AAAAAAAAABg/78hLeN_x9xY/s1600/Aloqa+1+-+HomePage.png"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 124px; height: 200px;" src="http://3.bp.blogspot.com/_hxeX-x2YPOw/S-xmW6UxLrI/AAAAAAAAABg/78hLeN_x9xY/s200/Aloqa+1+-+HomePage.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5470860191147830962" /></a><a href="http://www.aloqa.com/">Aloqa</a> is a mobile service that proactively notifies you of a variety of interesting opportunities around you: places, events, bargains, friends and activities. A kind of universal "context based inbox" for all the world's location relevant content and services.<br /><ul><li>Instead of having to search, you can just look at your phone and see your local hotspots, events of interest, and recommended bargains.</li><li>Users can customize Aloqa and decide which Aloqa "channels" they want from our "channel store".</li><li>Using our <a href="http://dev.aloqa.com/">API</a>, publishers can create a channel and use our universal inbox for context relevant notifications, be it for biking trails, or popular bars where Pittsburgh Steelers fans congregate.</li></ul><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hxeX-x2YPOw/S-xcpGO7EGI/AAAAAAAAABI/SKhwD3jcYsM/s1600/barcode_aloqa.png"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 100px; height: 100px;" src="http://2.bp.blogspot.com/_hxeX-x2YPOw/S-xcpGO7EGI/AAAAAAAAABI/SKhwD3jcYsM/s320/barcode_aloqa.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5470849508465905762" /></a>If you have an Android phone, you can download Aloqa through the Android Market or scan this QR code to the left. To try our dev tools, go to <a href="http://dev.aloqa.com/">http://dev.aloqa.com</a>. We’d love to hear your feedback, and if you’re going to I/O, be sure to stop by the Developer Sandbox to see our demo!<br /><br /><i>posted by Matthias Schicker, Head of Client Development at Aloqa</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-1437846233477804038?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/contextual-discovery-the-next-generation-of-location-based-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Better performance in App Engine with new Lisp language Clojure</title>
		<link>https://googledata.org/google-code/better-performance-in-app-engine-with-new-lisp-language-clojure/</link>
		<comments>https://googledata.org/google-code/better-performance-in-app-engine-with-new-lisp-language-clojure/#comments</comments>
		<pubDate>Tue, 11 May 2010 02:24:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Stefan Richter, founder of freiheit.com technologies and creator of The...]]></description>
				<content:encoded><![CDATA[<i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://www.google-io.com/index.cfm?fuseaction=email.Redirect&amp;EID=613F6471770A">Google I/O</a>. This guest post is written by Stefan Richter, founder of freiheit.com technologies and creator of TheDeadline, an intelligent to-do manager running on Google App Engine. TheDeadline will be demoing as part of the <a href="http://code.google.com/events/io/2010/sandbox.html#App%20Engine">Developer Sandbox</a>.</i><br /><br />On Google App Engine, Google's cloud computing platform, developers can officially choose between two languages -- Python and Java. In the last couple of years, a large number of new programming languages were created and existing popular languages like Ruby were ported to run on the JVM. The good news: now almost any programming language that runs on the JVM should run under Google App Engine, too.<br /><br />When I read Paul Graham's Book "Hackers &amp; Painters" back in 2004, I was especially fascinated by his essay "<a href="http://www.paulgraham.com/avg.html">Beating the averages</a>" about his start-up company that was using Lisp as the main programming language.<br /><br />In 2009, when we <a href="http://www.slideshare.net/smartrevolution/how-a-clojure-pet-project-turned-into-a-fullblown-cloudcomputing-webapp">started</a> TheDeadline, we chose Clojure, a new Lisp language running on the JVM, as our main programming language, and we decided to use the Google App Engine Cloud Computing infrastructure to run our system.<br /><br />Paul Graham was right. Here is what we have learned:<br /><br />1. <b>Functional Programming with Clojure really makes you more productive.</b> We have a small team of three people with a background in Haskell and Common Lisp. We release a new version once a week and we estimate that we only write 30% of the code we would have to write in Java and about 50% of the code we would have to write in Python. Writing less code requires less time.<br /><br />2. <b>Clojure gives you powerful functional abstractions over simple data structures.</b> Writing less code means that this code must be much more powerful. As opposed to object-oriented programming where you build complex object-graphs using inheritance and composition, in functional programming, you are using simple data structures and powerful functional operators that work on these data structures. Internally TheDeadline uses a set of specialized mini-languages, also called Domain Specific Languages (DSL). We are using these mini-languages as the higher-level building blocks for our application.<br /><br />3. <b>Using Clojure on Google App Engine feels very natural.</b> It is very easy to access the App Engine SDK from Clojure as well as to integrate other existing Java libraries. App Engine's datastore fits especially well with Clojure as we use simple maps as data structures. These can be stored directly into Google's distributed key-value datastore.<br /><br />If you want to learn more, I invite you to read a <a href="http://www.hackers-with-attitude.com/2010/05/dsl-to-access-google-app-engine.html">more detailed technical posting</a> on our Hackers with Attitude blog about a very simple Clojure mini-language to access the App Engine datastore.<br /><br />Clojure in combination with Google App Engine became a competitive advantage for us. We are able to build new features quickly with a small team. With Google App Engine we have a zero-maintenance, low-cost cloud computing infrastructure designed for large-scale applications.<br /><br />If you are curious now and would like to try out TheDeadline, you can <a href="http://the-deadline.appspot.com/"> sign up here</a>. For more Clojure and App Engine related posts, you can follow our blog <a href="http://www.hackers-with-attitude.com/">H.W.A</a>. If you're attending Google I/O 2010, you can chat with us about Google App Engine, Clojure and the Universe in the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a> on May 19 and 20. We look forward to seeing you there.<br /><br /><i>by Stefan Richter, founder of freiheit.com</i><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-5966691488980545661?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/better-performance-in-app-engine-with-new-lisp-language-clojure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building Rich Enterprise Web Apps in the Cloud</title>
		<link>https://googledata.org/google-code/building-rich-enterprise-web-apps-in-the-cloud/</link>
		<comments>https://googledata.org/google-code/building-rich-enterprise-web-apps-in-the-cloud/#comments</comments>
		<pubDate>Mon, 10 May 2010 23:01:00 +0000</pubDate>
		<dc:creator><![CDATA[Susan Taing]]></dc:creator>
				<category><![CDATA[Google Code]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This post is part of the Who's @ Google I/O, a series of blog posts that give a closer look at developers who'll be speaking or demoing at Google I/O. This guest post is written by Benjamin Mestrallet, CEO of eXo, who will be demoing his platform for e...]]></description>
				<content:encoded><![CDATA[<p><i>This post is part of the <a href="http://googlecode.blogspot.com/2010/02/whos-google-io-all-things-google-web.html">Who's @ Google I/O</a>, a series of blog posts that give a closer look at developers who'll be speaking or demoing at <a href="http://www.google-io.com/index.cfm?fuseaction=email.Redirect&amp;EID=613F6471770A">Google I/O</a>. This guest post is written by Benjamin Mestrallet, CEO of eXo, who will be demoing his platform for enabling enterprise web apps as part of the <a href="http://code.google.com/events/io/2010/sandbox.html">Developer Sandbox</a>.</i><br /><br />In 2002, I wrote the first JSR 168 portlet container when I was a student in Paris.  It is now considered legacy because most enterprises have their intranets built on top of this technology. Today, a lighter weight model has replaced it.<br /><br /><b>Gadgets – the New User Interface</b><br />Gadgets and other influential consumer web technologies can dramatically improve enterprise applications. Unlike portlets, gadgets are client-side code that exchange structured data with the server using REST APIs that return JSON or xml objects. By leveraging JavaScript, HTML and CSS gadgets are not only easier to use and develop than portlets, they are also universal. Everyone can write a web app these days.<br /><br />The portlet container I built 8 years ago eventually led to me to found <a href="http://www.exoplatform.com/company/public/website/platform">eXo</a>, where we built a next-generation platform for Java with Google technologies like Gadgets, OpenSocial, GWT and Android. Our vision is simple: provide a platform for building applications with rich user experiences in the cloud. This means that the entire process of building an enterprise web application can be done online, from its development in a web IDE to its deployment and monitoring within a tenant of a cloud platform.<br /><br /><b>Use-Case – Marketing Mashup</b><br />To demonstrate how remarkably different the enterprise web application development process has become, let's look at a real-life use case with a Marketing Mashup application <a href="http://www.exoplatform.com/company/public/website/parameterizedviewer?path=/website/Products/Core%20Services/A%20Marketing%20Metrics%20Dashboard%202">you can download</a> (link to source code is at the end of the tutorial). Many marketing managers struggle to compile and integrate website analytics manually. Using the eXo Platform with Google Gadgets, we create a single mashup of these different sources of data in a single gadget.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_hxeX-x2YPOw/S-iSF24E1iI/AAAAAAAAAA4/F7BoShzym8I/s1600/marketing_metrics_gadget.jpg"><img style="cursor:pointer; cursor:hand;width: 319px; height: 216px;" src="http://2.bp.blogspot.com/_hxeX-x2YPOw/S-iSF24E1iI/AAAAAAAAAA4/F7BoShzym8I/s320/marketing_metrics_gadget.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5469782376769181218" /></a></p><p>This integration approach is the new, lightweight generation of <a href="http://en.wikipedia.org/wiki/Service-oriented_architecture">SOA</a>. We can expose a service’s data as a JSON object through a REST API. In our use case, we combined the existing Google Analytics data and created two new services: one to take the downloads data directly from our project forge sites and another created in groovy to list our press releases. We were able to quickly create this application online using the GWT-based eXo web IDE.<br /><br />A web IDE means you no longer have to build, test, package and deploy the application. Within this environment, you can use REST APIs using Groovy and OpenSocial gadgets, and deployment options are plenty, whether as a gadget in the platform dashboard, in another OpenSocial container such as iGoogle, and even in mobile apps like the ones we built for Android and the iPhone.<br /><br />Building and distributing applications has become a lot easier, and the features formerly associated with the consumer web are going to drastically improve the usefulness and usability of enterprise applications.<br /><br /><i>Posted by Benjamin Mestrallet, CEO of eXo</i><br /></p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/11300808-2187521958423951904?l=googlecode.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-code/building-rich-enterprise-web-apps-in-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
	</channel>
</rss>
