<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.rumbleware.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>RumbleWare</title>
	
	<link>http://www.rumbleware.com/blog</link>
	<description>Development. Simplified.</description>
	<lastBuildDate>Tue, 09 Mar 2010 18:40:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.rumbleware.com/rumbleware" /><feedburner:info uri="rumbleware" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Introducing DashPort Explorer</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/NLC8m6GFz98/</link>
		<comments>http://www.rumbleware.com/blog/2009/11/introducing-dashport-explorer/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 03:41:42 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[DashPort]]></category>
		<category><![CDATA[Products]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=75</guid>
		<description><![CDATA[Today we are introducing a new product, DashPort Explorer.  We recently demonstrated DashPort Explorer at salesforce.com&#8217;s Dreamforce show and received a lot of positive feedback.  We are excited to be releasing the product this week.
DashPort Explorer is a desktop application built using Adobe AIR technology that lets you get more out of  your salesforce.com dashboards.  Some [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="DashPort Explorer" src="http://www.rumbleware.com/images/dashport_explorer_shadow_96.png" alt="" width="96" height="96" />Today we are introducing a new product, <a href="http://www.rumbleware.com/products/dashport/explorer/">DashPort Explorer</a>.  We recently demonstrated DashPort Explorer at salesforce.com&#8217;s Dreamforce show and received a lot of positive feedback.  We are excited to be releasing the product this week.</p>
<p>DashPort Explorer is a desktop application built using Adobe AIR technology that lets you get more out of  your salesforce.com dashboards.  Some of the key features include:</p>
<ul style="margin-top: 10px; margin-right: 0px; margin-bottom: 0px; margin-left: 40px; list-style-type: disc; list-style-position: initial; list-style-image: initial; padding: 0px;">
<li style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; line-height: 18px; padding: 0px;"><strong style="padding: 0px; margin: 0px;">View.</strong> View your dashboard charts in a large format for easy viewing while projecting on a conference room screen. Access your dashboards while offline, whether in a remote conference room or on an airplane.</li>
<li style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; line-height: 18px; padding: 0px;"><strong style="padding: 0px; margin: 0px;">Snapshot.</strong> Automatically capture historical snapshots of your dashboards. View and compare historical dashboards to see how your organization’s metrics have changed over time.</li>
<li style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; line-height: 18px; padding: 0px;"><strong style="padding: 0px; margin: 0px;">Export.</strong> Export your dashboard charts and tables outside of salesforce.com to share with others in your organization who don&#8217;t have a salesforce license. Easily create PDF documents or Microsoft PowerPoint presentations from your salesforce.com dashboards.</li>
<li style="margin-top: 0px; margin-right: 0px; margin-bottom: 10px; margin-left: 0px; line-height: 18px; padding: 0px;"><strong style="padding: 0px; margin: 0px;">Print.</strong> Print your dashboards in a clean, professional style.</li>
</ul>
<p>For more information and to start a free 2-week trial, please visit the <a href="http://www.rumbleware.com/products/dashport/explorer/">DashPort Explorer</a> page on our website.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/11/introducing-dashport-explorer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/11/introducing-dashport-explorer/</feedburner:origLink></item>
		<item>
		<title>Visit RumbleWare at Dreamforce</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/DZZaiKtKo6g/</link>
		<comments>http://www.rumbleware.com/blog/2009/11/visit-rumbleware-at-dreamforce/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 18:03:03 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=27</guid>
		<description><![CDATA[
RumbleWare will be launching our latest product, DashPort Explorer, next week at Dreamforce.  Come visit us at the RumbleWare booth (#20) in the Dreamforce Cloud Expo!

Learn how to get more out of your salesforce.com analytics with DashPort Studio and Explorer.
View live product demonstrations.
Win two tickets to the 2010 PGA US Open at Pebble Beach.  We [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-full wp-image-70 alignright" title="DreamforceUsOpen" src="http://www.rumbleware.com/blog/wp-content/uploads/2009/11/DreamforceUsOpen.png" alt="Visit RumbleWare at Booth #20" width="200" height="200" /><br />
RumbleWare will be launching our latest product, <a href="http://www.rumbleware.com/products/dashport/explorer/">DashPort Explorer</a>, next week at <a href="http://www.salesforce.com/dreamforce" target="_blank">Dreamforce</a>.  Come visit us at the RumbleWare booth (#20) in the <a href="http://www.salesforce.com/dreamforce/DF09/site/explore/sponsors/" target="_blank">Dreamforce Cloud Expo</a>!</p>
<ul>
<li>Learn how to <strong>get more out of your salesforce.com analytics</strong> with <a href="http://www.rumbleware.com/products/dashport/">DashPort Studio and Explorer</a>.</li>
<li><strong>View live product demonstrations</strong>.</li>
<li><strong>Win two tickets to the 2010 PGA US Open at Pebble Beach</strong>.  We are giving away two tickets to the final weekend (June 19th and 20th) of the <a href="http://www.pebblebeach.com/page.asp?pageName=Golf_past_us_opens" target="_blank">2010 US Open at Pebble Beach</a>.  Stop by and enter for your chance to win!</li>
</ul>
<p>We look forward to seeing you there!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/11/visit-rumbleware-at-dreamforce/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/11/visit-rumbleware-at-dreamforce/</feedburner:origLink></item>
		<item>
		<title>Authenticating salesforce.com apps using OAuth</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/uW_jzng6K98/</link>
		<comments>http://www.rumbleware.com/blog/2009/10/authenticating-salesforce-com-apps-using-oauth/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 05:24:01 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[Technology]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=31</guid>
		<description><![CDATA[Salesforce.com recently introduced a new authentication method called Remote Access Applications in the Winter &#8216;10 release.  The Remote Access Applications feature uses the standard OAuth protocol to authenticate applications to salesforce.com.  It has several advantages over using the standard user credentials of username, password, and security token, but is a little more complicated for a [...]]]></description>
			<content:encoded><![CDATA[<p>Salesforce.com recently introduced a new authentication method called Remote Access Applications in the Winter &#8216;10 release.  The Remote Access Applications feature uses the standard <a href="http://oauth.net/" target="_blank">OAuth protocol</a> to authenticate applications to salesforce.com.  It has several advantages over using the standard user credentials of username, password, and security token, but is a little more complicated for a developer to implement and has a different user experience for authenticating users.  Since we are in active development on a <a href="http://www.rumbleware.com/blog/2009/09/dashport-explorer-sneak-peek/" target="_blank">new desktop product</a> that needs to authenticate to salesforce.com I thought I would try it out.</p>
<p>There is not a lot of information available on implementing OAuth for salesforce other than the salesforce.com documentation and the OAuth spec, but after reading both I thought I could get a prototype working in a couple of hours.  I was proved wrong when it took over 10 hours due to challenges in debugging the OAuth protocol and an implementation bug on salesforce&#8217;s part (a fix is due this week). In the end I was successful and the effort resulted in the creation of a few new ideas on the IdeaExchange on how this feature could be improved.  This post captures some of the challenges I experienced and lessons learned.</p>
<p><strong>Why use OAuth?</strong></p>
<p>If you are using a 3rd party salesforce.com application, at some point you probably entered your salesforce.com credentials in the form of your username, password and security token into the application.  The application securely stores your credentials and uses them to authenticate to salesforce.com to get access to the salesforce.com API. There are a few problems with this method:</p>
<ul>
<li>A security compromise of the application could result in a 3rd party gaining full access to the user&#8217;s salesforce.com account.  There is no centralized way for the application provider or salesforce.com to prevent the stolen credentials from being used.  Each user would need to be notified and reset their password and security token.</li>
<li>The application is granted the full privileges for that user determined by his profile.  There is no way to restrict access based on the type of application.  The net result is that many applications recommend the creation of a dedicated user account that has the correct permissions set in the profile.  This additional account increases the total cost of ownership of the application and complicates application setup and configuration.</li>
<li>If a user changes her password, she must update every application with the new password and security token.</li>
</ul>
<p>OAuth addresses these issues though the use of access tokens instead of using a user&#8217;s username, password, and security token.  To obtain an access token the application requests a new token and then directs the user to the salesforce.com website to authorize the token.  After logging in, the user is shown the following screen:</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-36" style="border: 1px solid black;" title="OAuth Authorization" src="http://www.rumbleware.com/blog/wp-content/uploads/2009/10/OAuth-Authorization.png" alt="OAuth Authorization" width="593" height="317" /></p>
<p>In this example, &#8220;gsOauthTest&#8221; is the name of my test application (Note the question mark icon is present because I did not provide an image url for the application).  If the user clicks <strong>Approve</strong> they are either directed back to the application (if it is a web application), or they are presented with a page that contains a verification ID to be entered in the application (in the case of desktop application).  Once the user has approved the access request, the application is then granted a valid access token.  The user can revoke access at any time.  There are several benefits to this method:</p>
<ul>
<li>If an application&#8217;s security is compromised and all users&#8217; access tokens were exposed, salesforce.com could immediately revoke all access tokens that were issued to that application.</li>
<li>If a user changes her password, the application&#8217;s access token is unaffected (I have verified this) and can still be used.</li>
<li>In theory, an application could also be granted restricted access to salesforce.com eliminating the need for a dedicated account with special profile permissions.  However, as salesforce.com has implemented OAuth today, there is no mechanism for an application developer to specify the type of access desired.  Salesforce.com still grants the same permission as is present in the user&#8217;s profile, but I hope this is an area they can improve on in the future.</li>
</ul>
<p><strong>Implementing a Remote Access Application &#8211; Lessons Learned</strong></p>
<p>Below are the basic steps to follow when developing an application that uses the Remote Access (OAuth) feature and some of the lessons I learned along the way:</p>
<ul>
<li>Create a new Remote Access Application using <em>Setup -&gt; Develop -&gt; Remote Access</em>.  This is pretty straightforward, but there are a few things worth noting.
<ul>
<li> The Application name is not globally unique (unlike managed package prefixes), <a href="http://ideas.salesforce.com/article/show/10098490/Remote_Access_Application_names_should_be_globally_unique" target="_blank">but probably should be for security reasons</a>.</li>
<li>You can provide an image url to be displayed on the authorization page.  If you don&#8217;t provide one, a broken image link is displayed instead, so I recommend you provide one.  <a href="http://ideas.salesforce.com/article/show/10098471/Salesforce_should_host_images_for_Remote_Access_Applications_OAuth" target="_blank">Ideally salesforce.com would host the image on your behalf</a>.</li>
<li>If you create the Remote Access Application as part of a managed package, users will not be able to authenticate using OAuth unless the package is already installed in their org.  This is an important consideration when designing your application.  For example, once a user is authenticated you can then use the API to determine if your package is installed, and if not guide the user through the process of installing it, this option is not available if you include the Remote Access Application in your managed package.  I have added an <a href="http://ideas.salesforce.com/article/show/10098489/Improve_error_message_for_packaged_Remote_Access_Applications_OAuth" target="_blank">idea on how salesforce could improve the process for managed packages</a>.</li>
</ul>
</li>
<li>Find a suitable OAuth client library (or write your own).  I would highly recommend using an <a href="http://oauth.net/code" target="_blank">existing OAuth library</a>, because <a href="http://josephsmarr.com/2009/02/17/implementing-oauth-is-still-too-hard-but-it-doesnt-have-to-be/" target="_blank">OAuth can be difficult to implement correctly</a>. In my case, our application is written in ActionScript, and I was not able to find a reliable library, so I wrote my own implementation.  The protocol is not complex and can be implemented quickly, but debugging it with a working server can be difficult.  If you are implementing your own I would highly recommend implementing it with a test server first.  You can get a list <a href="http://wiki.oauth.net/ServiceProviders">here</a>.  I used the server at <a href="http://term.ie/oauth/example/" target="_blank">http://term.ie/oauth/example/</a> because it gave the best error messages and allowed me to quickly debug my implementation.</li>
<li>Test against the salesforce.com OAuth servers.  If you have a working client library, this should be pretty straightforward.  But I&#8217;ll offer a few tips that worked for me:
<ul>
<li>There are three ways to send OAuth parameters to a server:  the HTTP Authorization header, HTTP POST parameters, or HTTP GET query string.  I was only able to get OAuth to work using the HTTP POST parameters.  My attempts at using the HTTP Authorization header were not successful and I didn&#8217;t try using the GET query string.  Your mileage may vary, but I know the POST parameters work in the Winter &#8216;10 release.</li>
<li>Salesforce initially has an implementation bug in how they computed the OAuth signature base string when using the login URL to obtain a session id.  You can read the details <a href="http://community.salesforce.com/sforce/board/message?board.id=general_development&amp;thread.id=34959" target="_blank">here</a>, but they have quickly fixed the issue after it was identified and will be rolling it into production this week.</li>
<li>When directing the user to the authorization page, salesforce does not automatically re-authenticate the user if they are already logged in.  Instead the user is presented with the authorization approval page immediately.  Since the <a href="http://ideas.salesforce.com/article/show/10098470/Identify_organization_and_username_when_authorizing_Remote_Access_Requests_OAuth" target="_blank">authorization page does not indicate the currently logged in username</a>, you can accidentally authorize the wrong account if you frequently use multiple accounts as I do.  I recommend logging out of your salesforce.com account before running OAuth tests to avoid any confusion during testing.</li>
</ul>
</li>
<li>Other implementation consideratons.
<ul>
<li>You should protect the access token and secret as if they were the user&#8217;s username and password.  This means storing them in an encrypted manner.  In our case Adobe AIR provides a cross-platform API to store encrypted data that uses OS-specific methods to protect data (DPAPI on Windows and KeyChain on Mac<span style="font-size: small;"><span> </span></span>OS).</li>
<li>Access token expiration.  Salesforce.com has not specified if access tokens expire after some period of time.  For now, I&#8217;m assuming that an access token expiration looks just like a user has revoked access.  So the same code path that handles revocation should handle token expiration.</li>
<li>Unique user keys.  If your application uses the username as a unique user key to access your application&#8217;s data, you may need to make a change.  When a user authenticates with OAuth you will not be given the user&#8217;s username.  You can request it via the API using the <em>getUserInfo</em> method, but if the user does not have API access and your application does not require the API you may not have access to the username when using OAuth.</li>
<li>Using OAuth exclusively.  Should use OAuth as the only method for authenticating users?  Given that the implementation is so new and has a few rough edges I wouldn&#8217;t recommend it as the only method.  For our new application, we will be supporting OAuth and the old way of username/password/security token.  I haven&#8217;t yet decided which will be the default preferred way, but I am leaning towards OAuth because it is a better model in the long term and I think salesforce will quickly work out any kinks by the next release.</li>
</ul>
</li>
</ul>
<p><strong>Summary</strong></p>
<p>The Remote Access Application feature provides a number of improvements over the existing methods of authenticating and managing user credentials for 3rd party salesforce.com applications.  However, I definitely felt like an early adopter on the bleeding edge when implementing the feature in our application with the Winter &#8216;10 release.  I was glad to see that salesforce quickly acknlowedged and fixed the one issue I found in their implementation.  I hope they are able to smooth out some of the rough edges I have identified on the IdeaExchange in future releases.  If you already have an application that is working and in production, I wouldn&#8217;t rush out and add OAuth support quite yet, I would probably wait a release or two.  But, if you are writing a new application that can take advantage of OAuth I would recommend taking a look.  Once our application is in production, I will post a followup that covers any issues and feedback we have from our users in using the Remote Access feature.</p>
<p>If you are considering implementing OAuth in your salesforce.com application, please take a look at some of the ideas I posted on AppExchange and promote them if you agree:</p>
<ul>
<li><a style="color: #015ba7; text-decoration: none !important;" href="http://ideas.salesforce.com/article/show/10098470/Identify_organization_and_username_when_authorizing_Remote_Access_Requests_OAuth" target="_blank">Identify organization and username when authorizing Remote Access Requests (OAuth)</a></li>
<li><a style="color: #015ba7; text-decoration: none !important;" href="http://ideas.salesforce.com/article/show/10098471/Salesforce_should_host_images_for_Remote_Access_Applications_OAuth" target="_blank">Salesforce should host images for Remote Access Applications (OAuth)</a></li>
<li><a style="color: #015ba7; text-decoration: none !important;" href="http://ideas.salesforce.com/article/show/10098488/Make_it_easier_to_debug_Remote_Access_Applications_OAuth" target="_blank">Make it easier to debug Remote Access Applications (OAuth)</a></li>
<li><a style="color: #015ba7; text-decoration: none !important;" href="http://ideas.salesforce.com/article/show/10098489/Improve_error_message_for_packaged_Remote_Access_Applications_OAuth" target="_blank">Improve error message for packaged Remote Access Applications (OAuth)</a></li>
<li><a style="color: #015ba7; text-decoration: none !important;" href="http://ideas.salesforce.com/article/show/10098490/Remote_Access_Application_names_should_be_globally_unique" target="_blank">Remote Access Application names should be globally unique</a></li>
</ul>
<p>Feedback and comments are welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/10/authenticating-salesforce-com-apps-using-oauth/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/10/authenticating-salesforce-com-apps-using-oauth/</feedburner:origLink></item>
		<item>
		<title>DashPort Explorer Sneak Peek</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/6JhhhrsBquk/</link>
		<comments>http://www.rumbleware.com/blog/2009/09/dashport-explorer-sneak-peek/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 18:28:41 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[DashPort]]></category>
		<category><![CDATA[Products]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=28</guid>
		<description><![CDATA[Updated (Nov 30, 2009): DashPort Explorer has now been released.  See the product details page for more information.
We&#8217;ve been busy at RumbleWare the past few weeks working on an exciting new addition to our DashPort product line called DashPort Explorer.  DashPort Explorer provides a new way to view your salesforce.com dashboards.  Here&#8217;s a quick list [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Updated (Nov 30, 2009):</strong> DashPort Explorer has now been released.  See the <a href="http://www.rumbleware.com/products/dashport/explorer/">product details</a> page for more information.</p>
<p>We&#8217;ve been busy at RumbleWare the past few weeks working on an exciting new addition to our DashPort product line called DashPort Explorer.  DashPort Explorer provides a new way to view your salesforce.com dashboards.  Here&#8217;s a quick list of some of the key features:</p>
<ul>
<li>Save  your dashboards as PDF or Microsoft PowerPoint.  No more screen captures or copy and paste to build PowerPoint presentations from dashboards.</li>
<li>View salesforce.com dashboards in a larger format suitable for projecting on a large conference room screen.  No more tiny charts on the big screen.</li>
<li>View historical dashboards with our snapshot feature.  No more wondering what that dashboard looked like last week or last month.</li>
</ul>
<p>We made a quick sneak peek video to show you some of these features you can check it out at the bottom of this post.</p>
<p>DashPort Explorer will be available in November 2009 for Microsoft Windows, Mac OS X, and Linux.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="700" height="394" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=6800110&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=ff9933&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="700" height="394" src="http://vimeo.com/moogaloop.swf?clip_id=6800110&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=ff9933&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/09/dashport-explorer-sneak-peek/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/09/dashport-explorer-sneak-peek/</feedburner:origLink></item>
		<item>
		<title>DashPort selected as the AppExchange App of the Week</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/MDIyFdZ6bC0/</link>
		<comments>http://www.rumbleware.com/blog/2009/08/dashport-appexchange-app-of-the-week/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 16:25:37 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=23</guid>
		<description><![CDATA[RumbleWare&#8217;s DashPort was selected as the AppExchange App of the Week.  To celebrate we are offering a 10% discount on all DashPort subscriptions purchased through September 7, 2009.
]]></description>
			<content:encoded><![CDATA[<p>RumbleWare&#8217;s DashPort was selected as the <a href="http://blogs.salesforce.com/the_appexchange_blog/2009/08/app-of-the-week-dashport-by-rumbleware.html">AppExchange App of the Week</a>.  To celebrate we are offering a 10% discount on all DashPort subscriptions purchased through September 7, 2009.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/08/dashport-appexchange-app-of-the-week/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/08/dashport-appexchange-app-of-the-week/</feedburner:origLink></item>
		<item>
		<title>Introducing DashPort Studio</title>
		<link>http://feeds.rumbleware.com/~r/rumbleware/~3/fs5fEbcXnOM/</link>
		<comments>http://www.rumbleware.com/blog/2009/08/introducing-dashport/#comments</comments>
		<pubDate>Thu, 27 Aug 2009 18:37:31 +0000</pubDate>
		<dc:creator>George Scott</dc:creator>
				<category><![CDATA[DashPort]]></category>
		<category><![CDATA[Products]]></category>

		<guid isPermaLink="false">http://www.rumbleware.com/blog/?p=16</guid>
		<description><![CDATA[RumbleWare is launching our first product, DashPort Studio, a management tool for salesforce.com dashboards and reports.  DashPort Studio enables salesforce.com administrators to easily explore, change, and organize their organization&#8217;s reports and dashboards using a simple intuitive user interface.  With DashPort Studio many common tasks in report and dashboard administration can be accomplished more quickly and [...]]]></description>
			<content:encoded><![CDATA[<p>RumbleWare is launching our first product, <a href="http://rumbleware.com/dashport">DashPort Studio</a>, a management tool for salesforce.com dashboards and reports.  DashPort Studio enables salesforce.com administrators to easily explore, change, and organize their organization&#8217;s reports and dashboards using a simple intuitive user interface.  With DashPort Studio many common tasks in report and dashboard administration can be accomplished more quickly and easily compared to the standard salesforce user interface.</p>
<p>A short video demonstration is included below.  To get more information, please visit <a href="http://www.rumbleware.com/products/dashport/studio/">rumbleware.com/dashport/studio/</a></p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="700" height="394" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=6438855&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=ff9933&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="700" height="394" src="http://vimeo.com/moogaloop.swf?clip_id=6438855&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=1&amp;color=ff9933&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.rumbleware.com/blog/2009/08/introducing-dashport/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.rumbleware.com/blog/2009/08/introducing-dashport/</feedburner:origLink></item>
	</channel>
</rss>
