<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8340047883666444153</id><updated>2025-08-31T01:08:56.520-06:00</updated><category term="weblogicportal"/><category term="saas"/><category term="mashup"/><category term="web"/><category term="cloudcomputing"/><category term="paas"/><category term="enterprise"/><category term="ondemand"/><category term="http"/><category term="javascript"/><category term="weblogic"/><category term="greasemonkey"/><category term="security"/><category term="sso"/><category term="webanalytics"/><category term="ajax"/><category term="googlegadgets"/><category term="popfly"/><category term="twitter"/><category term="AquaLogic"/><category term="BPM"/><category term="REST"/><category term="authentication"/><category term="blog"/><category term="commerce"/><category term="googleanalytics"/><category term="j2ee"/><category term="jsr168"/><category term="performance"/><category term="podcasts"/><category term="taxonomy"/><category term="workshop"/><category term="wsrp"/><title type='text'>Laird OnDemand</title><subtitle type='html'>Peter Laird covers the enterprise software space, focusing on topics such as SaaS, PaaS, Cloud Computing, Mashups, Portals, and Java development.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>40</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-6099727188491929262</id><published>2009-12-05T01:18:00.001-07:00</published><updated>2009-12-05T01:18:30.000-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="webanalytics"/><title type='text'>Ranking Cloud Computing Vendors 2009</title><content type='html'>&lt;p&gt;With the close of 2009 coming soon, I expect to see a number of “2009 - Cloud Computing in Review” type posts. Let me get a jump on everyone and release mine a few weeks early. Though I am a developer, my Cloud posts have all been analytical in nature and this one is no different. For this post I chose a single data source for stack ranking the Cloud Computing vendors – Google search results. Not terribly scientific, but an approach that produced interesting results. &lt;/p&gt;  &lt;h3&gt;Google as an Analysis Tool&lt;/h3&gt;  &lt;p&gt;I have created a number of editions of &lt;a href=&quot;http://peterlaird.blogspot.com/2009/05/cloud-computing-taxonomy-at-interop-las.html&quot;&gt;my Cloud Taxonomy&lt;/a&gt; over the last 18 months. The goal of that project was to help newcomers to the market understand what types of solutions are available and who the players are. My hope was that people would find it useful as a launching off point on their journey into the Cloud.&lt;/p&gt;  &lt;p&gt;Tonight, on a whim, I decided to see what would happen if a person used Google instead as the start of their exploration of Cloud Computing. It was predictable that a high percentage of results are focused on “intro” or “definition” type pages. A lot of blog posts, tweets, and conference sessions have been devoted to defining what exactly is Cloud Computing. Let’s link to &lt;a href=&quot;http://csrc.nist.gov/groups/SNS/cloud-computing/&quot;&gt;the NIST definition&lt;/a&gt;, and speak no more of that here.&lt;/p&gt;  &lt;p&gt;What I found interesting was the relative ordering of vendors in the results list – it wasn’t what I expected at all. Given that Google Page Rank arguably orders results according to mind share, I expected certain vendors (e.g. Google, Cisco, GoGrid) to appear high above others. Looking at the results below, that didn’t happen.&lt;/p&gt;  &lt;p&gt;To head off the flames, I recognize why this analysis isn’t scientific:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It is based off of a single data source – Google Page Rank&lt;/li&gt;    &lt;li&gt;It is based off of a single search phrase – &lt;em&gt;cloud computing&lt;/em&gt;&lt;/li&gt;    &lt;li&gt;It assumes Page Rank == mind share&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;But its interesting to me nonetheless, so here we go.&lt;/p&gt;  &lt;h3&gt;Ranking the Cloud Vendors in 2009 on Mind Share&lt;/h3&gt;  &lt;p&gt;The table below shows the results. To collect this data, I did the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Cleared all browser cookies&lt;/li&gt;    &lt;li&gt;Ensured I was logged out of Google (to avoid &lt;a href=&quot;http://www.google.com/support/accounts/bin/answer.py?hl=en&amp;amp;answer=54068&quot;&gt;personalized results&lt;/a&gt;)&lt;/li&gt;    &lt;li&gt;Navigated to the google.com search page&lt;/li&gt;    &lt;li&gt;Typed “cloud computing” in the search box&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;And, here are the results. I first scrubbed anything that wasn’t a vendor or open source product. Then I noted the first time their domain (xxx.com) appeared, even if that listing was not their primary cloud page (sometimes the blog comes first). Google itself is the exception on this – hits on Google Groups/Blogger/etc did not count.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table border=&quot;1&quot; cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;501&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;120&quot;&gt;&lt;strong&gt;Result Page&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;118&quot;&gt;&lt;strong&gt;Rank&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;123&quot;&gt;&lt;strong&gt;Vendor&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;138&quot;&gt;&lt;strong&gt;URL&lt;/strong&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;118&quot;&gt;         &lt;h3&gt;1&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;116&quot;&gt;1&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;121&quot;&gt;Rackspace&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;143&quot;&gt;&lt;a title=&quot;http://www.rackspacecloud.com/&quot; href=&quot;http://www.rackspacecloud.com/&quot;&gt;http://www.rackspacecloud.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;114&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;111&quot;&gt;2&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;119&quot;&gt;Sun&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;154&quot;&gt;&lt;a title=&quot;http://www.sun.com/solutions/cloudcomputing/index.jsp&quot; href=&quot;http://www.sun.com/solutions/cloudcomputing/index.jsp&quot;&gt;http://www.sun.com/solutions/cloudcomputing/index.jsp&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;110&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;107&quot;&gt;3&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;116&quot;&gt;Salesforce&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;166&quot;&gt;&lt;a title=&quot;http://www.salesforce.com/cloudcomputing/&quot; href=&quot;http://www.salesforce.com/cloudcomputing/&quot;&gt;http://www.salesforce.com/cloudcomputing/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;106&quot;&gt;         &lt;h3&gt;2&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;102&quot;&gt;4&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;112&quot;&gt;Amazon&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;178&quot;&gt;&lt;a title=&quot;http://aws.amazon.com/ec2/&quot; href=&quot;http://aws.amazon.com/ec2/&quot;&gt;http://aws.amazon.com/ec2/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;103&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;99&quot;&gt;5&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;110&quot;&gt;VMware&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;186&quot;&gt;&lt;a title=&quot;http://www.vmware.com/solutions/cloud-computing/&quot; href=&quot;http://www.vmware.com/solutions/cloud-computing/&quot;&gt;http://www.vmware.com/solutions/cloud-computing/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;99&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;93&quot;&gt;6&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;107&quot;&gt;IBM&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;199&quot;&gt;&lt;a title=&quot;http://www.ibm.com/ibm/cloud/&quot; href=&quot;http://www.ibm.com/ibm/cloud/&quot;&gt;http://www.ibm.com/ibm/cloud/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;96&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;91&quot;&gt;7&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;106&quot;&gt;Canonical/         &lt;br /&gt;Ubuntu&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;205&quot;&gt;&lt;a title=&quot;http://www.ubuntu.com/cloud&quot; href=&quot;http://www.ubuntu.com/cloud&quot;&gt;http://www.ubuntu.com/cloud&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;95&quot;&gt;         &lt;h3&gt;3&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;90&quot;&gt;8&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;105&quot;&gt;Dell&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;208&quot;&gt;&lt;a title=&quot;http://content.dell.com/us/en/enterprise/cloud-computing.aspx&quot; href=&quot;http://content.dell.com/us/en/enterprise/cloud-computing.aspx&quot;&gt;http://content.dell.com/us/en/enterprise/cloud-computing.aspx&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;93&quot;&gt;         &lt;h3&gt;4&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;87&quot;&gt;9&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;103&quot;&gt;Oracle&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;214&quot;&gt;&lt;a title=&quot;http://www.oracle.com/technology/tech/cloud/index.html&quot; href=&quot;http://www.oracle.com/technology/tech/cloud/index.html&quot;&gt;http://www.oracle.com/technology/tech/cloud/index.html&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;90&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;83&quot;&gt;10&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;101&quot;&gt;RedHat&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;224&quot;&gt;&lt;a title=&quot;http://www.redhat.com/solutions/cloud/&quot; href=&quot;http://www.redhat.com/solutions/cloud/&quot;&gt;http://www.redhat.com/solutions/cloud/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;86&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;79&quot;&gt;11&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;98&quot;&gt;Rightscale&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;235&quot;&gt;&lt;a title=&quot;http://blog.rightscale.com/2008/05/26/define-cloud-computing/&quot; href=&quot;http://blog.rightscale.com/2008/05/26/define-cloud-computing/&quot;&gt;http://blog.rightscale.com/2008/05/26/define-cloud-computing/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;82&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;74&quot;&gt;12&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;95&quot;&gt;Microsoft&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;246&quot;&gt;&lt;a title=&quot;http://www.microsoft.com/virtualization/en/us/cloud-computing.aspx&quot; href=&quot;http://www.microsoft.com/virtualization/en/us/cloud-computing.aspx&quot;&gt;http://www.microsoft.com/virtualization/en/us/cloud-computing.aspx&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;78&quot;&gt;         &lt;h3&gt;5&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;69&quot;&gt;13&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;92&quot;&gt;3tera&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;259&quot;&gt;&lt;a title=&quot;http://www.3tera.com/Cloud-computing/&quot; href=&quot;http://www.3tera.com/Cloud-computing/&quot;&gt;http://www.3tera.com/Cloud-computing/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;77&quot;&gt;         &lt;h3&gt;6&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;69&quot;&gt;14&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;92&quot;&gt;HP&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&lt;a title=&quot;http://www.hpl.hp.com/research/cloud.html&quot; href=&quot;http://www.hpl.hp.com/research/cloud.html&quot;&gt;http://www.hpl.hp.com/research/cloud.html&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;74&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;64&quot;&gt;15&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;89&quot;&gt;Yahoo&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;271&quot;&gt;&lt;a title=&quot;http://labs.yahoo.com/Cloud_Computing&quot; href=&quot;http://labs.yahoo.com/Cloud_Computing&quot;&gt;http://labs.yahoo.com/Cloud_Computing&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;73&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;64&quot;&gt;16&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;89&quot;&gt;Objectivity&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;272&quot;&gt;&lt;a title=&quot;http://www.objectivity.com/cloud-computing/default.asp&quot; href=&quot;http://www.objectivity.com/cloud-computing/default.asp&quot;&gt;http://www.objectivity.com/cloud-computing/default.asp&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;73&quot;&gt;         &lt;h3&gt;8&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;64&quot;&gt;17&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;89&quot;&gt;Cisco&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;273&quot;&gt;&lt;a title=&quot;http://blogs.cisco.com/tag/cloud+computing&quot; href=&quot;http://blogs.cisco.com/tag/cloud+computing&quot;&gt;http://blogs.cisco.com/tag/cloud+computing&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;71&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;61&quot;&gt;18&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;87&quot;&gt;Enomaly&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;280&quot;&gt;&lt;a title=&quot;http://www.enomaly.com/&quot; href=&quot;http://www.enomaly.com/&quot;&gt;http://www.enomaly.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;70&quot;&gt;         &lt;h3&gt;9&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;60&quot;&gt;19&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;86&quot;&gt;CA&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;281&quot;&gt;&lt;a title=&quot;http://www.ca.com/US/insights/topic.aspx?cid=8348&quot; href=&quot;http://www.ca.com/US/insights/topic.aspx?cid=8348&quot;&gt;http://www.ca.com/US/insights/topic.aspx?cid=8348&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;68&quot;&gt;         &lt;h3&gt;10&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;58&quot;&gt;20&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;85&quot;&gt;F5&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;287&quot;&gt;&lt;a title=&quot;http://www.f5.com/pdf/reports/cloud-computing-survey-results-2009.pdf&quot; href=&quot;http://www.f5.com/pdf/reports/cloud-computing-survey-results-2009.pdf&quot;&gt;http://www.f5.com/pdf/reports/cloud-computing-survey-results-2009.pdf&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;68&quot;&gt;         &lt;h3&gt;11&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;58&quot;&gt;21&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;85&quot;&gt;Appirio&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;288&quot;&gt;&lt;a title=&quot;http://www.appirio.com/ecosystem/&quot; href=&quot;http://www.appirio.com/ecosystem/&quot;&gt;http://www.appirio.com/ecosystem/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;68&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;58&quot;&gt;22&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;85&quot;&gt;G.ho.st&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;288&quot;&gt;&lt;a title=&quot;http://g.ho.st/&quot; href=&quot;http://g.ho.st/&quot;&gt;http://g.ho.st/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;68&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;58&quot;&gt;23&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;85&quot;&gt;Akamai&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;288&quot;&gt;&lt;a title=&quot;http://www.akamai.com/cloud&quot; href=&quot;http://www.akamai.com/cloud&quot;&gt;http://www.akamai.com/cloud&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;68&quot;&gt;         &lt;h3&gt;12&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;58&quot;&gt;24&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;85&quot;&gt;Accenture&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;288&quot;&gt;&lt;a title=&quot;http://www.accenture.com/Global/Services/Accenture_Technology_Labs/R_and_I/CloudComputing.htm&quot; href=&quot;http://www.accenture.com/Global/Services/Accenture_Technology_Labs/R_and_I/CloudComputing.htm&quot;&gt;http://www.accenture.com/Global/Services/Accenture_Technology_Labs/R_and_I/CloudComputing.htm&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;13&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;25&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;GoGrid&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;301&quot;&gt;&lt;a title=&quot;http://www.gogrid.com/&quot; href=&quot;http://www.gogrid.com/&quot;&gt;http://www.gogrid.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;16&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;26&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Novell&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.novell.com/cloud/&quot; href=&quot;http://www.novell.com/cloud/&quot;&gt;http://www.novell.com/cloud/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;20&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;27&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Citrix&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.citrix.com/english/ps2/products/product.asp?contentID=1681633&quot; href=&quot;http://www.citrix.com/english/ps2/products/product.asp?contentID=1681633&quot;&gt;http://www.citrix.com/english/ps2/products/product.asp?contentID=1681633&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;21&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;28&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Joyent&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.joyent.com/&quot; href=&quot;http://www.joyent.com/&quot;&gt;http://www.joyent.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;29&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Parallels&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.parallels.com/spp/understandingclouds/&quot; href=&quot;http://www.parallels.com/spp/understandingclouds/&quot;&gt;http://www.parallels.com/spp/understandingclouds/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;22&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;30&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;eyeos&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://eyeos.org/&quot; href=&quot;http://eyeos.org/&quot;&gt;http://eyeos.org/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;31&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Eucalyptus&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.eucalyptus.com/&quot; href=&quot;http://www.eucalyptus.com/&quot;&gt;http://www.eucalyptus.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;23&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;32&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Appistry&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.appistry.com/&quot; href=&quot;http://www.appistry.com/&quot;&gt;http://www.appistry.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;24&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;33&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Infosys&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://wwwinfy.infyweb.akadns.net/cloud-computing/default.asp&quot; href=&quot;http://wwwinfy.infyweb.akadns.net/cloud-computing/default.asp&quot;&gt;http://wwwinfy.infyweb.akadns.net/cloud-computing/default.asp&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;         &lt;h3&gt;25&lt;/h3&gt;       &lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;34&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Virtualmin&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://www.virtualmin.com/&quot; href=&quot;http://www.virtualmin.com/&quot;&gt;http://www.virtualmin.com/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;63&quot;&gt;&amp;#160;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;52&quot;&gt;35&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;81&quot;&gt;Nimbus&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;302&quot;&gt;&lt;a title=&quot;http://workspace.globus.org/&quot; href=&quot;http://workspace.globus.org/&quot;&gt;http://workspace.globus.org/&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Congrats goes to &lt;strong&gt;Rackspace&lt;/strong&gt;, as they topped the list.&lt;/p&gt;  &lt;p&gt;These things surprised me:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Google?&lt;/strong&gt; Where are you?&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Amazon&lt;/strong&gt; was not listed as the top result, and &lt;strong&gt;Rackspace&lt;/strong&gt; was&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Canonical/Ubuntu&lt;/strong&gt; faired extremely well, given how new their enterprise cloud solution is&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Cisco&lt;/strong&gt; listed lower than expected at page 8, given how active they are in the blogging community&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;CloudFutures 2009 (Dec 7-8, San Jose)&lt;/h3&gt;  &lt;p&gt;In closing, this is a short plug for the &lt;a href=&quot;http://www.cloudfutures.com/usa/agenda.shtml&quot;&gt;CloudFutures conference&lt;/a&gt; coming up on Monday. I will be speaking on “The Real Cloud Players”. See you there!&lt;/p&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/6099727188491929262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/6099727188491929262' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6099727188491929262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6099727188491929262'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2009/12/ranking-cloud-computing-vendors-2009.html' title='Ranking Cloud Computing Vendors 2009'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-2175189127162505488</id><published>2009-05-19T11:05:00.003-06:00</published><updated>2016-09-15T13:53:06.415-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><category scheme="http://www.blogger.com/atom/ns#" term="taxonomy"/><title type='text'>Cloud Computing Taxonomy at Interop Las Vegas, May 2009</title><content type='html'>If you have read my blog in the past, you will know that my schtick in covering the Cloud Computing and SaaS space is taxonomies. I have created a number of them, and have been an invited speaker to talk about them. Here are a couple of examples from the past:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2008/09/visual-map-of-cloud-computingsaaspaas.html&quot;&gt;September 2008 Vendor Taxonomy of Cloud Computing&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2008/05/saas-soup-navigating-a-service-acronyms.html&quot;&gt;“aaS” Terms taxonomy&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Peter at Enterprise Cloud Summit&lt;/h3&gt;
Yesterday, I spoke on the topic of taxonomies at &lt;b&gt;&lt;a href=&quot;http://www.cloudsummit.com/enterprise-lv/conference/&quot;&gt;Enterprise Cloud Summit&lt;/a&gt;&lt;/b&gt;, a conference within a conference at Interop Las Vegas. I was impressed by the turnout despite the economy – &lt;a href=&quot;http://www.bitcurrent.com/about-2/&quot;&gt;Alistair Croll&lt;/a&gt; did a great job putting together a great speaker list which in turn drove a lot of traffic into the sessions. My session went early on the first day, so it was my job to setup the landscape of the Cloud Computing industry. The taxonomy was perfect for that task.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://www.bitcurrent.com/my-kingdom-for-a-definition-and-a-taxonomy/&quot;&gt;My Kingdom for a Definition&lt;/a&gt;&lt;/b&gt; – media coverage of my session. Also, &lt;a href=&quot;http://saaslink.googlepages.com/laird_interop09_cloudtaxonomies_fina.pdf&quot;&gt;here is a link to my presentation&lt;/a&gt;. &lt;/li&gt;
&lt;/ul&gt;
&lt;a href=&quot;http://www.cloudsummit.com/enterprise-lv/conference/&quot;&gt;&lt;img alt=&quot;Cloud Summit&quot; border=&quot;0&quot; height=&quot;110&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTaUDoHYmeQQaH848PqNuhWT3Wg1Rmzrz6b3utRGZIFTdvHKt5YwaqQx1U4SPTcwlBXmbieszI4gkPgW9lldJolczrogk63qIbV1m9kZ6pqHUKWLBlauSMcixYCyi2QHADvwenLz_z2Rwf/?imgmax=800&quot; style=&quot;border-width: 0px; display: inline;&quot; title=&quot;Cloud Summit&quot; width=&quot;244&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
&lt;h3&gt;
May 2009 Cloud Computing Taxonomy&lt;/h3&gt;
In support of my speaking at Interop, I have updated my Cloud Computing taxonomy. I have restructured the buckets a bit since the last time, and of course I have added some new vendors that have come on the scene. I have also removed a couple of solutions that have since exited (or have appeared to exit) the market – Coghead, Skemma, and Mule OnDemand.  Cassatt, while not done yet, is marked with an asterisk to indicate its &lt;a href=&quot;http://www.forbes.com/2009/04/27/cassatt-enterprise-closed-technology-enterprise-cassatt.html&quot;&gt;current status&lt;/a&gt;.&lt;br /&gt;
A few additional notes about the construction of this map:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;There is a size limit, so not every vendor in every bucket can be covered. I include what I think are the major players, and include others as space allows &lt;/li&gt;
&lt;li&gt;Some vendors could fit in multiple buckets, but generally I place the vendor in their main area expertise only &lt;/li&gt;
&lt;li&gt;There are several categoris – hardware, virtualization, system integrators – that I don’t include at all. I find that they are spaces that deserve entire maps on their own. &lt;/li&gt;
&lt;li&gt;News rolls in every day – AT&amp;amp;T just announced a Cloud storage solution. Please add a comment if you see a vendor that is missing that you feel should be included. &lt;/li&gt;
&lt;li&gt;Some of these “vendors” are not actually vendors – some are open source solutions. &lt;/li&gt;
&lt;/ul&gt;
And a final word before presenting the map – I always recommend a different source for those who want to see a more exhaustive list of vendors in this space. Jeff Kaplan of &lt;a href=&quot;http://thinkstrategies.com/&quot;&gt;THINKStrategies&lt;/a&gt; has created a &lt;a href=&quot;http://www.saas-showplace.com/&quot;&gt;SaaS Showplace&lt;/a&gt; which is an exhaustive catalog of vendors. &lt;br /&gt;
&lt;a href=&quot;http://farm4.static.flickr.com/3312/3597138202_496ae06a68_o.png&quot;&gt;&lt;img alt=&quot;Cloud Taxonomy April 2009_final&quot; border=&quot;0&quot; height=&quot;597&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjX3jYHfFdzu4nFdXmVx7qAVWC1k1MUKUCpV5kHPFDqJvdb2cLYaASX9ZaFRF_tREI21gYzcgvXUTGaxGAV1h2nPsndcw8P5NcHUJu7xfCV0Ue_6QNtKGkIj4j1JmFTWppbDm-LsTo-yDbW/?imgmax=800&quot; style=&quot;border-width: 0px; display: inline;&quot; title=&quot;Cloud Taxonomy April 2009_final&quot; width=&quot;500&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
(Click on the image for a larger version)&lt;br /&gt;
&lt;h3&gt;
Descriptions of the Buckets:&lt;/h3&gt;
To provide some insight into what each bucket means, listed below are descriptions.&lt;br /&gt;
&lt;h4&gt;
Infrastructure&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Public Clouds &lt;/b&gt;– the poster children of Cloud Computing. These vendors offer computers as a service. If you need 50 computers in 15 minutes, these guys will take care of that. Differentiators include the provisioning model (virtualized instances vs. actual machines) and the host OS versions that are supported. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Private Clouds&lt;/b&gt; – these solutions help enterprises build private clouds within the firewall. If privacy and control is a big concern, or you want to increase utilization in an existing data center, a private cloud may be what you want. &lt;/li&gt;
&lt;li&gt; &lt;b&gt;Compute and Data Grids&lt;/b&gt; – while these solutions are also useful outside of a cloud, they can play an important role for applications that are deployed within a cloud. The key difference with Cloud applications from traditional on-premise applications is in how they must scale. With an on-premise application, you can &lt;a href=&quot;http://www.royans.net/arch/2007/09/22/what-is-scalability/&quot;&gt;scale vertically&lt;/a&gt; when the load gets too high – by buying a bigger machine. In the cloud, applications must &lt;a href=&quot;http://www.royans.net/arch/2007/09/22/what-is-scalability/&quot;&gt;scale horizontally&lt;/a&gt; – by adding more machines in a cluster. Compute and Data Grid products can help achieve horizontal scalability. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Virtualization and Appliances&lt;/b&gt; – when deploying OS stacks to public and private clouds, you will find it helpful to have a library of virtualized OS images. The vendors in these buckets will help in this area.  Also, depending on the cloud being used, any number of Virtualization technologies will be used. &lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
Platform&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Business User Platforms&lt;/b&gt; – these platforms are cloud based application development environments. The focus of these platforms are on non-programmers as the application developers. To make this happen, these platforms offer rich visual tools to enable the developers to define data models and application logic. The differentiators for these platforms are their features – which is important to investigate during software selection as there is no coding allowed, so developers cannot code around feature outages. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Developer Platforms &lt;/b&gt;– these platforms are cloud based application development environments that support custom coding. Developers can build highly customized applications with these platforms, without having to worry about scalability, OS configuration, load balancing, operations, etc as they would with a public cloud offering. The differentiators for these platforms include the supported programming languages (Java, python, custom, etc), and data storage capabilities (RDMBS, key-value stores, etc). &lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
Services&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Storage &lt;/b&gt;– these vendors offer hosted storage that are API accessible. Meaning, any application can get/set objects into these Cloud storage solutions. The solutions vary in the supported data access models – key-value stores, file stores, etc. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration &lt;/b&gt;– solutions that provide integration facilities between multiple Cloud applications, or Cloud applications with on-premise applications. Major features offered are: messaging queues, business process modeling (BPM), and application adapters (like NetSuite adapter, SAP adapter). &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Metering and Billing &lt;/b&gt;– building your own billing and invoicing system is highly discouraged. This is a great operation to outsource to a specialist. These vendors offer expertise in how to structure billing plans, plus all of the back office capabilities behind invoicing and collection. By outsourcing to one of these PCI compliant vendors, you will reduce the level of compliance your Cloud application will need to attain. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Security &lt;/b&gt;– The Cloud infrastructure and platform vendors must provide security, and so a base level can be assumed. But for value-add features, like application authorization features, encryption, and Single Sign On capabilities across multiple applications – look to these vendors. &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Fabric Management &lt;/b&gt;– this is a space that evolves quickly, so you will need to keep up to date on new developments with these vendors. Generally, these vendors help you manage and deploy your application in the Cloud. This varies from features that allow you to design a virtual data center in a cloud, to auto-scaling an application when load increases, to monitoring Cloud servers to restart them if they fail. &lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;
Applications&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;SaaS&lt;/b&gt; – these vendors represent the ultimate end-game to all of this – Cloud based applications. There are thousands of them, and are traditionally known as Software as a Service (SaaS) applications. SaaS applications are available over the internet, are quick to provision a new account, are offered in a pay-as-you-go model, and allow some level of customization. NetSuite, Salesforce.com, Taleo, Concur, Workday and many others have established the space as a viable way to deliver software. &lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Vendor Links&lt;/h3&gt;
Below are links to each of the vendors and solution depicted above.&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Public Clouds&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/kGF&quot;&gt;~ Amazon EC2 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.daas.com/display/wwwdaas/Home&quot;&gt;~ DAAS.com &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://flexiscale.com/&quot;&gt;~ Flexiscale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k8I&quot;&gt;~ Joyent Accelerators &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.microsoft.com/azure/default.mspx&quot;&gt;~ Microsoft Azure &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k2H&quot;&gt;~ Rackspace Mosso Cloud &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k0N&quot;&gt;~ ServePath GoGrid &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.skytap.com/&quot;&gt;~ Skytap &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.sun.com/solutions/cloudcomputing/&quot;&gt;~ Sun Microsystems Cloud &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.theenterprisecloud.com/&quot;&gt;~ Terremark Enterprise Cloud &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Hosting Providers          &lt;ul&gt;
&lt;li&gt;(not covered) &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Private Cloud&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/uXd&quot;&gt;~ Eucalyptus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/4iC&quot;&gt;~ Enomaly Enomalism &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://workspace.globus.org/&quot;&gt;~ Nimbus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.babbleapp.org/&quot;&gt;~ 10gen Babble &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://cassatt.com/&quot;&gt;~ Cassatt * &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Hardware          &lt;ul&gt;
&lt;li&gt;(not covered) &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Compute Grids&lt;/b&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.cloudera.com/&quot;&gt;~ CloudEra &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://my.cyclecloud.com/&quot;&gt;~ CycleCloud &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.globus.org/&quot;&gt;~ Globus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/3tg&quot;&gt;~ Hadoop &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.terracotta.org/&quot;&gt;~ Terracotta &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;     &lt;b&gt;Data Grids&lt;/b&gt;&lt;br /&gt;
      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktm&quot;&gt;~ Gemstone Gemfire &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktd&quot;&gt;~ GigaSpaces Data Grid &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kt6&quot;&gt;~ IBM eXtreme Scale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ksY&quot;&gt;~ Oracle Coherence &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     &lt;b&gt;Virtual Appliances&lt;/b&gt;&lt;br /&gt;
      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kuh&quot;&gt;~ CohesiveFT &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kua&quot;&gt;~ rPath &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;     &lt;b&gt;Biz User Platforms&lt;/b&gt;&lt;br /&gt;
   &lt;/li&gt;
&lt;li&gt;     &lt;a href=&quot;http://www.caspio.com/&quot;&gt;~ Caspio &lt;/a&gt;&lt;br /&gt;
   &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://quickbase.com/&quot;&gt;~ QuickBase &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.perfectforms.com/&quot;&gt;~ PerfectForms &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.rollbase.com/&quot;&gt;~ Rollbase &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.workxpress.com/&quot;&gt;~ WorkXpress &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Dev Platforms&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://apprenda.com/&quot;&gt;~ Apprenda SaaSGrid &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l3N&quot;&gt;~ Aptana CloudStudio &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHL&quot;&gt;~ Bungee Labs Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k1l&quot;&gt;~ Google App Engine &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k5e&quot;&gt;~ Heroku &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l24&quot;&gt;~ LongJump &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k6e&quot;&gt;~ Morph Labs &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l1W&quot;&gt;~ Salesforce.com force.com &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.stax.net/&quot;&gt;~ Stax &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Storage&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2fWl&quot;&gt;~ Amazon S3 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ky9&quot;&gt;~ Amazon SimpleDB &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kxi&quot;&gt;~ Google BigTable &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kyK&quot;&gt;~ Microsoft SQL Data Services &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kxB&quot;&gt;~ Rackspace Mosso CloudFS &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Integration&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kI1&quot;&gt;~ Amazon SQS &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kKo&quot;&gt;~ Appian Anywhere &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kJ8&quot;&gt;~ Appirio Cloud Connectors &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.boomi.com/&quot;&gt;~ Boomi &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHL&quot;&gt;~ Bungee Labs Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/WWn&quot;&gt;~ CastIron &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIB&quot;&gt;~ gnip &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://itensil.com/product.html&quot;&gt;~ Itensil &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kI8&quot;&gt;~ Microsoft BizTalk Services &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIn&quot;&gt;~ OpSource Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIx&quot;&gt;~ SnapLogic SaaS Solution Packs &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Enablers&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;Billing          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZi&quot;&gt;~ Aria &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZj&quot;&gt;~ eVapt &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.ipapplications.com/&quot;&gt;~ IP Applications &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZe&quot;&gt;~ OpSource Billing &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZq&quot;&gt;~ Vindicia &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZm&quot;&gt;~ Zuora &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Security          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://enstratus.com/&quot;&gt;~ enStratus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kuv&quot;&gt;~ OpenID/OAuth &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZW&quot;&gt;~ Ping Identity &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.symplified.com/&quot;&gt;~ Symplified &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fabric Mgmt          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2krq&quot;&gt;~ 3Tera AppLogic &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.appistry.com/products/cloud-iq-manager&quot;&gt;~ Appistry CloudIQ &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.cloudkick.com/&quot;&gt;~ Cloudkick &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kre&quot;&gt;~ Elastra Cloud Server &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kkJ&quot;&gt;~ Hyperic CloudStatus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktO&quot;&gt;~ Kaavo IMOD &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/1oNP&quot;&gt;~ Rightscale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/52H&quot;&gt;~ Scalr &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;System Integrators          &lt;ul&gt;
&lt;li&gt;(not covered) &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Applications&lt;/b&gt;       &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldu&quot;&gt;~ Concur &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/1eE7&quot;&gt;~ Google Apps &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldI&quot;&gt;~ Netsuite &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldK&quot;&gt;~ Salesforce.com &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldF&quot;&gt;~ Taleo &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;(and thousands of others) &lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
Please Comment&lt;/h3&gt;
I have found some of the vendors above via comments placed on earlier versions of the map. If you know of a solution that you feel should be included, please post a comment on the blog. I can’t promise I will add it (the map is size limited), but I would like to see other solutions. Thank you!&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/2175189127162505488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/2175189127162505488' title='18 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2175189127162505488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2175189127162505488'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2009/05/cloud-computing-taxonomy-at-interop-las.html' title='Cloud Computing Taxonomy at Interop Las Vegas, May 2009'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTaUDoHYmeQQaH848PqNuhWT3Wg1Rmzrz6b3utRGZIFTdvHKt5YwaqQx1U4SPTcwlBXmbieszI4gkPgW9lldJolczrogk63qIbV1m9kZ6pqHUKWLBlauSMcixYCyi2QHADvwenLz_z2Rwf/s72-c?imgmax=800" height="72" width="72"/><thr:total>18</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-6420715939584156812</id><published>2009-05-19T09:25:00.001-06:00</published><updated>2009-05-19T09:25:04.653-06:00</updated><title type='text'>I’m Back, and OnDemand</title><content type='html'>&lt;p&gt;September 15th, 2008. That was the date of my last blog post. What happened?&lt;/p&gt;  &lt;h4&gt;Where was Peter?&lt;/h4&gt;  &lt;p&gt;In short, I was off pursuing a different career path. When Oracle acquired BEA in May of 2008, I stopped work on the BEA SaaS platform. I returned to my roots in enterprise portals, and became architect of that product group at Oracle. I fought the good fight through the summer, but by September found I couldn’t maintain a presence in OnDemand. Instead, I focused on the myriad of topics related to Java application frameworks. My big authoring accomplishment of this period was my 152 page &lt;a href=&quot;http://forums.oracle.com/forums/thread.jspa?messageID=3251134&quot;&gt;JSF whitepaper for WebLogic Portal&lt;/a&gt;. I would have blogged here about it, honest, but didn’t think you all would be interested. :)&lt;/p&gt;  &lt;h4&gt;Cloud Computing + Smart Grids, Peter’s New World&lt;/h4&gt;  &lt;p&gt;Last week, all of that changed. I left Oracle to join a startup that combines two of the hottest trends in technology – Cloud Computing and Smart Energy Grids. It is a bootstrapped startup (4+ years), is well funded and well connected,&amp;#160; and some guys I worked with for years are already over there. All in all, it was an obvious move for me to make.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.linkedin.com/in/plaird&quot;&gt;My new title is Platform Architect&lt;/a&gt; of &lt;a href=&quot;http://www.tendrilinc.com/&quot;&gt;Tendril Networks&lt;/a&gt;. Tendril already has a Smart Grid SaaS platform up and running, and I will be helping expand the offering into a Smart Grid PaaS. Will explain more about that in later posts.&lt;/p&gt;  &lt;p&gt;But what this means to you, my readers, is that I expect that my return to an engineering role with an OnDemand product will lead to more OnDemand blog posts. No promises (we all have seen the, “I haven’t blogged in a long time, getting back at it…” followed by many months of nothing), but that is my plan anyway.&lt;/p&gt;  &lt;h4&gt;What’s Next…&lt;/h4&gt;  &lt;p&gt;I am at the &lt;a href=&quot;http://www.cloudsummit.com/enterprise-lv/&quot;&gt;Enterprise Cloud Summit&lt;/a&gt; at Interop this week. I spoke yesterday, and will blog next about my presentation.&lt;/p&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/6420715939584156812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/6420715939584156812' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6420715939584156812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6420715939584156812'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2009/05/im-back-and-ondemand.html' title='I’m Back, and OnDemand'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-8594395317479728531</id><published>2008-09-15T01:55:00.001-06:00</published><updated>2008-09-15T01:55:54.706-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><category scheme="http://www.blogger.com/atom/ns#" term="webanalytics"/><title type='text'>Comparing Cloud Computing Mindshare Levels Between the U.S., Europe, and Asia</title><content type='html'>&lt;p&gt;Would you believe that the U.S. has 4 times more people interested in cloud computing than Europe? How about 5 times more people so interested than Asia? It is impossible to derive irrefutable evidence to validate those statements, but this blog entry offers one concrete data source that indicates those statements are true.&lt;/p&gt;  &lt;p&gt;There have been various studies on cloud adoption and mindshare. For a young industry, it is an important metric to understand. Just this week, Chris Marino &lt;a href=&quot;http://groups.google.com/group/cloud-computing/browse_thread/thread/38ed748c84de05c6&quot;&gt;started a cloud adoption topic thread&lt;/a&gt; on the Cloud Google Group. He cited the Pew&#39;s report on American adoption of cloud applications. &lt;/p&gt;  &lt;p&gt;This blog entry provides more data for that discussion. However, it focuses not on the adoption rate within the U.S., but the relative interest in cloud computing topics across continents. It uses traffic data from my blog as the input into the analysis.&lt;/p&gt;  &lt;h3&gt;Aggressive Extrapolation&lt;/h3&gt;  &lt;p&gt;Just to give you fair warning, I am about to draw sizable conclusions from a single source of data. This data source, traffic to my blog, cannot be proven to be a meaningful measurement. But I am writing this blog entry anyway because I think it is an interesting topic and the data &lt;strong&gt;might be&lt;/strong&gt; meaningful. Also, I find there is an absence of information on this topic out on the net, so I hope this is a good starting point for other studies.&lt;/p&gt;  &lt;p&gt;Here are a couple of assumptions I am making during this analysis:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Given that blog access is location independent, there is an equal opportunity across regions for any cloud computing enthusiast to read my cloud blog entries&lt;/li&gt;    &lt;li&gt;Given equal opportunity, the readership of my cloud blog entries roughly matches interest level in each region for the topic of cloud computing in general&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;You could certainly argue that my blog does not generate enough traffic to be a significant measure. You could also argue that the level of blog readership in general isn&#39;t consistent across the regions. &lt;/p&gt;  &lt;p&gt;You could also probably find about ten other reasons why this study is not conclusive. Once again, I hope this is a starting point for others to contribute meaningful data, and so this blog entry will be published despite the possible objections.&lt;/p&gt;  &lt;h3&gt;The Raw Data:&amp;#160; Blog Readership Numbers&lt;/h3&gt;  &lt;p&gt;I will first introduce the raw visitor numbers of a handful of blog entries, as captured by Google Analytics. Later sections will explain the data and what to look for in these numbers.&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;457&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;&lt;strong&gt;Blog Entry&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;&lt;strong&gt;Cat           &lt;br /&gt;gory&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;&lt;strong&gt;Visits&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;&lt;strong&gt;U.S. %&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;&lt;strong&gt;Europe %&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;&lt;strong&gt;Asia %&lt;/strong&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;Cloud Taxonomy V2&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;Cloud&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;1631&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;&lt;strong&gt;67&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;&lt;strong&gt;17&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;&lt;strong&gt;13&lt;/strong&gt;&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;Cloud Taxonomy V1&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;Cloud&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;1172&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;63&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;20&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;15&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;SaaS Taxonomy&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;SaaS&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;207&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;54&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;18&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;26&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;SaaS for IBM, ORCL...&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;SaaS&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;191&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;40&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;32&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;25&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;SaaS Contract Analysis&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;SaaS&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;196&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;69&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;22&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;8&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;Control 1&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;Ctrl&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;131&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;51&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;27&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;16&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;141&quot;&gt;Control 2&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;37&quot;&gt;Ctrl&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;70&quot;&gt;363&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;59&quot;&gt;53&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;85&quot;&gt;24&lt;/td&gt;        &lt;td valign=&quot;top&quot; align=&quot;center&quot; width=&quot;63&quot;&gt;21&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;A few words on the data collection gathered from Google Analytics:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;These numbers reflect visits between July 1, 2008 and September 14th 2008&lt;/li&gt;    &lt;li&gt;Some of the entries were not available during the entire collection period.&lt;/li&gt;    &lt;li&gt;They do not include RSS readers, as my feed exposes the entire entry&lt;/li&gt;    &lt;li&gt;Some of the older entries started life on a different blog system before being migrated to this blogspot account in May. Some clicks may have gone to the older blog system for those entries and were not captured.&lt;/li&gt;    &lt;li&gt;Visits are unique visitors, which each may account for one or more pageviews&lt;/li&gt;    &lt;li&gt;The numbers don&#39;t add up to 100% due to hits coming from places outside the three regions&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Primary Evidence: Cloud Computing Visual Map Entry&lt;/h3&gt;  &lt;p&gt;The primary piece of evidence, and the one from which I drew the main conclusions, is an entry made on September 8th 2008. It is titled &amp;quot;Cloud Taxonomy V2&amp;quot; in the table above. The blog entry contains &lt;a href=&quot;http://peterlaird.blogspot.com/2008/09/visual-map-of-cloud-computingsaaspaas.html&quot;&gt;the second version of&amp;#160; a vendor map&lt;/a&gt; I have drawn that visualizes the cloud computing industry. I pick this entry as the primary evidence for the following reasons:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It is very recent, and therefore very &amp;quot;clean&amp;quot; in terms of tracking actual human users reading the entry&lt;/li&gt;    &lt;li&gt;It is an entry with general appeal - it covers the industry as a whole. It therefore should represent a broad measurement of interest.&lt;/li&gt;    &lt;li&gt;It has enough visitors (1631) to make for a good sample size &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The evidence reveals the following distribution:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/peterjlaird/SM4VBRJsBrI/AAAAAAAAAFg/kAhUDUAhahY/image%5B6%5D.png&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;236&quot; alt=&quot;image&quot; src=&quot;http://lh5.ggpht.com/peterjlaird/SM4VBhDYuyI/AAAAAAAAAFk/7Cix_f6gnB8/image_thumb%5B2%5D.png&quot; width=&quot;237&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;It is from this data that the main conclusions are drawn:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;U.S. interest in the topic of cloud computing is 4 times greater than in Europe&lt;/li&gt;    &lt;li&gt;U.S. interest in the topic of cloud computing is 5 times greater than in Asia&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Look also at the numbers associated with the blog entry listed as &amp;quot;Cloud Taxonomy V1&amp;quot;. That was the first version, released in May of this year. It is comforting to see that the V1 numbers roughly match the V2 numbers. &lt;/p&gt;  &lt;h3&gt;What About the SaaS Numbers?&lt;/h3&gt;  &lt;p&gt;You will notice that the SaaS themed blog enties don&#39;t carry the same distribution as the cloud entries. This is odd, as SaaS is a subset of cloud computing (see the referenced taxonomy diagram if you want to see why).&lt;/p&gt;  &lt;p&gt;Specifically, look at the first two SaaS blog entries, found &lt;a href=&quot;http://peterlaird.blogspot.com/2008/05/saas-soup-navigating-a-service-acronyms.html&quot;&gt;here&lt;/a&gt; and &lt;a href=&quot;http://peterlaird.blogspot.com/2008/06/how-oracle-ibm-sap-microsoft-and-intuit.html&quot;&gt;here&lt;/a&gt;. See how the U.S. has a lower share of the readership than with the cloud taxonomy entries: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SM4VB8RUckI/AAAAAAAAAFo/mg2NTPpN9TA/image%5B11%5D.png&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;159&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SM4VCNDxIMI/AAAAAAAAAFs/Puy_Ci1tW3s/image_thumb%5B5%5D.png&quot; width=&quot;143&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;One fabricated explanation - its about early adopters?&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The U.S. contains a higher percentage of early adopters (hypothesis)&lt;/li&gt;    &lt;li&gt;The overall cloud computing industry is still quite young , and dominated by early adopters. Therefore, the U.S. has a greater share of the readership of the general cloud taxonomy entries.&lt;/li&gt;    &lt;li&gt;SaaS is further along in adoption than the overall cloud computing industry. Therefore, you will see more balance in the interest levels. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Now look at the third SaaS entry - the &lt;a href=&quot;http://peterlaird.blogspot.com/2008/06/good-bad-and-ugly-of-saas-terms-of.html&quot;&gt;one titled SaaS Contract Analysis&lt;/a&gt;. This one actually shows a higher distribution for the U.S. relative to the cloud taxonomy entries. Why?&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SM4VCQe-9oI/AAAAAAAAAFw/vz1E3itsrks/image%5B16%5D.png&quot;&gt;&lt;img style=&quot;border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px&quot; height=&quot;166&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SM4VChU14_I/AAAAAAAAAF0/uCAfr0PoRGg/image_thumb%5B8%5D.png&quot; width=&quot;179&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Once again, a totally fabricated explanation - does this show Adoption as opposed to Mindshare?&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The SaaS Contract blog entry contains an analysis of SaaS contract terms, and suggested terms to avoid as a customer. &lt;/li&gt;    &lt;li&gt;This is not an entry for future thinkers or those just kicking the tires. This entry is primarily useful for those actually implementing SaaS and who need to review contracts with vendors. Perhaps this may show actual adoption, while the data for other entries show mindshare/interest?&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Seeking a Control: My Non-Cloud/SaaS Blog Entries&lt;/h3&gt;  &lt;p&gt;While in recent times I have focused my external writing on Cloud Computing and SaaS topics, I also have written on topics such as mashups and Java security. To help shed more light on the numbers revealed above, I offer two of those blog entries as a control for this analysis. These may indicate what bias already exists in my blog readership. &lt;/p&gt;  &lt;p&gt;Or they may not - most of my readers find my blog via search engines, not because they are regular subscribers. Therefore I would argue that these other blog entries don&#39;t offer much insight. But they are included anyway for your review.&lt;/p&gt;  &lt;h3&gt;Other Data Points on Cloud Mindshare and Adoption&lt;/h3&gt;  &lt;p&gt;There are other publicly available surveys on various adoption rates and mindshare. I would contend that none of these provide data for the specific discussion above, but they are interesting all the same:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Kevin Jackson &lt;a href=&quot;http://kevinljackson.blogspot.com/2008/07/correlative-analytics-cloud-computing.html&quot;&gt;uses Google searches&lt;/a&gt; to understand what vendors have mindshare in the Cloud space (including me! - thanks Kevin)&lt;/li&gt;    &lt;li&gt;Chris Marino of SnapLogic started &lt;a href=&quot;http://groups.google.com/group/cloud-computing/browse_thread/thread/38ed748c84de05c6&quot;&gt;a thread on American adoption rates recently&lt;/a&gt; on the Cloud Google Group. He referenced the Pew report, and a few more links popped up.&lt;/li&gt;    &lt;li&gt;John B. Horrigan of Pew offers &lt;a href=&quot;http://pewresearch.org/pubs/948/cloud-computing-gains-in-currency&quot;&gt;a survey of cloud application usage in the US&lt;/a&gt;. &lt;/li&gt;    &lt;li&gt;Duncan Riley also &lt;a href=&quot;http://www.techcrunch.com/2007/12/18/majority-of-americans-on-google-docs-what-you-talkin-bout-willis/&quot;&gt;discusses the American adoption&lt;/a&gt; of online productivity suites. &lt;/li&gt;    &lt;li&gt;McKinsey presents a &lt;a href=&quot;http://edgewatertech.wordpress.com/2008/08/04/mckinsey-enterprise-web-20-research-adoption-rate-increases/&quot;&gt;global comparison of adoption of Web 2.0 technologies&lt;/a&gt;. This does not cover cloud, but I see Web 2.0 as a loosely related market.&lt;/li&gt;    &lt;li&gt;Gartner &lt;a href=&quot;http://www.thestandard.com/news/2008/08/11/report-cloud-computing-poised-enterprise-adoption&quot;&gt;recently released a report called&lt;/a&gt; &lt;em&gt;Hype Cycle for Emerging Technologies, 2008&lt;/em&gt;. I don&#39;t have access to this research however, so can&#39;t comment on its contents.&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Call for Collaboration&lt;/h3&gt;  &lt;p&gt;This analysis would be helped immensely by having access to more data sources. Cloud bloggers - what are you seeing? Cloud vendors, what can you say about your customers? Please reveal! &lt;/p&gt;  &lt;p&gt;Also, the raw spreadsheet data from Google Analytics for my cloud v2 entry &lt;a href=&quot;http://saaslink.googlepages.com/CloudTaxonomyV2_Sept14_analytics.csv&quot;&gt;is here&lt;/a&gt;. If you would like a different export of the data, let me know.&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:045dbee2-38fe-430a-99d5-6038621de9fd&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/cloudcomputing&quot; rel=&quot;tag&quot;&gt;cloudcomputing&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/cloud&quot; rel=&quot;tag&quot;&gt;cloud&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/market&quot; rel=&quot;tag&quot;&gt;market&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/marketshare&quot; rel=&quot;tag&quot;&gt;marketshare&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/industry&quot; rel=&quot;tag&quot;&gt;industry&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/analysis&quot; rel=&quot;tag&quot;&gt;analysis&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/8594395317479728531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/8594395317479728531' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/8594395317479728531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/8594395317479728531'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/09/comparing-cloud-computing-mindshare.html' title='Comparing Cloud Computing Mindshare Levels Between the U.S., Europe, and Asia'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/peterjlaird/SM4VBhDYuyI/AAAAAAAAAFk/7Cix_f6gnB8/s72-c/image_thumb%5B2%5D.png" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-6805984298604383431</id><published>2008-09-08T12:50:00.000-06:00</published><updated>2016-09-15T13:53:33.088-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>Visual Map of the Cloud Computing/SaaS/PaaS Markets: September 2008 Update</title><content type='html'>&lt;br /&gt;
&lt;h3&gt;
NOTE, New Version Available: &lt;/h3&gt;
This version of the map is now outdated. I have released a new version of this map for Enterprise Cloud Summit at Interop Las Vegas. &lt;b&gt;Follow &lt;/b&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2009/05/cloud-computing-taxonomy-at-interop-las.html&quot;&gt;&lt;b&gt;this link&lt;/b&gt;&lt;/a&gt;&lt;b&gt; for the latest version.&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Interop NYC 2008&lt;/h3&gt;
Four months ago, Kent Dickson and I &lt;a href=&quot;http://peterlaird.blogspot.com/2008/05/understanding-cloud-computingsaaspaas.html&quot;&gt;created a visual map&lt;/a&gt; of the Cloud, SaaS and PaaS industry. It proved to be a popular item - we got a lot of comments and continue to see traffic to my blog page. I was long overdue to create a second version - comments needed to be integrated, and the industry has changed enough to warrant a round of updates. This blog entry contains an updated version of the map.&lt;br /&gt;
The timing is no accident. I will be speaking at the &lt;a href=&quot;http://www.interop.com/newyork/conference/cloud-computing.php&quot;&gt;Interop NYC 2008&lt;/a&gt; conference on September 15-19. I will be presenting on the topic of Cloud Taxonomy. My slide deck was submitted last month, but I want to have a fresh version of this taxonomy to present. Thus, the tyranny of the deadline has forced my hand.&lt;br /&gt;
&lt;h3&gt;
Defining the Markets&lt;/h3&gt;
In the &lt;a href=&quot;http://peterlaird.blogspot.com/2008/05/understanding-cloud-computingsaaspaas.html&quot;&gt;first version of the map&lt;/a&gt;, the players were divided into four major buckets (from the bottom up):&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Cloud Computing&lt;/b&gt; &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Platform as a Service (PaaS)&lt;/b&gt; &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Software as a Service (SaaS)&lt;/b&gt; &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Core Cloud Services&lt;/b&gt; &lt;/li&gt;
&lt;/ul&gt;
In the intervening months, a number of others have attempted to dissect the industry into a taxonomy. &lt;a href=&quot;http://et.cairene.net/2008/07/03/cloud-services-continuum/&quot;&gt;Robert Anderson&lt;/a&gt; came closest to our original breakdown by &lt;a href=&quot;http://et.cairene.net/2008/07/03/cloud-services-continuum/&quot;&gt;identifying three major buckets in his blog&lt;/a&gt;:&lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SMTRXQVvxSI/AAAAAAAAAFU/2Iinl0UIL1w/image%5B5%5D.png&quot;&gt;&lt;img alt=&quot;image&quot; border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://lh4.ggpht.com/peterjlaird/SMTRXlE1CWI/AAAAAAAAAFY/7yUJ8sv1_ew/image_thumb%5B3%5D.png&quot; style=&quot;border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px;&quot; width=&quot;217&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
I like the labels on the bottom two buckets, especially getting away from the &lt;b&gt;PaaS&lt;/b&gt; label in favor of &lt;b&gt;Platform&lt;/b&gt;. However, I don&#39;t agree on the top, as &lt;b&gt;Software&lt;/b&gt; is too generic of a word. I prefer &lt;b&gt;Applications&lt;/b&gt; for that bucket. Also, I believe a fourth bucket is necessary, to include a number of standalone components that are built on the platforms but are not applications. We called these &lt;b&gt;Core Cloud Services&lt;/b&gt; in the first version, and I have labeled the bucket just &lt;b&gt;Services&lt;/b&gt; this time around.&lt;br /&gt;
The updated stack that I will use in the taxonomy is as follows (starting at the bottom):&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Infrastructure:&lt;/b&gt;&amp;nbsp; the core computing resources and network fabric for the cloud deployment &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Platform: &lt;/b&gt;the software infrastructure that allows sys admins and developers to deploy an app to the cloud &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Services:&lt;/b&gt; additional services that can be woven into the cloud app, such as billing, storage, integration &lt;/li&gt;
&lt;li&gt;&lt;b&gt;Applications:&lt;/b&gt; the ultimate cloud product - the actual cloud based application that the user touches. These number in the thousands. &lt;/li&gt;
&lt;/ul&gt;
You will note that the map is annotated with these buckets, with &lt;b&gt;&quot;1&quot;&lt;/b&gt; denoting Infrastructure, and so on.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
The Visual Industry Map&lt;/h3&gt;
Below is the visual map as promised. You will find &lt;a href=&quot;http://saaslink.googlepages.com/Laird_CloudMap_Sept2008.png&quot;&gt;a larger version hosted here&lt;/a&gt;. An explanation of each category and a full clickable URL list of the solutions is offered below the map.&lt;br /&gt;
Please post comments with your feedback - they are very much appreciated. As before, there is no hope for this map to be comprehensive. I have selected a good group of vendors, but of course there are others that could have been placed on the map. My research notes &lt;a href=&quot;http://saaslink.googlepages.com/cloudVendorMatrix.xls&quot;&gt;are here&lt;/a&gt;, and they may explain why a particular vendor was left off. &lt;br /&gt;
What worked well before was for commenters to log the omissions, which I can evaluate and remedy in a later version. Also, Jeff Kaplan at THINKStrategies has created a &lt;a href=&quot;http://www.saas-showplace.com/&quot;&gt;SaaS Showplace&lt;/a&gt; database that is far more comprehensive. &lt;br /&gt;
Now, to the point, the map as promised:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://saaslink.googlepages.com/Laird_CloudMap_Sept2008.png&quot;&gt;&lt;img alt=&quot;Laird_CloudMap_Sept2008&quot; border=&quot;0&quot; height=&quot;628&quot; src=&quot;https://lh3.ggpht.com/peterjlaird/SMTRX8hjEtI/AAAAAAAAAFc/rqrQGUZsmK0/Laird_CloudMap_Sept2008%5B7%5D.png&quot; style=&quot;border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px;&quot; width=&quot;687&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Reference Vendor List&lt;/h3&gt;
The following is the clickable list of each vendor displayed above. &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Public Cloud      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/kGF&quot;&gt;~ Amazon EC2 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k0N&quot;&gt;~ ServePath GoGrid &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k2H&quot;&gt;~ Rackspace Mosso Cloud &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k8I&quot;&gt;~ Joyent Accelerators &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k9x&quot;&gt;~ AppNexus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ky0&quot;&gt;~ Flexiscale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kap&quot;&gt;~ ElasticHosts &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Private Cloud      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/uXd&quot;&gt;~ Eucalyptus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kvx&quot;&gt;~ Cassatt Active Response &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/4iC&quot;&gt;~ Enomaly Enomalism Platform &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Grid          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kx8&quot;&gt;~ Globus Toolkit &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kwz&quot;&gt;~ Beowulf &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kGb&quot;&gt;~ Sun Project Caroline &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Open Cloud Platforms      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k5e&quot;&gt;~ Heroku &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k6e&quot;&gt;~ Morph Labs &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l3N&quot;&gt;~ Aptana CloudStudio &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Custom Cloud Platforms      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l1W&quot;&gt;~ Salesforce.com force.com &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2k1l&quot;&gt;~ Google App Engine &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHL&quot;&gt;~ Bungee Labs Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://quickbase.com/&quot;&gt;~ QuickBase &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l24&quot;&gt;~ LongJump &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l1N&quot;&gt;~ Coghead &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Cloud Platform Tools      &lt;ul&gt;
&lt;li&gt;Fabric Mgmt          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/1oNP&quot;&gt;~ Rightscale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/52H&quot;&gt;~ Scalr &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kre&quot;&gt;~ Elastra Cloud Server &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2krq&quot;&gt;~ 3Tera AppLogic &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktO&quot;&gt;~ Kaavo IMOD &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Data Grids          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ksY&quot;&gt;~ Oracle Coherence &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kt6&quot;&gt;~ IBM eXtreme Scale &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktd&quot;&gt;~ GigaSpaces Data Grid &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ktm&quot;&gt;~ Gemstone Gemfire &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Virtual Appliances          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kua&quot;&gt;~ rPath &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kuh&quot;&gt;~ CohesiveFT &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kkJ&quot;&gt;~ Hyperic CloudStatus &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/3tg&quot;&gt;~ Hadoop &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Storage      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2fWl&quot;&gt;~ Amazon S3 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ky9&quot;&gt;~ Amazon SimpleDB &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kyK&quot;&gt;~ Microsoft SSDS &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kxB&quot;&gt;~ Rackspace Mosso CloudFS &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kxi&quot;&gt;~ Google BigTable &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Integration      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHL&quot;&gt;~ Bungee Labs Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHQ&quot;&gt;~ Boomi &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kHZ&quot;&gt;~ MuleSource Mule OnDemand &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kI1&quot;&gt;~ Amazon SQS &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kI8&quot;&gt;~ Microsoft BizTalk Services &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIn&quot;&gt;~ OpSource Connect &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIx&quot;&gt;~ SnapLogic SaaS Solution Packs &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kIB&quot;&gt;~ gnip &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/WWn&quot;&gt;~ CastIron &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kJ8&quot;&gt;~ Appirio &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kJY&quot;&gt;~ Skemma &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kKo&quot;&gt;~ Appian Anywhere &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Value-Add      &lt;ul&gt;
&lt;li&gt;Billing          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZe&quot;&gt;~ OpSource Billing &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZi&quot;&gt;~ Aria &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZj&quot;&gt;~ eVapt &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZm&quot;&gt;~ Zuora &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZq&quot;&gt;~ Vindicia &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Security          &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kZW&quot;&gt;~ Ping Identity &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2kuv&quot;&gt;~ OpenID/OAuth &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2l0j&quot;&gt;~ Strikeiron &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Applications      &lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldK&quot;&gt;~ Salesforce.com &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldI&quot;&gt;~ Netsuite &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldF&quot;&gt;~ Taleo &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldC&quot;&gt;~ Oracle OnDemand &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/2ldu&quot;&gt;~ Concur &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://is.gd/1eE7&quot;&gt;~ Google Apps &lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:04af926e-1cf9-47ff-86e1-ed1301df211b&quot; style=&quot;display: inline; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot;&gt;
Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/Cloud&quot; rel=&quot;tag&quot;&gt;Cloud&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/SaaS&quot; rel=&quot;tag&quot;&gt;SaaS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/PaaS&quot; rel=&quot;tag&quot;&gt;PaaS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/taxonomy&quot; rel=&quot;tag&quot;&gt;taxonomy&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;
Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/6805984298604383431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/6805984298604383431' title='24 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6805984298604383431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6805984298604383431'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/09/visual-map-of-cloud-computingsaaspaas.html' title='Visual Map of the Cloud Computing/SaaS/PaaS Markets: September 2008 Update'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh4.ggpht.com/peterjlaird/SMTRXlE1CWI/AAAAAAAAAFY/7yUJ8sv1_ew/s72-c/image_thumb%5B3%5D.png" height="72" width="72"/><thr:total>24</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-175142599667542510</id><published>2008-08-26T23:46:00.001-06:00</published><updated>2008-08-26T23:46:30.631-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="http"/><category scheme="http://www.blogger.com/atom/ns#" term="mashup"/><category scheme="http://www.blogger.com/atom/ns#" term="REST"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogicportal"/><title type='text'>Building a RESTful Enterprise Integration with Oracle and SnapLogic</title><content type='html'>&lt;p&gt;In the enterprise space, integration problems abound.&amp;#160; IT must connect numerous legacy systems in new applications to adjust to the changing needs of the business. Technologies to achieve such integrations include SOAP based Web Services (WS-*) and binary protocols such as CORBA and RMI. This blog entry discusses a different approach - integration using lightweight REST APIs.&lt;/p&gt;  &lt;p&gt;To illustrate the concept, a demo has been created showing how to combine data from Oracle&#39;s WebLogic Portal product with data from Oracle Database. This demo is accomplished using RESTful APIs as the data transport mechanism, and is orchestrated by a third party data integration product called &lt;a href=&quot;http://www.snaplogic.com/main&quot;&gt;SnapLogic&lt;/a&gt;. This demo was showcased at a REST Symposium I organized for Oracle employees in July, which featured speakers from Oracle, SnapLogic and Yahoo! (see below for details).&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;What is REST?&lt;/h3&gt;  &lt;p&gt;REST is an acronym for REpresentational State Transfer, and was coined by Roy Fielding in &lt;a href=&quot;http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm&quot;&gt;his PhD thesis&lt;/a&gt; published in 2000. It is not a technology, a standard, or a product. REST is an architectural pattern that describes the underlying architecture of the World Wide Web and how it came to be such a massively scalable computer application. The WWW is known to have the following qualities:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Highly scalable - millions of websites &lt;/li&gt;    &lt;li&gt;Fault tolerant - at any given time, many websites are offline, but the web continues to work &lt;/li&gt;    &lt;li&gt;Performance- HTTP allows for intermediaries to help improve performance via caching &lt;/li&gt;    &lt;li&gt;Interoperable - nearly every computing platform has a browser, and websites are written in a myriad of languages &lt;/li&gt;    &lt;li&gt;Distributed - websites and clients span the globe &lt;/li&gt;    &lt;li&gt;Self describing - there is no user manual required for users to navigate the WWW &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Aren&#39;t the above qualities desired for any enterprise systems as well? The power of REST lies in the idea that the same fundamentals that work so well for the WWW can also work with great success within the enterprise.&amp;#160; &lt;/p&gt;  &lt;p&gt;There are &lt;a href=&quot;http://en.wikipedia.org/wiki/Representational_State_Transfer&quot;&gt;plenty of resources&lt;/a&gt; on the web that explain the principles of REST, and so I have no intention of duplicating that material. In essence REST describes an architecture in which:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Application resources (objects, in the OO world) are exposed as URIs &lt;/li&gt;    &lt;li&gt;HTTP requests are used to retrieve and update data on the server &lt;/li&gt;    &lt;li&gt;The HTTP requests utilize the standard HTTP verbs (GET, POST, PUT, DELETE) to define the API operations, helping client developers by providing a consistent interaction model &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;An example is the following:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A client issues a request to the following URI:&amp;#160; &lt;a href=&quot;http://wlp.bea.com/dvt/api/content/autos.jsp&quot;&gt;http://wlp.bea.com/dvt/api/content/autos.jsp&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;The server response contains a list of automobiles, described in a format such as XML &lt;/li&gt;    &lt;li&gt;The client consumes the XML document and outputs the entries that match the user&#39;s criteria &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This pattern is seen most often with Rich Internet Applications (RIA), where the client is a browser and the API is being invoked via Ajax (more precisely, the JavaScript &lt;a href=&quot;http://en.wikipedia.org/wiki/Xmlhttprequest&quot;&gt;XmlHttpRequest&lt;/a&gt; facility). While this is a very powerful use of RESTful APIs and is alone enough to justify the creation of RESTful APIs, this use case is not the focus of this blog entry. I would encourage you to research Ajax application development for more background. &lt;/p&gt;  &lt;p&gt;Instead, we will look more closely at how RESTful APIs can also make data integration easy.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;RESTful Integration in Concept&lt;/h3&gt;  &lt;p&gt;RESTful APIs expose data in a way that is easily consumed. Invoking the API is as easy as issuing an HTTP request, which is possible to do from almost any programming language/platform. While enterprise data integration can be implemented using a wide variety of technologies, the purpose of this blog entry is to show how it can be done with RESTful APIs.&lt;/p&gt;  &lt;p&gt;As stated in the preamble, there are non-RESTful approaches to solving this problem. A SOAP based solution could be implemented and for some cases is the preferred approach. If your use case requires the support of the WS-* family of standards, then WS-* is the way to go. What this example shows is that REST offers an alternative and is appealing in its simplicity.&lt;/p&gt;  &lt;p&gt;Instead of discussing the theory, it is more useful to look at a working example.&lt;/p&gt;  &lt;h3&gt;Example: Oracle WebLogic Portal + Oracle Database + SnapLogic + REST&lt;/h3&gt;  &lt;p&gt;Consider the following example:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;An insurance company is using the Content Management capabilities of &lt;strong&gt;Oracle WebLogic Portal&lt;/strong&gt; to store auto claims. Each claim contains a photo of the damaged vehicle, and some data about that vehicle such as make, model, year and a description of the damage. &lt;/li&gt;    &lt;li&gt;The insurance company also has a &lt;strong&gt;Oracle Database&lt;/strong&gt; that is populated with industry data regarding the fair market value of the cars, and the salvage value. These values are specific to the make, model and year. &lt;/li&gt;    &lt;li&gt;The insurance company wishes to put the repair of the damaged vehicles out to bid to a community of auto repair shops. The intent is to allow shops to bid on the vehicles they are willing to repair using the industry data and the information from the claim. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The insurance company decides to use a quick and lightweight approach to build a data mashup with a web UI. The implementation is achieved using RESTful APIs, and orchestrated using a product called &lt;a href=&quot;http://www.snaplogic.com/&quot;&gt;&lt;strong&gt;SnapLogic&lt;/strong&gt;&lt;/a&gt;. SnapLogic is an open source server that provides:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Many pre-built connectors to expose native data sources as RESTful APIs (e.g. database, spreadsheet, XML) &lt;/li&gt;    &lt;li&gt;Sophisticated data manipulation capabilities, such as joins, filtering, sorting, and computations &lt;/li&gt;    &lt;li&gt;A variety of output formats for the completed RESTful feed &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The data integration demo was implemented as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A RESTful API is configured for the WebLogic Portal (WLP) Content Management system. In this example, the RESTful API was custom built &lt;a href=&quot;http://wlp.bea.com/dvt/api/content/autos.jsp.txt&quot;&gt;as a JSP&lt;/a&gt;, but this capability will come pre-built in a future version of WLP. &lt;/li&gt;    &lt;li&gt;The Oracle Database schema is exposed as a RESTful data API using an out of the box Database Reader component of the SnapLogic server. &lt;/li&gt;    &lt;li&gt;The two data sources are joined using a SnapLogic pipeline. The pipeline reads the claims from WLP CM and the industry data from the database using the RESTful APIs. &lt;/li&gt;    &lt;li&gt;The joined data is converted into an ATOM syndication feed via the SnapLogic server (using an Xml Writer component) &lt;/li&gt;    &lt;li&gt;The ATOM feed is displayed in a ATOM reader, in this case the Google Mashup Editor UI &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;All of this is achieved via configuration, not code. The architecture is depicted in this diagram:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SLTqL5tR_UI/AAAAAAAAAE8/W_uV3fjSsqM/image5.png&quot;&gt;&lt;img height=&quot;304&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SLTqMPoHKTI/AAAAAAAAAFA/wG1oo2Gagbg/image_thumb3.png&quot; width=&quot;410&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The resulting web application appears like this:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SLTqMSs3ZCI/AAAAAAAAAFE/DJbhv1kal4U/image22.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;252&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/peterjlaird/SLTqM80D9GI/AAAAAAAAAFI/h_L9-shl9Cw/image_thumb14.png&quot; width=&quot;500&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;For more detailed information on the implementation of this mashup, consult the companion entry on SnapLogic&#39;s blog:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://blog.snaplogic.org/?p=221&quot;&gt;SnapLogic CTO Mike Pittaro&#39;s blog entry&lt;/a&gt; on the Oracle mashup&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Oracle and REST&lt;/h3&gt;  &lt;p&gt;This is a simple demonstration that shows the ease of implementing integrations using RESTful techniques, especially when combined with a REST integration enabler such as SnapLogic. It is &lt;a href=&quot;http://www.oracle.com/corporate/press/2008_jul/middlewarestrategywebcast.html&quot;&gt;a stated goal&lt;/a&gt; of some of the Oracle product groups to provide RESTful APIs for access to product data. Check with the roadmap for each product to understand when these APIs will be available.&lt;/p&gt;  &lt;p&gt;Attendees to &lt;a href=&quot;http://www.oracle.com/openworld/2008/index.html&quot;&gt;Oracle Open World 2008&lt;/a&gt; will have several sessions related to Oracle product groups and REST:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://is.gd/1LfW&quot;&gt;Deploying a Web-Oriented Architecture with Oracle WebCenter, Oracle WebLogic Portal, and Oracle WebCenter Interaction&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www28.cplan.com/cc208/session_details.jsp?isid=298502&amp;amp;ilocation_id=208-1&amp;amp;ilanguage=english&quot;&gt;Give Users What They Want: Web-Based Data Access and Rich Internet Applications&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www28.cplan.com/cc208/session_details.jsp?isid=298497&amp;amp;ilocation_id=208-1&amp;amp;ilanguage=english&quot;&gt;No REST for the Weary: REST APIs and the Activity Stream&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Oracle Internal REST Symposium&lt;/h3&gt;  &lt;p&gt;For Oracle employees, more information is available on the company intranet. I organized an internal symposium on REST amongst the product groups on July 28th, 2008. The event included speakers from Yahoo! and SnapLogic.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SLTqNNFYq9I/AAAAAAAAAFM/aau-KNR5480/eventLogo4.jpg&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;33&quot; alt=&quot;eventLogo&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SLTqNQTwFVI/AAAAAAAAAFQ/TrjlBq43xc8/eventLogo_thumb2.jpg&quot; width=&quot;256&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The agenda covered a number of RESTful topics, including:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Explaining REST (&lt;a href=&quot;http://subbu.org/&quot;&gt;Subbu Allamaraju&lt;/a&gt; of Yahoo!) &lt;/li&gt;    &lt;li&gt;Industry product landscape - SnapLogic (Mike Pittaro, CTO SnapLogic), and other products &lt;/li&gt;    &lt;li&gt;Enabling technologies - &lt;a href=&quot;http://www.restlet.org/&quot;&gt;RESTlet&lt;/a&gt;, &lt;a href=&quot;http://jcp.org/en/jsr/detail?id=311&quot;&gt;JSR 311&lt;/a&gt;, &lt;a href=&quot;https://wadl.dev.java.net/&quot;&gt;WADL&lt;/a&gt;, JSON marshalling &lt;/li&gt;    &lt;li&gt;Oracle Product efforts - presentations by various products groups on their REST efforts &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Access to the recordings and slide decks can be found &lt;a href=&quot;http://aseng-wiki.us.oracle.com/asengwiki/display/ASDevWorkplace/Oracle+Internal+REST+Symposium&quot;&gt;on the intranet here&lt;/a&gt;. &lt;/p&gt;  &lt;h3&gt;Resources&lt;/h3&gt;  &lt;p&gt;You may find the following links helpful:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The &lt;a href=&quot;http://wlp.bea.com/dvt/api/content/autos.jsp&quot;&gt;hosted WLP CM REST feed&lt;/a&gt; of crashed automobiles&lt;/li&gt;    &lt;li&gt;The &lt;a href=&quot;http://wlp.bea.com/dvt/api/content/autos.jsp.txt&quot;&gt;WLP CM REST API implementation&lt;/a&gt; (offered as a JSP for easy distribution, but could be a servlet)&lt;/li&gt;    &lt;li&gt;The &lt;a href=&quot;http://crashedvehicles.googlemashups.com/&quot;&gt;hosted demo&lt;/a&gt; on Google Mashup Editor &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.snaplogic.com/&quot;&gt;SnapLogic&lt;/a&gt; website. &lt;/li&gt;    &lt;li&gt;SnapLogic &lt;a href=&quot;http://blog.snaplogic.org/?p=221&quot;&gt;CTO Mike Pittaro&#39;s blog entry&lt;/a&gt; explaining the implementation &lt;/li&gt;    &lt;li&gt;SnapLogic &lt;a href=&quot;http://blog.snaplogic.org/?p=220&quot;&gt;CEO Chris Marino&#39;s blog entry&lt;/a&gt; discussing his thoughts on the REST Symposium&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Representational_State_Transfer&quot;&gt;REST wikipedia entry&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b27bf7cf-f0f9-4630-8e12-9a64253058e2&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/REST&quot; rel=&quot;tag&quot;&gt;REST&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Oracle&quot; rel=&quot;tag&quot;&gt;Oracle&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/SnapLogic&quot; rel=&quot;tag&quot;&gt;SnapLogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/WebLogic&quot; rel=&quot;tag&quot;&gt;WebLogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/WebLogicPortal&quot; rel=&quot;tag&quot;&gt;WebLogicPortal&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/integration&quot; rel=&quot;tag&quot;&gt;integration&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/HTTP&quot; rel=&quot;tag&quot;&gt;HTTP&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/GoogleMashupEditor&quot; rel=&quot;tag&quot;&gt;GoogleMashupEditor&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/175142599667542510/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/175142599667542510' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/175142599667542510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/175142599667542510'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/08/building-restful-enterprise-integration.html' title='Building a RESTful Enterprise Integration with Oracle and SnapLogic'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/peterjlaird/SLTqMPoHKTI/AAAAAAAAAFA/wG1oo2Gagbg/s72-c/image_thumb3.png" height="72" width="72"/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-6972998021063666253</id><published>2008-06-17T00:22:00.001-06:00</published><updated>2008-06-17T00:22:25.124-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>Best Practices for the Suspension or Termination of a SaaS Customer Account</title><content type='html'>&lt;p&gt;No one wants to predict the failure of the relationship between a SaaS provider and customer. But much like a pre-nuptial agreement helps to quickly and fairly resolve the end of a marriage, a good up front contract helps ensure that both parties are fairly treated when a SaaS contract terminates. For this to work, the contract must have a well defined and fair set of terms for unwinding the relationship that works for both parties and minimizes business disruption. This blog entry proposes a set of rights for both customer and provider to use when establishing the contract terms.&lt;/p&gt;  &lt;p&gt;This blog entry is a result of my analysis of a number of SaaS contracts. I covered the analysis in my previous blog entry. Note that I am not a lawyer, just an amateur contract sleuth so please engage a professional when working on your contracts.&lt;/p&gt;  &lt;h3&gt;SaaS Customer Bill of Rights&lt;/h3&gt;  &lt;p&gt;Other authors have created full blown Bill of Rights for SaaS customers. For example:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Dion Hinchcliffe:&amp;#160; &lt;a href=&quot;http://blogs.zdnet.com/Hinchcliffe/index.php?p=18&quot;&gt;Information portability, trust, and an Online Software &amp;#8216;Bill of Rights&amp;#8217;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Wesabe: &lt;a href=&quot;http://www.wesabe.com/page/security&quot;&gt;Data Bill of Rights&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Ray Wang:&amp;#160; &lt;a href=&quot;http://www.forrester.com/Research/Document/Excerpt/0,7211,40938,00.html&quot;&gt;An Enterprise Software Licensee&#39;s Bill Of Rights&lt;/a&gt; (for fee content, I haven&#39;t read it)&lt;/li&gt;    &lt;li&gt;Kevin&#39;s &lt;a href=&quot;http://sv411.blogspot.com/2007/07/saas-customer-bill-of-rights.html&quot;&gt;Bill of Rights&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This blog entry is more focused. I am proposing rights that apply to both customer and provider when an account is on its way to being terminated.&lt;/p&gt;  &lt;h3&gt;Termination Rights for the Customer &lt;/h3&gt;  &lt;p&gt;I propose the following rights for customers whose account is being terminated:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Right to Business Continuity&lt;/strong&gt; - customers rely on their SaaS products to conduct their business. Therefore, the provider must not have the ability to just terminate the customer&#39;s account without warning. A process must be in place to give ample warning before an account is terminated. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Right of Data Ownership&lt;/strong&gt; - the customer must be able to extract their data upon termination, regardless of cause. The format of the extracted data should be as lossless as possible. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Right to Walk Away&lt;/strong&gt; - the customer has the right to discontinue use of the service at the end of their contract. By exercising this right, they don&#39;t relinquish their other rights.&lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Termination Rights for the SaaS Provider&lt;/h3&gt;  &lt;p&gt;I propose the following rights for the provider that is terminating the account:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Right to be Paid&lt;/strong&gt; - if you read about the SaaS business model, you will discover that cash flow is a major issue for the provider. Providers must carefully manage incoming cash and outgoing expenses. Anything that disrupts the predictability of the business will create major problems. Therefore, the SaaS provider has the right to expect timely payment, perhaps months in advance. If the customer fails to honor this right, the provider can quickly move the account into a suspended state.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Right to Protect the Service &lt;/strong&gt;- if a customer account engages in malicious behavior or violates terms in the contract, the provider has the right to protect their service. In cases where the account is causing ongoing harm to the service (Denial of Service attacks), the provider must be able to immediately suspend the account. For less urgent issues, the provider should provide an appropriate warning before suspending the account.&lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Right to Fire a Customer&lt;/strong&gt; -&amp;#160; businesses need to adapt to changing markets, and sometimes this means adapting or discontinuing products that aren&#39;t successful. For customers that no longer fit the profile of the business, the providers need to be able to discontinue their relationship with these customers. However, this process must honor the customer&#39;s right to business continuity.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Further Discussion&lt;/h3&gt;  &lt;p&gt;Hopefully each of these rights are obvious in their benefit. A couple demand more discussion.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Data Deletion - Where is the Mechanic&#39;s Lien?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Most Terms of Service assert that the customer owns their data. I am no lawyer, but ownership appears to be full legal ownership, like you would own a car or a house. See &lt;a href=&quot;http://www.netsuite.com/portal/pdf/tos.pdf&quot;&gt;Netsuite&#39;s ToS&lt;/a&gt; as an example, but a clause like this is seen in almost every contract:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Customer Data shall at all times be considered the property of the Customer.&amp;quot;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;However, some ToS documents allow the provider to destroy that data without providing the customer a copy in cases where the account is terminated for breach of the terms or failure to pay. This does not appear to be fair to the customer (as the SaaS provider is the prosecutor, judge and jury in this decision), and is inconsistent with physical property law in the U.S. (intl folks bear with me, I am focused solely on U.S. law here). &lt;/p&gt;  &lt;p&gt;For example, if you don&#39;t pay a carpenter that performed work on your house, that carpenter does not have the right to burn your house to the ground. Instead, there is a process called the &lt;a href=&quot;http://en.wikipedia.org/wiki/Mechanic&#39;s_lien&quot;&gt;Mechanics Lien&lt;/a&gt; that requires the tradesman to pursue the money through a legal process, and he cannot harm the property in question. You could argue that data does not carry the same legal rights as physical property, but at least in some jurisdictions the law appears to treat data the same: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Catherine Rivard: &lt;a href=&quot;http://www.irmi.com/expert/Articles/2001/Rossi08.aspx&quot;&gt;Is Computer Data &amp;quot;Tangible Property&amp;quot;&lt;/a&gt; - traces the history of the issue, and implies that data is tangible property based on the Ingram Micro case&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.sjgames.com/SS/texaslaw.html&quot;&gt;Texas law&lt;/a&gt; makes inflicting &amp;quot;harm&amp;quot; on data a crime&lt;/li&gt;    &lt;li&gt;Wisconsin has a law &lt;a href=&quot;http://caselaw.lp.findlaw.com/scripts/getcase.pl?navby=search&amp;amp;case=/data2/circs/7th/953352.html&quot;&gt;against willful destruction of computer data&lt;/a&gt;&amp;#160;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;It seems that if a provider destroys their customer&#39;s data they open themselves to some legal liability. On the other hand, perhaps expressly reserving the right to destroy the data in the ToS alleviates the liability for the provider?&amp;#160; Is it worth the risk of finding out?&lt;/p&gt;  &lt;p&gt;Regardless, destroying a customer&#39;s property is not a good business practice. Providers should treat the data like any of the customer&#39;s physical property. It should be returned undamaged because it legally belongs to the customer. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Business Continuity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Some Terms of Service allow for immediate termination of a customer&#39;s account with or without cause. In others, short periods of time like 30 days is all the notice necessary before the customer can be turned out. For mission critical applications, this is troublesome. &lt;/p&gt;  &lt;p&gt;I feel there are a couple of key principles here to consider.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;For no-cause terminations, the provider must provide as much advanced notice as it will take a typical customer to migrate to a new service. For services with high switching costs, this will be a period of many months.&lt;/li&gt;    &lt;li&gt;For cases where the customer is in violation of the contract, the account should move into a suspended state before termination. This allows the customer to remedy the violation before the account is terminated. Suspensions are reversible, terminations are not.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;These two principles are not widely implemented, but are critical in order to provide the customer with fair treatment. &lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;Negotiate your Customer Contract&lt;/h3&gt;  &lt;p&gt;These listed rights are all well and good, but they won&#39;t likely appear in your contract by default. The contracts I have seen are largely skewed in the providers&#39; favor because they were written by the providers. As a customer, I feel it is worth your time working towards more favorable terms. As shown in this blog entry, don&#39;t forget to negotiate the exit terms in the contract to ensure a viable migration when the time comes to end the project. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:2984a80e-f4bb-4dce-957e-3134c61c7232&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/contract&quot; rel=&quot;tag&quot;&gt;contract&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/suspend&quot; rel=&quot;tag&quot;&gt;suspend&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/terminate&quot; rel=&quot;tag&quot;&gt;terminate&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/6972998021063666253/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/6972998021063666253' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6972998021063666253'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6972998021063666253'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/06/best-practices-for-suspension-or.html' title='Best Practices for the Suspension or Termination of a SaaS Customer Account'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-192567668728664761</id><published>2008-06-12T03:18:00.002-06:00</published><updated>2008-06-12T18:51:40.753-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>The Good, Bad, and the Ugly of SaaS Terms of Service, Licenses, and Contracts</title><content type='html'>&lt;p&gt;Did you read your contract carefully before signing on with your SaaS provider? This blog entry shows you why it is important. Mixed in with some good stuff are some bad terms, and even down right ugly terms of use. Some vendors assert full rights to use and sublicense your private data! That&#39;s right, for the privilege of using their SaaS application, you throw in the rights for the use of your private data. Caveat Emptor!&lt;/p&gt;  &lt;h3&gt;The Analysis&lt;/h3&gt;  &lt;p&gt;This blog entry is a roll-up of an analysis I did of the &lt;em&gt;Terms of Use&lt;/em&gt; for 8 different SaaS products. The products varied widely - some for the enterprise, others for the consumer. What the analysis showed is that there is little consistency across the legal documents governing the use of these services. It also showed some alarming terms that some of the sites demand.&lt;/p&gt;  &lt;p&gt;I have picked out just the highlights to present here. The full analysis is available for download at the end of this post, but I warn you, it is quite boring. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Notice:&lt;/strong&gt; I am an employee of Oracle, but this blog does not represent the views of my employer.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;The Good&lt;/h3&gt;  &lt;p&gt;The following are the bright spots in the collection of ToS:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Netsuite:&lt;/strong&gt; there are reports that this company has onerous licensing practices, but I see no evidence that. Of the 8 contracts I reviewed, Netsuite&#39;s is by far the best written and the most consumer friendly. They have the best data retention policies and termination procedures. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Boomi, Netsuite, Taleo:&lt;/strong&gt; offer warranties for the various aspects of their systems, and not just &quot;as-is&quot;. &lt;em&gt;(see Boomi item 6.1, Netsuite section 3, Taleo item 11)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;All but Concur:&lt;/strong&gt; all of these services affirm that you own the data that you upload. This is key. However, there are a couple of vendors that reserve too many rights to use your data, see below. &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Boomi, Coghead, Netsuite, Salesforce, Taleo:&lt;/strong&gt; these companies indemnify the customer in cases where the application is found to infringe on a 3rd party&#39;s IP, and the customer is sued. Taleo is the only vendor of the 8 that does not demand to be indemnified in return from someone suing them for your use of the system. &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;The Bad&lt;/h3&gt;  &lt;p&gt;The following are terms that you should be wary of when entering into a service contract. Try to negotiate better terms:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Box.net, Coghead, Concur, Salesforce, Taleo, Zoho:&lt;/strong&gt; these companies have contracts that can change at any time without any notice. In a way, this could be the ugliest line item of them all because the company could write in whatever nasty thing they want. But I will leave it at &quot;bad&quot; until one of the companies does something evil with it. &lt;em&gt;(see Box.net item A, Coghead item 6.2, Concur item 8, SFDC item 21, Zoho item Mod ToS)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Salesforce, Taleo:&lt;/strong&gt; have a line item that allows the company to advertise your name as a customer, merely by signing up for a paid account. Customer references should be earned, not mandated. &lt;em&gt;(SFDC item 1, Taleo 7.1)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Salesforce:&lt;/strong&gt; prohibits direct competitors from using the Service. But at the rate SFDC is expanding offerings, will you become a competitor tomorrow? For example, anyone that offers software development tools became a competitor when they launched force.com. &lt;em&gt;(see SFDC item 2)&lt;/em&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;The Ugly&lt;/h3&gt;  &lt;p&gt;The following is the list of contract terms that are unacceptable. I would not recommend using the following services unless you negotiate better contract terms. [&lt;strong&gt;Update:&lt;/strong&gt;to be clear, I don&#39;t think these companies are out to do evil, I am merely sounding the alarm to their contract terms] &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;Box.net:&lt;/strong&gt; &lt;strong&gt;[Update: Box.net has fixed this issue in their contract, by narrowing dramatically the scope of their rights to your content] &lt;/strong&gt;&lt;span style=&quot;text-decoration: line-through;&quot;&gt;by uploading content  that &lt;em&gt;you own&lt;/em&gt; to this service you are giving Box.net an irrevocable license to use, copy, create derivative works of, sublicense, etc etc of your content. Think about that. The only redeeming argument is that this contract is for personal, not business use. But they put this item in there for a reason - why? Imagine uploading your personal pictures and then seeing one in the next promotional campaign for Taco Bell. This could happen because Box.net has the right to sublicense as they wish.&lt;/span&gt; &lt;em&gt;(see section D)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Coghead:&lt;/strong&gt; if Coghead terminates your account, you have just 2 days to send written notice to request your data. Otherwise they can permanently delete all of your data. What&#39;s the rush? &lt;em&gt;(item 7.3)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Concur:&lt;/strong&gt; (caveat: this is the Trial license, which can only be assumed to match closely the production license) has the most worrisome contract as it relates to your data. It is the only one that has no explicit line to indicate that you still own your data (filed business expenses, in this case). But it does have a line saying that Concur has an &lt;strong&gt;irrevocable&lt;/strong&gt; right to use that data - this includes your personal data and financial info! Why is this in the contract? This seems quite broad for data that is of utmost sensitivity.  &lt;em&gt;(see item 5)&lt;/em&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Links to the Terms of Service &lt;/h3&gt;  &lt;p&gt;The following is a list of links for you to inspect the contracts for yourself:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Box.net  &lt;/strong&gt;&lt;a title=&quot;http://box.net/static/html/terms.html&quot; href=&quot;http://box.net/static/html/terms.html&quot;&gt;http://box.net/static/html/terms.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Boomi:   &lt;/strong&gt;&lt;a title=&quot;http://www.boomi.com/application/Boomi+Master+Subscription+Agreement-Online.pdf&quot; href=&quot;http://www.boomi.com/application/Boomi+Master+Subscription+Agreement-Online.pdf&quot;&gt;http://www.boomi.com/application/Boomi+Master+Subscription+Agreement-Online.pdf&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Coghead:  &lt;/strong&gt;&lt;a title=&quot;https://www.coghead.com/user/register?plan=Pro&quot; href=&quot;https://www.coghead.com/user/register?plan=Pro&quot;&gt;https://www.coghead.com/user/register?plan=Pro&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Concur (Trial license):  &lt;/strong&gt;&lt;a title=&quot;http://www.concur.com/register/Concur-Expense-Trial.php&quot; href=&quot;http://www.concur.com/register/Concur-Expense-Trial.php&quot;&gt;http://www.concur.com/register/Concur-Expense-Trial.php&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Netsuite:  &lt;/strong&gt;&lt;a href=&quot;http://www.netsuite.com/portal/pdf/tos.pdf&quot;&gt;http://www.netsuite.com/portal/pdf/tos.pdf&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Salesforce:  &lt;/strong&gt;&lt;a title=&quot;http://www.salesforce.com/company/msa.jsp&quot; href=&quot;http://www.salesforce.com/company/msa.jsp&quot;&gt;http://www.salesforce.com/company/msa.jsp&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Taleo:  &lt;/strong&gt;&lt;a title=&quot;http://www.taleo.com/solutions/licensing-terms.php&quot; href=&quot;http://www.taleo.com/solutions/licensing-terms.php&quot;&gt;http://www.taleo.com/solutions/licensing-terms.php&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Zoho: &lt;/strong&gt;&lt;a title=&quot;http://www.zoho.com/terms.html&quot; href=&quot;http://www.zoho.com/terms.html&quot;&gt;http://www.zoho.com/terms.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Raw Analysis&lt;/h3&gt;  &lt;p&gt;The following link provides you with the spreadsheet I built while analyzing the licenses. The spreadsheet contains the list of common license clauses with pointers into the documents on where to find those clauses.&lt;/p&gt;  &lt;p&gt;What it shows most of all is the lack of commonality across all of the licenses. Each document has a lot of variance. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Download:      &lt;/strong&gt;&lt;a href=&quot;http://saaslink.googlepages.com/PeterLairdSaaSLicenseClauses.xls&quot;&gt;&lt;strong&gt;SaaS &quot;Terms of Service&quot; Analysis Spreadsheet&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Account Suspension/Termination and the Deletion of Data&lt;/h3&gt;  &lt;p&gt;I found that the process by which accounts are suspended (reversible) or terminated (irreversible) wildly inconsistent and mostly incorrect in my opinion. Because termination is also coupled with data deletion, this process needs to be well understood and incredibly fair to the consumer. My next blog entry will focus on this part of the contract, and establishing a reference workflow.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c84c7ab4-95c6-4183-bff2-807e6704d129&quot; style=&quot;margin: 0px; padding: 0px; display: inline;&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/license&quot; rel=&quot;tag&quot;&gt;license&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/contract&quot; rel=&quot;tag&quot;&gt;contract&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/boomi&quot; rel=&quot;tag&quot;&gt;boomi&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/box.net&quot; rel=&quot;tag&quot;&gt;box.net&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/concur&quot; rel=&quot;tag&quot;&gt;concur&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/coghead&quot; rel=&quot;tag&quot;&gt;coghead&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/netsuite&quot; rel=&quot;tag&quot;&gt;netsuite&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/salesforce&quot; rel=&quot;tag&quot;&gt;salesforce&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/taleo&quot; rel=&quot;tag&quot;&gt;taleo&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/zoho&quot; rel=&quot;tag&quot;&gt;zoho&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/192567668728664761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/192567668728664761' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/192567668728664761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/192567668728664761'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/06/good-bad-and-ugly-of-saas-terms-of.html' title='The Good, Bad, and the Ugly of SaaS Terms of Service, Licenses, and Contracts'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-1126950434495132005</id><published>2008-06-05T02:00:00.001-06:00</published><updated>2008-06-05T02:00:08.354-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>How Oracle, IBM, SAP, Microsoft, and Intuit are Responding to the SaaS Revolution</title><content type='html'>&lt;p&gt;In my previous blog entry, I discussed the possibility of a software giant failing to adapt to the SaaS revolution. I used the history of DEC as an example of how a highly successful company could miss a major shift in the market and capsize. This blog entry is a reference guide to what each of the major software vendors are doing in the SaaS space. I won&#39;t be sensational and predict the demise of any of these vendors. I think it&#39;s far too early to tell how the future will pan out. &lt;/p&gt;  &lt;p&gt;I can say subjectively that I am impressed with Larry Ellison&#39;s pioneering efforts in the space. I can also say that SAP is currently the media whipping boy in the space, with delays in their Business ByDesign program costing them credibility. But this revolution is far from done, so let&#39;s not waste time trying to speculate the distant future. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; I am now an employee of Oracle, via the BEA acquisition&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Oracle&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Larry Ellison, Oracle&#39;s CEO, has be talking about on demand software for a long time (10 years I believe), so it is clearly on his radar. In fact, he was an investor in both Salesforce and Netsuite, showing his belief in the business. Charles Phillips, Oracle President, has also spoken to the topic.&lt;/p&gt;  &lt;p&gt;Larry and Charles Phillips have articulated a strategy on how Oracle can deliver SaaS and retain its focus on its core market (large enterprise). Larry does not intend to make a major push into the lower end of the SMB market.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Larry Dignan interviews Larry Ellison: &lt;a href=&quot;http://blogs.zdnet.com/BTL/?p=6341&quot;&gt;he discusses why SAP&#39;s move downmarket is a big mistake, explains Oracle&#39;s strategy&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Larry Dignan: &lt;a href=&quot;http://blogs.zdnet.com/BTL/?p=8806&quot;&gt;Does Larry Ellison have the best SaaS strategy?&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Dan Farber: Charles Phillips talks &lt;a href=&quot;http://blogs.zdnet.com/BTL/?p=6969&quot;&gt;about Oracle&#39;s On Demand business&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Current SaaS Initiatives:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Oracle supports the following SaaS initiatives:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.oracle.com/ondemand/managed-applications.html&quot;&gt;On Demand Managed Applications&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;A SaaS offering, with Oracle hosting its applications on behalf of customers &lt;/li&gt;        &lt;li&gt;It is a successful program, on track to gross $700 million this year, growing quickly &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.oracle.com/technology/tech/saas/index.html&quot;&gt;Oracle SaaS Program&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;Technology and business support for SaaS ISVs &lt;/li&gt;        &lt;li&gt;Partner program with &lt;a href=&quot;http://www.oracle.com/technology/tech/saas/partners.html&quot;&gt;many ISVs already signed up&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.oracle.com/technologies/saas/index.html&quot;&gt;Oracle SaaS Platform&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;A product offering to help ISVs build and host their own SaaS applications &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Weaknesses&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Critics have primarily focused on the lack of end-to-end multitenancy in the On Demand business. The argument is that Oracle will not be able to provide a cost efficient solution unless the entire stack is multi-tenant.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Phil Wainewright: &lt;a href=&quot;http://blogs.zdnet.com/SAAS/?p=369&quot;&gt;Oracle&amp;#8217;s misconceived SaaS strategy&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;InfoWeek: &lt;a href=&quot;http://www.informationweek.com/news/services/hosted_apps/showArticle.jhtml?articleID=207801092&quot;&gt;Oracle Plans Utah Data Center To Support SaaS Business&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://blogs.oracle.com/ZEN/&quot;&gt;Oracle&#39;s SaaS Blog&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Aberdeen Group &lt;a href=&quot;http://www.aberdeen.com/c/report/perspective/4628-AI-oracle-saas-platform.pdf&quot;&gt;positions Oracle as the leading software giant&lt;/a&gt; in the SaaS space &lt;/li&gt;    &lt;li&gt;Phil Wainewright &lt;a href=&quot;http://blogs.zdnet.com/SAAS/?p=411&quot;&gt;is excited about Oracle CRM On Demand&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.crmlandmark.com/oracleondemand.htm&quot;&gt;Oracle CRM On Demand summary&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;h3&gt;Microsoft&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;At an architectural level, Microsoft is promoting an &lt;strong&gt;S+S&lt;/strong&gt; model, instead of a pure SaaS model. S+S stands for &lt;a href=&quot;http://msdn.microsoft.com/en-us/architecture/aa699384.aspx&quot;&gt;Software+Services&lt;/a&gt;. The idea with this is that Software as a Service is most useful when pared with local software (like Office). Microsoft obviously has a major incentive to make sure desktop software is not left behind in the SaaS world, so this makes for good strategy. Whether consumers will buy into it is another matter. See the weaknesses section below for more on this topic.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Mary Hayes &lt;u&gt;Weier&lt;/u&gt;:&amp;#160; &lt;a href=&quot;http://www.informationweek.com/news/software/soa/showArticle.jhtml?articleID=199500430&quot;&gt;Steve Ballmer explains the S+S strategy&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Springboard Research: &lt;a href=&quot;http://springboardresearch.com/content/sampleresearch/microsoft_initiatives.pdf&quot;&gt;Microsoft updates its SaaS strategy&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Current SaaS Initiatives&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The following is a selection of&amp;#160; the SaaS offerings from MSFT:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.microsoft.com/serviceproviders/programs/saasonramp.mspx&quot;&gt;SaaS On-Ramp Program&lt;/a&gt; - aids ISVs in building out SaaS solutions &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.mosbeta.com/Welcome.aspx&quot;&gt;Microsoft Online Services&lt;/a&gt; - its businesss applications ondemand offering       &lt;ul&gt;       &lt;li&gt;Hosted versions of Exchange, Sharepoint, and LiveMeeting &lt;/li&gt;        &lt;li&gt;Dynamics CRM Live - hosted version of the Dynamics CRM offering &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Windows Live - a family of hosted offerings for the small business/consumer      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://news.cnet.com/8301-13860_3-9926229-56.html&quot;&gt;Live Mesh&lt;/a&gt; - touted as a SaaS solution, it currently is just a file synchronization service &lt;/li&gt;        &lt;li&gt;Messenger (IM), Windows Live ID, Virtual Earth, Search, Spaces (blogs), and Gadgets &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://msdn.microsoft.com/en-us/architecture/aa699384.aspx&quot;&gt;Architect Center&lt;/a&gt; - provides architectural guidance for ISVs       &lt;ul&gt;       &lt;li&gt;Lead by &lt;a href=&quot;http://blogs.msdn.com/gianpaolo/&quot;&gt;Gianpaolo Carraro&lt;/a&gt; and &lt;a href=&quot;http://blogs.msdn.com/fred_chong/&quot;&gt;Fred Chong&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;Have produced a SaaS reference application, &lt;a href=&quot;http://www.codeplex.com/LitwareHR&quot;&gt;LitwareHR&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;While some of what they write is MSFT centric, most of the articles are generally applicable &lt;/li&gt;        &lt;li&gt;As an architect myself, I admire the work that they do &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;There are more services listed &lt;a href=&quot;http://www.microsoft.com/serviceproviders/saas/services.mspx&quot;&gt;here&lt;/a&gt;, but not all are really SaaS. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Weaknesses&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Critics contend that Microsoft will struggle to succeed in the SaaS market while preserving its existing franchises. It already stumbled with its business model when a European partner began offering Office as a service:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Phil Wainewright: &lt;a href=&quot;http://blogs.zdnet.com/SAAS/?p=457&amp;amp;tag=rbxccnbzd1&quot;&gt;Microsoft in a twist over SaaSy Office deal&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Phil Wainewright: &lt;a href=&quot;http://blogs.zdnet.com/SAAS/?p=471&quot;&gt;Microsoft disappoints on SaaS. Didn&amp;#8217;t you see it coming?&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Larry Dignan: &lt;a href=&quot;http://blogs.zdnet.com/BTL/?p=8129&quot;&gt;Microsoft to SaaS: We (are going to someday) have you surrounded&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Barb Mosher: &lt;a href=&quot;http://www.cmswire.com/cms/web-publishing/will-microsoft-office-have-go-to-saas-to-survive-002533.php&quot;&gt;Will Microsoft Office Have Go To SaaS to Survive?&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Its Office franchise is already being eroded by service based offerings (Google Apps, Zoho, Adobe, etc). Somehow it has to prevent Office revenue from being decimated by pure SaaS players.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;IBM&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Searching for interviews on SaaS with IBM&#39;s CEO Sam Palmisano or VP of Software Steve Mills does not bring up much of interest. This is a bit alarming, remembering the lessons from my previous DEC&amp;#160; post. Of the 5 major software giants covered here, IBM appears to have the least amount of executive mindshare for SaaS.&lt;/p&gt;  &lt;p&gt;I am not the only one who sees this: Larry Barrett &lt;a href=&quot;http://itmanagement.earthweb.com/entdev/article.php/11070_3710381_1&quot;&gt;wrote an entire article a&lt;/a&gt;nalyzing IBM&#39;s apparent sluggishness when it comes to SaaS. While I don&#39;t see a high level business strategy, IBM has embarked on some SaaS initiatives, covered in the next section.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Donna Bogatin: SaaS: &lt;a href=&quot;http://blogs.zdnet.com/micro-markets/?p=1096&quot;&gt;IBM helps drive $10 billion Software as a Service opportunity&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Krissi Danielsson: &lt;a href=&quot;http://www.ebizq.net/filelib/8684.html&quot;&gt;David Mitchell on IBM&#39;s SaaS Strategy&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Current SaaS Initiatives:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;IBM has these intiatives:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www-304.ibm.com/jct09002c/isv/marketing/saas/index.html&quot;&gt;SaaSpace.com/Partnerworld&lt;/a&gt; - a consulting offering       &lt;ul&gt;       &lt;li&gt;Helps ISVs build SaaS solutions &lt;/li&gt;        &lt;li&gt;Helps clients integrate SaaS solutions &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www-935.ibm.com/services/us/index.wss/offerfamily/aod/a1028600&quot;&gt;Applications on Demand&lt;/a&gt; - hosted IBM and non-IBM applications       &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.informationweek.com/news/software/hosted/showArticle.jhtml?articleID=207601147&quot;&gt;Blue Business Cloud&lt;/a&gt; - perhaps the successor to the current AOD offering &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www-03.ibm.com/press/us/en/pressrelease/22613.wss&quot;&gt;Blue Cloud&lt;/a&gt; - a compute on demand offering (still in development) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Weaknesses&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;As Larry Barrett noted, IBM doesn&#39;t appear to be aggressively pursuing the SaaS model. Sure, it has some initiatives going, but for the size of IBM those initiatives seem undersized.&lt;/p&gt;  &lt;p&gt;Also, Jeff Nolan has pointed out &lt;a href=&quot;http://blogs.zdnet.com/Foremski/?p=58&amp;amp;tag=rbxccnbzd1&quot;&gt;that IBM lacks the business apps&lt;/a&gt; necessary to execute on an effective SaaS strategy.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Further reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Erick Schonfeld: &lt;a href=&quot;http://www.techcrunch.com/2007/11/15/ibms-blue-cloud-is-web-computng-by-another-name/&quot;&gt;IBM&amp;#8217;s Blue Cloud is Web Computing By Another Name&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;SAP&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;SAP CEO Henning Kagermann helped launch the major SAP SaaS initiative: Business ByDesign which is a hosted version of several of SAP&#39;s traditional heavy weight business applications. The intent was to target SMB, but due to problems in execution that strategy may be changing. It also plans to be a SaaS hybrid, with some on-premise software in the mix.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Nichloas Carr: &lt;a href=&quot;http://www.roughtype.com/archives/2007/03/sap_calls_saas.php&quot;&gt;SAP CEO calls SaaS &amp;quot;the better model&amp;quot;&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Tony Hallett:&amp;#160; &lt;a href=&quot;http://management.silicon.com/itdirector/0,39024673,39166498,00.htm&quot;&gt;SAP CEO on SaaS - a dirty word?&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The bright spot for SAP and SaaS comes from its acquisition of Business Objects (BOBJ). BOBJ was already offering Crystal Reports at the time of the acquisition, and appears to be a healthy business.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Current SaaS Initiatives&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;SAP has three major initiatives:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www12.sap.com/solutions/sme/businessbydesign/overview/index.epx&quot;&gt;Business by Design&lt;/a&gt; - a SaaS initiative to provide business applications to the SMB market &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://crystalreports.com/&quot;&gt;Crystal Reports on Demand&lt;/a&gt; - a collaboration solution for Crystal Reports &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.ondemand.com/applications/default.asp&quot;&gt;NSite Platform&lt;/a&gt; -&amp;#160; a platform for building SaaS applications, acquired as a part of BOBJ&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Weaknesses&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;By far the biggest perceived weakness with SAP is its failure to execute on its much publicized SaaS release (BBD). Critics point to the major delays (possibly 24 months) as a sign that SAP&#39;s applications are a poor fit for the SaaS model. Worse, SAP validated the concept to its customers but failed to deliver, providing key advantage to competitors like NetSuite.&lt;/p&gt;  &lt;li&gt;Loraine Lawson: &lt;a href=&quot;http://www.itbusinessedge.com/blogs/mia/?p=375&quot;&gt;SAP&amp;#8217;s SaaS Is Dead. Long Live SAP&amp;#8217;s SaaS.&lt;/a&gt; &lt;/li&gt;  &lt;li&gt;Dennis Howlett: &lt;a href=&quot;http://blogs.zdnet.com/Howlett/?p=379&quot;&gt;SAP Business By Design likely to be delayed&lt;/a&gt; &lt;/li&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Further reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Steve Hamm: &lt;a href=&quot;http://www.businessweek.com/technology/content/feb2006/tc20060202_537653.htm&quot;&gt;SAP Gets On-Demand Religion&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Intuit&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Strategy&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;CEO Brad Smith isn&#39;t the most vocal about SaaS, but his company is doing the talking for him. Intuit is clearly pushing the SaaS model, with major product offerings already available. The strategy appears to be simple: offer online equivalents of their product suite:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Sramana Mitra: &lt;a href=&quot;http://seekingalpha.com/article/58372-intuit-is-not-getting-saas-credit&quot;&gt;Intuit Is Not Getting SaaS Credit&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;Eric Lai: &lt;a href=&quot;http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;amp;articleId=9031978&quot;&gt;QuickBase success speeding Intuit&#39;s move to SaaS&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.mysaasblog.com/intuit.htm&quot;&gt;Intuit on the SaaS March&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Current SaaS Initiatives&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Intuit offers the following products as SaaS offerings:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://oe.quickbooks.com/&quot;&gt;QuickBooks Online Edition&lt;/a&gt; - SaaS version of its accounting software&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://quicken.intuit.com/online-banking-finances.jhtml&quot;&gt;Quicken Online&lt;/a&gt; - hosted version of its personal finance application&lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://quickbase.intuit.com/&quot;&gt;QuickBase&lt;/a&gt; - a hosted spreadsheet application&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;It is an older product now finally gaining traction&lt;/li&gt;      &lt;li&gt;Currently in plans to provide a &lt;a href=&quot;http://blogs.zdnet.com/BTL/?p=8503&quot;&gt;QuickBase SaaS application dev platform&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Weaknesses&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I haven&#39;t seen any weaknesses other than stiff competition. The space Intuit plays in will become crowded, with Netsuite and Intacct already delivering SaaS, and Sage likely to become a contender as well.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f52b6ba4-bb24-43a3-9651-72848bcf1aba&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/oracle&quot; rel=&quot;tag&quot;&gt;oracle&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/ibm&quot; rel=&quot;tag&quot;&gt;ibm&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/sap&quot; rel=&quot;tag&quot;&gt;sap&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/intuit&quot; rel=&quot;tag&quot;&gt;intuit&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/microsoft&quot; rel=&quot;tag&quot;&gt;microsoft&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/1126950434495132005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/1126950434495132005' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1126950434495132005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1126950434495132005'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/06/how-oracle-ibm-sap-microsoft-and-intuit.html' title='How Oracle, IBM, SAP, Microsoft, and Intuit are Responding to the SaaS Revolution'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-2803267101480895301</id><published>2008-06-03T23:45:00.001-06:00</published><updated>2008-06-03T23:45:53.408-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>How to Survive the SaaS Revolution: Learning from the Death of DEC</title><content type='html'>&lt;p&gt;The story of Digital Equipment Corporation goes something like this: it rose to power in the 60&#39;s and 70&#39;s by being an industry leader in minicomputers, competing against IBM which was pushing larger mainframes. DEC was a powerhouse of innovation and grew impressively to become the number two hardware vendor. However, the 80&#39;s saw DEC struggle because it missed a fundamental shift in the industry - the rise of the personal computer. This struggle eventually led to its demise - in the 90&#39;s the company succumbed and was acquired.&lt;/p&gt;  &lt;p&gt;Today, large software vendors are being faced with a revolution of their own - the rise of Software as a Service (SaaS). SaaS has the potential to be as disruptive to the software industry as the PC revolution was to the hardware industry in the 80&#39;s. I don&#39;t think SaaS will necessarily produce the exact same results with the software industry, but I do believe that it shows what &lt;strong&gt;could&lt;/strong&gt; happen. It demonstrates that even giants can fall. &lt;/p&gt;  &lt;p&gt;This blog entry focuses on a single article from the NYTimes in 1983 which shows an interesting snapshot of DEC in the midst of failing to adapt. This will lead to a larger lesson about what software companies need to do to avoid the same fate.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; the views in this blog are my own opinion, and do not represent the official position of my employer.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;The Demise of DEC - a Failure to Adapt&lt;/h3&gt;  &lt;p&gt;I was not even in high school 25 years ago when the following story was published in the New York Times. Older members of the blogosphere have more context into what was going on, but I think the article provides a great glimpse of a computer giant a few years before its downfall. Some of the quotes are shocking in hindsight, as you can see the disaster unfolding in the words of the company president.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NYTimes Story:&amp;#160; &lt;/strong&gt;&lt;a href=&quot;http://query.nytimes.com/gst/fullpage.html?res=9A05EEDC1238F937A3575AC0A965948260&amp;amp;sec=technology&amp;amp;spon=&amp;amp;pagewanted=1&quot;&gt;&lt;strong&gt;THE REPROGRAMMING OF DIGITAL&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Author:&lt;/strong&gt; Leslie Wayne&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Published:&lt;/strong&gt; September 4, 1983&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; the bold text is mine, and the text in quotes is from &lt;a href=&quot;http://query.nytimes.com/gst/fullpage.html?res=9A05EEDC1238F937A3575AC0A965948260&amp;amp;sec=technology&amp;amp;spon=&amp;amp;pagewanted=1&quot;&gt;the original article&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Setup for the downfall, the giant stumbles:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;Digital, one of the stars in the computer industry, has stumbled into tough times. After nearly two decades of almost 30 percent annual growth of sales and profits, Digital reported a 32 percent earnings drop, to $284 million, for its 1983 fiscal year, which ended July 2, the first such drop in 12 years.&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;because the giant is late to invest and deliver on the next industry revolution:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;Particularly troubling has been Digital&#39;s lateness in entering the explosive $5 billion personal computer market. The delay reflects the company&#39;s careful and methodical approach to doing business - an approach that some say is inappropriate in an industry where being first with new products is becoming increasingly important. Never before has Digital had to rush a new product to market and, given its size and slow planning cycle, it did not do so with its personal computer. This, critics say, has been a mistake.&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;while its former profit centers are eroded by the maturing industry:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;At the bottom end of the market, Digital is being squeezed by the growth of personal computers that can do much of what the larger minicomputers can do - and for a lot less. Thus, Digital must defend its position in the maturing minicomputer market with an aging product line, while making inroads into personal computers and office automation, markets where others have already established beachheads. It is uncertain whether the revenues to be gained in these new areas will offset declines in the old.&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Decades of prior success may not help the giant:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;Digital gained a reputation as a sophisticated engineering company making high-quality products for scientific and technical uses and for such office functions as payroll accounting and data processing. (Mainframes, by contrast, are used for large, complex computations and huge information storage.)&amp;quot; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;and may actually hurt because the same strategies don&#39;t play in the new market and it is blind to the danger:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;Mr. Olsen [Digital company president], who presided over the 10-day show, is far more optimistic about Digital&#39;s prospects. &lt;em&gt;&#39;&#39;Things have never been better&lt;/em&gt;,&#39;&#39; he said in an interview at the crowded Digital show in Boston&#39;s Hynes Auditorium. &lt;em&gt;&#39;&#39;I&#39;ve never been as happy with our products as now, and even though there&#39;s been a slight drop in earnings, we&#39;ve had no layoffs. I see no real problems with our business&amp;quot; &lt;/em&gt;...&lt;/p&gt;  &lt;p&gt;Moreover, he is not concerned about Digital&#39;s lateness in getting into personal computers. &#39;&#39;&lt;em&gt;We&#39;re sticking with the same old strategy, even though it doesn&#39;t look too exciting&lt;/em&gt;,&#39;&#39; he said. &#39;&#39;We &lt;em&gt;may be the last kids on the block, but we wait until we have a better product.&lt;/em&gt;&#39;&#39; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Product development is not enough, the entire culture must adapt:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&amp;quot;Digital&#39;s difficulties are compounded further by the fact that its essential personality has been that of a company dominated by engineers who sold to engineers and let the technical razzle-dazzle of the machines do much of the selling. Unlike many companies, the Digital sales staff is on salary, not commissions, a practice that Mr. Olsen defends as bringing in higher yields per salesman.&amp;quot;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Lessons to be Learned&lt;/h3&gt;  &lt;p&gt;Important take-aways from the article, all of which are pretty obvious but are important to list explicitly:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;The Chief Executive must take the lead in proactively addressing the shift&lt;/strong&gt;       &lt;ul&gt;       &lt;li&gt;Revolutionary change must be supported by the top leader &lt;/li&gt;        &lt;li&gt;Denial is unacceptable: &lt;em&gt;&#39;&#39;Things have never been better...&lt;/em&gt;&#39;&#39; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Leadership must formulate and execute on a good strategy&lt;/strong&gt;       &lt;ul&gt;       &lt;li&gt;Hopefully something better than: &amp;quot;&lt;em&gt;We&#39;re sticking with the same old strategy..&lt;/em&gt;&amp;quot; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Respond in a timely and effective manner, or risk being shut out of the new market&lt;/strong&gt;       &lt;ul&gt;       &lt;li&gt;&amp;quot;Digital&#39;s lateness in entering the explosive $5 billion personal computer market...&amp;quot; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Old revenue streams may decline&lt;/strong&gt;       &lt;ul&gt;       &lt;li&gt;&amp;quot;Digital is being squeezed by the growth of personal computers that can do much of what the larger minicomputers can do&amp;quot;. &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Internal cultural changes may be necessary &lt;/strong&gt;      &lt;ul&gt;       &lt;li&gt;&amp;quot;Unlike many companies, the Digital sales staff is on salary, not commissions&amp;quot; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Counter examples of DEC include these established companies, which all responded to the PC revolution during the same time period with better results:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;IBM - jumped into the PC market with both feet and captured massive market share &lt;/li&gt;    &lt;li&gt;Intel - saw the PC opportunity in 1983 and Andy Grove &lt;a href=&quot;http://en.wikipedia.org/wiki/Intel&quot;&gt;reinvented the company around it&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Hewlett-Packard - &lt;a href=&quot;http://www.hp.com/hpinfo/abouthp/histnfacts/timeline/hist_80s.html&quot;&gt;launched itself&lt;/a&gt; into the PC market &lt;/li&gt;    &lt;li&gt;Xerox - &lt;a href=&quot;http://en.wikipedia.org/wiki/Xerox&quot;&gt;very successful at innovation&lt;/a&gt; in the PC market, though had problems monetizing &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;How Disruptive is SaaS?&lt;/h3&gt;  &lt;p&gt;In hindsight, we know that the PC shift was an enormous change in the way people interacted with computers, and a massive market opportunity for computer suppliers. Will SaaS be as disruptive to the software industry? Many believe so, as do I, but only time will tell. Instead of selling the vision, I will offer a number of links that will help you come to your own conclusion:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Phil Wainewright:&amp;#160; &lt;a href=&quot;http://blogs.zdnet.com/SAAS/?p=432&quot;&gt;Eight reasons SaaS will surge in 2008&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Saugatuck:&amp;#160; &lt;a href=&quot;http://blog.contactoffice.com/index.php/2008/04/16/saugatuck-research-on-saas-presented-at-computerworlds-saascon/&quot;&gt;SaaScon presentation&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;eWeek: &lt;a href=&quot;http://innovations.ziffdavisenterprise.com/2006/09/how_software_as_a_service_may.html&quot;&gt;How Software as a Service May Reshape Enterprise Computing&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Joe McKendrick: &lt;a href=&quot;http://blogs.zdnet.com/service-oriented/?p=892&quot;&gt;Calling all disruptors: the perfect storm of SOA, SaaS, and open source beckons&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Joe McKendrick: &lt;a href=&quot;http://blogs.zdnet.com/service-oriented/?p=296&quot;&gt;Confronting the SaaS skeptics&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;McKinsey (Dubey, Mohiuddin, Baijal), : &lt;a href=&quot;http://www.mckinsey.com/clientservice/hightech/pdfs/Emerging_Platform_Wars.pdf&quot;&gt;Emerging Platform Wars in Enterprise Software&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;But please understand that disruption does not mean on-premise software will go away. Just like mainframes still crank away in basements everywhere, on-premise software will not go away any time soon, if ever. Disruption in this case means that I believe SaaS will take a significant market share next to on-premise software. I will leave it to the analysts to predict the actual market sizes.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Looking at the Software Giants of Today&lt;/h3&gt;  &lt;p&gt;Remember that DEC was once the second largest computer company on the planet. By the late 90&#39;s, after years of struggle, what remained was acquired by Compaq. What does this mean for today&#39;s software giants:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Oracle &lt;/li&gt;    &lt;li&gt;IBM &lt;/li&gt;    &lt;li&gt;Microsoft &lt;/li&gt;    &lt;li&gt;SAP &lt;/li&gt;    &lt;li&gt;Intuit &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Is it possible to determine if one of these giants is on the way to destruction? According to Bob Warfield&#39;s recent post, &lt;a href=&quot;http://smoothspan.wordpress.com/2008/05/23/salesforce-headed-for-siebels-fate/&quot;&gt;Salesforce Headed for Siebel&amp;#8217;s Fate?&lt;/a&gt;, put all but IBM in the dead pool (IBM gets a free pass because they also have significant hardware and services businesses) . Bob states:&lt;/p&gt;  &lt;p&gt;&amp;quot;&lt;em&gt;All good things come to an end, especially for software companies.&amp;#160; Very few live through a paradigm shift of any consequence.&lt;/em&gt;&amp;quot; &lt;/p&gt;  &lt;p&gt;Bob does great work, but I think this statement is far too pessimistic. Software vendors have been living through constant revolution - since the mid 90&#39;s we have seen major waves of change in the software industry:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Java&lt;/li&gt;    &lt;li&gt;Internet&lt;/li&gt;    &lt;li&gt;Free Open Source Software&lt;/li&gt;    &lt;li&gt;SOA&lt;/li&gt;    &lt;li&gt;Social computing&lt;/li&gt;    &lt;li&gt;Dynamic languages &lt;/li&gt;    &lt;li&gt;and now SaaS &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Software companies have learned to adapt. For example, free open source was supposed to kill all software product businesses, but vendors are still seeing growth (e.g. &lt;a href=&quot;http://www.oracle.com/corporate/press/2007_jul/database-11g.html&quot;&gt;Oracle DB revenue still growing&lt;/a&gt;). As for SaaS, each of the giants have initiatives underway. Some are having more success than others, but I think it is too early to draw any long range conclusions. &lt;/p&gt;  &lt;p&gt;As an Oracle employee, I am happy to see that Larry has been heavily involved in the space (including personal investments in Salesforce and Netsuite), and that multiple initiatives are already &lt;a href=&quot;http://www.informationweek.com/news/services/hosted_apps/showArticle.jhtml?articleID=207801092&quot;&gt;being delivered with success&lt;/a&gt;.&amp;#160; SAP has stumbled recently with delays in the Business By Design program, while IBM, Microsoft and Intuit seem to be making some progress.&lt;/p&gt;  &lt;p&gt;Which of these giants will pull through, and which will fail? Check back here in 25 years for the definitive answer. &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:dfe0c9b7-3258-4503-bcc0-5a3361a59cb0&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/cloud%20computing&quot; rel=&quot;tag&quot;&gt;cloud computing&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/ondemand&quot; rel=&quot;tag&quot;&gt;ondemand&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/2803267101480895301/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/2803267101480895301' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2803267101480895301'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2803267101480895301'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/06/how-to-survive-saas-revolution-learning.html' title='How to Survive the SaaS Revolution: Learning from the Death of DEC'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-5823859987908536058</id><published>2008-05-29T04:08:00.001-06:00</published><updated>2016-09-15T13:44:43.399-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>SaaS Soup: Navigating the &amp;quot;as a Service&amp;quot; Acronyms: CaaS, DaaS, DBaaS, PaaS, SaaS, XaaS</title><content type='html'>&lt;h1&gt;
&lt;/h1&gt;
Ever wonder what all the &quot;aaS&quot; acronyms mean? Do you want to understand how they relate to each other? This blog entry will help. I have created a map of many of the &quot;as a Service&quot; terms you will see in IT and have grouped them according to category. I have also provided an explanation and links for further reading for each so you can quickly come up to speed on all.&amp;nbsp; &lt;br /&gt;
I put this together because I am working on the second edition of a &lt;a href=&quot;http://peterlaird.blogspot.com/2008/05/understanding-cloud-computingsaaspaas.html&quot;&gt;visual map of the SaaS, PaaS, and Cloud Computing industries&lt;/a&gt; that I released last month. In order to make progress on that map, I found I needed to have a better understanding of all of the common categories in the &quot;as a Service&quot; market. The map in this blog entry has a different focus - instead of mapping out industry players I am mapping out industry terminology. Both maps complement each other.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
Map of the &quot;as a Service&quot; Terms&lt;/h3&gt;
This graphic shows the groupings of the &quot;as a Service&quot; terms that you may encounter in the IT industry. Click the map for a larger view.&lt;br /&gt;
&lt;a href=&quot;http://saaslink.googlepages.com/aaSTree_Laird_May08.png&quot;&gt;&lt;img alt=&quot;aaSTree_Laird_May08&quot; border=&quot;0&quot; height=&quot;370&quot; src=&quot;https://lh3.ggpht.com/peterjlaird/SD6AqUD36kI/AAAAAAAAAE0/LhwqOyt5xqQ/aaSTree_Laird_May08%5B6%5D.png?imgmax=800&quot; style=&quot;border-bottom: 0px; border-left: 0px; border-right: 0px; border-top: 0px;&quot; width=&quot;793&quot; /&gt;&lt;/a&gt; &lt;br /&gt;
&lt;h3&gt;
&amp;nbsp;&lt;/h3&gt;
&lt;h3&gt;
Top Level IT Service Categories&lt;/h3&gt;
This section lists the primary categories around computing as a service. These categories serve as the larger buckets into which we will place the finer grained &quot;as a Service&quot; terms.&lt;br /&gt;
&lt;h2&gt;
HaaS&lt;/h2&gt;
&lt;b&gt;Hardware as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; HaaS refers to on demand offerings where hardware is the primary product being offered&lt;/li&gt;
&lt;li&gt;Cloud Computing and Cloud Storage solutions are instances of HaaS&lt;/li&gt;
&lt;li&gt;Almost all HaaS products will require some bit of software as well&lt;/li&gt;
&lt;li&gt;Michael Vizard: &lt;a href=&quot;http://www.esp.eweek.com/c/a/Archive/Hardware-As-A-Service-Is-Inevitable/&quot;&gt;Hardware As A Service Is Inevitable&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;James Governor: &lt;a href=&quot;http://redmonk.com/jgovernor/2006/06/22/guestpost-on-hardware-as-a-service-engines-as-services-and-real-soa/&quot;&gt;On Hardware As A Service, engines as services, and Real SOA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Humans as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;What: &lt;/b&gt;service offerings that primarily require humans beings to deliver (aka professional services)&lt;/li&gt;
&lt;li&gt;Not an industry term, but necessary to properly categorize some of the &quot;as a Service&quot; offerings&lt;/li&gt;
&lt;li&gt;OK, I don&#39;t mean prostitution wise guy&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
PaaS&lt;/h2&gt;
&lt;b&gt;Platform as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; hosted software that serves as a platform for building SaaS offerings&lt;/li&gt;
&lt;li&gt;There are different types of PaaS products, and sometimes HaaS products are mistakenly called PaaS&lt;/li&gt;
&lt;li&gt;Some PaaS products may be optionally deployed on HaaS products such as Amazon&#39;s EC2&lt;/li&gt;
&lt;li&gt;Examples of PaaS: force.com, Bungee Connect, Google App Engine, Etelos, QuickBase, LongJump, Apprenda SaaSGrid&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
SaaS&lt;/h2&gt;
&lt;b&gt;Software as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; in its most generic form, any software offered remotely as a service. Since this definition includes the entire world wide web, there are generally agreed on criteria for SaaS products to narrow the scope:&lt;/li&gt;
&lt;ul&gt;
&lt;li&gt;Primarily business software&lt;/li&gt;
&lt;li&gt;Usage based pricing (pay as you go) with no long term contracts&lt;/li&gt;
&lt;li&gt;Delivered over the internet, primarily via a browser&lt;/li&gt;
&lt;li&gt;Managed by the ISV that developed the application (as opposed to the former ASP model)&lt;/li&gt;
&lt;/ul&gt;
&lt;li&gt;Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Software_as_a_Service&quot;&gt;SaaS&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Alternate form: Microsoft has pushed the term &lt;a href=&quot;http://msdn.microsoft.com/en-us/architecture/bb906059.aspx&quot;&gt;&quot;S+S&quot;&lt;/a&gt;, which is a SaaS solution paired with on-premise software &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h3&gt;
List of &quot;as a Service&quot; Terms&lt;/h3&gt;
This section lists many terms you will find referring to a &quot;as a Service&quot; offering in the IT industry. They are organized by acronym - sometimes the same acronym may refer to multiple terms. For each term, a few links are provided for further reading.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;
BaaS: &lt;/h2&gt;
&lt;b&gt;Backup as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; HaaS, a subtype of Storage as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; provides rem0te data backup for your systems; a specific type of Storage as a Service&lt;/li&gt;
&lt;li&gt;Perimeter Security: &lt;a href=&quot;http://www.businesswire.com/portal/site/home/permalink/?ndmViewId=news_view&amp;amp;newsId=20080519005960&amp;amp;newsLang=en&quot;&gt;Perimeter eSecurity Launches Remote Backup &amp;amp; Recovery (RBR) Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
&lt;b&gt;CaaS:&lt;/b&gt;&lt;/h2&gt;
&lt;b&gt;Communications as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; non carrier-grade VOIP service offered by a third party&lt;/li&gt;
&lt;li&gt;Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Communication_as_a_service&quot;&gt;Communication as a Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Tom Keating: &lt;a href=&quot;http://blog.tmcnet.com/blog/tom-keating/voip/gartner-says-communicationsasaservice-caas-revenue-future-looks-bright.asp&quot;&gt;Gartner says Communications-as-a-Service (CaaS) Revenue Future Looks Bright&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Andrew R. Hickey: &lt;a href=&quot;http://searchunifiedcommunications.techtarget.com/news/article/0,289142,sid186_gci1271671,00.html&quot;&gt;Communications-as-a-Service taking hold&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Compliance as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; Humans as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What: &lt;/b&gt;the idea (perhaps faulty) that a company can outsource their compliance monitoring to a third party&lt;/li&gt;
&lt;li&gt;Mark Macauley : &lt;a href=&quot;http://identitystuff.blogspot.com/2008/02/caas-compliance-as-service.html&quot;&gt;CaaS - Compliance as a Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Ian Glazer: &lt;a href=&quot;https://www.tuesdaynight.org/2008/02/15/why-compliance-cannot-be-delivered-as-a-service/&quot;&gt;Why Compliance Cannot be Delivered as a Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Content as a Service (aka Content On Demand)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS&amp;nbsp; (note it may directly employ Storage as a Service for the actual storage of the docs)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; offering a hosted content repository, including workflow, versioning, checkin/checkout&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Crimeware as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS anti-pattern&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What: &lt;/b&gt;hosted services to help criminals attack computer systems&lt;/li&gt;
&lt;li&gt;Panda Security: &lt;a href=&quot;http://pandasecurityus.wordpress.com/2008/04/28/crimeware-as-a-service-caas-updated/&quot;&gt;Crimeware as a Service (CaaS) Updated&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Larry Dignan: &lt;a href=&quot;http://blogs.zdnet.com/security/?p=1012&quot;&gt;The next big thing? Crimeware-as-a-service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Computing as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; HaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; aka Cloud Computing, providing computing resources, network, provisioning, etc as a service&lt;/li&gt;
&lt;li&gt;Ephraim Schwartz: &lt;a href=&quot;http://www.infoworld.com/article/07/04/17/HNnewsaas_1.html&quot;&gt;Verizon to offer CaaS, computing as a service, later this year&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;CRM as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; offering CRM in a SaaS model, as in Salesforce, Netsuite, RightNow, SugarOnDemand&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://esj.com/business_intelligence/article.aspx?EditorialsID=8043&quot;&gt;Intuit Enhances QuickBase CRM-as-a-Service Entry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Nobody is using the acronym CRMaaS yet, but it is probably inevitable&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
DaaS:&lt;/h2&gt;
&lt;b&gt;Data as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a hosted web service that provides access to aggregated data (stock market, salary, etc) &lt;/li&gt;
&lt;li&gt;Jill Dyche: &lt;a href=&quot;http://searchdatamanagement.techtarget.com/expert/KnowledgebaseAnswer/0,289625,sid91_gci1265463,00.html&quot;&gt;Data-as-a-service, explained and defined&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Lars Leckie: &lt;a href=&quot;http://larsleckie.blogspot.com/2008/03/daas-data-as-service.html&quot;&gt;DaaS - Data as a Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Strikeiron: &lt;a href=&quot;http://www.strikeiron.com/&quot;&gt;Data as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Data Warehousing as a Service (or DWaaS)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a cloud based data analytics solution, just upload your data and the service will crunch it&lt;/li&gt;
&lt;li&gt;The Register: &lt;a href=&quot;http://www.theregister.co.uk/2008/04/27/kognitio_daas/&quot;&gt;And now it&#39;s time for Data Warehouses as a Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Kognitio: &lt;a href=&quot;http://kognitio.com/services/businessintelligence/daas.php&quot;&gt;Data Warehousing as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Data Mining as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A synonym of Data Warehousing as a Service &lt;/li&gt;
&lt;li&gt;Jeff Kaplan: &lt;a href=&quot;http://www.dmreview.com/issues/20070701/1087703-1.html&quot;&gt;Data Mining as a Service: The Prediction is Not in the Box&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Database as a Service (or DBaaS)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; HaaS, a subtype of Storage as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; offering a database (relational or not) as a hosted service, a subtype of Storage as a Service&lt;/li&gt;
&lt;li&gt;Doug Henschen: &lt;a href=&quot;http://www.intelligententerprise.com/channels/information_management/showArticle.jhtml?articleID=208200257&amp;amp;pgno=1&quot;&gt;Q&amp;amp;A With Gartner&#39;s Don Feinberg on Database as a Service and Cloud DBs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Steve Bobrowski: &lt;a href=&quot;http://dbaas.wordpress.com/2008/05/14/what-exactly-is-database-as-a-service/&quot;&gt;What Exactly Is Database as a Service?&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Longjump: &lt;a href=&quot;http://www.longjump.com/solutions/database-as-a-service/database-as-a-service.htm&quot;&gt;Database-as-a-Service (DaaS)&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Development as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; PaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a cloud based IDE, allowing developers to build applications with just a browser&lt;/li&gt;
&lt;li&gt;SFDC: &lt;a href=&quot;http://www.techcrunch.com/2008/01/16/saleforcecom-to-offer-daas-service-new-pricing-model-competition/&quot;&gt;Salesforce.com To Offer DaaS Service, New Pricing Model, Competition&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Desktop as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; providing virtual employee desktops via a remote host&lt;/li&gt;
&lt;li&gt;IDC: &lt;a href=&quot;http://www.desktopsasaservice.com/blog/2008/1/4/daas-interview-mike-rose-idc-analyst.html&quot;&gt;DaaS Interview - Mike Rose, IDC Analyst&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Desktone: &lt;a href=&quot;http://coldfusion.sys-con.com/read/548498.htm&quot;&gt;Virtualization Meets DaaS - Desktop-as-a-Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Saloob: &lt;a href=&quot;http://www.prlog.org/10039219-saloob-inc-releases-world-first-on-demand-daas-solution-desktop-as-service-thin-clients.html&quot;&gt;Saloob, Inc., releases world&#39;s first on-demand DAAS Solution - Desktop As A Service Thin Clients.&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Document Management as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Synonym of Content as a Service&lt;/li&gt;
&lt;li&gt;SpringCM: &lt;a href=&quot;http://www.intranetjournal.com/articles/200603/ij_03_01_06a.html&quot;&gt;Document Management as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
EaaS:&lt;/h2&gt;
&lt;b&gt;Ethernet as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; HaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a solution provided by network carriers to provide virtual ethernet capacity from a much larger line&lt;/li&gt;
&lt;li&gt;SearchTelecom.com: &lt;a href=&quot;http://searchtelecom.techtarget.com/sDefinition/0,,sid103_gci1270315,00.html&quot;&gt;Ethernet as a service (EaaS)&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;ERP as a Service (or ERPaaS)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; offering ERP in a SaaS model&lt;/li&gt;
&lt;li&gt;Michael Hickins: &lt;a href=&quot;http://www.eweek.com/c/a/Enterprise-Apps/Workday-Introduces-ERP-as-a-Service/2/&quot;&gt;Workday Introduces ERP as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Email as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a hosted email service&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://smallbiztechnology.com/archive/2008/01/email-as-a-service-much-bettte.html&quot;&gt;Email As a Service: Much Bettter Than Hosting Email On YOUR Server&lt;/a&gt;&lt;b&gt;&lt;/b&gt; &lt;/li&gt;
&lt;li&gt;Andrew Conry-Murray: &lt;a href=&quot;http://www.networkcomputing.com/showArticle.jhtml?articleID=198701455&amp;amp;queryText=voltage+security&quot;&gt;Voltage&#39;s E-mail Encryption as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
HaaS&lt;/h2&gt;
&lt;b&gt;Human Resources as a Service (HRaaS), Human Capital Management as a Service (HCMaaS)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;These terms are not used yet, but probably coming soon to a Workday blog near you &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
IaaS&lt;/h2&gt;
&lt;b&gt;Information as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A synonym to Data as a Service &lt;/li&gt;
&lt;li&gt;Webinar: &lt;a href=&quot;http://www.ebizq.net/webinars/8903.html&quot;&gt;Implementing Information-As-A-Service: A Practical Approach&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;TechTarget: &lt;a href=&quot;http://searchoracle.techtarget.com/news/article/0,289142,sid41_gci1249431,00.html#&quot;&gt;Oracle-Tangosol deal may lead to a new service-enabled data package&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Guy Creese: &lt;a href=&quot;http://www.dmreview.com/news/1059873-1.html&quot;&gt;Information as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Infrastructure as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A synonym to HaaS &lt;/li&gt;
&lt;li&gt;Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Infrastructure_as_a_Service&quot;&gt;Infrastructure as a Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Dan Farber: &lt;a href=&quot;http://news.zdnet.com/2422-13569_22-155806.html&quot;&gt;Infrastructure as a Service&lt;/a&gt; video&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Integration as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; offering integration capabilities for SaaS applications &lt;/li&gt;
&lt;li&gt;Dr. Dobb&#39;s:&amp;nbsp; &lt;a href=&quot;http://www.ddj.com/linux-open-source/201806725&quot;&gt;MuleOnDemand Integration-as-a-Service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Gartner: &lt;a href=&quot;http://www.gartner.com/DisplayDocument?id=527909&quot;&gt;Cape Clear Updates ESB to Enable Integration as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Identity as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category: &lt;/b&gt;SaaS, a subtype of Security as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What: &lt;/b&gt;offering a centralized (remote) identity management service &lt;/li&gt;
&lt;li&gt;Nishant Kaushik of Oracle: &lt;a href=&quot;http://blogs.oracle.com/talkingidentity/newsItems/departments/identityAsAService/2007/05/08#a107&quot;&gt;Defining Identity as a Service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Burton Group: &lt;a href=&quot;http://www.burtongroup.com/Research/Topics/IdentityAsAService.aspx&quot;&gt;Identity as a Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
MaaS&lt;/h2&gt;
&lt;b&gt;Malware as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS anti-pattern &lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; name for any SaaS solution which has been compromised with malware&lt;/li&gt;
&lt;li&gt;Nicholas Carr: &lt;a href=&quot;http://www.roughtype.com/archives/2006/08/malware_as_a_se.php&quot;&gt;Malware as a service&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Dan Morrill: &lt;a href=&quot;http://blogs.ittoolbox.com/security/dmorrill/archives/malware-as-a-service-22761&quot;&gt;Malware as a Service&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Manufacturing as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; None - not related to IT (included here only for reference)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; providing small batch manufacturing services&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.postful.com/2007/10/29/manufacturing-as-a-service-maas/&quot;&gt;Manufacturing as a Service (MaaS)&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Mashups as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; enterprise mashups that are offered publicly&lt;/li&gt;
&lt;li&gt;Joe Mckendrick: &lt;a href=&quot;http://blogs.zdnet.com/service-oriented/?p=538&quot;&gt;Can Mashups as a Service reach critical MaaS?&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Media as a Service (as in: video, audio)&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS, a subtype of Data as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; providing hosted access to audio/visual services&lt;/li&gt;
&lt;li&gt;Chris Saad: MaaS - &lt;a href=&quot;http://www.particls.com/blog/2007/06/maas-media-as-service.html&quot;&gt;Media as a Service&lt;/a&gt;&amp;nbsp; &lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
&amp;nbsp; &lt;/h2&gt;
&lt;h2&gt;
QaaS&lt;/h2&gt;
&lt;b&gt;Queue as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS, a subtype of Integration as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; provides a hosted message delivery service&lt;/li&gt;
&lt;li&gt;Amazon: &lt;a href=&quot;http://www.amazon.com/Simple-Queue-Service-home-page/b?ie=UTF8&amp;amp;node=13584001&quot;&gt;Amazon Simple Queue Service (Amazon SQS)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
SaaS&lt;/h2&gt;
&lt;b&gt;Security as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; SaaS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; the delivery of security capabilities using a SaaS model&lt;/li&gt;
&lt;li&gt;Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Security-as-a-service&quot;&gt;Security as a Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;b&gt;Storage as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; HaaS&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; providing cloud based data storage capabilities&lt;/li&gt;
&lt;li&gt;WhatIs: &lt;a href=&quot;http://searchstorage.techtarget.com/sDefinition/0,,sid5_gci1264119,00.html&quot;&gt;What is Storage as a Service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Amazon: &lt;a href=&quot;http://www.amazon.com/S3-AWS-home-page-Money/b/ref=sc_fe_l_2?ie=UTF8&amp;amp;node=16427261&amp;amp;no=3435361&amp;amp;me=A36L942TSJ2AJA&quot;&gt;Simple Storage Service (S3)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
TaaS&lt;/h2&gt;
&lt;b&gt;Testing as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; Humans as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; outsourcing the testing of software&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://taas-services.com/detail.html&quot;&gt;TAAS Services&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
UaaS&lt;/h2&gt;
&lt;b&gt;UI as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Category:&lt;/b&gt; PaaS, a subtype of Development as a Service&lt;/li&gt;
&lt;li&gt;&lt;b&gt;What:&lt;/b&gt; a rich hosted UI development environment&lt;/li&gt;
&lt;li&gt;Salesforce: &lt;a href=&quot;http://mashable.com/2008/05/06/salesforce-visualforce/&quot;&gt;Visualforce is a UI as a Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;
VaaS&lt;/h2&gt;
&lt;b&gt;Voice as a Service&lt;/b&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;A synonym for Communication as a Service&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.m5net.com/html.php?page_id=533&quot;&gt;M5 Voice as a Service&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h3&gt;
Everything Else&lt;/h3&gt;
Confused? Think all of these acronyms and terms are ridiculous? You aren&#39;t the first.&lt;br /&gt;
In recognition of the proliferation of &quot;aaS&quot; terms, umbrella terms have also appeared:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;XaaS:&amp;nbsp; &lt;a href=&quot;http://www.youtube.com/watch?v=_hGRw5TtxqY&quot;&gt;What is xAAS?&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://blogs.cioinsight.com/parallax_view/content/emerging_technology/move_over_saas_here_comes_eaas.html&quot;&gt;Everything as a Service&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Whatever as a Service&lt;/li&gt;
&lt;li&gt;Something as a Service&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h3&gt;
Previous Acronym Round Ups:&lt;/h3&gt;
This isn&#39;t the first attempt at rounding up all the XaaS variants. You can find previous attempts here:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Krissi Danielsson: &lt;a href=&quot;http://www.ebizq.net/blogs/saasweek/2007/10/attack_of_the_aas_acronyms_or/&quot;&gt;Attack of the -aaS Acronyms, or a Quick Glossary of SaaS Cousins&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Nick Carr: &lt;a href=&quot;http://www.roughtype.com/archives/2008/01/a_little_too_mu.php&quot;&gt;A little too much aaS&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:807d0b1e-c525-44cf-a76d-304a7c0eea86&quot; style=&quot;display: inline; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;&quot;&gt;
Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/SaaS&quot; rel=&quot;tag&quot;&gt;SaaS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/PaaS&quot; rel=&quot;tag&quot;&gt;PaaS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/HaaS&quot; rel=&quot;tag&quot;&gt;HaaS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Cloud%20Computing&quot; rel=&quot;tag&quot;&gt;Cloud Computing&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/5823859987908536058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/5823859987908536058' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/5823859987908536058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/5823859987908536058'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/05/saas-soup-navigating-a-service-acronyms.html' title='SaaS Soup: Navigating the &amp;quot;as a Service&amp;quot; Acronyms: CaaS, DaaS, DBaaS, PaaS, SaaS, XaaS'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh3.ggpht.com/peterjlaird/SD6AqUD36kI/AAAAAAAAAE0/LhwqOyt5xqQ/s72-c/aaSTree_Laird_May08%5B6%5D.png?imgmax=800" height="72" width="72"/><thr:total>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-4238195947854180468</id><published>2008-05-22T03:38:00.001-06:00</published><updated>2008-05-22T03:38:53.379-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blog"/><title type='text'>Migration Complete: This is My New Blog</title><content type='html'>&lt;p&gt;Due to the Oracle acquisition of BEA, the BEA blogging site at dev2dev.bea.com will be merged into OTN sometime in the future. This necessitated a switch to a new blogging platform, and I chose Blogspot. This blog entry explains the process.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h4&gt;Blog Migration Process (MovableType to ???)&lt;/h4&gt;  &lt;p&gt;For other BEA bloggers about to go through the transition, here is the process you need to follow:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Decide where you are going to go: in a few weeks you can setup an OTN blog and that is not a bad option at all. I decided to go external for certain reasons, but it was a tough decision.&lt;/li&gt;    &lt;li&gt;Install Microsoft LiveWriter if you run a Windows machine. Its a great blogging tool, and has migration features.&lt;/li&gt;    &lt;li&gt;Point LiveWriter at your old blog if you haven&#39;t already. (Weblog-&amp;gt;Add Weblog Account)&lt;/li&gt;    &lt;li&gt;Point LiveWriter at your new blog. (Weblog-&amp;gt;Add Weblog Account)&lt;/li&gt;    &lt;li&gt;Click on the More icon on the Recently Posted box in the right nav.&lt;/li&gt;    &lt;li&gt;Click on your old blog on the left side&lt;/li&gt;    &lt;li&gt;Find a blog posting you want to move, click on it. It will open in the editor pane.&lt;/li&gt;    &lt;li&gt;Click on the Weblog dropdown menu and select your new blog. It will reformat your entry to the new style.&lt;/li&gt;    &lt;li&gt;Make whatever updates you want. I did&lt;/li&gt;    &lt;ol&gt;     &lt;li&gt;I put a blurb at the top of each entry to explain that the content was migrated from dev2dev&lt;/li&gt;      &lt;li&gt;Copied over the comments into the bottom of the page (as static text)&lt;/li&gt;      &lt;li&gt;Updated the internal links that pointed to other blog entries of mine on dev2dev&lt;/li&gt;   &lt;/ol&gt;    &lt;li&gt;Update the &amp;quot;Set publish date&amp;quot; box in the lower right corner to match the original publishing date&lt;/li&gt;    &lt;li&gt;Click the Publish item&lt;/li&gt;    &lt;li&gt;Repeat for each entry you want to move.&lt;/li&gt;    &lt;li&gt;Register your blog in the Oracle Blog Roll: &lt;a title=&quot;http://wiki.oracle.com/page/List+of+Oracle-related+blogs&quot; href=&quot;http://wiki.oracle.com/page/List+of+Oracle-related+blogs&quot;&gt;http://wiki.oracle.com/page/List+of+Oracle-related+blogs&lt;/a&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;h4&gt;Moving to Blogger.com/Blogspot&lt;/h4&gt;  &lt;p&gt;I chose to go external, and it was a horse race between Wordpress and Blogger. Wordpress has automated migration, but Blogger has the key feature that I want: fine grained visitor stats. With Blogger, you can hook up Google Analytics, which is an awesome tool for understanding who visits your pages and how.&lt;/p&gt;  &lt;p&gt;To do your own comparison, look at:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://pulsed.blogspot.com/2007/07/blogger-wordpress-chart.html&quot;&gt;Blogger vs. Wordpress.com Comparison Chart&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;If you go with Blogger, this is what I did to get my blog setup as I like it:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Chose a template - I picked a plain one with a white background since that was what dev2dev had&lt;/li&gt;    &lt;li&gt;Customized the template - I write big posts, so I expanded the main area by editing the HTML template&lt;/li&gt;    &lt;li&gt;Edited my profile&lt;/li&gt;    &lt;li&gt;Customized the layout - I added the widget for my Twitter feed on the right&lt;/li&gt;    &lt;li&gt;Customized Settings - clicked through each of the settings tabs and made some non-default choices&lt;/li&gt;    &lt;li&gt;Added Google Analytics - added a HTML widget at page bottom, and injected the GoogA Javascript block&lt;/li&gt; &lt;/ul&gt;  &lt;h4&gt;Work Remaining&lt;/h4&gt;  &lt;ul&gt;   &lt;li&gt;I need to finish the comment copying process.&lt;/li&gt;    &lt;li&gt;I need to search and replace remaining dev2dev blog links&lt;/li&gt;    &lt;li&gt;I want to ping some of my dev2dev inbound links to see if they will update to point to my new pages&lt;/li&gt; &lt;/ul&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:76f50449-3053-43cd-8dc5-3a185ae1ea91&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/blogger&quot; rel=&quot;tag&quot;&gt;blogger&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/wordpress&quot; rel=&quot;tag&quot;&gt;wordpress&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/movabletype&quot; rel=&quot;tag&quot;&gt;movabletype&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/migration&quot; rel=&quot;tag&quot;&gt;migration&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/4238195947854180468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/4238195947854180468' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4238195947854180468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4238195947854180468'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/05/migration-complete-this-is-my-new-blog.html' title='Migration Complete: This is My New Blog'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-4826040844699624880</id><published>2008-05-08T02:36:00.000-06:00</published><updated>2008-05-22T02:36:15.352-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><category scheme="http://www.blogger.com/atom/ns#" term="twitter"/><title type='text'>Twitter Microfeed Covering the SaaS/PaaS/Cloud Markets for those without a Cognitive Surplus</title><content type='html'>&lt;p&gt;Most of you have probably seen Clay Shirky&#39;s material on the &lt;a href=&quot;http://www.herecomeseverybody.org/2008/04/looking-for-the-mouse.html&quot;&gt;great Cognitive Surplus&lt;/a&gt; - the free time that everyone wastes by watching TV. Awesome stuff, but if you are trying to keep up with all the activity in the SaaS, PaaS and Cloud industries by definition you have no Cognitive Surplus. We are in information overload. Subscribing to specific feeds or Google Alerts can help isolate the signal from the noise, but sometimes even that can be challenging. Let me propose a solution: I have created a microfeed for this space on Twitter. This blog discusses how you can subscribe to this feed and stay in touch with the news in a very lightweight way.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2008/05/twitter_microfe.html&quot;&gt;originally posted&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt; May 8th, 2008 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;Twitter and the 140 Character Budget&lt;/h3&gt;  &lt;p&gt;We had email, then we added instant messaging, and now we have Twitter. What is the trend here? Brevity. Stop with the 3 page emails and get to the point. Its all about time, and we don&#39;t have enough.&lt;/p&gt;  &lt;p&gt;For those who haven&#39;t already taken the plunge into Twitter, let me explain its single most rewarding feature. It limits each message (tweet) to 140 characters. It forces brevity on the author, and this is a very good thing. Like telegrams of the past, authors need to choose their words (actually, characters) very carefully to get their point across in those precious 140. &lt;/p&gt;  &lt;p&gt;For Twitter subscribers, this means you get messages that are short and to the point. What&#39;s not to love.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Twitter Microfeeds&lt;/h3&gt;  &lt;p&gt;Twitter began as a personal messaging platform. The message publishing box asks &amp;quot;What are you doing?&amp;quot; The intent is to keep your buddies apprised as to what you are doing throughout your day. &lt;/p&gt;  &lt;p&gt;But the Twitter community being who they are have found creative uses for this messaging platform. &lt;strong&gt;Microfeeds&lt;/strong&gt; (a term I prefer to Twitter Feeds), are one such use. The idea being that there is utility in getting short alerts on news throughout your day without being disruptive. This doesn&#39;t replace the full RSS scan you do when you have the time, but helps to keep you informed when you cannot spare time to do even that. Coupled with the option to receive your Twitter messages &lt;strong&gt;via SMS on your phone&lt;/strong&gt;, it is also a way to stay informed even while you are out and about.&lt;/p&gt;  &lt;p&gt;There are at least two ways to publish a Twitter microfeed:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Using an automated service like &lt;a href=&quot;http://twitterfeed.com/&quot;&gt;TwitterFeed&lt;/a&gt; to watch an RSS/ATOM feed and pump the first 140 characters of each entry to Twitter &lt;/li&gt;    &lt;li&gt;Hand crafting the feed to fine tune each message &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The former is the most timely and easiest, but can be very noisy if you are aggregating many feeds, and may not convey a lot of information in the message since it just grabs the title and maybe a few more characters from the entry. A handcrafted approach assures the readers that they are getting quality messages.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Introducing the SaaS/PaaS/Cloud Microfeed&lt;/h3&gt;  &lt;p&gt;That was all very abstract. What is important to know is that I have created a handcrafted microfeed for S/P/C and encourage you to try it. I plan to be very selective in posting the following types of information in the space:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Major deals, acquisitions &lt;/li&gt;    &lt;li&gt;Product launches &lt;/li&gt;    &lt;li&gt;Call for Papers for upcoming conferences &lt;/li&gt;    &lt;li&gt;Notice of upcoming events, like webinars &lt;/li&gt;    &lt;li&gt;Insightful blog posts &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For an SLA, I will attempt to stay under 20 messages per week, with a target load of 2-3 per day. But as we go along, please give me feedback as to content and quantity.&lt;/p&gt;  &lt;p&gt;As a sample, here &lt;a href=&quot;http://twitter.com/ondemand&quot;&gt;is the feed&lt;/a&gt; as it currently stands right now:&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;3&quot; width=&quot;400&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Boothby&lt;/strong&gt;: Joyent video collage of interviews at Web2.0Expo &amp;quot;what is cloud computing&amp;quot; . Tim O&#39;Reilly, others. &lt;a href=&quot;http://tinyurl.com/5ngh6d&quot;&gt;http://tinyurl.com/5ngh6d&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/806064842&quot;&gt;&lt;abbr&gt;about 3 hours&lt;/abbr&gt; ago&lt;/a&gt; from web&amp;#160; &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Wainewright&lt;/strong&gt;: Taleo acquires Vurv, joins SaaS revenue all stars SFDC, Omniture, Concur &lt;a href=&quot;http://blogs.zdnet.com/SAAS/&quot;&gt;http://blogs.zdnet.com/SAAS/&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/805185743&quot;&gt;&lt;abbr&gt;08:38 PM May 06, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;IBM&lt;/strong&gt;: Call for Papers for IBM&#39;s &amp;quot;Info On Demand&amp;quot; conference (Oct. 26-31), &lt;a href=&quot;http://tinyurl.com/4fljg5&quot;&gt;http://tinyurl.com/4fljg5&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804722839&quot;&gt;&lt;abbr&gt;08:49 AM May 06, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;MySQL&lt;/strong&gt;: offering webinar May 15, &amp;quot;Multi-Tenant Architectures with MySQL Enterprise for SaaS Providers&amp;quot;. Register: &lt;a href=&quot;http://tinyurl.com/4pwk4r&quot;&gt;http://tinyurl.com/4pwk4r&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804710907&quot;&gt;&lt;abbr&gt;08:34 AM May 06, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Craig Balding&lt;/strong&gt;: NPR (radio) featured him and Cloud Computing for 3.5 minute segment. To listen, see: &lt;a href=&quot;http://tinyurl.com/4amvdx&quot;&gt;http://tinyurl.com/4amvdx&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804135536&quot;&gt;&lt;abbr&gt;02:14 PM May 05, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Mosso&lt;/strong&gt;: (Rackspace&#39;s cloud division) launches Storage-aaService CloudFS private beta, $0.15 per gigabyte &lt;a href=&quot;http://tinyurl.com/48h4ql&quot;&gt;http://tinyurl.com/48h4ql&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804130969&quot;&gt;&lt;abbr&gt;02:06 PM May 05, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Bungee&lt;/strong&gt;: revise 4/30 tweet - Pg/MySQL anncment is not a hosting offering, support is for connectivity only. See: &lt;a href=&quot;http://tinyurl.com/5yfnnd&quot;&gt;http://tinyurl.com/5yfnnd&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804114302&quot;&gt;&lt;abbr&gt;01:41 PM May 05, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Kaplan&lt;/strong&gt;: THINKStrategies supporting SaaS industry study, call for SaaS providers with rev $10M-250M &lt;a href=&quot;http://tinyurl.com/578c5b&quot;&gt;http://tinyurl.com/578c5b&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804111302&quot;&gt;&lt;abbr&gt;01:36 PM May 05, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Willis&lt;/strong&gt;: provides a listing of cloud solutions predating the Laird SaaSMap. &amp;quot;Cloud Vendors A to Z&amp;quot; &lt;a href=&quot;http://tinyurl.com/67fcau&quot;&gt;http://tinyurl.com/67fcau&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/804109396&quot;&gt;&lt;abbr&gt;01:33 PM May 05, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Druker&lt;/strong&gt;: financial SaaS provider Intacct raises another $15M to help battle Netsuite. Total funding so far $29M &lt;a href=&quot;http://tinyurl.com/6qvpl3&quot;&gt;http://tinyurl.com/6qvpl3&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/802665324&quot;&gt;&lt;abbr&gt;10:08 AM May 03, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Laird,Dickson&lt;/strong&gt;: created a visual SaaS/Cloud/PaaS industry map, showing the major focus areas and players. &lt;a href=&quot;http://tinyurl.com/45ejjj&quot;&gt;http://tinyurl.com/45ejjj&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/802654468&quot;&gt;&lt;abbr&gt;09:49 AM May 03, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Wainewright&lt;/strong&gt;: MSFT to try MSOffice stream ondemand (not in cloud) with license change. See also EndeavoursTech. &lt;a href=&quot;http://tinyurl.com/4qj9nv&quot;&gt;http://tinyurl.com/4qj9nv&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/802651020&quot;&gt;&lt;abbr&gt;09:42 AM May 03, 2008&lt;/abbr&gt;&lt;/a&gt; from web &lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;400&quot;&gt;         &lt;p&gt;&lt;strong&gt;Wainewright&lt;/strong&gt;: SAP disaster - delays SaaS 12-18 months after validating market. Gift to Netsuite, Twinfield, CODA. &lt;a href=&quot;http://tinyurl.com/49rtfs&quot;&gt;http://tinyurl.com/49rtfs&lt;/a&gt; &lt;a href=&quot;http://twitter.com/ondemand/statuses/802646611&quot;&gt;&lt;abbr&gt;09:34 AM May 03, 2008&lt;/abbr&gt;&lt;/a&gt; from web&lt;/p&gt;       &lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Subscribing to the ondemand Microfeed&lt;/h3&gt;  &lt;p&gt;The Twitter account being used for this microfeed is:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://twitter.com/ondemand&quot;&gt;ondemand&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For those already on Twitter, just follow that account and be sure to enable device updates for it. For new users, follow these instructions:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Create a &lt;a href=&quot;https://twitter.com/signup&quot;&gt;Twitter account&lt;/a&gt;, using whatever name you like &lt;/li&gt;    &lt;li&gt;Skip the email search wizard &lt;/li&gt;    &lt;li&gt;Search for the &amp;quot;ondemand&amp;quot; user using the search box &lt;/li&gt;    &lt;li&gt;Click the Follow button &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;To subscribe your phone to get an SMS message whenever a new post appears, do the following:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Click &lt;em&gt;Settings&lt;/em&gt; in the upper right &lt;/li&gt;    &lt;li&gt;Click &lt;em&gt;Devices&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;Enter your phone number, and be sure to check the box to approve SMS &lt;/li&gt;    &lt;li&gt;Click the &lt;em&gt;Home&lt;/em&gt; link at the top of the page. &lt;/li&gt;    &lt;li&gt;Click on the &lt;em&gt;Following&lt;/em&gt; link on the right hand side of the page &lt;/li&gt;    &lt;li&gt;Click the &lt;em&gt;on&lt;/em&gt; button for device updates for ondemand &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Twitter Clients&lt;/h3&gt;  &lt;p&gt;There are many ways to stay on top of this Twitter microfeed. I am optimizing for readability on SMS but really any client will do. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The traditional Twitter website user interface &lt;/li&gt;    &lt;li&gt;Enable device updates for the &lt;strong&gt;ondemand&lt;/strong&gt; account, and you will receive SMS messages &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.twhirl.org/&quot;&gt;Thwirl&lt;/a&gt; - a powerful desktop client &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.facebook.com/apps/application.php?id=2231777543&quot;&gt;Facebook&lt;/a&gt; integration &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:bb4428c6-76f9-4668-ad45-1e7dfed62ec7&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/paas&quot; rel=&quot;tag&quot;&gt;paas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/cloud&quot; rel=&quot;tag&quot;&gt;cloud&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/cloudcomputing&quot; rel=&quot;tag&quot;&gt;cloudcomputing&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/twitter&quot; rel=&quot;tag&quot;&gt;twitter&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/microfeed&quot; rel=&quot;tag&quot;&gt;microfeed&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/4826040844699624880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/4826040844699624880' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4826040844699624880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4826040844699624880'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/05/twitter-microfeed-covering.html' title='Twitter Microfeed Covering the SaaS/PaaS/Cloud Markets for those without a Cognitive Surplus'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-6064753827466354745</id><published>2008-05-02T01:37:00.001-06:00</published><updated>2009-06-23T11:41:23.734-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="cloudcomputing"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>Understanding the Cloud Computing/SaaS/PaaS markets: a Map of the Players in the Industry</title><content type='html'>&lt;p&gt;The Cloud Computing/SaaS/PaaS space is loaded with interesting vendors, and the space is booming. If you are trying to navigate this world and need a guide, this blog entry will help. We have assembled a visual map of the industry, showing how the major players fit into the overall space. It will give you an overview of who&#39;s who, and what types of solutions are being offered.&lt;/p&gt;   &lt;p&gt;&lt;strong&gt;NOTE:   a newer version of this map is now available. &lt;a href=&quot;http://peterlaird.blogspot.com/2009/05/cloud-computing-taxonomy-at-interop-las.html&quot;&gt;Click here to navigate to the most recent research.&lt;/a&gt;&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;I was greatly assisted by Kent Dickson, VP of Product Management for SaaS at BEA, in building this map. Steve Bobrowski, Director of SaaS Evangelism, also contributed comments. Thanks to both!&lt;br /&gt;&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Defining the Markets&lt;/h3&gt;  &lt;p&gt;Before we look at the map, we need to define the major areas that we are covering. Note that in many ways these markets overlap so trying to differentiate which solution is in which is not a meaningful exercise. Needless to say, drawing out the map is a subjective effort, and not all solutions fit neatly into their assigned bucket. The purpose of the visual map is not to address subtleties, but to draw the industry in general terms.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Cloud Computing&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Cloud_computing&quot;&gt;Cloud computing&lt;/a&gt; refers to the virtualization of the data center, such that server machines are not thought of individually but as just a commodity in a greater collection of server machines. Cloud computing solutions in general strive to eliminate the need for an application deployer to be aware of the actual physical machines that are used to host the application. Some have called this idea “hardware as a service”.&lt;/p&gt;  &lt;p&gt;Solutions that are most closely associated with the Cloud Computing market are indicated with the &lt;a href=&quot;http://lh3.ggpht.com/peterjlaird/SDUv6kD36ZI/AAAAAAAAADc/UVzz-w8OGaI/s1600-h/image12.png&quot;&gt;&lt;img style=&quot;border-width: 0px;&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SDUv60D36aI/AAAAAAAAADk/cEL-cPMgXbk/image_thumb6.png?imgmax=800&quot; border=&quot;0&quot; width=&quot;17&quot; height=&quot;18&quot; /&gt;&lt;/a&gt; icon on the map.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Software as a Service (SaaS)&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;An application that is delivered through the &lt;a href=&quot;http://en.wikipedia.org/wiki/Software_as_a_Service&quot;&gt;SaaS&lt;/a&gt; model typically is done so:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Over the internet, &lt;/li&gt;    &lt;li&gt;Remotely by a third party, with little/no opportunity to bring that application in-house &lt;/li&gt;    &lt;li&gt;With a usage-based pricing model &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Solutions that are most closely associated with the SaaS market are indicated with the &lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SDUv7ED36bI/AAAAAAAAADs/lECpax2W_Ug/s1600-h/image7.png&quot;&gt;&lt;img style=&quot;border-width: 0px;&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SDUv7UD36cI/AAAAAAAAAD0/sZZ9N3dUyj4/image_thumb3.png?imgmax=800&quot; border=&quot;0&quot; width=&quot;18&quot; height=&quot;19&quot; /&gt;&lt;/a&gt; icon on the map.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;&lt;strong&gt;Platform as a Service&lt;/strong&gt; (PaaS)&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;When a vendor offers a Platform as a Service, they are offering an integrated platform to build, test, and deploy custom applications. The PaaS is offered to you in a SaaS model (remote, usage-based). &lt;a href=&quot;http://hinchcliffeandcompany.com/&quot;&gt;Dion Hinchliffe&lt;/a&gt; recently published a &lt;a href=&quot;http://bungee-media.s3.amazonaws.com/whitepapers/hinchcliffe/hinchcliffe0408.pdf&quot;&gt;comprehensive whitepaper&lt;/a&gt; on this topic.&lt;/p&gt;  &lt;p&gt;The PaaS market is indicated with the &lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SDUv7UD36dI/AAAAAAAAAD8/T1xyHuXx7RM/s1600-h/image8.png&quot;&gt;&lt;img style=&quot;border-width: 0px;&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/peterjlaird/SDUv7kD36eI/AAAAAAAAAEE/E11MxO6TtnE/image_thumb4.png?imgmax=800&quot; border=&quot;0&quot; width=&quot;19&quot; height=&quot;18&quot; /&gt;&lt;/a&gt; icon in the map view.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Core Cloud Services&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;After defining the 3 markets, there remains a set of solutions that contribute to all as fundamental building blocks. In other words, these solutions address cross cutting concerns. &lt;/p&gt;  &lt;p&gt;In the map they are marked with a distinct icon &lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SDUv8ED36fI/AAAAAAAAAEM/VDGKOkfbmLQ/s1600-h/image16.png&quot;&gt;&lt;img style=&quot;border-width: 0px;&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SDUv8UD36gI/AAAAAAAAAEU/pEkOmdLZpao/image_thumb8.png?imgmax=800&quot; border=&quot;0&quot; width=&quot;20&quot; height=&quot;17&quot; /&gt;&lt;/a&gt; to set them apart.&lt;/p&gt;  &lt;h3&gt; &lt;/h3&gt;  &lt;h3&gt;The Visual Map&lt;/h3&gt;  &lt;p&gt;Below is the visual map as promised. You will find a larger version hosted &lt;a href=&quot;http://saaslink.googlepages.com/SaaSMap_LairdDickson_May08.png&quot;&gt;here&lt;/a&gt;. An explanation of each category and a full clickable URL list of the solutions is offered below the map.&lt;/p&gt;  &lt;p&gt;If you wish to make changes, the original mind map drawing file assets are located &lt;a href=&quot;http://saaslink.googlepages.com/saasindustrymap&quot;&gt;here&lt;/a&gt;. Please post comments with your thoughts, or use this map as a basis for your own vision of the industry. Please give credit back to the original source (see &lt;a href=&quot;http://creativecommons.org/licenses/by-sa/3.0/us/&quot;&gt;Creative Commons&lt;/a&gt;) if you do.&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://saaslink.googlepages.com/SaaSMap_LairdDickson_May08.png&quot;&gt;&lt;img style=&quot;border-width: 0px;&quot; alt=&quot;SaaSMap_LairdDickson_May08&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SDUv80D36hI/AAAAAAAAAEc/PMAjeR1bkOc/SaaSMap_LairdDickson_May084.png?imgmax=800&quot; border=&quot;0&quot; width=&quot;804&quot; height=&quot;591&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Defining the Solution Groupings&lt;/h3&gt;  &lt;p&gt;In the map, we grouped solutions according to the problems they aim to solve. This section details the intent of each category.&lt;/p&gt;  &lt;p&gt;Please note that for every category, there are more vendors that could be included. We are not attempting to provide a comprehensive list of every player in the industry. THINKStrategies created the &lt;a href=&quot;http://www.saas-showplace.com/&quot;&gt;SaaS Showplace&lt;/a&gt; if that is what you are looking for.&lt;/p&gt;  &lt;p&gt;This map only shows solutions that are both 1) available in some form today, and 2) have significant mindshare in the industry. Feedback is appreciated if you disagree with any solution that was included or excluded.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Left Side&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cloud Providers&lt;/strong&gt; - vendors who provide server hardware in commodity form, as a virtualized cloud&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Cloud Deployment&lt;/strong&gt; - solutions surrounding the deployment of applications to a virtualized cloud&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Virtual Appliances&lt;/strong&gt; - packaging and virtualization format solutions for provisioning applications into a cloud&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Topology Management &lt;/strong&gt;- solutions focused on the coordination of many virtual appliances (app, DB, network) in the cloud to form a full deployment&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Billing, Contract Management &lt;/strong&gt;- solutions that provide metering, billing, pricing, and contract management to help charge for use of a system&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt; - solutions focused on solving security requirements in these markets&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Data&lt;/strong&gt; - services that deliver/retain data for applications &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Hosters 2.0&lt;/strong&gt; - Hosting Service Providers with SaaS focus. Perhaps a controversial grouping and impossible to define, these hosters tend to appear over and over in these markets&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Nerd Stuff&lt;/strong&gt; - geeky topics fall into this category. MapReduce is mechanism for solving large computing tasks, like Google Search indexing&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;u&gt;Right Side&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;On Demand Apps &lt;/strong&gt;- the heart of the SaaS market, only a few depicted here but we could add &quot;...and a cast of thousands&quot;. These are the end application products offered for consumption in a SaaS model&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Integration as a Service&lt;/strong&gt; - service solutions that help in integrating multiple systems, possibly multiple SaaS systems&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Content as a Service&lt;/strong&gt; - hosted content repositories&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;BPM and Workflow&lt;/strong&gt; - service based offerings for managing workflow and process&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Platform as a Service &lt;/strong&gt;- incarnations of the PaaS concept&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;h3&gt;Reference Solutions List (with clickable links)&lt;/h3&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;Cloud Computing,   &lt;br /&gt;   SaaS, and PaaS    &lt;br /&gt;       Industries    &lt;br /&gt;             2008&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Cloud Providers      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/browse.html?node=201590011&quot;&gt;~ Amazon EC2 &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www-03.ibm.com/press/us/en/pressrelease/22613.wss&quot;&gt;~ IBM Blue Cloud &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.joyent.com/accelerator&quot;&gt;~ Joyent &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.gogrid.com/how-it-works/demo.php&quot;&gt;~ GoGrid &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.sun.com/service/sungrid/index.jsp&quot;&gt;~ SunGrid &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;On Demand Apps      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.oracle.com/ondemand/managed-applications.html&quot;&gt;~ Oracle On Demand Apps &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.salesforce.com/products/&quot;&gt;~ Salesforce SFA &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.netsuite.com/portal/home.shtml&quot;&gt;~ Netsuite ERP &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;Google Apps &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Integration as a Service      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://boomi.com/&quot;&gt;~ Boomi &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.muleondemand.com/&quot;&gt;~ Mule OnDemand &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.opsource.net/connect.php&quot;&gt;~ OpSource Connect (OSB) &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/Simple-Queue-Service-home-page/b?ie=UTF8&amp;amp;node=13584001&quot;&gt;~ Amazon SQS &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.microsoft.com/biztalk/en/us/soa.aspx&quot;&gt;~ Microsoft BizTalk Services &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Content as a Service      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.springcm.com/&quot;&gt;~ SpringCM &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.clickability.com/&quot;&gt;~ Clickability &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.xythos.com/xod.html&quot;&gt;~ Xythos OnDemand &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.google.com/base&quot;&gt;~ GoogleBase &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;BPM and Workflow      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.processmaker.com/&quot;&gt;~ ProcessMaker &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;BPM as a Service          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://www.appian.com/product/anywhere.jsp&quot;&gt;~ Appian Anywhere &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://skemma.com/&quot;&gt;~ Skemma &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://itensil.com/&quot;&gt;~ Intensil &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Platform as a Service     &lt;br /&gt;(PaaS)       &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.bungeelabs.com/&quot;&gt;~ Bungee Labs Connect &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www2.etelos.com/&quot;&gt;~ Etelos &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://coghead.com/&quot;&gt;~ Coghead &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://code.google.com/appengine/&quot;&gt;~ Google App Engine &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://quickbase.intuit.com/&quot;&gt;~ Intuit QuickBase &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.salesforce.com/platform/&quot;&gt;~ Salesforce force.com &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.longjump.com/&quot;&gt;~ LongJump &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://apprenda.com/&quot;&gt;~ Apprenda SaaSGrid &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.oracle.com/technology/tech/saas/index.html&quot;&gt;~ Oracle SaaS Platform &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Cloud Deployment      &lt;ul&gt;       &lt;li&gt;Virtual Appliances          &lt;ul&gt;           &lt;li&gt;Packaging              &lt;ul&gt;               &lt;li&gt;&lt;a href=&quot;http://www.rpath.com/corp/&quot;&gt;~ rPath &lt;/a&gt;&lt;/li&gt;                &lt;li&gt;&lt;a href=&quot;http://www.cohesiveft.com/&quot;&gt;~ CohesiveFT &lt;/a&gt;&lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;            &lt;li&gt;Formats              &lt;ul&gt;               &lt;li&gt;&lt;a href=&quot;http://www.vmware.com/&quot;&gt;~ VMWare &lt;/a&gt;&lt;/li&gt;                &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Xen&quot;&gt;~ Xen &lt;/a&gt;&lt;/li&gt;                &lt;li&gt;&lt;a href=&quot;http://www.parallels.com/&quot;&gt;~ Parallels &lt;/a&gt;&lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls-ve/docs92-v10/index.html&quot;&gt;~ BEA Weblogic Server VE &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Topology Management          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://3tera.com/AppLogic/&quot;&gt;~ 3Tera AppLogic &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://www.elastra.com/products/overview/&quot;&gt;~ Elastra Cloud Server &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Billing, Contract Mgmt      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.opsource.net/billing.php&quot;&gt;~ OpSource/LeCayla &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.ariasystems.com/&quot;&gt;~ Aria &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://evapt.com/&quot;&gt;~ eVapt &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/DevPay-AWS-Service-Pricing/b?ie=UTF8&amp;amp;node=342429011&quot;&gt;~ Amazon DevPay &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://zuora.com/&quot;&gt;~ Zuora &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Security      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://openid.net/&quot;&gt;~ OpenID &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://oauth.net/&quot;&gt;~ OAuth &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;Security as a Service          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://www.pingidentity.com/solutions/index.cfm&quot;&gt;~ Ping Identity &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Data      &lt;ul&gt;       &lt;li&gt;Storage as a Service          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/browse.html?node=16427261&quot;&gt;~ Amazon S3 &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://box.net/&quot;&gt;~ Box.net &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://www.google.com/base&quot;&gt;~ Google Base &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Database as a Service          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/SimpleDB-AWS-Service-Pricing/b?ie=UTF8&amp;amp;node=342335011&quot;&gt;~ Amazon SimpleDB &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://www.trackvia.com/&quot;&gt;~ Trackvia &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://www.intelligententerprise.com/channels/information_management/showArticle.jhtml?articleID=207400834&quot;&gt;~ Microsoft SSDS &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Hosters 2.0      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.opsource.net/&quot;&gt;~ OpSource &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://jamcracker.com/&quot;&gt;~ Jamcracker &lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.rackspace.com/index.php&quot;&gt;~ Rackspace &lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Nerd Stuff      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/MapReduce&quot;&gt;~ MapReduce &lt;/a&gt;          &lt;ul&gt;           &lt;li&gt;&lt;a href=&quot;http://hadoop.apache.org/&quot;&gt;~ Apache Hadoop &lt;/a&gt;&lt;/li&gt;            &lt;li&gt;&lt;a href=&quot;http://labs.google.com/papers/mapreduce.html&quot;&gt;~ Google MapReduce &lt;/a&gt;&lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:0ecadfad-c0b0-46c1-bf60-7630787c43e0&quot; style=&quot;margin: 0px; padding: 0px; display: inline;&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/cloud&quot; rel=&quot;tag&quot;&gt;cloud&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/paas&quot; rel=&quot;tag&quot;&gt;paas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/virtualization&quot; rel=&quot;tag&quot;&gt;virtualization&lt;/a&gt;&lt;/div&gt;  &lt;h6&gt;Comments from the original blog:&lt;/h6&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;Very useful chart. You&#39;ve misspelled Itensil (not Intensil)in the BPM as a service node -- the website link works though, so don&#39;t change that. I&#39;d argue that Itensil is really a PaaS product with pre-built workflow, and invite your readers to have a look and let me know if you agree. &lt;/p&gt;      &lt;p&gt;Posted by: kpatterson on May 16, 2008 at 12:34 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2929&quot;&gt;&lt;/a&gt;      &lt;p&gt;FYI - I will be working on an updated map shortly. The feedback is still rolling in. thanks for all the email/comments. &lt;/p&gt;      &lt;p&gt;Google - yes, they are listed as a PaaS with their new App Engine offering &lt;/p&gt;      &lt;p&gt;MorpheXchange.com - thanks for the note, just published an entry on them on &lt;a href=&quot;http://twitter.com/ondemand&quot;&gt;my Cloud/PaaS/SaaS microfeed&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;And thanks to OpSource for the mention today of the map in their &lt;a href=&quot;http://www.opsource.net/news/newsletter/08.05/&quot;&gt;monthly newsletter.&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;Posted by: plaird on May 14, 2008 at 1:24 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2927&quot;&gt;&lt;/a&gt;      &lt;p&gt;Very interesting article. Just two questions -- Did Google recently add an offering to the cloud computing space ? Is a company called mediamax.com involved in the storage-as-a -service category ? &lt;/p&gt;      &lt;p&gt;Posted by: hsr0508 on May 14, 2008 at 11:22 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2922&quot;&gt;&lt;/a&gt;      &lt;p&gt;I&#39;m a bit cautious of messing with the wiki list Peter but may I also point you to MorpheXchange.com as one of the emergent PaaS players particularly incorporating open source technologies to guard against the lock in fear. Incidentally, the platform has opened itself to Java after debuting Rails. Check them out. Best. alain &lt;/p&gt;      &lt;p&gt;Posted by: friarminor on May 13, 2008 at 9:34 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2908&quot;&gt;&lt;/a&gt;      &lt;p&gt;Peter Thanks for the feedback, much appreciated. Looking forward for your comment on my post:) &lt;/p&gt;      &lt;p&gt;Posted by: natishalom on May 6, 2008 at 8:03 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2906&quot;&gt;&lt;/a&gt;      &lt;p&gt;Nati - thanks for the comment, this is what I am looking for. Responses: &lt;/p&gt;      &lt;p&gt;Rightscale, MySQL, Coherence, GigaSpaces, etc: maybe not all of those, but I also have been getting emails offline, and will need to make a v1.1 of the map to include a handful of corrections/omissions. The feedback is still coming in, so will wait a little while. I don&#39;t want the map to turn into a 1000 node monster, so I want to be very selective. Jeff Kaplan&#39;s &lt;a href=&quot;http://www.saas-showplace.com/&quot;&gt;SaaS Showplace&lt;/a&gt; is the comprehensive source backing all of this. &lt;/p&gt;      &lt;p&gt;Oracle SaaS Platform: this was a late addition, and upon further reflection not exactly right. I now see the Platform bucket broken into two, with PaaS (minus ORCL). Then with a new bucket perhaps containing on-prem platform software that is &quot;SaaS ready&quot;. Still noodling on this though. &lt;/p&gt;      &lt;p&gt;Your blog: thanks for the link, I wasn&#39;t following your feed, now I am. I would agree in general about lock-in, not totally on board will all of your conclusions. I am deciding whether to add a comment to your blog, write a response blog entry, or succumb to laziness and just let it be. :) &lt;/p&gt;      &lt;p&gt;Cheers - PJL &lt;/p&gt;      &lt;p&gt;Posted by: plaird on May 6, 2008 at 10:23 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2903&quot;&gt;&lt;/a&gt;      &lt;p&gt;Interesting review. It captures many of the players in this emerging space.       &lt;br /&gt;I think that your missing some important platforms such as &lt;a href=&quot;http://www.rightscale.com/&quot;&gt;RightScale&lt;/a&gt;.        &lt;br /&gt;I also wanted to point out that one of the main problems with Platform as a Service that are mentioned is the fact that offer radically proprietary solution. In your list there are few that i rarely heard of in that context such as Oracle SaaS platform..        &lt;br /&gt;I recently wrote a post describing other platform choice that can help building SaaS applications in a way that could be easily ported to any cloud environment. It support also existing Java/Spring and .Net frameworks. In this way you don&#39;t have to switch entirely to completely different proprietary framework to leverage the value of cloud based environment.        &lt;br /&gt;The post is available here:        &lt;br /&gt;&lt;a href=&quot;http://natishalom.typepad.com/nati_shaloms_blog/2008/04/google-appengin.html&quot;&gt;Google App Engine - what about existing applications?&lt;/a&gt;        &lt;br /&gt;You can also view Dave Rosenberg post that points to other frameworks on that regard &lt;a href=&quot;http://www.cnet.com/8301-13846_1-9936027-62.html&quot;&gt;Sun&#39;s OpenSolaris on EC2--overcast but not completely Cloudy&lt;/a&gt;        &lt;br /&gt;On the data services side i think that your missing few important and common services that are used by many of the applications running on cloud today such as MySQL, and other data-caching services such as Oracle-Coherence, GigaSpaces, Terracotta, Memcache etc. Some of which integrates with SimpleDB thus providing in-memory front end for better performance and reliability. (See example here &lt;a href=&quot;http://www.openspaces.org/display/EDS/External+Data+Source+by+Amazon+SimpleDB&quot;&gt;SimpleDB&lt;/a&gt; such as the one with SimpleDB)&lt;/p&gt;      &lt;p&gt;Posted by: natishalom on May 6, 2008 at 4:51 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2897&quot;&gt;&lt;/a&gt;      &lt;p&gt;Hi Jim - good questions. &lt;/p&gt;      &lt;p&gt;A lot of parallels are drawn between the ASPs of the 90&#39;s and the SaaS providers of today. One of the key differentiators is that SaaS does not require the tenant to make a large upfront payment like they did in the ASP/outsourced model. SaaS is offered with usage based pricing - e.g. you pay $50 per user per month. There are other differentiators, but that is key. &lt;/p&gt;      &lt;p&gt;As for the zero customization solutions being very limited, I think you are right. Per-tenant customizations are critical for the enterprise, be it UI, data model, business process, etc. I think all SaaS vendors are working on solving this, and some have solutions today. &lt;/p&gt;      &lt;p&gt;I posted &lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2008/04/saas_podcast_li.html&quot;&gt;a list of SaaS podcasts&lt;/a&gt; which offer a much more in-depth response to your questions. I found them very helpful in explaining what is happening in the industry. &lt;/p&gt;      &lt;p&gt;Thanks for the comment! PJL&lt;/p&gt;      &lt;p&gt;Posted by: plaird on May 5, 2008 at 10:30 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2889&quot;&gt;&lt;/a&gt;      &lt;p&gt;This topic is getting a ton of exposure right now, I just finished the Wired article on Amazon&#39;s EC2 http://www.wired.com/techbiz/it/magazine/16-05/mf_amazon I have a number of questions on this topic, I&#39;ll start with Isn&#39;t this simply Outsourcing 2.0? IBM,AmDocs,etc... host infrastructure for many of our customers, you happen to know the hardware, os, and IP of the machine it is running on, change it to a cloud of resources (virtualize and absract it), and change the pricing model...Voila outsourcing 2.0. SaaS gives you more than outsourcing, but SaaS to me is not going anywhere fast, and is only riding the buzz of cloud computing. Cookie-cutter (no customization) solutions offering no diversity from the competition who are all using the same service. I see value in the space, but I have the feeling this is more hype than real value. &lt;/p&gt;      &lt;p&gt;Posted by: jcalise on May 3, 2008 at 10:14 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2888&quot;&gt;&lt;/a&gt;      &lt;p&gt;Great article Peter, I now have a much better idea of the space. Did not realize was that many players involved. Thanks for sharing this data! Cheers, --alex &lt;/p&gt;      &lt;p&gt;Posted by: atoussai on May 3, 2008 at 7:59 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2882&quot;&gt;&lt;/a&gt;      &lt;p&gt;Excellent break down of the space, and a great reference to use going forward. &lt;/p&gt;      &lt;p&gt;Posted by: jcalise on May 2, 2008 at 10:45 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/6064753827466354745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/6064753827466354745' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6064753827466354745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/6064753827466354745'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/05/understanding-cloud-computingsaaspaas.html' title='Understanding the Cloud Computing/SaaS/PaaS markets: a Map of the Players in the Industry'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/peterjlaird/SDUv60D36aI/AAAAAAAAADk/cEL-cPMgXbk/s72-c/image_thumb6.png?imgmax=800" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-5121491819682396406</id><published>2008-04-27T02:30:00.000-06:00</published><updated>2008-05-22T02:30:35.720-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="twitter"/><title type='text'>Mining Twitter for the Enterprise: Survey your Customers&amp;#39; Candid Thoughts using a Social Web 2.0 Service</title><content type='html'>&lt;p&gt;One BEA customer recently posted on Twitter: &amp;quot;&lt;strong&gt;hating weblogic&lt;/strong&gt;&amp;quot;. Another said: &amp;quot;&lt;strong&gt;F@#% you weblogic &lt;/strong&gt;for not handling HTTP 500 errors properly.&amp;quot; &lt;/p&gt;  &lt;p&gt;Whether you personally participate in one of the numerous internet social platforms or not, some of your customers are out there. WebLogic isn&#39;t the only brand being discussed - name the brand and there are customers voicing their opinions on these platforms. &lt;/p&gt;  &lt;p&gt;This blog entry focuses on Twitter, and shows how you can mine Twitter for feedback on your brand using a tool called TweetScan. Because of the very informal nature of Twitter, and it&#39;s low barrier to participate, it is a good channel of candid opinions on your brand. Companies like Comcast have already used TweetScan to identify and remedy customer relationship problems in a highly proactive manner. How is your brand perceived on Twitter?&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2008/04/mining_twitter.html&quot;&gt;originally posted&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt; April 27th, 2008 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;What is Twitter?&lt;/h3&gt;  &lt;p&gt;Twitter is a service that allows you to publicly post messages in small doses - 140 characters or less. The basic idea is to answer the question &lt;em&gt;What are you doing?&lt;/em&gt; but you can use those 140 characters to say whatever you want. &lt;/p&gt;  &lt;p&gt;While blogs are a great source of public opinion, they tend to be more filtered because they require more effort to produce. Twitter lowers the barrier to post dramatically, and therefore is a better medium for capturing those minor annoyances and random thoughts we all have throughout our day. There is also less of a imperative to post something interesting - your readers only need to invest the time to read 140 characters and not paragraphs of a blog entry.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Me and Twitter &lt;/h3&gt;  &lt;p&gt;I am a reluctant poster to Twitter. Do people really care that I just ate dinner or that I am about to watch a movie? Not really, apparently, as I don&#39;t have too many followers. Granted, I haven&#39;t been at it that long, but is this time well spent?&lt;/p&gt;  &lt;p&gt;Is participating in Twitter worth your time? &lt;/p&gt;  &lt;p&gt;I really don&#39;t know, and certainly am not an expert. But I suspect it depends on how you view Twitter specifically, or the other social platforms in general. Are you using it to get something done, improve your social life, for pure entertainment, or what.&lt;/p&gt;  &lt;p&gt;Sarah Perez&amp;#160; talks through the issue in her blog &lt;a href=&quot;http://www.readwriteweb.com/archives/real_people_dont_have_time_for_social_media.php&quot;&gt;Real People Don&#39;t Have Time for Social Media&lt;/a&gt;, and an e-consultancy article &amp;quot;&lt;a href=&quot;http://www.e-consultancy.com/news-blog/365472/social-media-s-inconvenient-truth.html&quot;&gt;Social media&#39;s inconvenient truth&lt;/a&gt;&amp;quot; expands on it.&lt;/p&gt;  &lt;h6&gt;&amp;#160;&amp;#160; &amp;quot;But there&#39;s an inconvenient truth that proponents of these sites tend to ignore - the average person just doesn&#39;t have the ability to participate fully in social media.&amp;quot;&lt;/h6&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;TweetScan - Improving the Signal to Noise Ratio for Observers&lt;/h3&gt;  &lt;p&gt;The silver lining is you don&#39;t have to participate to acquire great value from these social computing tools. Lots of people are using Twitter as a medium for publishing their unfiltered thoughts. As simply an observer, you can use these platforms to great advantage. But how?&lt;/p&gt;  &lt;p&gt;A problem that cannot be ignored is the amount of noise on these platforms. While Twitter is a wealth of information on customers&#39; opinions and comments, much of this is chaff - &amp;quot;&lt;a href=&quot;http://twitter.com/jlippiner/statuses/798012255&quot;&gt;sitting on toilet listening to lily Allen&lt;/a&gt;&amp;quot;. But buried within the mountain of irrelevance are some nuggets of useful information - &amp;quot;&lt;a href=&quot;http://twitter.com/SirLyric/statuses/782965934&quot;&gt;Angry at BEA. Why doesn&#39;t WebLogic play nice in OSGi?&lt;/a&gt;&amp;quot;. &lt;/p&gt;  &lt;p&gt;With just plain old Twitter, its impossible to separate the crud from the gold. &lt;a href=&quot;http://tweetscan.com/index.php&quot;&gt;TweetScan&lt;/a&gt; is the solution - it is a search engine built on top of Twitter to help you find the diamonds in the rough, especially when you are focused on a searchable keyword like your product brand.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh5.ggpht.com/peterjlaird/SDUvKED36XI/AAAAAAAAADM/gcVvfXcQrRM/s1600-h/image2.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;121&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SDUvK0D36YI/AAAAAAAAADU/WE_7-YcP8VU/image_thumb.png?imgmax=800&quot; width=&quot;244&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Monitoring your Customer&#39;s View of your Brand&lt;/h3&gt;  &lt;p&gt;Savvy marketing and customer relationship people have started to take advantage of &lt;a href=&quot;http://tweetscan.com/index.php&quot;&gt;TweetScan&lt;/a&gt; to help manage their PR and to capture raw customer data. Michael Arrington&#39;s adventure with Comcast is the most famous.&lt;/p&gt;  &lt;p&gt;Michael Arrington was &lt;a href=&quot;http://www.techcrunch.com/2008/04/06/comcast-twitter-and-the-chicken-trust-me-i-have-a-point/&quot;&gt;having trouble with his Comcast internet account&lt;/a&gt;. Calls to their service center didn&#39;t provide a relief, and so he fired off some Twitter posts in anger. Being who he is, others picked up on this and triggered a fire storm of net activity. Then something wonderful happened:&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;And this brings me to the point of this post. Within 20 minutes of my first Twitter message I got a call from a Comcast executive in Philadelphia who wanted to know how he could help. He said he monitors Twitter and blogs to get an understanding of what people are saying about Comcast, and so he saw the &lt;/em&gt;&lt;a href=&quot;http://quotably.com/TechCrunch/statuses/783965995&quot;&gt;&lt;em&gt;discussion break out&lt;img src=&quot;http://i.ixnp.com/images/v3.27.1/t.gif&quot; /&gt;&lt;/em&gt;&lt;/a&gt;&lt;em&gt; around my messages.&amp;quot;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;As far as PR and customer relationships go, this is a fantastic show of force by Comcast. But not everyone who posts to Twitter is a famous net personality like Michael. It is fair to assume that Comcast cannot afford to provide the same level of response to the average joes out there. At least one on one. Instead, Comcast can monitor the Twitter channel and detect general patterns in service problems. Michael sums up how this can benefit Comcast (and its customers):&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&amp;quot;Well before most people they have identified blogs, and particularly Twitter, as an excellent early warning system to flag possible brand implosions.&amp;quot;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;A few more references to using Twitter like this:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.mutual-funds.biz/2008/03/19/technology/web2.0_goofing.fortune/index.htm?postversion=2008032012&quot;&gt;Blip.TV &lt;/a&gt;- Blip.TV used TweetScan to eavesdrop on its customers and detected and resolved a service problem using this approach. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.krishnade.com/blog/2008/twitter-for-research-online/&quot;&gt;Using Twitter as a Research Tool&lt;/a&gt; - Krishna De talks about using Twitter derived information for research. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;WebLogic on TweetScan&lt;/h3&gt;  &lt;p&gt;The brand I care about is WebLogic. As an architect on WebLogic Portal, I am heavily invested in this brand. Up until now, the primary way we received feedback on the product have been these channels:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Monitoring the WebLogic newsgroups &lt;/li&gt;    &lt;li&gt;Customer support cases &lt;/li&gt;    &lt;li&gt;Direct interactions with customers &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;All of these have been effective, but it is interesting to see how &lt;a href=&quot;http://tweetscan.com/index.php&quot;&gt;TweetScan&lt;/a&gt; can provide a new channel for feedback. Here are some selected entries in the current search for &amp;quot;weblogic&amp;quot; on TweetScan, with a focus on the negative posts:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://twitter.com/occi/statuses/795688041&quot;&gt;hating weblogic&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/dangerfan/statuses/795098385&quot;&gt;FF3 handles the weblogic console much better than FF2&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/timhastings/statuses/790230645&quot;&gt;Is banging his head on WebLogic Portal 10.2 compatibility problems with IE7&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/Mr_Solo/statuses/790224879&quot;&gt;reality is darker: call it WebLogic&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/jamescarr/statuses/789166317&quot;&gt;I&#39;ve wasted a whole day thanks to proprietary oracle and weblogic jdbc&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/FuzyPinkBunny/statuses/783000102&quot;&gt;weblogic 10 hates me... it&#39;s not like I slept with its sister or anything.. but Glassfish is looking pretty nice these days&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://twitter.com/grahams/statuses/778180898&quot;&gt;F@#% you weblogic for not handling HTTP 500 errors properly&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;We see negative comments on the newsgroups. But these Twitter posts are far more unfiltered and more of the flavor &amp;quot;&lt;em&gt;how do you feel about weblogic&lt;/em&gt;&amp;quot;, as opposed to the newsgroups/support cases which are &amp;quot;&lt;em&gt;what is not working for you with weblogic&lt;/em&gt;&amp;quot;. Now, most Twitter posts by definition don&#39;t have nearly enough information to really understand the underlying issue. But you get a flavor of what your customers are feeling, and you can always follow up for clarification by asking the user to clarify offline.&lt;/p&gt;  &lt;p&gt;And to be clear, this list is fairly typical of ANY brand you search on. Pick a brand, and do the search, and you find a litany of complaints and negative comments. This is normal. Check your pride at the door before searching on your brand. Twitter posts on brands usually err on the side of being flames, not praises.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;   &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:c3f938ea-f0e5-4f1a-93f1-5f2c333e948d&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/Twitter&quot; rel=&quot;tag&quot;&gt;Twitter&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/TwitterScan&quot; rel=&quot;tag&quot;&gt;TwitterScan&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/PublicRelations&quot; rel=&quot;tag&quot;&gt;PublicRelations&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Web2.0&quot; rel=&quot;tag&quot;&gt;Web2.0&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/SocialComputing&quot; rel=&quot;tag&quot;&gt;SocialComputing&lt;/a&gt;&lt;/div&gt; &lt;/p&gt;  &lt;h6&gt;Comments from original blog:&lt;/h6&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;Jott - looks useful. Notice they have a &amp;quot;custom service&amp;quot; capability where you can give it a server URL to HTTP POST the messages to, instead of predefined endpoint like Twitter. I love open systems. &lt;/p&gt;      &lt;p&gt;Posted by: plaird on April 30, 2008 at 10:39 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2870&quot;&gt;&lt;/a&gt;      &lt;p&gt;Excellent post, Peter, on an important topic. &lt;/p&gt;      &lt;p&gt;As people become increasingly frustrated with voice mail systems and email auto-responders when trying to report problems to companies, tools like blogs and Twitter will become the means by which honked-off customers express their frustrations. That trend will grow, and with it the need for companies to get proactive, pay attention, and track these sites and services in order to manage customer satisfaction and public relations. &lt;/p&gt;      &lt;p&gt;BTW: In conjunction with Twitter, I also use Jott, a free service that transcribes voice messages to text, and pushes those messages out to my Twitter account, or to one of my blogs, or directly to an email to a contact -- all based on how I configure the service. Cool stuff: I just dial the Jott number, use voice commands to select the message destination, then recite my message. Unless there&#39;s a lot of background noise, the transcription is pretty good, and it&#39;s a lot easier and faster (for me, anyway) than trying to type a Twitter post on a tiny cellphone keypad.&lt;/p&gt;      &lt;p&gt;Posted by: brhubart on April 29, 2008 at 1:38 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2866&quot;&gt;&lt;/a&gt;      &lt;p&gt;Someone asked offline what my twitter handle is so they can follow me:&lt;/p&gt;      &lt;p&gt;Follow: &lt;a href=&quot;https://twitter.com/plaird&quot;&gt;plaird&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;Posted by: plaird on April 28, 2008 at 8:41 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2863&quot;&gt;&lt;/a&gt;      &lt;p&gt;Dennis,&lt;/p&gt;      &lt;p&gt;Thanks for posting your experience. Sorry I missed you in my google search for similar stories. You illustrate the point exactly. &lt;/p&gt;      &lt;p&gt;I renewed my searching and I found a couple more links on the topic: &lt;/p&gt;      &lt;ul&gt;       &lt;li&gt;&lt;a href=&quot;http://www.readwriteweb.com/archives/how_to_get_customer_service_via_twitter.php&quot;&gt;How to Get Customer Service via Twitter&lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://www.futureofrealestatemarketing.com/using-twitter-to-listen-to-your-customers&quot;&gt;Using Twitter to Listen to your Customers&lt;/a&gt;&lt;/li&gt;        &lt;li&gt;&lt;a href=&quot;http://technomarketer.typepad.com/technomarketer/2008/02/twitter-and-cus.html&quot;&gt;Twitter and customer service; how to listen&lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;      &lt;p&gt;Posted by: plaird on April 27, 2008 at 9:48 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2862&quot;&gt;&lt;/a&gt;      &lt;p&gt;I am no Michael Arington - by any stretch of the imagination. I&#39;m just a guy. Last week I had a similar experience with twitter based support from &lt;a href=&quot;http://www.slideshare.com&quot;&gt;SlideShare&lt;/a&gt;. The best thing is I sent out just 1 twitter message in frustration and within 10 minutes, 2 employees of SlideShare contacted me via twitter to give me the low down on the problem I was having. I blogged the story under &lt;a href=&quot;http://blogs.ittoolbox.com/cio/original-thinking/archives/how-twitterenabled-customer-support-saved-the-day-23982&quot;&gt;How Twitter-Enabled Customer Support Saved the Day&lt;/a&gt;. I was completely blown away and felt much more special than my individual status really warranted. Extremly powerful use of technology. Dennis Stevenson &lt;a href=&quot;http://dev2dev.bea.com/blogs.ittoolbox.com/cio/original-thinking&quot;&gt;blogs.ittoolbox.com/cio/origina-thinking&lt;/a&gt;&lt;/p&gt;      &lt;p&gt;Posted by: denthewise on April 27, 2008 at 8:52 PM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/5121491819682396406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/5121491819682396406' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/5121491819682396406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/5121491819682396406'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/04/mining-twitter-for-enterprise-survey.html' title='Mining Twitter for the Enterprise: Survey your Customers&amp;#39; Candid Thoughts using a Social Web 2.0 Service'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/peterjlaird/SDUvK0D36YI/AAAAAAAAADU/WE_7-YcP8VU/s72-c/image_thumb.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-3710294504731419104</id><published>2008-04-24T02:26:00.000-06:00</published><updated>2008-05-22T02:27:48.710-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ondemand"/><category scheme="http://www.blogger.com/atom/ns#" term="paas"/><category scheme="http://www.blogger.com/atom/ns#" term="podcasts"/><category scheme="http://www.blogger.com/atom/ns#" term="saas"/><title type='text'>SaaS Podcast Links and Notes - Key Insights into the World of SaaS, Platform as a Service (PAAS), On Demand</title><content type='html'>&lt;p&gt;About two months ago I had 14 hours to spend alone in a car - I was meeting some friends out in Telluride and decided to drive it from my home near Boulder Colorado. Fortunately, I prepared myself. I stocked up on a collection of tech podcasts and made productive use of the time as I rolled through the beautiful mountains. Because I am the architect for &lt;a href=&quot;http://www.ebizq.net/blogs/saasweek/2007/12/bea_announces_project_genesis/&quot;&gt;BEA&#39;s SaaS Platform&lt;/a&gt; (code name Genesis), a fair number of the podcasts were focused on SaaS. This blog entry recaps the key insights from some of those SaaS podcasts. Links are provided to the original audio.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2008/04/saas_podcast_li.html&quot;&gt;originally posted&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt; April 24th, 2008 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;SaaS at BEA&lt;/h3&gt;  &lt;p&gt;For those that know me as an architect on WebLogic Portal, this blog entry may seem odd. What does SaaS have to do with WLP, or even BEA?&lt;/p&gt;  &lt;p&gt;The answer is I took on responsibility for the &lt;a href=&quot;http://www.ebizq.net/blogs/saasweek/2007/12/bea_announces_project_genesis/&quot;&gt;BEA SaaS Platform&lt;/a&gt; architecture a few months back and have been hard at work defining that (and not blogging, if you notice the gap in posts). The idea at BEA is to provide a platform for building SaaS applications that includes features like metering and billing, multi-tenancy, and cloud provisioning.&lt;/p&gt;  &lt;p&gt;If you pay attention to the space, you will notice that 2008 appears to be the year of Platform as a Service (PAAS). Perhaps I will explain what is going on with that in a future blog entry. This post is focused on podcasts. For those of you are interested in learning about SaaS, I have provided links to podcasts that I found very helpful in understanding the business of SaaS.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;The Podcasts&lt;/h3&gt;  &lt;p&gt;Here is the collection of podcasts that I would recommend. &lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;SaaS is Mainstream&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Jeff Kaplan (THINKStrategies), Paul Gillin&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;SaaSAdvantage Series, SaaSCon&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://blogs.computerworld.com/node/3047&quot;&gt;SaaSAdvantage #1&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Compliance/security issues were expected to prevent the adoption of SaaS, but are actually helping. &lt;/li&gt;    &lt;li&gt;SaaS vendors are savvy on compliance, and implement it as well/better than IT can. &lt;/li&gt;    &lt;li&gt;SaaS vendors have been certified on compliance standards such as SAS-70. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further Reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.paypershop.com/articles/journyx006.html&quot;&gt;How the Rise of SaaS Relates to SOX, SAS 70 and Your Legal Contracts&lt;/a&gt; - Amanda Finch &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Living in a SaaS World&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Mitchell Ashley, Jeff Kaplan&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Converging on Microsoft, NetworkWorld&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://www.networkworld.com/podcasts/com/2008/012408com-saas.html&quot;&gt;SaaS Podcast&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;SaaS and IT      &lt;ul&gt;       &lt;li&gt;SaaS growing faster than Gartner thinks, because Gartner just interviews IT. &lt;/li&gt;        &lt;li&gt;A fair amount of SaaS is sponsored directly by the business, outside of IT. &lt;/li&gt;        &lt;li&gt;However, more SaaS solutions are now targeting IT instead of trying to work around IT &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Microsoft SaaS Strategy      &lt;ul&gt;       &lt;li&gt;They are very cautious, so much to lose &lt;/li&gt;        &lt;li&gt;Microsoft Live solution is an experiment &lt;/li&gt;        &lt;li&gt;They can&amp;#8217;t alienate their all important VAR sales channel &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Channel sales and Offering SaaS products      &lt;ul&gt;       &lt;li&gt;Role of the sales channel changes &lt;/li&gt;        &lt;li&gt;Historically have helped to implement complexity &lt;/li&gt;        &lt;li&gt;SaaS removes complexity &lt;/li&gt;        &lt;li&gt;Channel partners must evolve into advisors, not just implementors &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Business buyers of SaaS are trying to figure out the sourcing model for apps      &lt;ul&gt;       &lt;li&gt;Outsourcing is changing from major deals (outsourcing entire IT dept) to focused SaaS deals &lt;/li&gt;        &lt;li&gt;&amp;#8220;Outtasking&amp;#8221; more appropriate name for this &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further Reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.redmonk.com/cote/2007/03/20/saas-it-management/&quot;&gt;SaaS IT Management&lt;/a&gt; - Michael Cote &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;What is Saas (Part II)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Jeff Kaplan&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;WhatIs.com&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://media.techtarget.com/audioCast/WHATIS/Jeff_Kaplan_on_SaaS.mp3&quot;&gt;WhatIs Podcast&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Industry is ready for SaaS      &lt;ul&gt;       &lt;li&gt;Cost conscious, especially now with possible recession in the US &lt;/li&gt;        &lt;li&gt;Outsourcing of IT functions is now a proven model &lt;/li&gt;        &lt;li&gt;Internet bandwidth is in place to support this (to the office, home) &lt;/li&gt;        &lt;li&gt;75% of IT budget locked in maintenance, not a successful model &lt;/li&gt;        &lt;li&gt;TCO is proven to be lower with SaaS &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;How ISVs need to adapt when selling a SaaS solution:      &lt;ul&gt;       &lt;li&gt;Technology &amp;#8211; must adopt web application model for delivering product &lt;/li&gt;        &lt;li&gt;Revenue model &amp;#8211; subscription model requires longer time to receive revenue &lt;/li&gt;        &lt;li&gt;Must continually invest in the relationship &amp;#8211; not a one time sale &lt;/li&gt;        &lt;li&gt;Lower switching costs mean more competitive market &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further Reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.informationweek.com/blog/main/archives/2008/02/suddenly_saas_i.html&quot;&gt;Suddenly SaaS is a CIO&#39;s Best Friend&lt;/a&gt; - John Soat &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://thinkitservices.blogspot.com/2008/04/why-it-now-sees-saas-as-savior.html&quot;&gt;Why IT Now Sees SaaS as a Savior&lt;/a&gt; - Jeff Kaplan &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Lecayla Session&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Conor Halpin, Jeff Kaplan&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Spotlight on SaaS, THINKStrategies&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://www.saas-showplace.com/images/LeCayla_0107final.mp3&quot;&gt;Lecayla Podcast&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Per user pricing is the obvious, but is not a totally effective billing model      &lt;ul&gt;       &lt;li&gt;Easy to turn into a compete-on-price model with competitors          &lt;ul&gt;           &lt;li&gt;If the other guy charges $20 less per user, it&#39;s too easy for the customer to focus on that. &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;All users are not equal, some will use the system every day, some twice a year &lt;/li&gt;        &lt;li&gt;Key is to bill based on added value &amp;#8211; transactional events &lt;/li&gt;        &lt;li&gt;One of Lecayla&amp;#8217;s tenants offers a hybrid model to their customers          &lt;ul&gt;           &lt;li&gt;User based for frequent users &lt;/li&gt;            &lt;li&gt;Transaction based for infrequent users &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Vendors with existing perpetual license products are afraid of cannibalization      &lt;ul&gt;       &lt;li&gt;Can avoid by pricing based on type of usage as well as transactional &lt;/li&gt;        &lt;li&gt;Example: BI vendors make a ton of money off of end of quarter financial roll ups          &lt;ul&gt;           &lt;li&gt;Low transaction volume, but high value transactions and very time sensitive &lt;/li&gt;            &lt;li&gt;Priced out of low end markets that are high transaction volume, low value per transaction &lt;/li&gt;            &lt;li&gt;Can continue on-premise model for former, SaaS for the latter &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Enforce through contract &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further Reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://thinkstrategies.icentera.com/exLink.asp?5116660OP15G19I25355330&quot;&gt;Properly Pricing Software-as-a-Service Within an Established Product Portfolio&lt;/a&gt; - THINKStrategies &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Understanding SaaS Architecture&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Gianpaolo Carraro, Fred Chong (MSFT),          &lt;br /&gt;Paul Gillin&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;SaaSAdvantage Series, SaaSCon&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://blogs.computerworld.com/node/3403&quot;&gt;SaasAdvantage Podcast&lt;/a&gt; #8&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;SaaS barrier: Loss of control      &lt;ul&gt;       &lt;li&gt;Lack of workarounds if the software doesn&amp;#8217;t provide what you need          &lt;ul&gt;           &lt;li&gt;Cannot just query the DB &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Ops and SLAs are in the hands of the SaaS vendor &lt;/li&gt;        &lt;li&gt;Internet connections aren&amp;#8217;t as reliable as LAN &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;SLA issues      &lt;ul&gt;       &lt;li&gt;Outages &lt;/li&gt;        &lt;li&gt;Data security &lt;/li&gt;        &lt;li&gt;Termination terms &amp;#8211; how to extract the data &lt;/li&gt;        &lt;li&gt;Compliance issues &lt;/li&gt;        &lt;li&gt;Response times, backups &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Further Reading:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Microsoft Whitepaper: &lt;a href=&quot;http://msdn2.microsoft.com/en-us/architecture/aa905332.aspx&quot;&gt;SaaS an Enterprise Perspective&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;466&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;152&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;312&quot;&gt;Understanding SaaS Architecture&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;153&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;312&quot;&gt;Colleen Smith (Progress Software), Dana Gardner&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;154&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;312&quot;&gt;Briefings Direct&amp;#160; (Interarbor)&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;155&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;312&quot;&gt;&amp;#160;&lt;a href=&quot;http://media.libsyn.com/media/interarbor/BriefingsDirect_Progress1.mp3&quot;&gt;Progress Podcast&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Business Implications of SAAS Software      &lt;ul&gt;       &lt;li&gt;Cash flow &lt;/li&gt;        &lt;li&gt;Down market opportunities (long tail) &lt;/li&gt;        &lt;li&gt;SMB opportunities &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;ASP vs. SAAS      &lt;ul&gt;       &lt;li&gt;ASP was all about hosting &lt;/li&gt;        &lt;li&gt;ASPs did not manage application &lt;/li&gt;        &lt;li&gt;No multi-tenancy with ASPs &lt;/li&gt;        &lt;li&gt;ASPs had no application expertise &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Why time is right for SaaS      &lt;ul&gt;       &lt;li&gt;Cost of computing is low &amp;#8211; web browser is the distribution &lt;/li&gt;        &lt;li&gt;Long tail is reachable &amp;#8211; new Geos, adjacent markets, low end &lt;/li&gt;        &lt;li&gt;Computing clouds &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Business Service Providers      &lt;ul&gt;       &lt;li&gt;Combination of SOA and SAAS &lt;/li&gt;        &lt;li&gt;BSP provides an end to end service &lt;/li&gt;        &lt;li&gt;Vertically focused &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table cellspacing=&quot;0&quot; cellpadding=&quot;2&quot; width=&quot;413&quot; border=&quot;1&quot;&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Title&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Software as a Service and IBM&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Participants&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;Dave Mitchell (IBM), Scott Laningham&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Series&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;IBM developerWorks&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign=&quot;top&quot; width=&quot;150&quot;&gt;&lt;strong&gt;Podcast Link&lt;/strong&gt;&lt;/td&gt;        &lt;td valign=&quot;top&quot; width=&quot;261&quot;&gt;&amp;#160;&lt;a href=&quot;http://www.ibm.com/developerworks/podcast/dwi/cm-int080707.html&quot;&gt;Mitchell Podcast&lt;/a&gt;&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;&lt;strong&gt;Podcast Notes:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;What is SaaS?      &lt;ul&gt;       &lt;li&gt;SAAS is all about transfer of risk to the ISV &lt;/li&gt;        &lt;li&gt;SAAS implies a subscription model/pay as you go &lt;/li&gt;        &lt;li&gt;SAAS is served remotely, with little/no option to bring back in house &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;What is ASP?      &lt;ul&gt;       &lt;li&gt;Software is purchased up front by the customer, not a subscription &lt;/li&gt;        &lt;li&gt;Hosted remotely, but can be brought back in house &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Ajax/RIA is enabling more applications to become SaaS      &lt;ul&gt;       &lt;li&gt;SaaS requires a web application &lt;/li&gt;        &lt;li&gt;RIA/Ajax allows more applications to become viable as web applications &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f5012dbd-9d3d-4cce-b525-213593065a80&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/saas&quot; rel=&quot;tag&quot;&gt;saas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/ondemand&quot; rel=&quot;tag&quot;&gt;ondemand&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/paas&quot; rel=&quot;tag&quot;&gt;paas&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/billing&quot; rel=&quot;tag&quot;&gt;billing&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/metering&quot; rel=&quot;tag&quot;&gt;metering&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/IT&quot; rel=&quot;tag&quot;&gt;IT&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/podcast&quot; rel=&quot;tag&quot;&gt;podcast&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/3710294504731419104/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/3710294504731419104' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3710294504731419104'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3710294504731419104'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/04/saas-podcast-links-and-notes-key.html' title='SaaS Podcast Links and Notes - Key Insights into the World of SaaS, Platform as a Service (PAAS), On Demand'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-4945077215499139150</id><published>2008-04-23T02:19:00.000-06:00</published><updated>2008-05-22T02:24:39.188-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="googlegadgets"/><category scheme="http://www.blogger.com/atom/ns#" term="jsr168"/><category scheme="http://www.blogger.com/atom/ns#" term="web"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogicportal"/><category scheme="http://www.blogger.com/atom/ns#" term="wsrp"/><title type='text'>WebLogic Portal: Exposing Portlets (JSR 168, WSRP, JSF, Struts, etc) as Enterprise Google Gadgets</title><content type='html'>&lt;p&gt;Wondering how to expose Google Gadgets from WebLogic Portal? As promised, this is the second entry in a two part series talking about Google Gadgets. The &lt;a href=&quot;http://peterlaird.blogspot.com/2008/04/introduction-to-google-gadgets.html&quot;&gt;first entry&lt;/a&gt; explained how to build a simple gadget. Now we will explore how to surface a Java portlet as a gadget using WebLogic Portal. Exposing a Google Gadget from any WLP portlet type (JSR 168, WSRP, JSP, Pageflow, JSF, Web Clip, etc) requires no coding - just a simple XML configuration file. This blog entry will show you exactly how to do it.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2008/04/weblogic_portal_4.html&quot;&gt;originally posted&lt;/a&gt;&lt;/strong&gt;&lt;strong&gt; April 23rd, 2008 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;History of the Integration&lt;/h3&gt;  &lt;p&gt;As I mentioned in the first posting we have been doing demos of WLP portlets as Google Gadgets for a long time - since the second half of 2006 with our WLP 9.2 release. This was all possible because of a feature introduced in that release called &lt;a href=&quot;http://edocs.bea.com/wlp/docs102/clientdev/publishing.html&quot;&gt;Portlet Publishing&lt;/a&gt;. Portlet Publishing allows any WLP hosted portlet to be exposed as a URL. If you understand the basics of Google Gadgets, you can hopefully see how this feature can be used to turn any portlet into a gadget simply by referencing that portlet&#39;s URL in the gadget descriptor. &lt;/p&gt;  &lt;p&gt;Early demos used a servlet to dynamically generate the appropriate Google Gadget descriptor on the fly. We even experimented with clever hacks to enable Single Sign On between iGoogle and WLP. We worked with the Google Gadget engineering team to explore ideas in this area.&lt;/p&gt;  &lt;p&gt;But in the end we decided not to productize the integration. This is due in large part because authoring the Google Gadget descriptor for a portlet is quite easy, and therefore an official feature wouldn&#39;t add tremendous value. Additionally, we were concerned about the supportability of such a feature, for example what would happen if the descriptor format changed. Also, the explorations around authentication were not enterprise quality approaches, and so not something we wanted to promote.&lt;/p&gt;  &lt;p&gt;Therefore, at this time WLP does not offer a &amp;quot;Generate Google Gadget...&amp;quot; option in the IDE, or provide any other specific feature. However, as this blog entry will show, using the FULLY supported feature of Portlet Publishing, you can expose your portlets as gadgets with NO CODING required.&lt;/p&gt;  &lt;h3&gt;Portlet Publishing&lt;/h3&gt;  &lt;p&gt;Before we can talk about generating a Google Gadget, we need to take a look at &lt;a href=&quot;http://edocs.bea.com/wlp/docs102/clientdev/publishing.html&quot;&gt;Portlet Publishing&lt;/a&gt;. Once again, this feature exposes any WLP hosted portlet as a URL - an HTTP addressable end-point. The power of this feature is that any thing that can consume an HTTP end-point (e.g., an IFrame within any webpage) can be host to a WLP portlet. It is important to note that Portlet Publishing works for all WLP portlet types, like JSR 168, WSRP, JSF, Struts, Web Clipper, etc.&lt;/p&gt;  &lt;p&gt;This means that with a single deployment of your portlet on WLP, it can be used over the following channels &lt;em&gt;simultaneously&lt;/em&gt;:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Directly embedded in a standard WLP portal/desktop &lt;/li&gt;    &lt;li&gt;Directly embedded in any JSP hosted on the WLP server (see the portalFacet JSP tag) &lt;/li&gt;    &lt;li&gt;Federated to external WSRP consumers (WSRP is a web services standard for consuming remote portlets) &lt;/li&gt;    &lt;li&gt;Federated to any consumer of HTTP, notably browsers via IFrames and XmlHttpRequests (which means &lt;strong&gt;ANY&lt;/strong&gt; website on the planet) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/peterjlaird/SDUtw0D36TI/AAAAAAAAACs/OKXnrtcoKpA/s1600-h/image5.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;258&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SDUtxUD36UI/AAAAAAAAAC0/BRk5gYQTy-0/image_thumb2.png?imgmax=800&quot; width=&quot;500&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;In WLP 9.2 and WLP 10, Portlet Publishing was limited to the library instances of portlets. This meant user preferences were not supported through the HTTP channel. However, with WLP 10.2, Portlet Publishing has been augmented to allow for Desktop Instances (and thus user preferences) to be exposed over the HTTP channel. Consult the documentation for more details on this point.&lt;/p&gt;  &lt;p&gt;To consume portlets published over the HTTP channel in any web page, you can inject the portlet into the HTML &lt;a href=&quot;http://edocs.bea.com/wlp/docs102/clientdev/publishing.html#wp1045824&quot;&gt;using one of these techniques&lt;/a&gt;:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;An inline frame (iframe) that points to the URL to the portlet &lt;/li&gt;    &lt;li&gt;DOM Injection - using simple JavaScript that WLP provides, you can dynamically inject the portlet into the page using Ajax (XmlHttpRequest) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Once again, consult the documentation for more details on these points.&lt;/p&gt;  &lt;h3&gt;Exposing your WLP Portlet as a Google Gadget&lt;/h3&gt;  &lt;p&gt;You have hopefully read &lt;a href=&quot;http://peterlaird.blogspot.com/2008/04/introduction-to-google-gadgets.html&quot;&gt;my previous blog entry&lt;/a&gt; on how to build a simple Google Gadget. This section builds on that knowledge. Essentially, we will author a Google Gadget descriptor that points at a WLP portlet exposed over HTTP (via Portlet Publishing).&lt;/p&gt;  &lt;p&gt;To make this entry as simple as possible, we will use the library definition form of the Portlet Publishing URL. For example, assume you have a portlet that is exposed at this URL:&lt;/p&gt;  &lt;p align=&quot;left&quot;&gt;&lt;a href=&quot;http://wlp.bea.com/dvt/portlets/wlp/stackWLP.portlet&quot;&gt;http://wlp.bea.com/dvt/portlets/wlp/stackWLP.portlet&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;If you are unfamiliar with WLP, the .portlet file is a file based XML document that describes a portlet&#39;s meta data. In this case, it has been deployed in the &lt;em&gt;portlets/wlp&lt;/em&gt; directory of the &lt;em&gt;dvt&lt;/em&gt; webapp. When directly addressed, Portlet Publishing kicks in and serves up the portlet implementation associated with this .portlet file (this is the library definition approach to publishing).&lt;/p&gt;  &lt;p&gt;You can now easily author a gadget descriptor that targets that URL, and thus exposes that portlet as a Google Gadget:&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;#160; &amp;lt;Module&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;ModulePrefs &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;title=&amp;quot;WLP Portlet Gadget&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;height=&amp;quot;120&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;author=&amp;quot;Peter Laird&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;#160; /&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;#160; &amp;lt;Content href=&amp;quot;&lt;a href=&quot;http://wlp.bea.com/dvt/portlets/wlp/stackWLP.portlet&quot;&gt;&lt;strong&gt;http://wlp.bea.com/dvt/portlets/wlp/stackWLP.portlet&lt;/strong&gt;&lt;/a&gt;&amp;quot; &lt;/font&gt;&lt;font face=&quot;Times New Roman&quot;&gt;type=&amp;quot;url&amp;quot; /&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;/Module&amp;gt;&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;Copy this gadget descriptor to a public web server, and then add this gadget to your iGoogle portal as I showed in my previous post. And Presto!&lt;/p&gt;  &lt;h3&gt;The Fine Print&lt;/h3&gt;  &lt;p&gt;Some details to think about:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Titlebars&lt;/strong&gt;: WLP will by default render a titlebar to the portlet, and so will iGoogle. To avoid nested titlebars, use the &amp;quot;light&amp;quot; decoration option with Portlet Publishing desktop portlet instances.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Authentication:&lt;/strong&gt; if you have a cookie based web SSO solution in place, your users will automatically be logged into the WLP server even when the user navigates to iGoogle (by virtue of how iframes work). In other circumstances, you will need to provide a login screen within the portlet.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SDUtxUD36VI/AAAAAAAAAC8/Vk4CmAe7gE8/s1600-h/image4.png&quot;&gt;&lt;img style=&quot;border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px&quot; height=&quot;24&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/peterjlaird/SDUtxkD36WI/AAAAAAAAADE/ciKf-5Ddxt0/image_thumb1.png?imgmax=800&quot; width=&quot;71&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; Add to Google button&lt;/strong&gt;: it is often nice to have an &amp;quot;Add to Google&amp;quot; button on the portlet. This is easily done by just copying the URL pattern seen on other sites that provide such a button. You will essentially need to embed the URL to your gadget descriptor into the button link.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Preferences: &lt;/strong&gt;you will need to decide what to do with preferences. WLP manages preferences on the server side. If your portlet is exposed over multiple channels, stick with that. However, if the portlet will ONLY be consumed as a Google Gadget, you may consider using the Google provided preference service.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;JavaScript Libraries:&lt;/strong&gt; Google provides a number of JavaScript libraries for Gadget developers. When developing a portlet that will only be exposed as a gadget, feel free to use these. However, if the portlet will be exposed over multiple channels (like on a WLP desktop), be aware that none of the Google libraries have been certified within WLP.&lt;/p&gt;  &lt;h3&gt;References&lt;/h3&gt;  &lt;ul&gt;   &lt;li&gt;&lt;strong&gt;&lt;a href=&quot;http://edocs.bea.com/wlp/docs102/clientdev/publishing.html&quot;&gt;WLP Portlet Publishing&lt;/a&gt; &lt;/strong&gt;documentation - an amazingly powerful feature, allows WLP portlets to surface just about anywhere. Available since WLP 9.2. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://code.google.com/apis/gadgets/docs/dev_guide.html&quot;&gt;&lt;strong&gt;Google Gadget Developer&lt;/strong&gt;&lt;/a&gt; documentation - excellent documentation covering gadgets in much greater depth than I have done here &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://googleenterprise.blogspot.com/2007/06/enterprise-google-gadgets.html&quot;&gt;&lt;strong&gt;Google Gadget Ventures&lt;/strong&gt;&lt;/a&gt; - get funding to develop your enterprise gadget &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.limitnone.com/files/Gadgets.pdf&quot;&gt;&lt;strong&gt;Enterprise Gadget Handbook&lt;/strong&gt;&lt;/a&gt; - Jonathan Sapir of LimitNone produced an extensive document discussing the merits of enterprise gadgets &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://wlp.bea.com&quot;&gt;&lt;strong&gt;WLP Demo Server&lt;/strong&gt;&lt;/a&gt; - running WLP server &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div class=&quot;wlWriterSmartContent&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:4ea3e50b-4c00-4906-ad8f-69f6d38f28e2&quot; style=&quot;padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/gadgets&quot; rel=&quot;tag&quot;&gt;gadgets&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/google&quot; rel=&quot;tag&quot;&gt;google&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/weblogic&quot; rel=&quot;tag&quot;&gt;weblogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/portal&quot; rel=&quot;tag&quot;&gt;portal&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/portlets&quot; rel=&quot;tag&quot;&gt;portlets&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/168&quot; rel=&quot;tag&quot;&gt;168&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/wsrp&quot; rel=&quot;tag&quot;&gt;wsrp&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/JSF&quot; rel=&quot;tag&quot;&gt;JSF&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Java&quot; rel=&quot;tag&quot;&gt;Java&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/enterprise2.0&quot; rel=&quot;tag&quot;&gt;enterprise2.0&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/4945077215499139150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/4945077215499139150' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4945077215499139150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4945077215499139150'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/04/weblogic-portal-exposing-portlets-jsr.html' title='WebLogic Portal: Exposing Portlets (JSR 168, WSRP, JSF, Struts, etc) as Enterprise Google Gadgets'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/peterjlaird/SDUtxUD36UI/AAAAAAAAAC0/BRk5gYQTy-0/s72-c/image_thumb2.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-9173173447343698534</id><published>2008-04-22T02:17:00.000-06:00</published><updated>2009-08-11T23:16:53.170-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="googlegadgets"/><category scheme="http://www.blogger.com/atom/ns#" term="http"/><category scheme="http://www.blogger.com/atom/ns#" term="mashup"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogicportal"/><title type='text'>Introduction to Google Gadgets</title><content type='html'>&lt;p&gt;We have been showing how to expose WebLogic Portal portlets as Google Gadgets for almost two years now. Embarrassingly enough, we haven&#39;t written any blogs or articles on HOW to do it. We have answered email questions about it, but nothing public. This two part blog series will correct that omission. You will hopefully see that it is really quite simple to do. This first entry will talk about building a generic Google Gadget (without WLP), and then the following entry will show how to convert any WLP portlet into a gadget.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; April 22nd, 2008 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;What are Google Gadgets, and iGoogle, please?&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;Google Gadgets&lt;/strong&gt; are web based &lt;strong&gt;widgets&lt;/strong&gt;/&lt;strong&gt;portlets&lt;/strong&gt;/[&lt;em&gt;insert your favorite web component term here&lt;/em&gt;] that are based on technology provided by Google specifically to make federating gadgets easy. To see gadgets in action, the best place to try them out is on the &lt;a href=&quot;http://www.google.com/ig&quot;&gt;iGoogle&lt;/a&gt; portal.&lt;/p&gt;  &lt;p&gt;Gadgets can really do anything. This example shows an eBay integrated gadget that allows a user to interact with their eBay account within the gadget:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh4.ggpht.com/peterjlaird/SDUsM0D36NI/AAAAAAAAAB8/4Epc7MW8vAA/s1600-h/image3.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh6.ggpht.com/peterjlaird/SDUsNUD36OI/AAAAAAAAACE/DkIQ_YW_Q24/image_thumb1.png?imgmax=800&quot; width=&quot;300&quot; height=&quot;205&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The technology provided by Google can be lumped into these buckets&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;An &lt;a href=&quot;http://code.google.com/apis/gadgets/docs/basic.html#Anatomy&quot;&gt;xml file format&lt;/a&gt; for describing a gadget (called the descriptor) &lt;/li&gt;    &lt;li&gt;A gadget preferences model - for storing user specific preferences for a gadget external to the gadget implementation &lt;/li&gt;    &lt;li&gt;Various JavaScript libraries for doing useful things &lt;/li&gt;    &lt;li&gt;An &lt;a href=&quot;http://www.google.com/ig/directory?root=/ig&quot;&gt;online directory&lt;/a&gt; of pre-built gadgets &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.google.com/ig&quot;&gt;iGoogle&lt;/a&gt; - the reference platform for users to use gadgets &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.google.com/ig/directory?synd=open&quot;&gt;Google Gadgets for your Webpage&lt;/a&gt; - a JavaScript mechanism for including a gadget on ANY web page &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Several things are notably &lt;strong&gt;missing&lt;/strong&gt; from what Google provides with regard to gadgets&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Gadget hosting - aside from a few official Google gadgets, all the gadgets are hosted independently by their creators &lt;/li&gt;    &lt;li&gt;Gadget validation - treat every gadget with suspicion; even though it is flying the colors of a well known brand it may be hosted by a guy in a basement. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://code.google.com/apis/gadgets/docs/fundamentals.html#Cookies&quot;&gt;Authentication&lt;/a&gt; - there is no provided mechanism for gadgets to inherit authentication from the consuming page, notably no single sign on with iGoogle &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Finally, note that there is another gadget technology offered by Google called Desktop Gadgets. There gadgets are targeted toward Google Desktop, and aren&#39;t related to the gadgets we are discussing.&lt;/p&gt;  &lt;h3&gt;The Google Gadget Phenomenon - why should you even care?&lt;/h3&gt;  &lt;p&gt;Google Gadgets and iGoogle were the fastest growing product offered by Google in 2006 and had strong growth again in 2007 &lt;/p&gt;  &lt;p&gt;&lt;em&gt;“The star performer for [2007] was Google’s personalized start page service iGoogle which increased traffic in the 12 months to November by &lt;strong&gt;267.64%&lt;/strong&gt;.”&lt;/em&gt; (&lt;a href=&quot;http://www.techcrunch.com/2007/12/22/2007-in-numbers-igoogle-googles-homegrown-star-performer-this-year/&quot;&gt;TechCrunch&lt;/a&gt;) &lt;/p&gt;  &lt;p&gt;Useful Gadgets get heavily used: &lt;/p&gt;  &lt;p&gt;&lt;em&gt;“The Google gadget ecosystem received &lt;strong&gt;960 million pageviews&lt;/strong&gt; last week”&lt;/em&gt; (&lt;a href=&quot;http://www.niallkennedy.com/blog/2007/04/google-gadgets-march-2007.html&quot;&gt;Niall &lt;/a&gt;&lt;a href=&quot;http://www.niallkennedy.com/blog/2007/04/google-gadgets-march-2007.html&quot;&gt;Kennedy&lt;/a&gt;) &lt;/p&gt;  &lt;p&gt;These metrics are largely based on use of gadgets and iGoogle in the consumer space. But consider how your enterprise can benefit from deploying Google Gadgets: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;A new channel to your customers within iGoogle &lt;/li&gt;    &lt;li&gt;Offered as a widget to your customers to place on their own web pages &lt;/li&gt;    &lt;li&gt;A new channel to your partners/employees within iGoogle &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Building a Simple Google Gadget - as easy as falling off a bike?&lt;/h3&gt;  &lt;p&gt;This section discusses the express route to building a gadget. Steps to build:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Create a gadget implementation, which is nothing more than an HTML document served from a public web server. &lt;/li&gt;    &lt;li&gt;Create a gadget XML descriptor, that refers to the gadget implementation. &lt;/li&gt;    &lt;li&gt;Add the gadget to iGoogle. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;&lt;strong&gt;Step 1: Create the Gadget Implementation&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Save this HTML into a file on a public web server.&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;html&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;body&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;Hello World.&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;/body&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;/html&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 2: Create the Gadget Descriptor&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Save this XML into a file on a public web server (I have also hosted one publicly here for now: &lt;a title=&quot;http://wlp.bea.com/blogs/simplestGadget.xml&quot; href=&quot;http://wlp.bea.com/blogs/simplestGadget.xml&quot;&gt;http://wlp.bea.com/blogs/simplestGadget.xml&lt;/a&gt;). You will need to update the href included in the body to the URL to your HTML document created by step 1.&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;Module&amp;gt;&lt;/font&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;ModulePrefs &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;title=&amp;quot;Simplest Gadget&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;directory_title=&amp;quot;Simplest Gadget&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;title_url=&amp;quot;http://wlp.bea.com&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;description=&amp;quot;Very very simple gadget.&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;height=&amp;quot;120&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;author=&amp;quot;Peter Laird&amp;quot; &lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;/&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;Content href=&amp;quot;&lt;b&gt;http://wlp.bea.com/blogs/simplest.html&lt;/b&gt;&amp;quot; &lt;/font&gt;&lt;font face=&quot;Times New Roman&quot;&gt;type=&amp;quot;url&amp;quot; /&amp;gt; &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face=&quot;Times New Roman&quot;&gt;&amp;lt;/Module&amp;gt;&lt;/font&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 3: Add the gadget to iGoogle&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Login to &lt;a href=&quot;http://www.google.com/ig&quot;&gt;iGoogle&lt;/a&gt;, and then click the &lt;em&gt;Add Stuff&lt;/em&gt; link, and then &lt;em&gt;Add Feed or Gadget &lt;/em&gt;link. Provide the URL to the XML document created in step 2.&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh3.ggpht.com/peterjlaird/SDUsNkD36PI/AAAAAAAAACM/SGtG3IGKyHk/s1600-h/image8.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SDUsN0D36QI/AAAAAAAAACU/xWCUBtUrEHc/image_thumb4.png?imgmax=800&quot; width=&quot;224&quot; height=&quot;263&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 4: Enjoy!&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SDUsOUD36RI/AAAAAAAAACc/TdoQ74wLqwo/s1600-h/image10.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh4.ggpht.com/peterjlaird/SDUsO0D36SI/AAAAAAAAACk/OSX27ywQf1k/image_thumb5.png?imgmax=800&quot; width=&quot;504&quot; height=&quot;226&quot; /&gt;&lt;/a&gt;&amp;#160; &lt;/p&gt;  &lt;h3&gt;Next Steps&lt;/h3&gt;  &lt;p&gt;In the next blog post, I will show how to expose any WLP portlet as a Google Gadget. Stay tuned!&lt;/p&gt;  &lt;h3&gt;References&lt;/h3&gt;  &lt;p&gt;I only covered a small part of the Google Gadget technology. Their developer documentation is excellent, so please refer to it for more details:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://code.google.com/apis/gadgets/docs/dev_guide.html&quot;&gt;Google Gadget Developer Documentation&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://wlp.bea.com/blogs/laird_googlegadgets.ppt&quot;&gt;Building Dynamic Google Gadgets in Java&lt;/a&gt; - a slide deck I have used to present Google Gadgets to Java developers &lt;/li&gt; &lt;/ul&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:ec60f22c-9deb-44f9-b895-0effb44886a3&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/weblogicportal&quot; rel=&quot;tag&quot;&gt;weblogicportal&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/googlegadgets&quot; rel=&quot;tag&quot;&gt;googlegadgets&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/9173173447343698534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/9173173447343698534' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/9173173447343698534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/9173173447343698534'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2008/04/introduction-to-google-gadgets.html' title='Introduction to Google Gadgets'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh6.ggpht.com/peterjlaird/SDUsNUD36OI/AAAAAAAAACE/DkIQ_YW_Q24/s72-c/image_thumb1.png?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-1080462496647128681</id><published>2007-12-17T01:13:00.000-07:00</published><updated>2009-08-11T23:07:14.841-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AquaLogic"/><category scheme="http://www.blogger.com/atom/ns#" term="BPM"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogic"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogicportal"/><title type='text'>Deploying the ALBPM Workspace into WebLogic Portal</title><content type='html'>&lt;p&gt;Customers that purchase both WebLogic Portal (WLP) and AquaLogic Business Process Management (ALBPM) will certainly want them to work together. Specifically, customers want to be able to deploy the ALBPM Workspace user interface as portlets on a WLP portal. This blog explains how to do that, and provides a script to help automate the most tedious steps. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; December 17th, 2007 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;h3&gt;Use Case&lt;/h3&gt;  &lt;p&gt;The ALBPM Workspace contains a total of 4 portlets. By default, they deploy in their own pre-built web application. But if you have both ALBPM and WLP in your environment, it would be useful to be able to deploy the portlets into WLP. &lt;/p&gt;  &lt;p&gt;The four portlets are: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;Actions Menu:&lt;/b&gt; lists the operations the user can perform, like create a new process &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Views Menu:&lt;/b&gt; lists the various views available, like process inbox and bookmarks &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Worklist:&lt;/b&gt; displays the list as directed by the Views menu, like the list of active processes &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Instance Detail:&lt;/b&gt; shows the details of a specific process &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;A view of the completed Workspace on WLP: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitiCg47AsJtLLmOrJ8RNgAopkWSss1VPNLrviIOQ0y53BCDzlyYLOUeQCwZPW6jUTpKPuouSTcIwpUdKJeWvoNbM_cYcsbhbCYcFZM02Y3rAY2NZoTJz6HkbvFcZ3avYO-430nrGe1MtKH/s1600-h/albpmOnWLP%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;albpmOnWLP&quot; border=&quot;0&quot; alt=&quot;albpmOnWLP&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX5F_GPGb7IRBAgXjnXqztNg_QkOS4bViqMm-OhqjcLoh8CCHM9o2Td75gFuxq1VlEOTeq8IRaXFkq0zNW6UpUopQEN2tXIRx8El7xqpvsO9c3VOSxT3otWBzffqiXRgeisFzUutyeLzWr/?imgmax=800&quot; width=&quot;500&quot; height=&quot;385&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h3&gt;Integration Implementation&lt;/h3&gt;  &lt;p&gt;Behind the scenes, there are some challenges to this project. First, when the user authenticates with WLP, they shouldn&#39;t have to also sign into ALBPM. Fortunately, ALBPM implemented an SSO mechanism in ALBPM 6.0. This can be enabled via a couple of checkboxes during the configuration of ALBPM (more on this later). &lt;/p&gt;  &lt;p&gt;Second, the portlets and all supporting file based artifacts need to be brought into the WLP Web Project. While most of this is straightforward, it is an error prone operation. Also, merging in the necessary web.xml entries for the ALBPM workspace into the stock WLP web.xml is tricky. A simple error can create headaches. This part screams for an automated solution. &lt;/p&gt;  &lt;p&gt;To make this integration as easy as possible, I have created a distribution that contains movies and an Ant script. The movies will to help guide you through the process. The Ant script removes a lot of tedious steps from the process. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Note:&lt;/b&gt; while this integration guide and script are deemed reliable, they are not officially supported. The official documentation is the supported source of information on this integration. &lt;/p&gt;  &lt;h3&gt;ALBPM 6.0 Workspace for WLP 10&lt;/h3&gt;  &lt;p&gt;There is &lt;a href=&quot;http://edocs.bea.com/albsi/docs60/config_wls/index.html&quot;&gt;official documentation&lt;/a&gt; to explain how to integrate the products. But sometimes seeing the integration is the best teacher. Therefore, the distribution that I have created includes a series of movies. Additionally, it contains an overview presentation on the process of integrating the products. Finally, the actual deployment of the ALBPM Workspace onto WLP is scripted via an Ant script that I provide. &lt;/p&gt;  &lt;p&gt;I have hosted the files of the distribution in this location: &lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;a href=&quot;http://wlp.bea.com/albpm/60mp1/albpm60mp1_for_wlp10.htm&quot;&gt;ALBPM 6.0 Workspace for WLP 10 Download Center&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Note: to view the Flash FLV movies you will need an FLV player, such as the free &lt;a href=&quot;http://www.download.com/3000-2139_4-10769546.html&quot;&gt;FLVPlayer&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;ALBPM_for_WLP_slides.zip and ALBPM_for_WLP_slides_movie.zip&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Start with these. One zip contains the Powerpoint presentation, the other contains a movie of me talking through the slides. This deck explains what the integration is all about, and the high level steps needed to perform the integration. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;ALBPM_for_WLP_movie1.zip, ALBPM_for_WLP_movie2.zip, ALBPM_for_WLP_movie3.zip&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;These zip files contain detailed walk throughs of various parts of the integration. View these movies in order, and use the Pause button so you can follow along while you perform the integration on your machine. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;ALBPM_for_WLP_script.zip&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;This zip contains the Ant script and associated files that will automate the ALBPM Workspace deployment into WLP. This script does a ton of file copying and also includes some new files (.portlets) to make this a smooth process. While you can do all of this by hand, the script gets the job done quickly and correctly. &lt;/p&gt;  &lt;h3&gt;Acknowledgements&lt;/h3&gt;  &lt;p&gt;I didn&#39;t complete this project by myself. The ALBPM Development and QA teams (Eduardo, Nico, Mariana, Alex, Mariano, and others) did a lot of work on sorting out the process to get the products integrated. Additionally, some folks from BEA Professional Services (Paddy in particular) helped get this going. THANKS! &lt;/p&gt;  &lt;h5&gt;Additional Resources&lt;/h5&gt;  &lt;p&gt;Need more information? Here are some good links to get you started: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://commerce.bea.com/products/weblogicplatform/weblogic_prod_fam.jsp&quot;&gt;WLP Download&lt;/a&gt;&lt;/b&gt; - download WebLogic Portal (minimum version 10.0) &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://commerce.bea.com/products/aqualogic/bpm/albpm.jsp&quot;&gt;ALBPM Download&lt;/a&gt;&lt;/b&gt; - download AquaLogic BPM (minimum version 6.0 MP1) &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://edocs.bea.com/albsi/docs60/config_wls/index.html&quot;&gt;ALBPM for WLP Official Documentation&lt;/a&gt;&lt;/b&gt; - official docs for integrating the products &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Alex Toussaint&#39;s Blog&lt;/b&gt; - ALBPM product manager&#39;s blog &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Jesper Joergensen&#39;s Blog&lt;/b&gt; - ALBPM product marketing blog &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Josh Lannin&#39;s Blog&lt;/b&gt; - WLP products manager&#39;s blog, check out the 5 part WLP futures series &lt;/li&gt; &lt;/ul&gt; &lt;a href=&quot;http://technorati.com/faves?sub=addfavbtn&amp;amp;add=http://dev2dev.bea.com/blog/plaird&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Add to Technorati Favorites&quot; src=&quot;http://static.technorati.com/pix/fave/tech-fav-1.png&quot; /&gt;&lt;/a&gt;   &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:817b5d9c-f77d-48fa-a94c-dac2659461bd&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/weblogicportal&quot; rel=&quot;tag&quot;&gt;weblogicportal&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/albpm&quot; rel=&quot;tag&quot;&gt;albpm&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;a name=&quot;comments&quot;&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h6&gt;Comments from the original blog:&lt;/h6&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;Hi Praveen - &lt;/p&gt;      &lt;p&gt;Yes, something with the Apache config is doing strange things with that. We just did a lot of Apache work to speed up the WLP demos, and I am nervous to touch it to sort out the issue. I have found that Firefox, not IE, should be able to download the files fine. Can you try that? &lt;/p&gt;      &lt;p&gt;PJL&lt;/p&gt;      &lt;p&gt;Posted by: plaird on May 5, 2008 at 11:16 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2893&quot;&gt;&lt;/a&gt;      &lt;p&gt;Peter, thanks a lot. It seems like a very useful information but I am not able to download using the hyperlinks. Can you pls help me in getting these? my emailID: awasthypr@saic.com Thanks again!! &lt;/p&gt;      &lt;p&gt;Posted by: praveenawasthy on May 5, 2008 at 2:15 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2502&quot;&gt;&lt;/a&gt;      &lt;p&gt;&lt;b&gt;ALBPM 6.0 MP2 Update&lt;/b&gt;&lt;/p&gt;      &lt;p&gt;I produced the script and movies against ALBPM 6.0 MP1. However, I tested against 6.0 MP2 with success (with one caveat). &lt;/p&gt;      &lt;p&gt;The only issue is that there are some JSPs in the ALBPM MP2 workspace that cause the Workshop IDE (WLW) to report build failures (about 45). You will need to disable JSP validation for the WLP web project to get around this. &lt;/p&gt;      &lt;p&gt;&lt;i&gt;Project Properties-&amp;gt;Validation-&amp;gt;uncheck the JSP validator&lt;/i&gt;&lt;/p&gt;      &lt;p&gt;I have updated the presentation to include this GOTCHA, and will also work with the ALBPM team to discover the root cause. &lt;/p&gt;      &lt;p&gt;Thank you Neville for reporting the issue. &lt;/p&gt;      &lt;p&gt;PJL&lt;/p&gt;      &lt;p&gt;Posted by: plaird on January 8, 2008 at 9:31 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2492&quot;&gt;&lt;/a&gt;      &lt;p&gt;Kunai - &lt;/p&gt;      &lt;p&gt;Sorry about that, I was using an 3rd party file share to host the files. I have rehosted the files on our WLP demo server at &lt;a href=&quot;http://wlp.bea.com/albpm/60mp1/albpm60mp1_for_wlp10.htm&quot;&gt;wlp.bea.com&lt;/a&gt;. I updated the link in the blog too. &lt;/p&gt;      &lt;p&gt;Thanks for the note!&lt;/p&gt;      &lt;p&gt;Posted by: plaird on January 3, 2008 at 11:35 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name=&quot;2491&quot;&gt;&lt;/a&gt;      &lt;p&gt;Peter, I&#39;m about to get started on deploying ALBPM Workspace on WLP and I would&#39;ve loved to have downloaded your slides, movies on the subject. However, it appears that the hyperlinks for these downloads have been disabled. Is there any other way we can exchange this information? Please feel free to send an email at &amp;quot;kunal.r.shah@citi.com&amp;quot; Regards, Kunal R Shah &lt;/p&gt;      &lt;p&gt;Posted by: kunalrshah on January 3, 2008 at 11:07 AM&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/1080462496647128681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/1080462496647128681' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1080462496647128681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1080462496647128681'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/12/deploying-albpm-workspace-into-weblogic.html' title='Deploying the ALBPM Workspace into WebLogic Portal'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhX5F_GPGb7IRBAgXjnXqztNg_QkOS4bViqMm-OhqjcLoh8CCHM9o2Td75gFuxq1VlEOTeq8IRaXFkq0zNW6UpUopQEN2tXIRx8El7xqpvsO9c3VOSxT3otWBzffqiXRgeisFzUutyeLzWr/s72-c?imgmax=800" height="72" width="72"/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-4726294690953432548</id><published>2007-10-18T02:10:00.000-06:00</published><updated>2009-08-11T23:05:16.638-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="commerce"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogic"/><category scheme="http://www.blogger.com/atom/ns#" term="workshop"/><title type='text'>AquaLogic Commerce Services 5.1 for BEA Workshop 9.2</title><content type='html'>&lt;p&gt;BEA released AquaLogic Commerce Services this year to help BEA customers with their commerce initatives. ALCS is a product that offers a storefront and comprehensive merchandising capabilities out of the box. If you need to build a commerce solution for your business, ALCS makes it quick and easy. This blog entry describes a supplemental distribution that allows BEA Workshop developers to get up and running easily on ALCS. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; October 18th, 2007 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: as of 2009, the ALCS product has been discontinued.&lt;/strong&gt;&lt;/p&gt;  &lt;h5&gt;AquaLogic Commerce Services&lt;/h5&gt;  &lt;p&gt;This blog entry will not focus on the ALCS product itself, but if you have not seen it here is a quick overview. It is a full solution for developing commerce projects for the enterprise. ALCS provides a fully customizable commerce solution that offers many features for both developers and merchandisers. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;Features at a Glance&lt;/b&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Complete storefront delivered in the box - a powerful web shopping experience &lt;/li&gt;    &lt;li&gt;Merchant Tools - catalog management, promotion management, analytics &lt;/li&gt;    &lt;li&gt;CSR Tools - order management, fulfillment &lt;/li&gt;    &lt;li&gt;SEO - world class SEO capabilities to drive customers to your door step &lt;/li&gt;    &lt;li&gt;Ajax one page checkout - fast track your customers through the checkout process &lt;/li&gt;    &lt;li&gt;Developer friendly - productive development experience based on Velocity and Spring MVC technologies &lt;/li&gt;    &lt;li&gt;Extensibility - highly customizable and extensible architecture offers complete control over the solution &lt;/li&gt;    &lt;li&gt;SOA foundation - features exposed via web services, and integrated into the BEA SOA story &lt;/li&gt;    &lt;li&gt;Scalability - built on enterprise Java technology, ALCS can scale to meet the demands of the largest commerce projects &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;For more detailed information on the features in the product, please check out the &lt;a href=&quot;http://www.bea.com/framework.jsp?CNT=index.htm&amp;amp;FP=/content/products/aqualogic/commerce_services/&quot;&gt;product information page&lt;/a&gt;. &lt;/p&gt;  &lt;h5&gt;Introducing ALCS 5.1 for WLW 9.2&lt;/h5&gt;  &lt;p&gt;One of the benefits of ALCS for BEA customers is that it deploys to WebLogic Server and integrates with WebLogic Portal. It fits in with the products that you already know and love. This makes deployment consistent with other projects you have deployed on the WebLogic stack. &lt;/p&gt;  &lt;p&gt;However, for the ALCS 5.1 release the development environment out of the box is not aligned with the BEA Workshop IDE. This will get sorted out for the next release of ALCS. Until then, I have created a supplemental solution for ALCS 5.1 that allows for easy integration with BEA Workshop 9.2. &lt;/p&gt;  &lt;p&gt;Called &lt;a href=&quot;https://submit-codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=CS206&quot;&gt;ALCS 5.1 for WLW 9.2&lt;/a&gt;, the supplemental download has the following features: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Script target to reprovision the ALCS sample application into the Workshop project structure (aka WTP) &lt;/li&gt;    &lt;li&gt;Script target to reskin the sample store from &amp;quot;Snap it Up&amp;quot; to &amp;quot;Avitek Digital&amp;quot; (credit to Dan Tortorici!) &lt;/li&gt;    &lt;li&gt;Script target to add in prominent disclaimer/promotion announcements to the store &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The download available on &lt;a href=&quot;https://www.projects.dev2dev.bea.com/&quot;&gt;dev2dev CodeShare&lt;/a&gt; includes ample instructions and a presentation that provides more context. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://submit-codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=CS206&quot;&gt;DOWNLOAD ALCS 5.1 for WLW 9.2&lt;/a&gt;&lt;/p&gt;  &lt;h5&gt;Additional Resources&lt;/h5&gt;  &lt;p&gt;To get started with ALCS, also consult the following documentation: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://edocs.bea.com/alcs/&quot;&gt;ALCS Product Documentation&lt;/a&gt;:&lt;/b&gt; top level link to the ALCS technical documentation &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://edocs.bea.com/alcs/docs51/pdf/devguide_alcs51.pdf&quot;&gt;Developers Guide&lt;/a&gt;:&lt;/b&gt; a comprehensive developers guide &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://commerce.bea.com/showproduct.jsp?family=ALCS&amp;amp;major=5.1.2&amp;amp;minor=0&quot;&gt;ACLS 5.1 Download&lt;/a&gt;:&lt;/b&gt; link to download a free evaluation of ALCS &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://www.bea.com/framework.jsp?CNT=index.htm&amp;amp;FP=/content/products/aqualogic/commerce_services/&quot;&gt;ALCS Marketing Center&lt;/a&gt;:&lt;/b&gt; materials to help convince your boss to use ALCS &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/wbales/&quot;&gt;Wendy Bales&#39; blog&lt;/a&gt;:&lt;/b&gt; great thoughts from the ALCS product manager &lt;/li&gt; &lt;/ul&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:4d82afee-cd4d-4c05-a19d-4b6685163fa2&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/WebLogic&quot; rel=&quot;tag&quot;&gt;WebLogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/AquaLogic%20Commerce&quot; rel=&quot;tag&quot;&gt;AquaLogic Commerce&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/ALCS&quot; rel=&quot;tag&quot;&gt;ALCS&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Workshop&quot; rel=&quot;tag&quot;&gt;Workshop&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/4726294690953432548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/4726294690953432548' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4726294690953432548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/4726294690953432548'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/10/aqualogic-commerce-services-51-for-bea.html' title='AquaLogic Commerce Services 5.1 for BEA Workshop 9.2'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-7072140641261300053</id><published>2007-09-25T02:05:00.000-06:00</published><updated>2009-08-11T23:15:32.707-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="authentication"/><category scheme="http://www.blogger.com/atom/ns#" term="j2ee"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="sso"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogic"/><title type='text'>WebLogic Security: Configuring the Database Authentication Providers (SQL, Custom, DBMS)</title><content type='html'>&lt;p&gt;I have gotten a lot of WebLogic security related questions offline as a result of my last blog post. A couple of people have asked for more details behind the WebLogic SQL Authenticator (a database authentication provider) that I mentioned. This blog entry will give deep background into your options when it comes to authenticating users from a database repository. I will finish by explaining how to configure the SQL Authenticator. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; September 25th, 2007 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;First, a bit of terminology. When looking in the WebLogic Server documentation for a database authentication provider you will find at least a few names: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/dvspisec/atn.html#wp1145342&quot;&gt;Database Base Management System (DBMS) authentication providers&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/ConsoleHelp/pagehelp/Securitysecurityauthenticatorreadonlysqlauthenticatorconfigproviderspecifictitle.html&quot;&gt;SQL Authenticator&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs90/secintro/archtect.html#1067811&quot;&gt;SQL Authentication provider&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs92/secmanage/atn.html#wp1204622&quot;&gt;RDBMS Authentication providers&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs90/secintro/archtect.html#1067811&quot;&gt;Read-only SQL Authentication provider&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs90/secintro/archtect.html#1067811&quot;&gt;Custom DBMS Authentication provider&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;We all love choice, but &lt;b&gt;what&#39;s up with all these names?&lt;/b&gt; Are they all the same thing, or does WLS provide multiple provider implementations? &lt;/p&gt;  &lt;p&gt;In short, WebLogic does provide multiple database authentication provider implementations. This blog entry will sort out specifically what providers are available to you when authenticating from a database. We will look inside the WebLogic providers to understand what features are supported by which provider. After we have that covered, I will describe how to configure a SQL Authenticator provider in the WLS Console and how to provision the database. &lt;/p&gt;  &lt;h3&gt;Peter&#39;s Best Practice: Use a Database Backed Authentication Provider!&lt;/h3&gt;  &lt;p&gt;Before we dive into the details, I want to take a moment to congratulate you on reading more about this topic. I have worked at BEA many years, and I have been involved in many customer production escalations. When it comes to Authentication repositories, my experience tells me that you are safest performance-wise with a database backed authentication store. While customers have certainly been successful with other types of authentication repositories, if you want to minimize risk the database approach trumps all others. A database backed repository has few moving parts, and the query necessary to authenticate a user is a simple SELECT. So if you want my opinion, I say go with a database when you have the option. &lt;/p&gt;  &lt;h3&gt;The Official Flavors of WebLogic Database Authentication Providers&lt;/h3&gt;  &lt;p&gt;Back to the topic at hand - what are the WebLogic database authentication providers? The official documentation source, edocs.bea.com, will get us started. The docs explain what is provided for you: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs90/secintro/archtect.html#1067811&quot;&gt;Weblogic Security Providers&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;/i&gt;&lt;/p&gt;  &lt;p&gt;A set of Database Management System (DBMS) authentication providers that access user, password, group, and group membership information stored in databases for authentication purposes. Optionally, WebLogic Server can be used to manage the user, password, group, and group membership information. The DBMS Authentication providers are the upgrade path from the RDBMS security realm. The following DBMS Authentication providers are available: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;SQL Authentication provider&lt;/b&gt; - A manageable authentication provider that supports the listing and editing of user, password, group, and group membership information. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Read-only SQL Authentication provider&lt;/b&gt; - An authentication provider that supports authentication of users in a database and the listing of the contents of the database through the WebLogic Server Administration Console. The authentication provider requires a specific set of SQL statements so it might not meet all customer needs. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Custom DBMS Authentication provider&lt;/b&gt; - A run-time authentication provider that only supports authentication. This provider require customer-written code that handles querying the database to obtain authentication information.This authentication provider is a flexible alternative that allows customer to adapt a DBMS Authentication provider to meet their special database needs. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The documentation is reflected by the WebLogic Console, which provides the following dropdown of authentication providers to choose from. Notice that the three database authentication provider types appear. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKMIBWAIL1eauniSB9e8XoNUwB_u3ZGgrhLiLMU4MlX5_NQjm5Kc3b147hrqiO87G7n-xkDwMHzBAkrDyZ2rMjzB_gyb5Tb5rKkV3BxtVwOOZBhBG2PgOfwq5ODtUHHFM3SCxyHuyMDfxI/s1600-h/sqlatn_AtnChooser%5B3%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;sqlatn_AtnChooser&quot; border=&quot;0&quot; alt=&quot;sqlatn_AtnChooser&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcTICKs0VcZ_NiDWjHpNb4MGEtwudEaxjY3Vy-Hlxg5uzMam2BOFeBuaaXH7Vz5FYz4ITDqnd4IfcgSDPYr3SqnF-Rxx_4-WgUg3hSPBuMeXZNTRbdtbjE-QKHh-3N6SvNV5HCF61T4lO4/?imgmax=800&quot; width=&quot;504&quot; height=&quot;481&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;While the above descriptions provide some information about the difference between these providers, we can do better. Because you are a developer, you probably want the inside story. Today is your lucky day! &lt;/p&gt;  &lt;h3&gt;Inside the WebLogic Database Authentication Providers&lt;/h3&gt;  &lt;p&gt;To get the inside story let&#39;s head straight for the source - the authentication provider configuration files. You will find them here: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;BEA_HOME/WL_HOME/server/lib/mbeantypes/cssWlSecurityProviders.jar&lt;/b&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;If you open up this JAR, you will find 4 files of interest: DBMSAuthenticator.xml, CustomDBMSAuthenticator.xml, ReadOnlySQLAuthenticator.xml, and SQLAuthenticator.xml. Three of those map directly to the official authentication provider implementations, so those are obviously their configuration files. The fourth, DBMSAuthenticator - what is that? If you look into the XML files, you find that DBMSAuthenticator is the base class for the rest of the providers. By looking at the Extends attribute on the MBeanType element, you can derive the class hieararchy of the providers, shown below. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZXb3Q4KLx_w8iP9T34haeC0UuMlFOXu9PPwnzLUGxUBgYnPavrQfmvsUoFiwXJ-t8KGWjam9VinnD0ey7g1NjdtwIH66UmVJJ-5GAnoK36zkwnCJLUzvtWtnawPzN8-OYJKXtU-BlZ5lr/s1600-h/sqlatn_Classes%5B3%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;sqlatn_Classes&quot; border=&quot;0&quot; alt=&quot;sqlatn_Classes&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7ut5DiUup7uZ4nRONgJUpWKDjXVtueo2U14i-u-E0GB71Ny0AgLy6db5AMadHlIq9mL3VK1-ergq9HNRRM2_7-eDUyxlOcih8oHmrTg096lQj2nWvgbxT1xGguKGbmzILgldZuKBvwfCd/?imgmax=800&quot; width=&quot;374&quot; height=&quot;280&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now that you understand how the providers are related, how do you know which one you want? WLS/CSS authentication providers have two components - the &lt;a href=&quot;http://dev2dev.bea.com/pub/a/2003/04/Kemp_Helton.html&quot;&gt;JAAS&lt;/a&gt; code that actually performs the authentication at runtime, and then a set of management &amp;quot;mbeans&amp;quot; that the provider chooses to implement. Every management feature that a provider can support is surfaced as an mbean interface. The key to understanding what a provider can do for you is to look at the mbean interfaces that it implements. Each interface is optional, meaning a provider may choose what features it can support. &lt;/p&gt;  &lt;p&gt;Here is the list of mbeans for authentication providers which provide the manageability around users and groups: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs81/dvspisec/design.html#1180836&quot;&gt;SSPI MBean Quick Reference&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/GroupReaderMBean.html&quot;&gt;GroupReader&lt;/a&gt;&lt;/b&gt; Read data about groups. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/GroupMemberListerMBean.html&quot;&gt;GroupMemberLister&lt;/a&gt;&lt;/b&gt; List a group&#39;s members. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/MemberGroupListerMBean.html&quot;&gt;MemberGroupLister&lt;/a&gt;&lt;/b&gt; List the groups containing a user or a group. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/UserReaderMBean.html&quot;&gt;UserReader&lt;/a&gt;&lt;/b&gt; Read data about users. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/UserPasswordEditorMBean.html&quot;&gt;UserPasswordEditor&lt;/a&gt;&lt;/b&gt; Change a user&#39;s password. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/GroupEditorMBean.html&quot;&gt;GroupEditor&lt;/a&gt;&lt;/b&gt; Create a group. If the group already exists, an exception is thrown. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/GroupRemoverMBean.html&quot;&gt;GroupRemover&lt;/a&gt;&lt;/b&gt; Remove groups. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/UserEditorMBean.html&quot;&gt;UserEditor&lt;/a&gt;&lt;/b&gt; Create, edit and remove users. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs100/javadocs/weblogic/management/security/authentication/UserRemoverMBean.html&quot;&gt;UserRemover&lt;/a&gt;&lt;/b&gt; Remove users. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Mapping out our providers into a table and the mbeans they implement shows the vast difference in manageability. You will want to select a provider based on your requirements for managing users and groups from WLS. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://lh6.ggpht.com/peterjlaird/SDUphUD36LI/AAAAAAAAABs/Ds6hYnmf4_U/s1600-h/image%5B6%5D.png&quot;&gt;&lt;img style=&quot;border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px&quot; border=&quot;0&quot; alt=&quot;image&quot; src=&quot;http://lh3.ggpht.com/peterjlaird/SDUphkD36MI/AAAAAAAAAB0/JeFfQgf8eMI/image_thumb%5B2%5D.png?imgmax=800&quot; width=&quot;687&quot; height=&quot;164&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h5&gt;Using the CustomDBMSAuthenticator&lt;/h5&gt;  &lt;p&gt;This provider is obviously not for use in situations when manageability from WLS is important. It offers no management support. What it does offer is a lowest common denominator approach to integrating a database user repository. Employ this provider when you need to surface just authentication capabilities to WLS, and nothing else. You simply need to implement a plugin that answers the most basic of questions. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs100/javadocs/weblogic/security/providers/authentication/CustomDBMSAuthenticatorPlugin.html&quot;&gt;CustomDBMSAuthenticatorPlugin Javadoc&lt;/a&gt; - explains what needs to be implemented &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://webservice.bea.com:7001/examplesWebApp/server/medrec/src/security/com/bea/medrec/security/MedRecDBMSPlugin.html&quot;&gt;Sample CustomDBMSAuthenticator provider&lt;/a&gt; - the MedRecDBMSPlugin from the MedRec sample (found in your install at &lt;i&gt;BEA_HOME/WL_HOME/samples/server/medrec/src/security/com/bea/medrec/security&lt;/i&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;h5&gt;Configuring the SQL Authenticator&lt;/h5&gt;  &lt;p&gt;You are more likely to be using the Read-only SQL Authentication provider or the most powerful SQL Authentication provider. These providers give you manageability from the WLS Console (and WLP Console if using WLP). They are easy to instantiate - the UI surfaces the options you need to configure. I won&#39;t go into all the options, but it is important to see that you can change the SQL for each operation if you have a custom schema. The SQL for these providers is designed to be modified to allow you to retrofit a custom database schema. But you can also use the default schema if you are provisioning a brand new user repository (see below for the schema). &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEil7iCfr_ytYkJWeAlmyhFbzryx6VbJhiKgbOE4wGD9-ge-tNPfp5uFExNid_4L7qo8Dm4Ikm4EaAjcpr0_U2W94wuXr-ae8gHyftJ6AjijJQ7KmDjuSVVtyBbh8t1kEq1hKKqtrwqjuj9F/s1600-h/sqlatn_ConfigSQLAtn%5B3%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;sqlatn_ConfigSQLAtn&quot; border=&quot;0&quot; alt=&quot;sqlatn_ConfigSQLAtn&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRCYxZgGzMryKC0jdBVmfNcr1x8Rbb_knbt7fP3ZKewatwJbzDOQCv3-ptRefXTEpECgp_Deo97d4PmI3gh98UBHO9OBoIX2CTIHOJx7ng844esW8-TE6IxpWbHCKA42Y2bJswWFC-K4uj/?imgmax=800&quot; width=&quot;504&quot; height=&quot;545&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;After configuring the provider, any deltas versus the defaults will be persisted into config.xml. You can see below, I updated the Datasource of course (this is required) but I also made an arbitrary change to the Create Group SQL. See how it wrote the update into config.xml. &lt;/p&gt;  &lt;pre&gt;&amp;lt;sec:authentication-provider xsi:type=&amp;quot;wls:sql-authenticatorType&amp;quot;&amp;gt;&lt;br /&gt;  &amp;lt;sec:control-flag&amp;gt;&lt;br /&gt;    SUFFICIENT&lt;br /&gt;  &amp;lt;/sec:control-flag&amp;gt;&lt;br /&gt;  &amp;lt;wls:enable-group-membership-lookup-hierarchy-caching&amp;gt;&lt;br /&gt;    false&lt;br /&gt;  &amp;lt;/wls:enable-group-membership-lookup-hierarchy-caching&amp;gt;&lt;br /&gt;  &amp;lt;wls:data-source-name&amp;gt;&lt;br /&gt;    p13nDataSource&lt;br /&gt;  &amp;lt;/wls:data-source-name&amp;gt;&lt;br /&gt;  &amp;lt;wls:sql-create-group&amp;gt;&lt;br /&gt;    INSERT INTO GROUPS VALUES ( &#39;arbitrary change&#39; , ? )&lt;br /&gt;  &amp;lt;/wls:sql-create-group&amp;gt;&lt;br /&gt;&amp;lt;/sec:authentication-provider&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;The Default Schema DDL for the SQL Authenticator&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;You can define whatever schema you want to store users and groups when using the SQL Authenticators. But if you are starting fresh, why not just use the default schema and the default settings on the provider. I would highly recommend this approach. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;It doesn&#39;t look like we officially document the default database schema so let me show you what it is. I list the Oracle DDL below, but you can find the official DDL for your database vendor in the following location in the WLS 10 install (and a similar location for other versions):&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;BEA_HOME/wlserver_10.0/common/p13n/db/DB_VENDOR/p13n9_create_tables.sql&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;CREATE TABLE USERS (&lt;br /&gt;    U_NAME VARCHAR(200) NOT NULL,&lt;br /&gt;    U_PASSWORD VARCHAR(50) NOT NULL,&lt;br /&gt;    U_DESCRIPTION VARCHAR(1000))&lt;br /&gt;;&lt;br /&gt;ALTER TABLE USERS&lt;br /&gt;   ADD CONSTRAINT PK_USERS&lt;br /&gt;   PRIMARY KEY (U_NAME)&lt;br /&gt;;&lt;br /&gt;CREATE TABLE GROUPS (&lt;br /&gt;    G_NAME VARCHAR(200) NOT NULL,&lt;br /&gt;    G_DESCRIPTION VARCHAR(1000) NULL)&lt;br /&gt;;&lt;br /&gt;ALTER TABLE GROUPS&lt;br /&gt;   ADD CONSTRAINT PK_GROUPS&lt;br /&gt;   PRIMARY KEY (G_NAME)&lt;br /&gt;;&lt;br /&gt;CREATE TABLE GROUPMEMBERS (&lt;br /&gt;    G_NAME VARCHAR(200) NOT NULL,&lt;br /&gt;    G_MEMBER VARCHAR(200) NOT NULL)&lt;br /&gt;;&lt;br /&gt;ALTER TABLE GROUPMEMBERS&lt;br /&gt;   ADD CONSTRAINT PK_GROUPMEMS&lt;br /&gt;   PRIMARY KEY (&lt;br /&gt;      G_NAME, &lt;br /&gt;      G_MEMBER&lt;br /&gt;   )&lt;br /&gt;;&lt;br /&gt;ALTER TABLE GROUPMEMBERS&lt;br /&gt;   ADD CONSTRAINT FK1_GROUPMEMBERS&lt;br /&gt;   FOREIGN KEY ( G_NAME )&lt;br /&gt;   REFERENCES GROUPS (G_NAME)&lt;br /&gt;   ON DELETE CASCADE&lt;br /&gt;;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;A Few Details for WebLogic Portal Customers&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This thread got started because I was discussing in my last blog how WLP 9.2+ by default uses the WebLogic SQL Authenticator. You can, of course, add more authentication providers and remove the SQL Authenticator if you like. When installing WLP, the installer (or you can use the createdb script) will lay down the default SQL Authenticator schema into the WLP schema. Therefore, by default, WLP uses just a single schema for both authentication and Portal operations. This is the most convenient option, but you can change this by switching out the configured datasource. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;More Information&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;For further reading, I suggest these links: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs100/secintro/concepts.html&quot;&gt;Security Fundamentals&lt;/a&gt; - official WebLogic security primer &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs100/secintro/archtect.html&quot;&gt;WebLogic Server SSPI &lt;/a&gt;- the CSS security architecture &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;https://codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=S224&quot;&gt;SSPI Provider Samples&lt;/a&gt; - reading aboout the SSPI is good, but coding is even better. Try building your own ATN provider. &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wlp/docs100/security/intro.html#wp1019244&quot;&gt;Foundations of WLP Security&lt;/a&gt; - official doc about how WLP integrates into WLS Security &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2007/02/implementing_si.html&quot;&gt;Implementing SSO with the WLS SSPI&lt;/a&gt; - my dev2dev blog on SSO with Identity Asserters &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://dev2dev.bea.com/pub/a/2003/04/Kemp_Helton.html&quot;&gt;JAAS Fundamantals&lt;/a&gt; - a dev2dev article by Bill Kemp and Rich Helton &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://technorati.com/faves?sub=addfavbtn&amp;amp;add=http://dev2dev.bea.com/blog/plaird&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Add to Technorati Favorites&quot; src=&quot;http://static.technorati.com/pix/fave/tech-fav-1.png&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:bf7c06a1-d2b2-497f-b1a2-f1edcdee1205&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/J2EE&quot; rel=&quot;tag&quot;&gt;J2EE&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/WebLogic&quot; rel=&quot;tag&quot;&gt;WebLogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Security&quot; rel=&quot;tag&quot;&gt;Security&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Authentication&quot; rel=&quot;tag&quot;&gt;Authentication&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/SQLAuthenticator&quot; rel=&quot;tag&quot;&gt;SQLAuthenticator&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name=&quot;comments&quot;&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h6&gt;Comments from the original blog:&lt;/h6&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Great article! I was able to successfully help my client configure one for their needs. Thanks again. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: sghattu on November 11, 2007 at 6:57 PM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2277&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;I just got a question offline that I will record here - the developer was having trouble creating an Ant build script for building a custom Atn provider. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;My answer: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;When building providers, I have always used the Sample SSPI download from dev2dev CodeShare. It contains a working build script so all of this is taken care of for you. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;&lt;a href=&quot;https://codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=S224&quot;&gt;SSPI Code Sample&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: plaird on October 19, 2007 at 10:21 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2153&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hi Peter, Interesting post but I would like to get more details on your SQLAuthenticator console configuration screenshot. Could you provide me more details on the DataSource name you use. I&#39;m running into troubles with that part! I&#39;ve tried to provide a configured JDBC data source name but this does not work as the DS is not yet initialized when the security is initialized (not able to start the console anymore). I&#39;ve tried to provide a Data Source Factory name also without any success!! (Can start the console, but error in the log saying: Connection Pool not usable) Any idea? I&#39;m using Oracle 10g thin jdbc driver and WebLogic server 9.2 Thanks in advance Daniel &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: ni2corp on September 25, 2007 at 11:43 PM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/7072140641261300053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/7072140641261300053' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/7072140641261300053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/7072140641261300053'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/09/weblogic-security-configuring-database.html' title='WebLogic Security: Configuring the Database Authentication Providers (SQL, Custom, DBMS)'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcTICKs0VcZ_NiDWjHpNb4MGEtwudEaxjY3Vy-Hlxg5uzMam2BOFeBuaaXH7Vz5FYz4ITDqnd4IfcgSDPYr3SqnF-Rxx_4-WgUg3hSPBuMeXZNTRbdtbjE-QKHh-3N6SvNV5HCF61T4lO4/s72-c?imgmax=800" height="72" width="72"/><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-1720171535030583264</id><published>2007-09-22T01:55:00.000-06:00</published><updated>2009-08-11T23:11:22.051-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="security"/><category scheme="http://www.blogger.com/atom/ns#" term="sso"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogic"/><category scheme="http://www.blogger.com/atom/ns#" term="weblogicportal"/><title type='text'>Discussion on WebLogic Security: Authentication Providers, Internal LDAP, JAAS, WebLogic Portal, Profile</title><content type='html'>&lt;p&gt;This blog entry comes from an email thread I had with a fellow BEA colleague. We traded a number of emails - he asked a lot of great questions about how WebLogic Portal (WLP) supports various security features. Since WLP relies heavily on WebLogic Server for those features, my answers apply to WebLogic in general and not just Portal. I am posting the email thread here because I think that this discussion might be of interest to others. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; September 22nd, 2007 on my previous blogging system (dev2dev.bea.com). &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Before I show the thread, I should provide a glossary of abbreviations and concepts: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;WLS:&lt;/b&gt; WebLogic Server, the J2EE application server that most people associate with the name &amp;quot;WebLogic&amp;quot; &lt;/li&gt;    &lt;li&gt;&lt;b&gt;WLP:&lt;/b&gt; WebLogic Portal, the J2EE portal product built on top of WLS &lt;/li&gt;    &lt;li&gt;&lt;b&gt;CSS:&lt;/b&gt; in this context, not cascading style sheets. Common Security Service is the componentized security package that WLS uses for security. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;SSPI:&lt;/b&gt; the &lt;a href=&quot;http://edocs.bea.com/wls/docs100/secintro/archtect.html&quot;&gt;pluggable security subsystem&lt;/a&gt; provided by CSS to WLS &lt;/li&gt;    &lt;li&gt;&lt;b&gt;ATN:&lt;/b&gt; authentication, which refers to the process of verifying who a user is (with a password perhaps) &lt;/li&gt;    &lt;li&gt;&lt;b&gt;ATZ:&lt;/b&gt; authorization, which refers to the process of deciding whether the authenticated user has the privilege to perform a certain action &lt;/li&gt;    &lt;li&gt;&lt;b&gt;UUP:&lt;/b&gt; a WLP feature that aggregates profile information for a user from a variety of backend sources using a plugin architecture &lt;/li&gt;    &lt;li&gt;&lt;b&gt;Internal LDAP:&lt;/b&gt; an LDAP repository embedded in CSS historically used for some default SSPI providers &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Discussion Thread&lt;/h3&gt;  &lt;p&gt;&lt;b&gt;From: Colleague&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Quick follow-up to our discussion in the hall at BEAWorld, you said that WLP wants to stop using the internal LDAP server altogether and use the database instead. I forgot, though, did you say that had already happened in a previous release, or is that slated for the next release? &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: PJL&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Yes and no. &lt;/p&gt;  &lt;p&gt;For ATN, WLP does not use internal LDAP. WLP switched to the WLS/CSS provided SQLAuthenticator in WLP 9.2. This does not mean that customers must use it, it is merely the default. A customer may choose to toss the SQL ATN provider and plug in an LDAP, Active Directory, etc. provider instead. &lt;/p&gt;  &lt;p&gt;Here is the WLS doc reference to SQL Authenticator: &lt;a href=&quot;http://e-docs.bea.com/wls/docs92/secmanage/atn.html#wp1204622&quot;&gt;Configuring RDBMS Authentication Providers&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;As for ATZ (WLP entitlements and delegated administration), we rely on the default ATZ provider from WLS, which in turn uses the internal LDAP store. Currently, we are tightly bound to the default ATZ provider for various reasons, and so WLP therefore has a hard dependency on internal LDAP. This is not ideal, and so WLP wants to eliminate the internal LDAP dependency. &lt;/p&gt;  &lt;p&gt;The forthcoming solution to this problem is for WLS to support a database as the backend store for the default ATZ provider. They should have this in the next WLS version (but no promises folks!), and so we will pick it up in a future release beyond Flatirons (the next WLP release). &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: Colleague&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Right, makes sense. A couple more questions: &lt;/p&gt;  &lt;p&gt;Can customers configure more than one ATN provider, e.g. extranet users in SQL and employees in Active Directory, is that a supported WLP configuration? &lt;/p&gt;  &lt;p&gt;Do documents stored in WLP&#39;s virtual content repository (VCR) use the default ATZ provider as well? &lt;/p&gt;  &lt;p&gt;Where does the Unified User Profile (UUP) fit into this picture? &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: PJL&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&amp;gt;&amp;gt; Can customers configure more than one ATN provider, e.g. extranet users in SQL and employees in AD, is that a supported WLP configuration?    &lt;br /&gt;Yes, and you can do logic like AND and OR via the &lt;a href=&quot;http://edocs.bea.com/wls/docs81/secintro/concepts.html#1069989&quot;&gt;JAAS control flags&lt;/a&gt; (this is WLS/CSS doing that, not WLP). &lt;/p&gt;  &lt;p&gt;&amp;gt;&amp;gt; Do documents stored in WLP&#39;s virtual content repository (VCR) use the default ATZ provider as well?    &lt;br /&gt;Yes, Entitlements defined on VCR documents are stored in the default ATZ provider. The documents and metadata themselves are in the WLP database if the BEA Repo is being used, or in third party systems like Documentum or Sharepoint. &lt;/p&gt;  &lt;p&gt;&amp;gt;&amp;gt; Where does the Unified User Profile (UUP) fit into this picture?    &lt;br /&gt;Profile is the third leg to this: ATN, ATZ, and Profile. For WLP, all three are independent, and linked together just by username. So ATN could come from Active Directory, whereas profile can be aggregated from, for example, a mainframe, LDAP, and Siebel via UUP. WLP passes the UUP plugins the username that was authenticated, and then each plugin is responsible for retrieving the correct profile info. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: Colleague&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;One piece I&#39;m still a bit fuzzy on is how groups fit into this whole picture, I&#39;ve been reading this section on edocs: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://edocs.bea.com/wlp/docs100/users/groups.html#wp1007896&quot;&gt;Adding and Managing Groups (WLP docs)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It sounds like WLP periodically syncs group info from the providers into some local store, which I&#39;m guessing is the default RDBMS. Is that correct? &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: PJL&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Good question. &lt;/p&gt;  &lt;p&gt;Actually WLP doesn&#39;t really maintain its own group mapping. The ATN providers provided by WLS are responsible for doing that. We do some caching of the group tree because it can be expensive to build, so that is what those docs are talking about. But we don&#39;t write that in-memory cached tree out to the database or file system. &lt;/p&gt;  &lt;p&gt;To see how an ATN provider is involved in group membership, look at how the SQL Authenticator gets configured as an example: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://e-docs.bea.com/wls/docs90/ConsoleHelp/pagehelp/Securitysecurityauthenticatorsqlauthenticatorconfigproviderspecifictitle.html&quot;&gt;SQL Authenticator Configuration help&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can see that it has methods for managing group relationships. How this happens at runtime is a deeper dive into the WLS/CSS SSPI ... &lt;/p&gt;  &lt;p&gt;WLS/CSS authentication providers have two components - the &lt;a href=&quot;http://dev2dev.bea.com/pub/a/2003/04/Kemp_Helton.html&quot;&gt;JAAS&lt;/a&gt; code that actually performs the authentication, and then a set of &amp;quot;mbeans&amp;quot; that the provider chooses to implement. Most of the mbeans are optional to implement. Here is the list for ATN providers which provide the manageability around users and groups: &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs81/dvspisec/design.html#1180836&quot;&gt;SSPI MBean Quick Reference&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;b&gt;GroupEditor&lt;/b&gt; Create a group. If the group already exists, an exception is thrown. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;GroupMemberLister&lt;/b&gt; List a group&#39;s members. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;GroupReader&lt;/b&gt; Read data about groups. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;GroupRemover&lt;/b&gt; Remove groups. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;MemberGroupLister&lt;/b&gt; List the groups containing a user or a group. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;UserEditor&lt;/b&gt; Create, edit and remove users. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;UserPasswordEditor&lt;/b&gt; Change a user&#39;s password. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;UserReader&lt;/b&gt; Read data about users. &lt;/li&gt;    &lt;li&gt;&lt;b&gt;UserRemover&lt;/b&gt; Remove users. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;So WLP uses methods from the GroupReader and GroupMemberListers mbeans on the ATN provider to have access to group membership. The SQL Authenticator implements the GroupReader and GroupMemberLister mbeans by using those SQL queries. The LDAP ATN provider GroupReader and GroupMemberLister mbeans derives Group structure from the directory structure. &lt;/p&gt;  &lt;p&gt;That&#39;s a little abstract - it sometimes helps to see the code. Here is the javadoc for GroupReader and GroupMemberLister java interfaces that the ATN providers implement: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs81/javadocs/weblogic/management/security/authentication/GroupReaderMBean.html&quot;&gt;GroupReader javadoc link&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs81/javadocs/weblogic/management/security/authentication/GroupMemberListerMBean.html&quot;&gt;GroupMemberLister javadoc link&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;So WLP is not really managing it&#39;s own group repository, it&#39;s the ATN Providers that are storing that information. A little complicated, I know. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: Colleague&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;So does the LDAP ATN provider support the GroupEditor as well? That is, can you write group membership changes back into external LDAP repositories? &lt;/p&gt;  &lt;p&gt;&lt;b&gt;From: PJL&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;The LDAP ATN provider that WLS/CSS provides is read only. You can see what mbeans it implements by looking here: &lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Navigate to BEA-HOME\wlserver_10.0\server\lib\mbeantypes &lt;/li&gt;    &lt;li&gt;Open cssWlSecurityProviders.jar &lt;/li&gt;    &lt;li&gt;Find the .xml file that is associated with the provider you care about, in this case LDAPAuthenticator.xml &lt;/li&gt;    &lt;li&gt;In that xml file, you will see the mbean interfaces that it implements listed: &lt;/li&gt; &lt;/ol&gt;  &lt;pre&gt;&amp;lt;MBeanType&lt;br /&gt;&lt;br /&gt; Name          = &amp;quot;LDAPAuthenticator&amp;quot;&lt;br /&gt;&lt;br /&gt; DisplayName   = &amp;quot;LDAPAuthenticator&amp;quot;&lt;br /&gt;&lt;br /&gt; Package       = &lt;br /&gt;   &amp;quot;weblogic.security.providers.authentication&amp;quot;&lt;br /&gt;&lt;br /&gt; Extends       = &lt;br /&gt;   &amp;quot;weblogic.security.providers.authentication.LoginExceptionPropagator&amp;quot;&lt;br /&gt;&lt;br /&gt; Implements    = &lt;br /&gt;   &amp;quot;weblogic.management.utils.LDAPServer,&lt;br /&gt;    weblogic.management.security.authentication.UserReader,&lt;br /&gt;    weblogic.management.security.authentication.GroupReader,&lt;br /&gt;    weblogic.management.security.authentication.GroupMemberLister,&lt;br /&gt;    weblogic.management.security.authentication.MemberGroupLister,&lt;br /&gt;    weblogic.management.security.authentication.UserPasswordEditor,&lt;br /&gt;    weblogic.management.security.authentication.GroupMembershipHierarchyCache&amp;quot;&lt;br /&gt;&lt;br /&gt; PersistPolicy = &amp;quot;OnUpdate&amp;quot;&lt;br /&gt;&amp;gt; &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Since it does not include GroupEditor or UserEditor, you can infer that it is a read-only provider (aside from password). If you are a WLP customer, another way to see which mbeans are implemented for each ATN provider is through the Portal Administrator tool (PAT). Because the PAT disables certain user/group management functions in the tool depending on what mbeans are implemented on the selected provider, the PAT provides UI to show which mbeans are implemented. See the image below: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrHBn0yzgLAXfL_TRXRIDmiXaWZfROEyhMDmx_MF15JyZUUxKrjKIqqyCZLv8qFv5ii2nyeDI8uBrXt3_t72MXZHVEBKFjkq_3P57Ws16bSLaIeE_2fgUzNh_2I4jXXGPVOnxxwPksjz-X/s1600-h/wlpAtnProviderMbeans%5B3%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;wlpAtnProviderMbeans&quot; border=&quot;0&quot; alt=&quot;wlpAtnProviderMbeans&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyAvTZ3kxIojy5idh1xRI5Z8o3bRVXXjNOy7AYEKB2uHhvpplvAjL4HbbiiUNSRoQV51wReDlHXJ7468wTXFiWiLqnaIkZn_y3s1gU1BuXqBm3x3puCaxyi9rBa5SMJ_oq_ou7Lqc9dWIo/?imgmax=800&quot; width=&quot;504&quot; height=&quot;350&quot; /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;From: Colleague&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Also, is there any way to create a group that includes members from more than one provider, e.g. &amp;quot;John&amp;quot; from the DB and &amp;quot;Bob&amp;quot; from LDAP? Or do you need to use roles for that scenario? &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;From: PJL&lt;/b&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Yes, group membership is aggregated from the collection of installer providers. Multiple providers can contribute membership associations to a single group. Or how about this question: can &amp;quot;Bob&amp;quot; be authenticated by the SQL ATN provider, and put into the &amp;quot;Human Resources&amp;quot; group via the LDAP provider? I believe this does work. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;More information...&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I would encourage you to use these resources to learn more about WebLogic Security: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs100/secintro/concepts.html&quot;&gt;Security Fundamentals&lt;/a&gt; - official WebLogic security primer &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wls/docs100/secintro/archtect.html&quot;&gt;WebLogic Server SSPI &lt;/a&gt;- the CSS security architecture &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;https://codesamples.projects.dev2dev.bea.com/servlets/Scarab?id=S224&quot;&gt;SSPI Provider Samples&lt;/a&gt; - reading aboout the SSPI is good, but coding is even better. Try building your own ATN provider. &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://edocs.bea.com/wlp/docs100/security/intro.html#wp1019244&quot;&gt;Foundations of WLP Security&lt;/a&gt; - official doc about how WLP integrates into WLS Security &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2007/02/implementing_si.html&quot;&gt;Implementing SSO with the WLS SSPI&lt;/a&gt; - my dev2dev blog on SSO with Identity Asserters &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://dev2dev.bea.com/pub/a/2003/04/Kemp_Helton.html&quot;&gt;JAAS Fundamantals&lt;/a&gt; - a dev2dev article by Bill Kemp and Rich Helton &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://monduke.com/category/weblogic/&quot;&gt;Bastion&lt;/a&gt; - a blog devoted to WebLogic Security &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;http://technorati.com/faves?sub=addfavbtn&amp;amp;add=http://dev2dev.bea.com/blog/plaird&quot;&gt;&lt;img border=&quot;0&quot; alt=&quot;Add to Technorati Favorites&quot; src=&quot;http://static.technorati.com/pix/fave/tech-fav-1.png&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:40a82a8e-3dc9-4a90-9967-050c3ed5ff8d&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/WebLogic&quot; rel=&quot;tag&quot;&gt;WebLogic&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Security&quot; rel=&quot;tag&quot;&gt;Security&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Authentication&quot; rel=&quot;tag&quot;&gt;Authentication&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/WebLogicPortal&quot; rel=&quot;tag&quot;&gt;WebLogicPortal&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/JAAS&quot; rel=&quot;tag&quot;&gt;JAAS&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name=&quot;comments&quot;&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h6&gt;Comments from original blog&lt;/h6&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Carlo - &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;OK, good to hear that it worked for you! &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;We don&#39;t certify any other authorizers/role mappers. It sounds like at least some use cases work. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Where my comment comes from is the fact that historically we had code that went around the SSPI and directly to embedded LDAP. Based on your feedback, I looked through the current code base and didn&#39;t find anything like that. I will check with the engineer who owns that code to verify. So I might have been wrong in saying it will not work at all. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;I did find a couple of places where you may see odd behavior: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;ul&gt;&lt;br /&gt;      &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      &lt;li&gt;There is code to check if the Admin server is running when doing any policy updates. This is because embedded LDAP relies on the Admin server for distribution of updates in the embedded LDAP replicates in a cluster. You will probably see errors in your logs if your Admin server is down, even if you aren&#39;t using embedded LDAP. &lt;br /&gt;        &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;        &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;      &lt;li&gt;WLP has a class called LDAPChangeListener which flushes a role policy cache entry if a role policy has been updated in embedded LDAP. If you are running in a cluster, and are not using embedded LDAP, it looks like you will have to redeploy the application to get the updated role policy recognized across the cluster. Can you verify if this is true with your system? &lt;br /&gt;        &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;    &lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Thanks for the correction! &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Regards - PJL&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: plaird on January 2, 2008 at 11:31 PM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2477&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hi Peter thank you for your answer. Why should the protection of WLP assets (e.g. Portlets) not work? I have written my own XACML Authorizer (based on the OpenSource SUN XACML implementation) and a RoleMapper also and it works. If WLP correctly use the WebLogic Security framework, it should work and fortunately it does ;-) Did you mean that in a future version it will not work? This scaries me because we are strongly basing our security on these implementations (and on XACML). ciao carlo &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: cdrcdr on December 21, 2007 at 6:19 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2443&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Carlo - &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;What types of resources do you wish to manage with the Role and Access policies? Do you wish to entitle WLP assets such as portlets and content items, or JEE assets? For JEE assets, you could use an external repository by plugging in additional providers into the SSPI. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;But as for WLP assets, first the bad news. You will not be able to replace the entitlement engine that WLP uses for WLP assets. But I would actually argue that you don&#39;t want to replace the entitlements engine, you really want to replace the runtime policy repository. Unfortunately, WLP does not currently support storing WLP policies in anything other than embedded LDAP, except in one case (see ALES link below). &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;While this isn&#39;t great news, WLP will at least remove the embedded LDAP dependency when WLP ships on WLS 10.3. You will be able to store your runtime ploicy repository in a DB then. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Now for the good news... &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;There is a solution available today. I would encourage you to look at &lt;a href=&quot;http://edocs.bea.com/ales/docs30/index.html&quot;&gt;ALES&lt;/a&gt;, because it does what you want to do. It centralizes role and policy management in an external repository. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;But if ALES is not suitable, there is another potential workaround here. It is possible to *manage* the policies in your external system, and then periodically sync the policies into the *runtime* repository (the embedded LDAP now, DB in a later release). An issue will be figuring out how to author WLP policies; specifically being able to create the WLP asset resource strings. Also, you will need to figure out how to allow for the external management tool to discover the set of manageable resources that do not already have policies. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hope this helps... PJL&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: plaird on December 14, 2007 at 8:34 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2442&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Great article! One question: we have our RoleAssignmentPolicies (XACML)as well as the AccessPolicies (XACML)in differnet repositories: we need to wtite our own XACML based authorizer (and Entitlements engine) and (possibly) remove the BEA one from the realm. Would it be possible? There would be problem/limitation doing so? regards carlo &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: cdrcdr on December 13, 2007 at 5:26 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2273&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Josh - I haven&#39;t worked with the LDAP providers in years, so I can&#39;t comment on the specifics. But in the &lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/archive/2007/09/authentication.html&quot;&gt;follow up blog entry&lt;/a&gt; to this one, I explain how to dive into the cssWlSecurityProviders.jar to find the implementations of the BEA Atn Providers and how providers often extend other providers. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;By doing that now, I see that the BEA IPlanetAuthenticator extends the base LDAPAutenticator, which already implements UserEditor and GroupEditor. If you wish to implement custom logic for those mbeans, extending the BEA IPlanetAuthenticator provider is probably the way to go. You would create a subclass overriding the UserEditor and GroupEditor methods as necessary, and then wire it up using an XML descriptor. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Look to the IPlanetAuthenticator itself as an example of how to wire up a provider subclass. Put your custom atn provider in its own JAR in the same directory as cssWlSecurityProviders.jar and you should be good to go. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;PJL&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: plaird on October 18, 2007 at 9:15 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2270&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hi Peter, What steps would I need to take to add the UserEditor and GroupEditor MBeans to the IPlanetAuthenticator? If I intend for users to be created using a custom objectClass defined in the iPlanet Directory Server that has custom attributes, I&#39;m assuming that I&#39;ll have to customize the MBean to do this. Is this correct? Thanks, Josh &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: joshbrookes on October 17, 2007 at 11:28 AM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2143&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hi Luciano - yes, this is why we are keen to eliminate internal LDAP as the repository for ATZ. The best way is to have a Propagation inventory that contains a backup of your policies. In that case, you can wipe it clean, and then reapply the inventory (this is not so simple if you do admin work in production, you will need to be careful about the merge). Also, a colleague was looking into a more fine grained fix (directly updating internal LDAP to fix the problem records). I don&#39;t know off-hand where he ended up with that - I will point him to this entry. Ciao, PJL &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: plaird on September 24, 2007 at 11:40 PM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a name=&quot;2142&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Hello Peter, very interesting reading. I wish that more articles like this one could be published by Bea. I take advantage of this blog to ask you a question: we have hit on a Portal9.2Mp1 production installation the infamous out of sync between embedded Ldap and the portal db (p13n tables). Result, Delegated Admin page fails with a NPE and Entitlements also are not very well. It&#39;s easy to fix this problem in a non prod environment (wipe p13n tables, wipe ldap files) but which is the recommended way to deal with this issue in a clustered production environment? Thanls a lot Luciano Fiandesio &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;p&gt;Posted by: koevet on September 24, 2007 at 11:21 PM&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/1720171535030583264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/1720171535030583264' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1720171535030583264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/1720171535030583264'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/09/discussion-on-weblogic-security.html' title='Discussion on WebLogic Security: Authentication Providers, Internal LDAP, JAAS, WebLogic Portal, Profile'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyAvTZ3kxIojy5idh1xRI5Z8o3bRVXXjNOy7AYEKB2uHhvpplvAjL4HbbiiUNSRoQV51wReDlHXJ7468wTXFiWiLqnaIkZn_y3s1gU1BuXqBm3x3puCaxyi9rBa5SMJ_oq_ou7Lqc9dWIo/s72-c?imgmax=800" height="72" width="72"/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-2573289195620092626</id><published>2007-08-19T01:51:00.000-06:00</published><updated>2009-08-11T23:00:28.060-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="greasemonkey"/><title type='text'>Enterprise Greasemonkey: Solving the Greasemonkey Script Versioning Problem</title><content type='html'>&lt;p&gt;As I have covered in previous blogs, Greasemonkey is a powerful client-side tool for augmenting web sites or creating mashups. It consists of a Firefox plugin coupled with scripts that are written and installed to modify web pages as they return from a web server. When this tool is brought into the enterprise, IT must sort out issues like security and deployment. I covered security in my last post, and in this installment I will look at how IT can solve deployment and versioning issues for Greasemonkey scripts. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: &lt;/strong&gt;this blog entry was originally posted August 19th, 2007 on my previous blogging system (dev2dev.bea.com). Comments on the old blog were not transferred.&lt;/p&gt;  &lt;p&gt;This is part 5 of a series of blog entries on Greasemonkey mashups. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Blog 1: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/more-mashups-using-greasemonkey-to.html&quot;&gt;More Mashups: Using Greasemonkey to Weave New Features into Web Sites&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 2: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/building-greasemonkey-mashup-tutorial.html&quot;&gt;Building a Greasemonkey Mashup Tutorial&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 3: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/greasemonkey-in-enterprise-when-is-gm.html&quot;&gt;Greasemonkey in the Enterprise: When is GM the Right Tool for IT?&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 4: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-beware-of.html&quot;&gt;Beware of Greasemonkey&#39;s Inverted Security Model&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Blog 5: &lt;/strong&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-solving.html&quot;&gt;&lt;strong&gt;Solving the Greasemonkey Script Versioning Problem&lt;/strong&gt;&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;The Need for Greasemonkey Script Deployment and Versioning&lt;/h3&gt;  &lt;p&gt;For this blog entry, imagine a web application in the enterprise with these characteristics: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It is a closed source packaged application, purchased from an external vendor. &lt;/li&gt;    &lt;li&gt;It is used by a modest sized group of users, all of which are comfortable with computers and web browsing &lt;/li&gt;    &lt;li&gt;There are a couple of missing features that dramatically hurt productivity &lt;/li&gt;    &lt;li&gt;Those features can be easily woven into the application using a Greasemonkey script &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Now, any one of those affected users could write the Greasemonkey script without involving IT. This script could then be passed around via email or a shared drive amongst colleagues. But there are few problems with this ad hoc approach to Greasemonkey: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;As the script evolves, distribution and version management of the script will be difficult. &lt;/li&gt;    &lt;li&gt;As new users are introduced to the web application, there is no formal process for getting them going with the script. &lt;/li&gt;    &lt;li&gt;GM scripts are like .exe&#39;s - they can be host to malicious code. Unmanaged distribution could open the door for a hacker. &lt;/li&gt;    &lt;li&gt;It is IT&#39;s mission to be the solution provider - IT should provide the Greasemonkey script. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Clearly, while IT can let the user community fend for themselves on this project, it would be far better for IT to own the solution. However, as always, unless IT can provide a solution quickly the users are apt to go with the ad hoc approach. Hopefully this blog entry will help you rapidly develop a sustainable solution, and add Greasemonkey to the list of official solutions for your enteprise. &lt;/p&gt;  &lt;h3&gt;Solving the Deployment and Versioning Issues for Greasemonkey Scripts&lt;/h3&gt;  &lt;p&gt;The rest of this blog entry discusses a solution that can provide manageability around Greasemonkey in the enterprise. It can solve the issues listed above, particularly the issues around deployment and versioning of a Greasemonkey script. This solution is by no means the only way to address these issues, but hopefully you will find it satisfies your requirements. The following describes characteristics of the solution: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It specifies a new landing page, or Gateway page, for the web application that users will hit before going into the app &lt;/li&gt;    &lt;li&gt;This page can contain whatever you want, but it also has elements to help determine if the GM script is installed and up to date &lt;/li&gt;    &lt;li&gt;The solution enforces the use of the Greasemonkey script (though it could be easily changed to make it only optional) &lt;/li&gt;    &lt;li&gt;It provides version checking &lt;/li&gt;    &lt;li&gt;It does not require any changes to the closed source web application &lt;/li&gt;    &lt;li&gt;It is not foolproof - if the user avoids the Gateway page using a bookmark the enforcement is not run &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The graphic below shows how the Gateway page fronts the web application to make sure the user has the proper Greasemonkey install. Ideally, the Gatekeeper page would be integrated into the web application&#39;s login page so a user could not bookmark their way around the enforcement. If the browser is not properly configured, the Gateway page obscures the &lt;i&gt;Enter the Site&lt;/i&gt; button until the problem is corrected. Also note that the proper version of the Greasemonkey script should be located on a web server defined and managed by IT so the Gatekeeper page can direct the user to it if necessary. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyLGRls9B9vlVA47Rmt4osxUX04_zNmBdAZzqEMuM7vZ5PUPTyPpzy6hGgOw2zvvzRDRuvyTMi9z0gQrFF_KgiPpsAjiuMIIhsd-x1pEiNvbT5Ei9zzutseCbEI6ynSDQLuc7g49HSuEjb/s1600-h/greasemonkey_ver_arch%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_ver_arch&quot; border=&quot;0&quot; alt=&quot;greasemonkey_ver_arch&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv-oOOAUDwdha3Ap6VzIGR71GN5v2zur7BFdWfszzje4mlRcsR2g1o_kChgXdFoWaT6ar5Qy3tMUHkmUk8IkSZKSxSEn4nB_adx8vkGhyphenhypheniNVkCx89ZWkf6rl0tBZtOsGteHyRYUKEUksco/?imgmax=800&quot; width=&quot;500&quot; height=&quot;315&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Versioning is implemented by including a &lt;i&gt;div&lt;/i&gt; element on the Gateway page with the version number of the script that users should be using. &lt;/p&gt;  &lt;pre&gt;&amp;lt;div id=&amp;quot;gm-script-ver-415&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;The Greasemonkey script looks for the div tag with it&#39;s version number. If it does not find it, it will not make the &lt;i&gt;Enter the Site&lt;/i&gt; link visible. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&amp;#160;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;The Solution Step by Step&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;Check 1: Is the browser Firefox?&lt;/b&gt; If not, a message discloses the problem. &lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWGgan1pKQA6sj9AqLPmwDjRqlxpkojGIV_CVjX2AihIJOfJnwXaCiqCV2mA53zpAcGQKN8ntKtB88ko7nB5u6WH_acFx88qT-wLQAip0Kalt33XX5VXD_tJ4rjThJ3mmBLo6zshquKyln/s1600-h/greasemonkey_demo_error_IE%5B6%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_demo_error_IE&quot; border=&quot;0&quot; alt=&quot;greasemonkey_demo_error_IE&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDpJqmcl1vGEzogiL3EMtx0bi6YnYjvr5awHzRPm-tBRXvryZhcJ5MCANKQYu9RgIn1gYKMgEUd5CD3sG34jiRtsEvR5I4O7pgZFK9N236XSIw6CbFwPwYDICSlCKclRrkJSeaXLQ0vNKR/?imgmax=800&quot; width=&quot;502&quot; height=&quot;106&quot; /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;Check 2: Is Greasemonkey and the script installed?&lt;/b&gt; If not, the page offers the download links for both. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgftyyGo6f5GfuSXLLafaJL9561qIrJ8CRPxf2vDG3f51pcFv2NvstTwNPh2CXxX8MPIqK6GLItJ2CrqXzSwVExE2dDMeL6vO8KphWiUURo1tqJfENdJD_vJUv9QxCt0xOrkutpAq1p6El1/s1600-h/greasemonkey_demo_error_GM%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_demo_error_GM&quot; border=&quot;0&quot; alt=&quot;greasemonkey_demo_error_GM&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMrmNf26TmB-ifqpuREKPa1gl_VkP1MreO5yUZ7a28EWEx78JKOV2uCNY6696I7HsHPsP5OH5HRV5dCwXRKYW0pPstSNLNYSlp3zUsDHXGqC1vmz8Q61k_qkysTiN3xMPvVKBVL3yG3Qev/?imgmax=800&quot; width=&quot;502&quot; height=&quot;223&quot; /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;Check 3: Is the Greasemonkey script the current version?&lt;/b&gt; If not, the page offers the download link for the latest version. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjruACjxJ1j02pam7R9_6Jr3BvkBIjecM2klB7B_dUm8X8kBX4Q6sDjBqiffIhYd10PxDMMdX_3MCFwsGQUfQBQNYXNpIIJxYLVxgVTRge26GzmvjwkMPzemnqXT02IUGTQGKUN7bVXIrYI/s1600-h/greasemonkey_demo_error_VER%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_demo_error_VER&quot; border=&quot;0&quot; alt=&quot;greasemonkey_demo_error_VER&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE9xeXms3LTHsDJt03AaargNBtkMcTEd2htSWkC5pI4ak6n0AdSGTOh6PGh2Bbi7lSt6spL_q13Y3EkFTSd5c2Xav0QkmiuIFEUys5qeb66Pc7Gw0gZEMGqBbjU98Ur4hrKw3957ufEgCZ/?imgmax=800&quot; width=&quot;502&quot; height=&quot;152&quot; /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;Success: The browser is properly configured.&lt;/b&gt; The user is allowed to continue if all checks pass. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiQYrpd3_jwpvUpw6bsUO6yIRuVN03iz5SXHl6ULqG3dNjpD6JnVsK_bwHj1qIbhwOGsPfGkXx-4oRfeNJVO2QePCCrkdkCORyDNv-4P6z56y3H_igkhchIz9sozLivfobQMfCo5s05QRFu/s1600-h/greasemonkey_demo_success%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_demo_success&quot; border=&quot;0&quot; alt=&quot;greasemonkey_demo_success&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTPz2VJJ5ErQKNVhu8iCZBBMDeKtK1W3GiWP7xiDzXXb84DeYYPupFa84EV_z2Zs5RKiN4qWiiX6jzUtcLMGi36dZlMgZ7aP2DGgMavmgiOe72UtMQ4UVxM8PeI4lRM7I6IIi5NFytjNwn/?imgmax=800&quot; width=&quot;502&quot; height=&quot;210&quot; /&gt;&lt;/a&gt; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Implementing the Solution&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I didn&#39;t include the code in this blog but it is attached &lt;a href=&quot;http://dev2dev.bea.com/blog/plaird/versionedgreasemonkey.zip&quot;&gt;here&lt;/a&gt;. The code is fairly short, and so you should be able to repurpose it for your needs quickly. Also, for illustration, I have deployed an online demo. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;http://ajaxmashup.googlepages.com/versioned_greasemonkey_gateway.htm&quot;&gt;&lt;b&gt;Online Demo&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I am hoping others will provide alternative solutions - please speak up if you have built one. The solution I built is passive - it requires the user to navigate across the Gateway page. It is easy to imagine a more active solution, one that would use an XmlHttpRequest to periodically phone home to see if an updated script has been published. That type of solution would need to cache the answer, otherwise it&#39;s impact to the network could be substantial. I would think that the GM preference store could be used as a cache. &lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Greasemonkey Versioning on the Web:&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;There are others who have talked about the versioning issue. Here are some links: &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;http://gmvc.lucanos.com/&quot;&gt;GMVC (Greasemonkey Version Control)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;i&gt;&amp;quot;The objective of this project is to create a database-driven repository of GreaseMonkey Userscripts which allows for the archiving of previous versions, the release of production versions and the limited released of alpha and beta test versions through the same site.&amp;quot;&lt;/i&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;http://www.allpeers.com/blog/?page_id=104&quot;&gt;AllPeers Blog Entry&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;i&gt;&amp;quot;A first step would be to give web authors at least the option of making their sites script-friendly. This would involve placing a special header on their webpages that can be tied to a specific version of a Greasemonkey script, like so:&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&amp;lt;head&amp;gt; &amp;lt;meta greasemonkey:somescript.js=&amp;quot;1.2&amp;quot;/&amp;gt; &amp;lt;/head&amp;gt; &amp;quot;&lt;/i&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href=&quot;http://www.jeff-barr.com/?p=271&quot;&gt;Jeff Barr&#39;s Blog&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;br /&gt;&lt;i&gt;&amp;quot;At some point I could see the need for what we could call &amp;quot;Enterprise Greasemonkey,&amp;quot; a tightly packaged version of Greasemonkey with a number of scripts installed and locked in to place. This would give system administrators the ability to deploy specialized versions of Firefox to users who don&#39;t need to know how to install, customize, or disable Greasemonkey scripts.&amp;quot;&lt;/i&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h5&gt;Resources:&lt;/h5&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://ajaxmashup.googlepages.com/versioned_greasemonkey_gateway.htm&quot;&gt;&lt;b&gt;Online Demo&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://ajaxmashup.googlepages.com/versionedgreasemonkey.zip&quot;&gt;Code Download&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://www.greasespot.net/&quot;&gt;Greasemonkey Home&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;  &lt;li&gt;&lt;a href=&quot;http://diveintogreasemonkey.org/&quot;&gt;Dive Into Greasemonkey&lt;/a&gt; - a great guide to GM &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;  &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:dc33a06e-a8a2-4ec5-b18c-b28b8af95480&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/Greasemonkey&quot; rel=&quot;tag&quot;&gt;Greasemonkey&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Enterprise&quot; rel=&quot;tag&quot;&gt;Enterprise&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/2573289195620092626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/2573289195620092626' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2573289195620092626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/2573289195620092626'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-solving.html' title='Enterprise Greasemonkey: Solving the Greasemonkey Script Versioning Problem'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv-oOOAUDwdha3Ap6VzIGR71GN5v2zur7BFdWfszzje4mlRcsR2g1o_kChgXdFoWaT6ar5Qy3tMUHkmUk8IkSZKSxSEn4nB_adx8vkGhyphenhypheniNVkCx89ZWkf6rl0tBZtOsGteHyRYUKEUksco/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-3125311873474464081</id><published>2007-08-18T01:48:00.000-06:00</published><updated>2009-08-11T22:53:11.101-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="greasemonkey"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Enterprise Greasemonkey: Beware of Greasemonkey&amp;#39;s Inverted Security Model</title><content type='html'>&lt;p&gt;I have been blogging about the power and usefulness of a tool called Greasemonkey. I have also explained when Greasemonkey is a good tool for use within the enterprise. But before you rush off and use it in your next IT project, you must understand an important issue with the tool. That issue specifically is Greasemonkey&#39;s security model, which was designed to protect benevolent scripts from evil websites. But from IT&#39;s point of view, the Greasemonkey security model is inverted - it trusts the wrong people. Within the enterprise, the IT hosted websites are trusted. It is the Greasemonkey scripts that may be evil. This blog entry explains the issue, and discusses some coping strategies. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: &lt;/strong&gt;this blog entry was originally posted August 18th, 2007 on my previous blogging system (dev2dev.bea.com). Comments on the old blog were not transferred.&lt;/p&gt;  &lt;p&gt;This is part 4 of a series of blog entries on Greasemonkey mashups. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Blog 1: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/more-mashups-using-greasemonkey-to.html&quot;&gt;More Mashups: Using Greasemonkey to Weave New Features into Web Sites&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 2: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/building-greasemonkey-mashup-tutorial.html&quot;&gt;Building a Greasemonkey Mashup Tutorial&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 3: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/greasemonkey-in-enterprise-when-is-gm.html&quot;&gt;Greasemonkey in the Enterprise: When is GM the Right Tool for IT?&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Blog 4: &lt;/strong&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-beware-of.html&quot;&gt;&lt;strong&gt;Beware of Greasemonkey&#39;s Inverted Security Model&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/li&gt;    &lt;li&gt;Blog 5: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-solving.html&quot;&gt;Solving the Greasemonkey Script Versioning Problem&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;The Power of Greasemonkey&lt;/h3&gt;  &lt;p&gt;A discussion of the &lt;a href=&quot;http://www.greasespot.net/&quot;&gt;Greasemonkey&lt;/a&gt; (GM) security model needs to start first with a discussion of the power of Greasemonkey. Greasemonkey scripts have enormous power, and so a security model is key to its design. In fact, the original version of GM got the model wrong, which led to &lt;a href=&quot;http://www.eweek.com/article2/0,1895,1838702,00.asp&quot;&gt;urgent pleas to uninstall GM&lt;/a&gt; until the security model was fixed. The urgency of that issue was due to the danger of misuse of Greasemonkey. And that danger is directly related to GM&#39;s power and capabilities. &lt;/p&gt;  &lt;p&gt;The first thing to understand about Greasemonkey is that it has full access to the web page. If a web page is displaying sensitive information like account numbers, Greasemonkey can see it. Therefore, a compromised Greasemonkey can do great damage by virtue of the information it can steal. &lt;/p&gt;  &lt;p&gt;The second issue to understand is that Greasemonkey is powered by JavaScript and has access to features like event handlers. This can enable GM to snoop on anything the user is doing within the page. For example, a compromised Greasemonkey could capture user input, like the entry of a password. &lt;/p&gt;  &lt;p&gt;Finally, Greasemonkey operates at a higher privilege level than normal JavaScript, giving it even more power. The most important capability is the ability for Greasemonkey to be immune to cross domain browser security. Normally, HTTP requests issued from JavaScript (&lt;a href=&quot;http://dev2dev.bea.com/pub/a/2005/08/ajax_introduction.html&quot;&gt;XmlHttpRequest&lt;/a&gt;) can only target URLs in the same network domain (e.g. bea.com) as the parent page. This restriction was put in place to help limit (it does not totally prevent) cross site scripting (&lt;a href=&quot;http://en.wikipedia.org/wiki/Xss&quot;&gt;XSS&lt;/a&gt;) attacks. However Greasemonkey, as a plugin, is immune to this restriction. This is a most useful feature when building mashups, but it is does mean that Greasemonkey is operating with higher privileges. It can issue requests to whatever URL it wants, perhaps allowing it to send sensitive data to a malicious web server. &lt;/p&gt;  &lt;p&gt;In summary, Greasemonkey is a powerful tool. But just as this power can be put to good use, it can also cause much damage when under the control of malicious parties. The rest of the blog describes how Greasemonkey provides protection, and why IT will have concerns about it in the enterprise. &lt;/p&gt;  &lt;h3&gt;The Greasemonkey Security Model - Trust the Scripts&lt;/h3&gt;  &lt;p&gt;Currently, Greasemonkey is a tool in use on the greater world wide web. I don&#39;t know the number of people using it, but let&#39;s speculate that at most its only a few percent of the users on the web. Let&#39;s also speculate that the people using it are fairly sophisticated computer users that know what they are doing. In this situation, we have a small community of users that probably don&#39;t attract a lot of attention from the black hats out there. Even if they did, the users have the ability to self-regulate and guard against attackers. Every script is human readable, and so users can look at every script before installing them to determine if the script is safe. &lt;/p&gt;  &lt;p&gt;With this understanding of the use case, we can now look at the security model. The Greasemonkey security model operates with the following assumptions: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Trust the Greasemonkey script; the user installed it and therefore it can be trusted not to abuse the powers described above. &lt;/li&gt;    &lt;li&gt;Do NOT trust the targeted web sites. Do not allow those sites any access to GM objects or APIs. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;What this means is that the focus of the Greasemonkey security model is on malicious web sites. This came about because the first security model was vulnerable to such attacks. A well crafted web site could steal cookies and even files off the machine of the unsuspecting Greasemonkey user. The security model was revised in 2005, and great care has been taken to prevent web sites from hijaking the privileges of Greasemonkey to do harm. For a great article on how this was accomplished, read &lt;a href=&quot;http://www.oreillynet.com/pub/a/network/2005/11/01/avoid-common-greasemonkey-pitfalls.html?page=1&quot;&gt;Mark Pilgrim&#39;s explanation&lt;/a&gt; of XPCNativeWrappers and how they protect GM. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3vnyGoLbls-Qz26d936ZKhAiAcaoV74o-D3TASwTOc0SniwRs8x7SSB9otLOLe2T6sHvWMlpK8yb-pdcRITTbkjW9crTwh2TxDUwLarjW6qn1myFP54dRjf-LGEfFkeOhk_tfbMJQBbkp/s1600-h/gm_publicsecmodel%5B4%5D.jpg&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;gm_publicsecmodel&quot; border=&quot;0&quot; alt=&quot;gm_publicsecmodel&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTkpFJaBeP3jjeg2Iqm2gsdSXVdbb02cytBFf29SZeZJmlNjuE42ThTP20t6UgerYhAuIXf6683zY3axMgT7L2R0khhQ1PSgb6XmZtWgdG7RD8bU-g4P-4W8zVh7Or8_mwS-9OI0-FoAkn/?imgmax=800&quot; width=&quot;500&quot; height=&quot;417&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;While attacks from malicious web sites should no longer be a problem, Greasemonkey is still vulnerable from certain kinds of attacks. Specifically, the security model does NOT have facilities for detecting or preventing malicious user scripts. Therefore, the user must be careful to only install scripts from trusted sources. This model is in use for the public web, but is it the right model for the enterprise? &lt;/p&gt;  &lt;h3&gt;The Enterprise Greasemonkey Security Model - an Inversion of Trust&lt;/h3&gt;  &lt;p&gt;Moving into the Enterprise, the angels and demons flip sides. In the enterprise, IT primarily owns the web sites. Rogue IT employees aside, these sites can be considered trusted and safe. But in this case the GM users aren&#39;t as sophisticated, and there is greater potential for them picking up malicious scripts. These are the same users that have been clicking on .EXE email attachments for years. IT cannot trust that this user community will correctly protect themselves from evil scripts. &lt;/p&gt;  &lt;p&gt;From IT&#39;s point of view, the Greasemonkey security model is &lt;b&gt;inverted&lt;/b&gt; - it trusts the wrong people. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNTyPnTogrNsFbbIx8ii7f04UokoCu8V82TeGr5hWEPp7lnHYQnPvFXKr9J8X2Zl4RcDd7eGjitDC3471V1xmDtVHzVH0g1jrAB4UH_l-ySBan9vrssAz74YTEmuf5gA3jSmf3ukDTmhhy/s1600-h/gm_enterprisesecmodel%5B4%5D.jpg&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;gm_enterprisesecmodel&quot; border=&quot;0&quot; alt=&quot;gm_enterprisesecmodel&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhl8PfoI5QNzjoP4G9E01W40z84e1yahSC0W9YUN6QcY5-mZNrPQgOum9RW-JY553w5cBz5AckMVZUjLOWr_GQkNM8bIBZMGyExqbGbEVds8Dz8zTEGxYwODkBJLvlSDkzNrge4qxzXZjKV/?imgmax=800&quot; width=&quot;500&quot; height=&quot;417&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Whether this is a fatal flaw that prevents an enterprise from using Greasemonkey universally is a decision IT must own. Personally, I don&#39;t think Greasemonkey should be a part of an enterprise wide application roll-out. But I do still think it has it&#39;s place in niche solutions. The Greasemonkey Selection Framework introduced in my previous post should help guide when it is the right tool. &lt;/p&gt;  &lt;p&gt;Admittedly, it is valid to view &lt;b&gt;any&lt;/b&gt; sanctioned Greasemonkey use as reckless, because it could open a Pandora&#39;s box. Once users get a hold of it for authorized uses, it may lead to other unauthorized use within the enterprise. This is something for IT to bear in mind when considering if Greasemonkey is an appropriate tool. As a counterpoint, malicious attacks aren&#39;t limited to Greasemonkey scripts. .DOC and .PDF files both have been used in the past in attacks, but that has not prevented enterprise use of those technologies. &lt;/p&gt;  &lt;h3&gt;Malicious Greasemonkey - a Real World Example&lt;/h3&gt;  &lt;p&gt;To show that Greasemonkey scripts can be a real danger, take a look at this image below. It is a screen shot of the public Greasemonkey script repository, and it currently displays a big warning message. Apparently, a malicious script writer has been publishing evil scripts to the public at large. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgydD1gnXjq-_iRy7A59SORiK-bg34Zg7F_-ParV57cI_09kOn7mdldcKzVn4EMBDnL3utdKb-mv9E0-Egi7PHucTcvqJIprMzZEP-Nvye-MPHKFwuPgVdbe6GCI1SPgKP9HjON4lKccGLE/s1600-h/greasemonkey_malicious_scripts%5B4%5D.png&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_malicious_scripts&quot; border=&quot;0&quot; alt=&quot;greasemonkey_malicious_scripts&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj52agmHC6O5tzqGBetbnFCVcFhnr9eQm5BmECG4Hg5MK-bkM6m8MvL8T8a7PK1L3upgXP92FwicGV4z5JC-136H6WMTqNdlfQLWv8TuVedEpkIT54AkSqjpBUeD16qYK23j8r5qtnpGXok/?imgmax=800&quot; width=&quot;500&quot; height=&quot;254&quot; /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;One could argue that this proves that the community approach works. Community members discovered the malicious behavior and have taken action to remedy it. But within the enterprise, would the users be able to catch such a problem? &lt;/p&gt;  &lt;h3&gt;Enterprise Solutions for the Greasemonkey Security Model&lt;/h3&gt;  &lt;p&gt;Now that you are aware of the problem, let&#39;s talk about how IT can solve the problem of the inverted security model. Unfortunately, a server side solution is not attainable. By design, a content page cannot know about or have access to the user script. Therefore a server side solution cannot prevent a malicious script from running on the page. In fact, public web sites that generate their revenue through ads have feared this problem for years. There is no way for these sites to stop the ad blocking Greasemonkey scripts. &lt;/p&gt;  &lt;p&gt;We must look to the client for the solution. Unfortunately, Greasemonkey does not currently have a technical solution to this problem. For instance, there isn&#39;t a feature that prevents non-IT approved Greasemonkey scripts from being installed. Once the plugin is installed, the user is free to install any script, and there is no way to detect if that script has been tampered with. So if a coworker sends out an email like &amp;quot;Check this out, I updated the script to add a new feature&amp;quot;, unwitting users may pick up a malicious script. &lt;/p&gt;  &lt;p&gt;Instead, IT must rely on some coping strategies: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Train workers to treat Greasemonkey scripts with as much suspicion as an .EXE file &lt;/li&gt;    &lt;li&gt;IT must host a read-only web site for all scripts to be published where they cannot be tampered with; do not just throw them on a file system &lt;/li&gt;    &lt;li&gt;Beg the Greasemonkey developers to add a signing feature &lt;/li&gt; &lt;/ul&gt;  &lt;h5&gt;Further Reading on the Greasemonkey Security Model&lt;/h5&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href=&quot;http://www.oreillynet.com/pub/a/network/2005/11/01/avoid-common-greasemonkey-pitfalls.html?page=1&quot;&gt;Mark Pilgrim&#39;s explanation&lt;/a&gt; of XPCNativeWrappers and how they protect GM. A must read for understanding how it works. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.mozdev.org/pipermail/greasemonkey/2005-July/004022.html&quot;&gt;Original Greasemonkey Fatally Flawed&lt;/a&gt; - mail thread discussing the flaw with the original security model. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;amp;articleId=9015599&amp;amp;pageNumber=3&quot;&gt;Top 10 Firefox Extensions to Avoid&lt;/a&gt; - Greasemonkey makes the list because of the security model. &lt;/li&gt;    &lt;li&gt;&lt;a href=&quot;http://www.firefoxfacts.com/2007/07/09/greasemonkey-security-issues/&quot;&gt;Evil Scripts in the Public Repository&lt;/a&gt; - blog entry talking about how userscripts.org now must carry the warning about the evil scripts. &lt;/li&gt; &lt;/ul&gt;  &lt;h3&gt;Final Greasemonkey Blog Post Coming Shortly...&lt;/h3&gt;  &lt;p&gt;The last post in this Greasemonkey series should be done soon...I will show how I implemented a deployment and versioning system for Greasemonkey scripts. &lt;/p&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:1efb7f28-1f0c-4081-943a-a39157e5d13b&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/Greasemonkey&quot; rel=&quot;tag&quot;&gt;Greasemonkey&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Enterprise%20Security&quot; rel=&quot;tag&quot;&gt;Enterprise Security&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/3125311873474464081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/3125311873474464081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3125311873474464081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3125311873474464081'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-beware-of.html' title='Enterprise Greasemonkey: Beware of Greasemonkey&amp;#39;s Inverted Security Model'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTkpFJaBeP3jjeg2Iqm2gsdSXVdbb02cytBFf29SZeZJmlNjuE42ThTP20t6UgerYhAuIXf6683zY3axMgT7L2R0khhQ1PSgb6XmZtWgdG7RD8bU-g4P-4W8zVh7Or8_mwS-9OI0-FoAkn/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8340047883666444153.post-3514182679926330795</id><published>2007-08-17T01:42:00.000-06:00</published><updated>2009-08-11T22:50:05.775-06:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="enterprise"/><category scheme="http://www.blogger.com/atom/ns#" term="greasemonkey"/><category scheme="http://www.blogger.com/atom/ns#" term="security"/><title type='text'>Greasemonkey in the Enterprise: When is GM the Right Tool for IT?</title><content type='html'>&lt;p&gt;As I have covered in previous blogs, Greasemonkey is a powerful client-side tool for augmenting web sites or creating mashups. It consists of a Firefox plugin coupled with scripts that are written and installed to modify web pages as they return from a web server. Greasemonkey generally is a tool for techies who want to tweak their favorite sites around the web. But does Greasemonkey have a place in the toolbox of IT departments in the enterprise? My next few blog entries will work towards an answer to that question. In this installment I will introduce a framework for measuring whether Greasemonkey is a good solution for a specific enterprise project. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;NOTE: this blog entry was &lt;/strong&gt;&lt;strong&gt;originally posted&lt;/strong&gt;&lt;strong&gt; August 17th, 2007 on my previous blogging system (dev2dev.bea.com). Comments on the old blog were not transferred.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is part 3 of a series of blog entries on Greasemonkey mashups. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Blog 1: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/more-mashups-using-greasemonkey-to.html&quot;&gt;More Mashups: Using Greasemonkey to Weave New Features into Web Sites&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 2: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/07/building-greasemonkey-mashup-tutorial.html&quot;&gt;Building a Greasemonkey Mashup Tutorial&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;strong&gt;Blog 3: &lt;/strong&gt;&lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/greasemonkey-in-enterprise-when-is-gm.html&quot;&gt;&lt;strong&gt;Greasemonkey in the Enterprise: When is GM the Right Tool for IT?&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; &lt;/strong&gt;&lt;/li&gt;    &lt;li&gt;Blog 4: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-beware-of.html&quot;&gt;Beware of Greasemonkey&#39;s Inverted Security Model&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Blog 5: &lt;a href=&quot;http://peterlaird.blogspot.com/2007/08/enterprise-greasemonkey-solving.html&quot;&gt;Solving the Greasemonkey Script Versioning Problem&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;An Enterprise Use Case for Greasemonkey&lt;/h3&gt;  &lt;p&gt;You probably did not learn about Greasemonkey (GM) in a Computer Science class at University. When drawing up an ideal solution for delivering a web application, Greasemonkey is probably no where in sight. The truth is Greasemonkey is a pragmatic solution for real world problems when other options aren&#39;t available. It is not the cleanest solution, but it makes up for that by being effective. It will always have detractors who will dismiss it as a hack, and an evil one at that. While its shortcomings cannot be denied, it is a mistake to dismiss it. &lt;/p&gt;  &lt;p&gt;Greasemonkey has the potential of fast tracking IT projects that would otherwise never get implemented. It can also lower the bar for IT skill sets - a junior scripter can use it to modify the most complex of web applications. I feel that Greasemonkey deserves a place in your IT toolbox, and should be an option when it is an appropriate solution. &lt;/p&gt;  &lt;p&gt;But I will be the first to say that Greasemonkey is not for everyone, and is not for every project. Greasemonkey definately has a sweet spot. Outside of that sweet spot, you are best off looking at another solution like other mashup tools or custom development. &lt;/p&gt;  &lt;p&gt;For a quick example of good GM use case, imagine a web application in the enterprise with these characteristics: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;It is a closed source packaged application, purchased and installed from an external vendor by IT. &lt;/li&gt;    &lt;li&gt;It is used by a modest sized group of users, all of which are comfortable with computers and web browsing &lt;/li&gt;    &lt;li&gt;There are a couple of missing features that dramatically hurt productivity &lt;/li&gt;    &lt;li&gt;Those features can be easily woven into the application using a Greasemonkey script &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This web application would make a good candidate for augmentation with Greasemonkey. A GM script could be quickly created that would add the missing features without needing to acquire the source code for the application. The deployment of the script would be relatively simple - the user population is modest in size and are technically competent. IT could be a hero by providing a quick solution to an expensive problem. &lt;/p&gt;  &lt;p&gt;But what makes this use case a good fit for Greasemonkey? What other applications are good candidates for a Greasemonkey mashup/augmentation? What guidelines should you use when deciding if Greasemonkey is right for a given project? This blog will answer these questions. &lt;/p&gt;  &lt;h3&gt;Greasemonkey Selection Framework&lt;/h3&gt;  &lt;p&gt;This section provides a framework for evaluating whether Greasemonkey is a good fit for an enterprise project. Like any software selection process, you must consider many factors before choosing a best fit solution. You cannot base your decision on a single factor; you must sum the overall suitability against the project requirements. The list below enumerates a number of factors to look at before making your choice. For each factor, I explain when Greasemonkey is best suited. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhu_dhzR3qeSNC5fcRMys2cMySbhNxA4LcBcfUCsJYJmId59go8C0i6sSVI4-OMEPBAi-xzSaFdVJd0A_1Xw4CuyZVI2Oe-Xk0rqMh804NZ-pwvVRnnOyXvQ9W2FkCRXprEflmc1lwm8Hwk/s1600-h/greasemonkey_logo%5B5%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwOIrthRNEJNIKi2CDBBrGfhOlJQizgRqwHTEpE2eWYFNK4Fx2oge1gMeFjoZGxsxieaMWTQm1oRD0A_TULphiuuvApnMVAMvZfWRipDp-j2QJ_UR3y7TCKU2y0YTQajtPSAwdrwsrMR5j/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt; &lt;b&gt;Factor: Do you have access to the source code of the web application?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; IT brings in many packaged applications from external vendors. In such cases, IT may not have access to any source code, or only a partial set (like the HTML files). For applications home grown within IT, this is not an issue as the source code is available.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; When the source code is available, it may be easier to just update the original application. Greasemonkey is indicated more when the source code is unavailable. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHBuMcWMr4zT0TZyNAY2mL6yr0T0S1kSln4efC2-SDscgl0z4HvaLA6JO7Gg9lQWDfmRIOHxO5kLabVhlUC2rpmmUKVpijNiAqR30u1l5iYiLveCs77JUSLLlw4AlFVkS3aIA27Q-ISQ3j/s1600-h/greasemonkey_logo%5B4%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxpkhf1V-tsYTYd_EwU1vxFheNPSfhR37KU04DA7mvoUN8OThuZDYvmtRifULWkLrr_qe4urLAQucNwyQOpH7FeMT35yp79BLkH6we69xLcaQJpouWfgvdWRKl8jT6DHh1Ulv6F5g0f30A/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: The application is home grown and the source code is available. But updating the application is very risky?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Even if the source code for an application is available, it may not be cost effective to update the application directly. Perhaps all of the original developers are gone, and there is little documentation on how the site was built. Or perhaps the current staff is unfamiliar with the technology that was used to implement the site. If the code base is complex, it may be risky to make any modification to the source code.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Greasemonkey can be a safer solution for adding new features to web applications that are risky to touch. The Greasemonkey script is externalized from the web application, and so the new development is clearly separated from the legacy application. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: How critical is the feature to be added?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Is the feature a productivity enhancement, or is the application as-is no longer valid without the update? An example of the latter would be a feature related to a compliance project. In order for the legacy application to update company financial data, a new &amp;quot;explanation&amp;quot; field needs to be added to a web form for auditing purposes. Users must not submit this form without the added field.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; It would be difficult to enforce that a user have the Greasemonkey installed and up to date (although the last blog entry in this series will offer a possible solution for this). Therefore, if an application is not valid without the new feature, Greasemonkey may not be the right solution for implementing that feature. For optional features such as productivity enhancements, Greasemonkey is a great solution. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Is Firefox certified for use in the enterprise, and does it work with the target application?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; This factor is obvious, but be careful not to miss this in your software selection. Greasemonkey requires Firefox (there have been attempts to port to IE (&lt;a href=&quot;http://www.gm4ie.com/&quot;&gt;gm4ie&lt;/a&gt;, &lt;a href=&quot;http://www.daishar.com/blog/archives/2005/03/greasemonkey_fo.html&quot;&gt;GreasemonkIE&lt;/a&gt;), but are they complete/solid?). Also, some web applications may not work correctly with Firefox.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; If your enterprise does not support users on Firefox, Greasemonkey is not an available solution. Also, if the target web application does not work well with Firefox, Greasemonkey is not a great fit for the project. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: To what degree are the target users computer literate?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Within the enterprise, there is a broad range of computers skills amongst the employees. Greasemonkey does require users to be able to follow directions on installing Firefox, the Greasemonkey plugin and the required scripts.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; The more computer literate the user base, the better for Greasemonkey. While installing plugins and scripts seems like a no-brainer for anyone that would be reading this blog, it is a true obstacle for many within the enterprise. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: What size is the user population that needs the new feature?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; The appeal of web applications is in their ease of deployment. IT need only manage the application on a few server machines in the data center. Updates are efficiently deployed. Client side solutions are generally more expensive to deploy, as each client needs to be updated with each new version.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; The cost of deploying a Greasemonkey script to a small user population is likely modest. On the other hand, deploying a new version of a Greasemonkey script to a huge user population is an expensive proposition, particularly when computer literacy is an issue (see above). Greasemonkey is best when the user population is small. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Is the application exposed to the public internet?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Many enterprise applications are available to a closed audience of employees and partners. But some applications are also exposed out to customers and the general public on the internet.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Because Greasemonkey requires Firefox, the GM plugin, and the proper user scripts installed, Greasemonkey is a good solution when the user base is well known and constrained. Otherwise support costs and customer complaints will be high (&amp;quot;Hello, Avitek Industries, how may I help you?&amp;quot;; &amp;quot;Your website says I need Firefox. What is a Firefox?&amp;quot;). &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: How often is the page structure in the web application changing?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Regardless of who is changing the web application (IT, or the ISV if it is a packaged application), every update has the potential of breaking existing Greasemonkey scripts. Minor changes to the content will probably be safe, but bigger changes to the page templates will almost certainly cause problems.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Greasemonkey works best if the structure of the pages within the target web application is not changing substantially. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Does the application manage or expose sensitive information?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Some enterprise web applications are low security risks. The site that hosts a monthly employee newsletter probably is not much of a concern from a security point of view. A payroll system is quite the opposite; the consequence of a security breach is severe.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; My next blog entry in this series will discuss the Greasemonkey security model and why it is not a great fit for the enterprise. Based on that analysis, Greasemonkey is not a good choice for adding features to highly sensitive enterprise web applications. Further, some IT Managers may feel GM is too risky to allow at all. More to come in the next post... &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Does the new feature require many changes to the existing web application?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Javascript can update the DOM of an HTML page quite easily. But for each update on a page, there is code involved. Writing raw HTML (in an .html file, a JSP/ASP file, etc) is far easier than a similar effort in JavaScript code.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Greasemonkey is a great fit for features that can be implemented with a few snips to the target HTML. As the number of distinct changes to a page increases, the suitability of Greasemonkey decreases. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Does the target web application already have JavaScript code that mutates the page?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; The web application may have JavaScript code that modifies the page structure. This may be in support of Ajax capabilities, or just the way the initial page load was implemented. A Greasemonkey script runs before any page defined JavaScript runs. This may or may not be a good thing.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Implementing a feature with Greasemonkey may be difficult if the page is already mutating itself with JavaScript. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEixtbfrqcEvojMEU2VV-Iqa8c38iqfETgs4ut5xcBYxIW-hdMgocnl1A0kh6kEf1kiAKTNI6mxK6kLW7ln8HER3bUNFbVuOO8tDUOtVCnwCE4FFPxHA4kDtxHfmc2g375WMkvCXEWbbvs1I/s1600-h/greasemonkey_logo%5B3%5D.gif&quot;&gt;&lt;img style=&quot;border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px&quot; title=&quot;greasemonkey_logo&quot; border=&quot;0&quot; alt=&quot;greasemonkey_logo&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhi7eOG7sLwPUfHBWXVny608BjP1eRNNZ9gkGx8fKi3_1QP31p8iGEVxy9EwD_DiITsMDv1hZeyXqDArKVY5pkHLtrkmVDpoHwklWdMFLDiVApaA-nE9SzVR-VUjiNcbnk_VMfnT9RTPeVd/?imgmax=800&quot; width=&quot;25&quot; height=&quot;25&quot; /&gt;&lt;/a&gt;&lt;b&gt;Factor: Does the feature require communication with a server in a different network domain than the web application?&lt;/b&gt;     &lt;br /&gt;&lt;b&gt;Description:&lt;/b&gt; Browser based programmatic requests initiated from JavaScript (XmlHttpRequests) are restricted in their reach - they must not cross a network domain (e.g. bea.com). This is browser security, and this is generally good. But if you are adding a mashup feature to the web application, this would normally prevent the feature from being implemented in the browser. However, Greasemonkey scripts are not subject to this limitation, and can issue an XmlHttpRequest to any network domain.     &lt;br /&gt;&lt;b&gt;Greasemonkey Fit:&lt;/b&gt; Greasemonkey is a good fit when you wish to implement the feature in the browser but need to connect to a different network domain. &lt;/p&gt;  &lt;h3&gt;Favorable Enterprise Greasemonkey References&lt;/h3&gt;  &lt;p&gt;To see how others have used Greasemonkey on enterprise projects, or for opinions on how Greasemonkey can add value to the Enterprise, consult these links:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.kaply.com/weblog/2007/06/19/firefox-in-the-enterprise-part-2-benefits/&quot;&gt;&lt;b&gt;Greasemonkey Improves Productivity&lt;/b&gt;&lt;/a&gt; - this company uses Greasemonkey to speed up enterprise form entry &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://redmonk.com/sogrady/2005/07/14/more-greasemonkey-goodness-greasemap/&quot;&gt;&lt;b&gt;Enterprise Greasemonkey is Inevitable&lt;/b&gt;&lt;/a&gt; - &amp;quot;...sooner rather than later we&#39;re going to see GM within the enterprise - if only b/c they have the potential to take some of the load off of beleaguered, shortstaffed IT staffs.&amp;quot; &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://wiki.mozilla.org/Enterprise&quot;&gt;&lt;b&gt;Firefox in the Enterprise Working Group&lt;/b&gt;&lt;/a&gt; - focuses on a larger issue than just Greasemonkey, but this expert group is looking at some of the issues noted above. &lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://confluence.atlassian.com/display/JIRAEXT/JIRA+Greasemonkey+Worklog+Helper&quot;&gt;&lt;b&gt;Using Greasemonkey to Enhance Auditing&lt;/b&gt;&lt;/a&gt; - this script adds time logging capabilities to JIRA. &lt;/p&gt;  &lt;h3&gt;Anti Enterprise Greasemonkey References&lt;/h3&gt;  &lt;p&gt;And the opposing view. There are those who think IT should stay well away from Greasemonkey:&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.forrester.com/Research/Document/Excerpt/0,7211,36708,00.html&quot;&gt;&lt;b&gt;Greasemonkey Primes Firefox For Embarrassment &lt;/b&gt;&lt;/a&gt;- this is an article you have to pay good money to read. Here is an excerpt from the abstract: &amp;quot;But IT managers beware: Greasemonkey will cause you nothing but headaches...&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;a href=&quot;http://www.allpeers.com/blog/?p=69#comment-2374&quot;&gt;&lt;b&gt;[Greasemonkey] is Evil&lt;/b&gt;&lt;/a&gt; - &amp;quot;What&#39;s evil is the idea you mention that we&#39;ll end up making sophisticated infrastructure like automated script updaters in an attempt to turn a quick-and-dirty hack into a robust solution.&amp;quot; &lt;/p&gt;  &lt;h3&gt;The Story Continues...&lt;/h3&gt;  &lt;p&gt;My next blog entry will discuss the Greasemonkey security model, and why IT will see it as &amp;quot;inverted&amp;quot; from what you would want. &lt;/p&gt;  &lt;div style=&quot;padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px&quot; id=&quot;scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e7acde95-e246-4975-b616-827fad115375&quot; class=&quot;wlWriterSmartContent&quot;&gt;Technorati Tags: &lt;a href=&quot;http://technorati.com/tags/Greasemonkey&quot; rel=&quot;tag&quot;&gt;Greasemonkey&lt;/a&gt;,&lt;a href=&quot;http://technorati.com/tags/Enterprise&quot; rel=&quot;tag&quot;&gt;Enterprise&lt;/a&gt;&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;  &lt;div class=&quot;blogger-post-footer&quot;&gt;Want short SaaS/Cloud news updates throughout your day? Subscribe to the ondemand Twitter microfeed. http://twitter.com/ondemand&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://peterlaird.blogspot.com/feeds/3514182679926330795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/8340047883666444153/3514182679926330795' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3514182679926330795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8340047883666444153/posts/default/3514182679926330795'/><link rel='alternate' type='text/html' href='http://peterlaird.blogspot.com/2007/08/greasemonkey-in-enterprise-when-is-gm.html' title='Greasemonkey in the Enterprise: When is GM the Right Tool for IT?'/><author><name>Peter Laird</name><uri>http://www.blogger.com/profile/03129951400907428207</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiP8OS93ja8ngAlGSYn-BO0ykgfhKtk4FzgQcwye_LULLKhVLY3oUI3LgeYd6z0Zhi_vNTEfenfj8uHVPSl1PXbbZYWm6axW2XbtZVdDMS8mjpdinKn6895Eialo3ScRA/s220/peterlaird_headshot.jpg'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiwOIrthRNEJNIKi2CDBBrGfhOlJQizgRqwHTEpE2eWYFNK4Fx2oge1gMeFjoZGxsxieaMWTQm1oRD0A_TULphiuuvApnMVAMvZfWRipDp-j2QJ_UR3y7TCKU2y0YTQajtPSAwdrwsrMR5j/s72-c?imgmax=800" height="72" width="72"/><thr:total>0</thr:total></entry></feed>