<?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>Jeff Douglas - Technology, Coding and Bears... OH MY! &#187; Google</title>
	<atom:link href="http://blog.jeffdouglas.com/category/cloud-computing/google/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jeffdouglas.com</link>
	<description>Get your head out of your #@! and into the clouds!</description>
	<lastBuildDate>Thu, 02 Feb 2012 11:57:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Google Announces Beta for &#8220;Gmail on Your Box&#8221;</title>
		<link>http://blog.jeffdouglas.com/2011/04/01/google-announces-beta-for-gmail-on-your-box/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=google-announces-beta-for-gmail-on-your-box</link>
		<comments>http://blog.jeffdouglas.com/2011/04/01/google-announces-beta-for-gmail-on-your-box/#comments</comments>
		<pubDate>Fri, 01 Apr 2011 12:00:54 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3827</guid>
		<description><![CDATA[Google is set to announce a major strategy switch with respect to cloud computing later today. As a “trusted tester” Appirio is privy to certain information but we were placed on embargo until 8am EST this morning. According to our CMO, Narinder Singh, Google will shortly announce that they are launching a new beta called, [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2011%2F04%2F01%2Fgoogle-announces-beta-for-gmail-on-your-box%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2011%2F04%2F01%2Fgoogle-announces-beta-for-gmail-on-your-box%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Google is set to announce a major strategy switch with respect to cloud computing later today. As a “trusted tester” Appirio is privy to certain information but we were placed on embargo until 8am EST this morning. </p>
<p>According to our CMO, Narinder Singh, Google will shortly announce that they are launching a new beta called, “Gmail on Your Box”. This will allow large enterprises to install Gmail on servers in their own data centers and create a private cloud called “<em>S</em>ecurely <em>H</em>osted <em>I</em>nternal <em>T</em>ransmission“. </p>
<p>Narinder was playing squash with Google’s <a href="http://en.wikipedia.org/wiki/Scott_Tenorman_Must_Die">Scott Tenorman</a> last month when he let the cat slip out of the bag. “You know we’ve had a good couple of years with Gmail since it came out of beta, but Exchange is really starting to eat our lunch. I mean the cloud is cool and everything but I think we need to go ‘cheap and deep’ back onto servers.” He also told Narinder that companies he had spoken with recently really didn’t like the cloud model. They would much rather make their own hardware purchases, apply their own weekly patches and updates, worry about network and application security and perform daily backups. Plus hiring people to sit in the NOC to watch data packets go back and forth across the network is good for the economy. It generates good paying jobs.</p>
<p>Like most Google betas, “Gmail on Your Box” is only available for Windows due to system requirements. Narinder told me, “They had to make it available for Windows users only right now because the Admin Console only runs in Internet Explorer 6. They are using ActiveX controls for the UI layer.” </p>
<p>Distribution hasn’t been determined yet but you will initially be able to pick up a CD outside the door in “Google Colored” bins at Best Buy, Radio Shack and Walgreens. You can also pay by check and Google will mail you download instructions. However, this avenue is only available for CompuServe users.  It’s been rumored that “Gmail on Your Box” will also be bundled with Netscape Navigator 1.2, Yahoo! Toolbar and RealPlayer 5, but that cannot be confirmed at this time.</p>
<p><em>This April Fool’s joke was written by me and brought to you by the <a href="http://www.appirio.com">Appirio</a> AppDev COE.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2011/04/01/google-announces-beta-for-gmail-on-your-box/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google Chrome Extension &#8211; Force.com Logins</title>
		<link>http://blog.jeffdouglas.com/2010/12/15/google-chrome-extension-force-com-logins/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=google-chrome-extension-force-com-logins</link>
		<comments>http://blog.jeffdouglas.com/2010/12/15/google-chrome-extension-force-com-logins/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 13:49:57 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3346</guid>
		<description><![CDATA[One of our brilliant guys in our Appirio Japan office, Toshihiro Takasu, wrote this really slick Google Chrome Extension for managing your salesforce.com logins in Chrome: Keeps your salesforce.com account information (usrename, password, security token, and description). Lets you log into the account you selected with new tab. Lets you log into the account you selected [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F12%2F15%2Fgoogle-chrome-extension-force-com-logins%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F12%2F15%2Fgoogle-chrome-extension-force-com-logins%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>One of our brilliant guys in our Appirio Japan office, Toshihiro Takasu, wrote <a href="https://chrome.google.com/extensions/detail/ldjbglicecgnpkpdhpbogkednmmbebec#">this really slick Google Chrome Extension</a> for managing your salesforce.com logins in Chrome:</p>
<ul>
<li>Keeps your salesforce.com account information (usrename, password, security token, and description).</li>
<li>Lets you log into the account you selected with new tab.</li>
<li>Lets you log into the account you selected with new window (separate session).</li>
<li>Groups your account for easy management.</li>
<li>Searches accounts by username for you to quickly access the account.</li>
<li>Export and import the account information in XML format.</li>
</ul>
<p><a href="https://chrome.google.com/extensions/detail/ldjbglicecgnpkpdhpbogkednmmbebec#"><strong>You can install the extension here.</strong></a></p>
<p><img title="screenshot-force-logins.png" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/12/screenshot-force-logins.png" border="0" alt="screenshot-force-logins.png" width="409" height="281" /></p>
<p> </p>
<p>I&#8217;ve seen a few questions on Twitter regarding the security that is used to store credentials. I spoke with Toshi and he&#8217;s updated the extension&#8217;s page to include some more info. Essentially the extension is using Chrome&#8217;s <a href="http://www.rajdeepd.com/articles/chrome/localstrg/LocalStorageSample.htm">localStorage</a> which is only accessible to the extension itself and the Chrome developer tool. This is the same storage method that Chrome uses internally to save your credentials when you fill out a form. So if you trust Chrome to auto-fill your salesforce.com login credentials then this extension is doing basically the same thing but just making your life a little easier. It&#8217;s up to you.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/12/15/google-chrome-extension-force-com-logins/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Appirio Customer, RehabCare, Featured in Apple Commercial</title>
		<link>http://blog.jeffdouglas.com/2010/09/13/appirio-customer-rehabcare-featured-in-apple-commercial/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=appirio-customer-rehabcare-featured-in-apple-commercial</link>
		<comments>http://blog.jeffdouglas.com/2010/09/13/appirio-customer-rehabcare-featured-in-apple-commercial/#comments</comments>
		<pubDate>Mon, 13 Sep 2010 15:32:27 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>
		<category><![CDATA[The Internet Business]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3249</guid>
		<description><![CDATA[Our customer RehabCare is currently being featured in a really nice video on Apple&#8217;s iPad in Business website. I just finished up this project with a lot of other great people from Appirio and RehabCare on the team. Very fun and challenging work integrating with Google Health in addition to writing tons of Apex on [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F09%2F13%2Fappirio-customer-rehabcare-featured-in-apple-commercial%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F09%2F13%2Fappirio-customer-rehabcare-featured-in-apple-commercial%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>Our customer <a href="http://www.rehabcare.com/" target="_blank">RehabCare</a> is currently being featured in a really nice video on <a href="http://www.apple.com/ipad/business/profiles/rehabcare/" target="_blank">Apple&#8217;s iPad in Business</a> website. I just finished up this project with a lot of other great people from Appirio and RehabCare on the team. Very fun and challenging work integrating with Google Health in addition to writing tons of Apex on the Force.com platform.</p>
<p>You can <a href="http://www.apple.com/ipad/business/profiles/rehabcare/" target="_blank">watch the video here</a>.</p>
<p><a href="http://www.apple.com/ipad/business/profiles/rehabcare/" target="_blank"><img src="http://blog.jeffdouglas.com/wp-content/uploads/2010/09/rehabcare-video.png" border="0" alt="" width="525" height="319" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/09/13/appirio-customer-rehabcare-featured-in-apple-commercial/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Released &#8211; Force.com Utility Belt for Salesforce.com</title>
		<link>http://blog.jeffdouglas.com/2010/08/31/released-force-com-utility-belt/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=released-force-com-utility-belt</link>
		<comments>http://blog.jeffdouglas.com/2010/08/31/released-force-com-utility-belt/#comments</comments>
		<pubDate>Tue, 31 Aug 2010 15:41:07 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3222</guid>
		<description><![CDATA[The Force.com Utility Belt is a Google Chrome Extension that I wrote to make my life easier. While developing on the Force.com platform I consistently need access to Salesforce documents, message boards, code snippets, etc. and opening PDFs, searching documentation and looking up Visualforce component signatures becomes tedious. The extension evolved out my necessity to [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F31%2Freleased-force-com-utility-belt%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F31%2Freleased-force-com-utility-belt%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>The Force.com Utility Belt is a Google Chrome Extension that I wrote to make my life easier. While developing on the Force.com platform I consistently need access to Salesforce documents, message boards, code snippets, etc. and opening PDFs, searching documentation and looking up Visualforce component signatures becomes tedious. The extension evolved out my necessity to make myself more productive. I hope you find it useful as well. Please send me any ideas for enhancements that you have to make the tool better. Virtually anything you can do in Javascript is possible.</p>
<p><a href="https://chrome.google.com/extensions/detail/bchgkjmjnmekbampjoenadmoekocpbhp?hl=en" target="_blank"><strong>You can install the Force.com Utility Belt from the Google Chrome Extensions Gallery</strong></a></p>
<h3>Extension Interface</h3>
<p><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-1.png" rel="lightbox[3222]"><img class="alignnone size-full wp-image-3192" title="utilitybelt-1" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-1.png" alt="" width="558" height="204" /></a></p>
<p>When first activated, the extension display the interface above with the following features and functions:</p>
<ul>
<li>Defaults to the Quick Reference Topics interface</li>
<li>Displays links in the upper right for access to the main functionality of the extension (Quick Reference Topics, Search for Stuff and ID Converter)</li>
<li>Displays links to open <a href="http://developer.force.com" target="_blank">developer.force.com</a> and the <a href="http://wiki.developerforce.com/index.php/Documentation" target="_blank">Force.com documentation page</a> in a new tab</li>
<li>Displays the latest feed content from the Force.com blog in the bottom</li>
</ul>
<h3>Quick Reference Topics</h3>
<p><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-2.png" rel="lightbox[3222]"><img class="alignnone size-full wp-image-3198" title="utilitybelt-2" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-2.png" alt="" width="561" height="299" /></a></p>
<p>The following sections are loaded into the extension with short cuts to topics that I frequently use allowing me quick access to stuff that I typically forget. The sections include:</p>
<ul>
<li>Apex</li>
<li>Visualforce</li>
<li>Visualforce Components</li>
<li>SOQL</li>
<li>AJAX Toolkit</li>
<li>Web Services API</li>
</ul>
<p>Once you choose a section you can drill down into a specific topic, view it in the extension and even open the actual page in a new browser tab.</p>
<p><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-3.png" rel="lightbox[3222]"><img class="alignnone size-full wp-image-3200" title="utilitybelt-3" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-3.png" alt="" width="560" height="387" /></a></p>
<h3>Search for Stuff</h3>
<p>Since the Quick Reference Topics don&#8217;t include access to every topic in the Salesforce documentation, you need a convenient way to search for stuff. The search interface allows you to select a scope and perform a keyword search against the specific site. The results are displayed in a new browser tab. Due to popular demand, the following sites are searchable.</p>
<p><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-4.png" rel="lightbox[3222]"><img class="alignnone size-full wp-image-3202" title="utilitybelt-4" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-4.png" alt="" width="559" height="276" /></a></p>
<h3>ID Converter</h3>
<p>The ID Converter is from my <a href="http://blog.jeffdouglas.com/2010/08/01/google-chrome-extension-salesforce-com-id-converter/" target="_blank">original extension</a> so I rolled it into this one for convenience. It allows you to quickly create an 18 digit Salesforce ID from a 15 digit ID. Based upon some feedback I made a small change so that the extension tries to find a 15 digit ID from the tab&#8217;s current URL and pre-populate the conversion form field.</p>
<p><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-5.png" rel="lightbox[3222]"><img class="alignnone size-full wp-image-3206" title="utilitybelt-5" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/utilitybelt-5.png" alt="" width="560" height="217" /></a></p>
<p><strong>Please send me your feedback and suggestions for improvements.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/08/31/released-force-com-utility-belt/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Chrome Extension &#8211; Force.com Utility Belt for Saleforce.com</title>
		<link>http://blog.jeffdouglas.com/2010/08/26/chrome-extension-force-com-utility-belt-for-saleforce-com/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=chrome-extension-force-com-utility-belt-for-saleforce-com</link>
		<comments>http://blog.jeffdouglas.com/2010/08/26/chrome-extension-force-com-utility-belt-for-saleforce-com/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 12:40:33 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3134</guid>
		<description><![CDATA[I built the Chrome Extension Salesforce.com ID Converter last month and found it quite useful. I consistently need to check out the Salesforce.com developer guides (especially Apex and Visualforce) so I started on another extension to make my development tasks easier, the Force.com Utility Belt. The extension quickly grew in functionality so I thought I [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F26%2Fchrome-extension-force-com-utility-belt-for-saleforce-com%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F26%2Fchrome-extension-force-com-utility-belt-for-saleforce-com%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>I built the Chrome Extension <a href="http://blog.jeffdouglas.com/2010/08/01/google-chrome-extension-salesforce-com-id-converter/" target="_blank">Salesforce.com ID Converter</a> last month and found it quite useful. I consistently need to check out the Salesforce.com developer guides (especially Apex and Visualforce) so I started on another extension to make my development tasks easier, the Force.com Utility Belt.</p>
<p><img src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/chrome-extension2.png" alt="" width="550" /></p>
<p>The extension quickly grew in functionality so I thought I would ask other developers and admins for suggestions on how to make it more useful. It currently has the following features:</p>
<ul>
<li>Quick reference for Apex, Visualforce and Visualforce components</li>
<li>Converts 15 digit Salesforce IDs to 18 digit IDs</li>
<li>Quick link to open the Salesforce.com developer documentation page.</li>
</ul>
<p>&nbsp;</p>
<p><span class="youtube">
<object width="560" height="340">
<param name="movie" value="http://www.youtube.com/v/YCqEQmCmxiE?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" />
<param name="allowFullScreen" value="true" />
<embed wmode="opaque" src="http://www.youtube.com/v/YCqEQmCmxiE?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" type="application/x-shockwave-flash" allowfullscreen="true" width="560" height="340"></embed>
<param name="wmode" value="opaque" />
</object>
</span><p><a href="http://www.youtube.com/watch?v=YCqEQmCmxiE&fmt=18">www.youtube.com/watch?v=YCqEQmCmxiE</a></p></p>
<p>I hope to make the extension public soon but want to make some improvements first. I&#8217;m thinking about adding some sort of search functionality but how would you improve this extension? <strong><em>What features would you like to see?</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/08/26/chrome-extension-force-com-utility-belt-for-saleforce-com/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Google Chrome Extension: Salesforce.com ID Converter</title>
		<link>http://blog.jeffdouglas.com/2010/08/01/google-chrome-extension-salesforce-com-id-converter/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=google-chrome-extension-salesforce-com-id-converter</link>
		<comments>http://blog.jeffdouglas.com/2010/08/01/google-chrome-extension-salesforce-com-id-converter/#comments</comments>
		<pubDate>Sun, 01 Aug 2010 23:47:27 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=3005</guid>
		<description><![CDATA[The Saleforce UI displays 15 digit, case-sensitive IDs for records. However, for Windows machines you will need to use a case-safe version of the ID for data migration, API calls and such. It&#8217;s not hard to generate these 18 digits IDs but it does take some time. I&#8217;ve been working on a lot of Google [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F01%2Fgoogle-chrome-extension-salesforce-com-id-converter%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F08%2F01%2Fgoogle-chrome-extension-salesforce-com-id-converter%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p>The Saleforce UI displays 15 digit, case-sensitive IDs for records. However, for Windows machines you will need to use a case-safe version of the ID for data migration, API calls and such. It&#8217;s not hard to generate these 18 digits IDs but it does take some time. I&#8217;ve been working on a lot of Google Gadgets and Chrome extensions lately so I thought I would throw together a Chrome extension (sorry Firefox users!) to quickly generated an 18 digit Salesforce.com ID. Thanks to Ron Hess for the conversion script!</p>
<p>Building Chrome extensions is fairly simple with a little bit of HTML and Javascript. The Google Code site has some <a href="http://code.google.com/chrome/extensions/getstarted.html" target="_blank">sample &#8220;Hello World&#8221; code</a> as well as an <a href="http://www.youtube.com/watch?v=e3McMaHvlBY&amp;hd=1" target="_blank">extension video</a> to get you going. I&#8217;ve already started thinking about my next extension with a bunch of Force.com utilities that should make development life easier. I&#8217;ll be glad to share.</p>
<p><strong><a href="https://chrome.google.com/extensions/detail/kiagkehielelkabjcakhpekplnelkaol" target="_blank">You can download the extension here.</a> </strong></p>
<p>Please let me know if you have any issues, bugs or feedback.</p>
<p><img src="http://blog.jeffdouglas.com/wp-content/uploads/2010/08/chrome-extension.png" alt="Chrome Extension" width="526" height="298" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/08/01/google-chrome-extension-salesforce-com-id-converter/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Using RSA-SHA1 with Salesforce Crypto Class</title>
		<link>http://blog.jeffdouglas.com/2010/07/06/using-rsa-sha1-with-salesforce-crypto-class/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=using-rsa-sha1-with-salesforce-crypto-class</link>
		<comments>http://blog.jeffdouglas.com/2010/07/06/using-rsa-sha1-with-salesforce-crypto-class/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 21:28:31 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Apex]]></category>
		<category><![CDATA[Code Sample]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=2754</guid>
		<description><![CDATA[This is a rather obscure post but it will definitely come in handy to someone trying to use the RSA-SHA1 algorithm with the Salesforce Crypto class. I&#8217;m spent the past two days trying to hook up OAuth using Apex and various Google Services. The standard HMAC-SHA1 algorithm is fairly straight forward with OAuth and Google [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F07%2F06%2Fusing-rsa-sha1-with-salesforce-crypto-class%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F07%2F06%2Fusing-rsa-sha1-with-salesforce-crypto-class%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p style="clear: both">This is a rather obscure post but it will definitely come in handy to someone trying to use the RSA-SHA1 algorithm with the Salesforce Crypto class. I&#8217;m spent the past two days trying to hook up OAuth using Apex and various Google Services. The standard HMAC-SHA1 algorithm is fairly straight forward with OAuth and Google but when you are required to register a domain and upload a certificate&#8230; well things get somewhat hairy. There&#8217;s very little documentation on the RSA-SHA2 algorithm and I could only find one relevant post on the topic.</p>
<p style="clear: both">According to the <a href="http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_classes_restful_crypto.htm">Crypto docs</a>, the arguments for the <strong><u>sign</u></strong> method are an algorithm name (i.e., RSA-SHA1), an input Blob (the string to encrypt) and a privateKey Blob. The value of privateKey must be decoded using the EncodingUtilbase64Decode method, and should be in <a href="http://www.rsa.com/rsalabs/node.asp?id=2130" target="_blank">RSA&#8217;s PKCS #8 (1.2) Private-Key Information Syntax Standard form</a>. </p>
<p style="clear: both">The sample code from the docs doesn&#8217;t help determining how to obtain the privateKey:</p>
<p style="clear: both">

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="java" style="font-family:monospace;">String algorithmName = 'RSA';
String key = 'pkcs8 format private key';
Blob privateKey = EncodingUtil.base64Decode(key);
Blob input = Blob.valueOf('12345qwerty');
Crypto.sign(algorithmName, input, privateKey);</pre></td></tr></table></div>

</p>
<p style="clear: both">So after a couple of days of trial and error, swearing and sticking needles in my eyes, I finally came up with the solution for Google. It may not apply to other services but the methodology is roughly the same for the privateKey.</p>
<p style="clear: both">The first step is to generate a self-signing public certificate and private key. You can find more info <a href="http://code.google.com/apis/gdata/docs/auth/authsub.html#Registered" target="_blank">here</a>. Open terminal and run the following:</p>
<p style="clear: both; font-family: Verdana;">openssl req -x509 -nodes -days 365 -newkey rsa:1024 -sha1 -subj &#8216;/C=US/ST=CA/L=San Mateo/CN=www.appirio.com&#8217; -keyout key-mycompanyrsa.pem -out cert-mycompanyrsa.pem</p>
<p style="clear: both">This will spit out a cert file (cert-mycompanyrsa.pem) and private key file (key-mycompanyrsa.pem). Then upload the cert to your domain for the <a href="https://www.google.com/accounts/ManageDomains" target="_blank">Google account</a>. This will generate a consumer key and a consumer secret for your application.</p>
<p style="clear: both">Now here was my mistake. I was opening the private key file (key-mycompanyrsa.pem) and using the contents of this file in my Apex code for the privateKey Blob value. Google was choking when creating the OAuth request token saying that the signature was incorrect: <strong><em>signature_invalid</em></strong>.</p>
<p style="clear: both">Here&#8217;s the fix. You need to use the private key file (key-mycompanyrsa.pem) with the openssl pkcs8 command to process the private keys into PKCS#8 format.</p>
<p style="clear: both">Open terminal again and run:</p>
<p style="clear: both; font-family: Verdana;">openssl pkcs8 -topk8 -nocrypt -in key-mycompanyrsa.pem -outform PEM</p>
<p style="clear: both">This will display a new private key in terminal and <strong><em>THIS</em></strong> is the value you use for the privateKey argument for the sign method. Just copy everything betweek the &#8220;begin&#8221; line and &#8220;end&#8221; line.</p>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/07/privatekey.png" class="image-link" rel="lightbox[2754]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/07/privatekey-thumb.png" height="275" align="left" width="380" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a></p>
<p><br class="final-break" style="clear: both" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/07/06/using-rsa-sha1-with-salesforce-crypto-class/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Force.com Toolkit for Google Wave Demo at Google I/O</title>
		<link>http://blog.jeffdouglas.com/2010/06/10/force-com-toolkit-for-google-wave-demo-at-google-io/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=force-com-toolkit-for-google-wave-demo-at-google-io</link>
		<comments>http://blog.jeffdouglas.com/2010/06/10/force-com-toolkit-for-google-wave-demo-at-google-io/#comments</comments>
		<pubDate>Thu, 10 Jun 2010 11:47:42 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>
		<category><![CDATA[Wave]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=2644</guid>
		<description><![CDATA[I attended this demo at Google I/O and am glad that the video is finally available. I&#8217;ve wanted to post it for awhile but Google put the video up about a week ago and then promptly took it down. Not sure why&#8230;? I think Quinton Wall and Kris Muller did an awesome job with this [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F06%2F10%2Fforce-com-toolkit-for-google-wave-demo-at-google-io%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F06%2F10%2Fforce-com-toolkit-for-google-wave-demo-at-google-io%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p><a href="http://blog.jeffdouglas.com/2010/05/24/google-io-2010-recap/wavelogo-png/" rel="attachment wp-att-2598"><img src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/wavelogo-150x150.png" alt="" title="wavelogo.png" width="150" height="150" class="alignleft size-thumbnail wp-image-2598" /></a>I attended this demo at Google I/O and am glad that the video is finally available. I&#8217;ve wanted to post it for awhile but Google put the video up about a week ago and then promptly took it down. Not sure why&#8230;? </p>
<p>I think <a href="http://twitter.com/cloudcoder">Quinton Wall</a> and Kris Muller did an awesome job with this demo. Quinton spent most of his time at Google I/O working the Developer Sandbox so it was good to see that Salesforce had such great representation at the event. Even <a href="http://twitter.com/dcarroll">Dave Carroll</a> graced the event with his presence. Every time I stopped by the booth they were busy giving demos. I know the Wave Team was very happy with the presentation and I overhead them talking very positively about it.</p>
<p>The use case for the demo was perfect. You have a team working an Opportunity and quickly want to start up a wave to begin collaborating on strategies to close it. With essentially one click you can spin up a wave with all team members and attach it to the Opportunity for historical reference. You can even invite resources from outside your domain to collaborate. The cool part of the demo is that Wave can then post updates to the Chatter feed using OAuth. I wanted to do something similar with Wave a couple of months ago about but was not able to since, at that time, a robot was not able to add participants. Glad to see that when the new <a href="http://googlewavedev.blogspot.com/2010/03/introducing-robots-api-v2-rise-of.html">Robots API v2</a> came out, Quinton was able to make this happen. Kudos to Quinton! Great job!</p>
<p>Scroll into minute 19 to see the start of the Salesforce portion of the demo. For more info on the toolkit, check out the <a href="http://wiki.developerforce.com/index.php/Forcedotcom_Toolkit_for_Google_Wave">An Introduction to the Force.com Toolkit for Google Wave</a>.</p>
<p><span class="youtube">
<object width="560" height="340">
<param name="movie" value="http://www.youtube.com/v/q8jjIMGB1Fw?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" />
<param name="allowFullScreen" value="true" />
<embed wmode="opaque" src="http://www.youtube.com/v/q8jjIMGB1Fw?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" type="application/x-shockwave-flash" allowfullscreen="true" width="560" height="340"></embed>
<param name="wmode" value="opaque" />
</object>
</span><p><a href="http://www.youtube.com/watch?v=q8jjIMGB1Fw&fmt=18">www.youtube.com/watch?v=q8jjIMGB1Fw</a></p></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/06/10/force-com-toolkit-for-google-wave-demo-at-google-io/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google I/O 2010 Recap</title>
		<link>http://blog.jeffdouglas.com/2010/05/24/google-io-2010-recap/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=google-io-2010-recap</link>
		<comments>http://blog.jeffdouglas.com/2010/05/24/google-io-2010-recap/#comments</comments>
		<pubDate>Tue, 25 May 2010 02:40:19 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Wave]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=2603</guid>
		<description><![CDATA[I&#8217;m back from Google I/O 2010 in San Francisco and am finally able to take a breath. There were over 5,000 developers, 90+ technical sessions, over 180 companies peddling their tech in the Sandbox and a steady stream of product and technology announcements. It was two action-packed days of deep technical content featuring Android, Google [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F05%2F24%2Fgoogle-io-2010-recap%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F05%2F24%2Fgoogle-io-2010-recap%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/io2010logo-1.png" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/io2010logo-1-thumb.png" height="93" align="left" width="175" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a>I&#8217;m back from <a href="http://code.google.com/events/io/2010/" target="_blank">Google I/O 2010</a> in San Francisco and am finally able to take a breath. There were over 5,000 developers, 90+ technical sessions, over 180 companies peddling their tech in the Sandbox and a steady stream of product and technology announcements. It was two action-packed days of deep technical content featuring Android, Google Chrome, Google APIs, GWT, App Engine, open web technologies and much, much more. I&#8217;m so glad to be working in the cloud with all of this new crap to play with! Here&#8217;s a short list of things that stuck out the most for me.</p>
<p style="clear: both">Vic Gundotra (Vice President, Engineering) stated that &#8220;I/O&#8221; represented &#8220;Innovation&#8221; and &#8220;Openness&#8221; and that was the theme throughout the two day event. Google relentlessly bashed Apple for their stance on a number of issues (no Flash, AT&#038;T only, policed App Store, etc) and cemented their &#8220;kumbayah&#8221; of inclusiveness and standards. Google drove home their support for HTML5, Flash and a new open-source, royalty-free video format called <a href="http://www.webmproject.org/about/" target="_blank">WebM</a>.</p>
<p style="clear: both">The Day 2 Keynote was awesome! One of the most riveting keynotes I&#8217;ve ever seen. You&#8217;ll definitely want to watch the video below.</p>
<p style="clear: both"><span class="youtube">
<object width="560" height="340">
<param name="movie" value="http://www.youtube.com/v/IY3U2GXhz44?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" />
<param name="allowFullScreen" value="true" />
<embed wmode="opaque" src="http://www.youtube.com/v/IY3U2GXhz44?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" type="application/x-shockwave-flash" allowfullscreen="true" width="560" height="340"></embed>
<param name="wmode" value="opaque" />
</object>
</span><p><a href="http://www.youtube.com/watch?v=IY3U2GXhz44&fmt=18">www.youtube.com/watch?v=IY3U2GXhz44</a></p></p>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/froyo.png" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/froyo-thumb.png" height="126" align="left" width="150" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a><strong>Android, Android and more Android</strong><br />This might have well been called the &#8220;Android Developer&#8217;s Conference&#8221; as most of the emphasis was on their mobile platform. I have to admit that they didn&#8217;t disappoint. All of Android sessions and labs were packed and some even turned away people. I attended a couple of hacker sessions including development best practices, game development and building REST clients. </p>
<p style="clear: both">Last year Google gave every attendee a Nexus One at the event. This year they were smart and shipped everyone a Nexus One or Droid a month before the event to help them get up and running on the Android platform. Then, to everyone&#8217;s surprise, they gave everyone on day 2 <strong><em><u>another</u></em></strong> Android device; the <a href="http://now.sprint.com/evo/" target="_blank">Sprint HTC EVO</a> that ships next month. I&#8217;m seriously in love with this phone and am considering giving up my iPhone. </p>
<p style="clear: both">The major announcement was the release of Android 2.2 Froyo (Frozen Yogurt). Some of the highlight include:</p>
<p style="clear: both">
<ul style="clear: both">
<li>2-5x speed increase with devices running the Dalvik just-in-time (JIT) compiler</li>
<li>2-3x browser speed improvement with the Chrome V8 engine </li>
<li>Support for Microsoft Exchange</li>
<li>Flash support</li>
<li>Tethering and Portable Hotspot</li>
<li>App Storage on SD - run app directly from the SD card</li>
<li>Update All and Auto-update for applications</li>
</ul>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/appengine4.jpg" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/appengine4-thumb.jpg" height="111" align="left" width="145" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a><strong>App Engine for Business</strong><br />After two years, Google finally announced a service target specifically at small businesses. The service adds management and support features tailored specifically for the enterprise allowing them to take advantage of the core benefits of Google App Engine: easy development using familiar languages (Java and Python); simple administration, with no need to worry about hardware, patches or backups; and effortless scalability. However, some of the details, especially pricing, were fuzzy. My favorite was announced support for SQL databases (presumably MySQL).</p>
<p style="clear: both">
<ul style="clear: both">
<li>Centralized administration: A new, company-focused administration console lets companies manage all the applications in their domain.</li>
<li>Reliability and support: 99.9% uptime service level agreement, with premium developer support available.</li>
<li>Secure by default: Only users from the Google Apps domain can access applications and corporate security policies are enforced on every app.</li>
<li>Pricing that makes sense: Each application costs just $8 per user, per month up to a maximum of $1000 a month. This is the part I didn&#8217;t quite understand as it must be for non-domain users.</li>
<li>Enterprise features: Coming later this year, hosted SQL databases, SSL on the company’s domain for secure communications, and access to advanced Google services.</li>
</ul>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/wavelogo.png" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/wavelogo-thumb.png" height="150" align="left" width="150" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a><strong>Google Wave</strong><br />Over the last number of months the Wave team has made a number of enhancements to the service. They&#8217;ve added an <a href="http://googlewave.blogspot.com/2010/05/discover-your-favorite-extension-today.html" target="_blank">extensions gallery</a>, <a href="http://googlewavedev.blogspot.com/2010/03/introducing-robots-api-v2-rise-of.html" target="_blank">Robots API v2</a>, Active Robot API and an <a href="http://googlewavedev.blogspot.com/2010/04/embed-api-improvements-viewing-public.html" target="_blank">anonymous read-only access for embedded waves</a>. They made the statement in a number of sessions that if you tried Wave in the past to please come back and take a look at Wave now given the number of enhancements. Google also went so far as to make Wave available for Google Apps (Standard, Premier and Education Editions). Some features announced at I/O include:</p>
<p style="clear: both">
<ul style="clear: both">
<li>Run robots on any server &#8212; not just App Engine. They also announced that you can program robots in <a href="http://code.google.com/p/go/" target="_blank">Google Go</a>.</li>
<li>Use a robot to manipulate and retrieve attachments within a wave</li>
<li>Use the &#8220;Wave This&#8221; service to let your website&#8217;s visitors easily create waves out of the content on your site. </li>
<li>Fetch waves on behalf of users with Wave data APIs</li>
</ul>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/gwt-logo.png" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/gwt-logo-thumb.png" height="100" align="left" width="100" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a><strong>Google Web Toolkit</strong><br />GWT sessions were quite numerous and popular and the Day 1 keynote revealed some exciting new features. VMware and Google announced a collaboration centered around the Spring programming model, <a href="tp://www.springsource.com/products/sts" target="_blank">SpringSource Tool Suite</a> and <a href="http://www.springsource.org/roo" target="_blank">Spring Roo</a>. The highlights of the announcement include:</p>
<p style="clear: both">
<ul style="clear: both">
<li>Tight integration with SpringSource Tool Suite and Spring Roo to provide a polished, productive developer experience</li>
<li>Innovative, close integration between Spring and Google Web Toolkit offering the ability to build rich applications with amazing speed</li>
<li>The ability to easily target Spring applications to Google App Engine</li>
<li>A compelling integration between Spring Insight and Google Speed Tracer to provide insight into the performance of Spring applications from browser to database</li>
</ul>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/tv_logo.gif" class="image-link" rel="lightbox[2603]"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/05/tv_logo-thumb.gif" height="40" align="left" width="133" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a><strong>Google TV</strong><br />This was the main announcement of the second half of the Day 2 keynote. A lot of people were surprised as there were talks of a Google tablet in the air. The keynote demo was very interesting as they ran into a number of glitches involving Bluetooth connectivity between the keyboard and set top box (no one thought of bringing a standard keyboard with a cable?). The idea is not new but they are bringing together some industry powerhouses (Sony, Intel, Adobe, Best Buy, Logitech and Dish Network) to bring the concept to market by this Christmas. TechCrunch has a <a href="http://techcrunch.com/2010/05/20/google-tv/" target="_blank">really good review</a> of Google TV.</p>
<p style="clear: both">Some other interesting announcements were:</p>
<p style="clear: both">
<ul style="clear: both">
<li><a href="http://code.google.com/apis/storage/" target="_blank">Google Storage for Developers</a> - store your data in Google&#8217;s cloud</li>
<li><a href="https://chrome.google.com/webstore" target="_blank">Chrome Web Store</a> - an app store for websites</li>
<li><a href="http://code.google.com/apis/predict/" target="_blank">Google Prediction API</a> - machine learning algorithms to analyze your historic data and predict likely future outcomes</li>
<li><a href="http://googlecode.blogspot.com/2010/05/introducing-webfont-loader-in.html" target="_blank">WebFont API</a> - support for web fonts</li>
<li><a href="http://googlecode.blogspot.com/2010/05/introducing-google-buzz-api.html" target="_blank">Google Buzz API</a> - access to the Buzz platform</li>
<li><a href="http://googlecode.blogspot.com/2010/05/with-new-google-latitude-api-build.html" target="_blank">Latitude API</a> - a simple way to share your location with whomever you like</li>
</ul>
<p></p>
<p><br class="final-break" style="clear: both" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/05/24/google-io-2010-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Appirio Announces PS Connect at Google Campfire One</title>
		<link>http://blog.jeffdouglas.com/2010/03/10/appirio-announces-ps-connect-at-google-campfire-one/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=appirio-announces-ps-connect-at-google-campfire-one</link>
		<comments>http://blog.jeffdouglas.com/2010/03/10/appirio-announces-ps-connect-at-google-campfire-one/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 14:28:34 +0000</pubDate>
		<dc:creator>Jeff Douglas</dc:creator>
				<category><![CDATA[Appirio]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Salesforce]]></category>
		<category><![CDATA[The Internet Business]]></category>

		<guid isPermaLink="false">http://blog.jeffdouglas.com/?p=2307</guid>
		<description><![CDATA[Last night at Google Campfire One we demonstrated PS Connect, a new extension to our PS Enterprise product that allows service professionals to run their business directly from their Gmail inbox. We were the closing presentation for the night and you can view the video of the demo below. It&#8217;s roughly a 5 minute video [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F03%2F10%2Fappirio-announces-ps-connect-at-google-campfire-one%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.jeffdouglas.com%2F2010%2F03%2F10%2Fappirio-announces-ps-connect-at-google-campfire-one%2F&amp;source=jeffdonthemic&amp;style=normal&amp;service=bit.ly&amp;b=2" height="61" width="50" /><br />
			</a>
		</div>
<p style="clear: both"><a href="http://blog.jeffdouglas.com/wp-content/uploads/2010/03/PSConnect2.gif" class="image-link" rel="lightbox"><img class="linked-to-original" src="http://blog.jeffdouglas.com/wp-content/uploads/2010/03/PSConnect2-thumb.gif" height="136" align="left" width="200" style=" display: inline; float: left; margin: 0 10px 10px 0;" /></a>Last night at <a href="http://code.google.com/campfire/">Google Campfire One</a> we demonstrated <a href="http://www.appirio.com/products/PSEconnect.php" target="_blank">PS Connect</a>, a new extension to our PS Enterprise product that allows service professionals to run their business <strong><em>directly from their Gmail inbox</em></strong>. We were the closing presentation for the night and you can view the video of the demo below. It&#8217;s roughly a 5 minute video and is really great!</strong></p>
<p style="clear: both">So what is PS Connect? PS Connect allows you to use Google Apps as a front end to cloud-based business applications. With our Gmail contextual gadgets you can take actions from inside your Gmail inbox instead of logging into multiple systems.</p>
<p>You can read the <a href="http://blog.appirio.com/2010/03/google-campfire-one-enterprise-apps-get.html" target="_blank">full announcement</a> on our website or get <a href="http://www.appirio.com/products/PSEconnect.php" target="_blank">more info on PS Connect</a>. If you&#8217;d like a deeper dive, you can even sign up for a <a href="http://thecloud.appirio.com/PSE-Demo.html" target="_blank">30 minute demo</a>.</p>
<p style="clear: both"><span class="youtube">
<object width="560" height="340">
<param name="movie" value="http://www.youtube.com/v/sO0gSFBlhrI?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" />
<param name="allowFullScreen" value="true" />
<embed wmode="opaque" src="http://www.youtube.com/v/sO0gSFBlhrI?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;loop=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1&amp;hd=1" type="application/x-shockwave-flash" allowfullscreen="true" width="560" height="340"></embed>
<param name="wmode" value="opaque" />
</object>
</span><p><a href="http://www.youtube.com/watch?v=sO0gSFBlhrI&fmt=18">www.youtube.com/watch?v=sO0gSFBlhrI</a></p></p>
<p><br class="final-break" style="clear: both" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jeffdouglas.com/2010/03/10/appirio-announces-ps-connect-at-google-campfire-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

