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

<channel>
	<title>SaaS Blogs: Software as a Service Ideas, News &#38; Business Intelligence &#187; Sinclair Schuller</title>
	<atom:link href="http://www.saasblogs.com/author/sinclair/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.saasblogs.com</link>
	<description>Understanding the &#34;as a Service&#34; Revolution</description>
	<lastBuildDate>Wed, 21 Dec 2011 18:34:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>The Disastrous Consequences of PaaS Provider Lock-in: Why Open PaaS Makes Sense</title>
		<link>http://www.saasblogs.com/business/the-disastrous-consequences-of-paas-provider-lock-in-open-paa/</link>
		<comments>http://www.saasblogs.com/business/the-disastrous-consequences-of-paas-provider-lock-in-open-paa/#comments</comments>
		<pubDate>Wed, 21 Dec 2011 18:34:07 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[General Technology]]></category>
		<category><![CDATA[PaaS]]></category>
		<category><![CDATA[Lock In]]></category>
		<category><![CDATA[open paas]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=577</guid>
		<description><![CDATA[Lock-in is a problem that is as old as the software industry. In fact, there is arguably no way to avoid it entirely. If I choose a programming language, application server, or RDBMS, I would end up writing apps that basically couldn’t run atop of anything but that vendor’s (or community’s, in the case of [...]]]></description>
			<content:encoded><![CDATA[<p>Lock-in is a problem that is as old as the software industry. In fact, there is arguably no way to avoid it entirely. If I choose a programming language, application server, or RDBMS, I would end up writing apps that basically couldn’t run atop of anything but that vendor’s (or community’s, in the case of open source) platform technology. Practically speaking, one would make a conscious choice to use that platform, and know that lock-in is part of the game. I could spend time evaluating the tech, and assuming I did a decent amount of diligence, I would get enough comfort to move forward with it because the perceived benefits outweigh the lock-in risks. The reason I could make this judgment call is that outside of relatively infrequent releases, the evaluation I did today is likely to be valid tomorrow because the underlying assumptions do not change that much over time. In fact, I would have little reason to believe that on a new release, the vendor would drastically changing the platform in a way that was severely out of whack with historical context, and I could even expect pricing to stay in a somewhat reasonable margin of what I’ve paid in the past. This “traditional” form of lock-in was very static in nature because of how fixed the underlying assumptions remained over time, and the ongoing contextual validity one would have with respect to the original decision to be locked in vs. the current state of the platform.</p>
<p>Unfortunately, the negative potential of lock-in has increased in severity due to cloud, and more specifically, due to PaaS. Lock-in risk in PaaS is defined as the sum of two components: a static lock-in risk that is the same in nature (as described earlier) as the platforms of prior computing paradigms and dynamic lock-in risk that is dependent on a set of constantly changing assumptions. When one decides to build apps on a PaaS, they should be evaluating two things:</p>
<ol class="cleanOL">
<li>How good is the ‘P’ part of PaaS – the platform itself? This is an evaluation of the actual runtime, APIs, frameworks, management capabilities, and engineering value I can extract when I write code targeting the platform. Additionally, how proprietary is all of this to the PaaS provider (i.e. how severe is the lock-in requirement to get access to this value? Is it just APIs, runtime behavior, etc. or a new, proprietary and non-standard language?)</li>
<li>How good is the ‘S’ part of PaaS – that is, the service. This is an evaluation of the stability, cost, performance, and quality of the hosting capabilities of the PaaS.</li>
</ol>
<p>Evaluating P is relatively easy because you can experiment with it and get a feel for the value and whether you are willing to trade that value for some lock-in. Additionally, P lock-in is much more static in nature which means that you likely don’t need to worry about significant changes in expectations. The S is scary. Hosting quality, service levels, performance, and price could be one thing today, and something very different tomorrow. You might deploy to a PaaS and say “Wow, things are running so smooth and fast, and the price is just right,” <a title="Oops. Bad move, Sherlock" href="http://www.readwriteweb.com/hack/2011/09/google-ups-pricing-as-app-engi.php" target="_blank">only to have the rug pulled out from under you </a>without notice, <a title="Lock-in is not a problem, just ask CogHead customers" href="http://www.zdnet.com/blog/saas/cogheads-demise-highlights-paas-lock-out-risk/668" target="_blank">or worse</a>. If the P is high/non-standard lock-in and the S is limited or no choice, you’re screwed.</p>
<p>Why does this happen? The short of it is that if a PaaS provider is the exclusive vendor of both P and S, any lock-in to P translates directly into lock-in at S. That is my code can only run where my PaaS vendor tells me it can run. For most PaaS vendors, this means that you can run it on the service provided by – wait for it – the PaaS vendor alone! This is some really dangerous stuff and a tremendous amount of business risk. Having mission critical apps coupled to a hosting layer that needs to prove itself each minute of each day and has a very dynamic nature both in terms of quality and price is not good. How do you protect against this? Some of us (<a href="http://www.apprenda.com/" target="_blank">Apprenda</a>, <a href="http://www.cloudfoundry.com/" target="_blank">CloudFoundry</a>, <a href="http://www.cumulogic.com" target="_blank">Cumulogic</a>, among others) have decided that the P part of PaaS is the high value layer, and that S should be commodity and flexible, and frankly, irrelevant so long as it delivers on basic promises. This ‘Open PaaS’ model is one where rather than having P coupled to a single S, you might have dozens or even hundreds of services that offer the platform, essentially giving the developer choice of where to deploy apps while getting the full value of the platform; a “no lock-in” hosting model. This portable PaaS form factor is here to stay. Not only can one deploy to any service provider that is offering a (hopefully) differentiated instance of that particular PaaS, but the PaaS software is likely downloadable so that you can even download the PaaS software and run it on your laptop. This decoupling of the P from the S is what can bring lock-in down from the clouds (cheesy pun intended), and back to some sense of normalcy. Sure, you still need to commit to the PaaS and adopt its APIs and will grow dependent on its runtime capabilities, but as a customer of ours put it: “<em>I’m OK committing to a platform, I’m not OK being locked into a service provider.</em>”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/business/the-disastrous-consequences-of-paas-provider-lock-in-open-paa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Does PaaS Depend on IaaS? Nope.</title>
		<link>http://www.saasblogs.com/general-technology/does-paas-depend-on-iaas-nope/</link>
		<comments>http://www.saasblogs.com/general-technology/does-paas-depend-on-iaas-nope/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 11:16:37 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[General Technology]]></category>
		<category><![CDATA[PaaS]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=598</guid>
		<description><![CDATA[If you agree with the title, you probably already know where I’m going with this. If you don’t agree, I really hope to change your mind. There seems to be this misconception in the market that PaaS is dependent on the existence of IaaS. Typically we see “cloud stack” diagrams that looking something like this [...]]]></description>
			<content:encoded><![CDATA[<p>If you agree with the title, you probably already know where I’m going with this. If you don’t agree, I <em>really</em> hope to change your mind. There seems to be this misconception in the market that PaaS is dependent on the existence of IaaS. Typically we see “cloud stack” diagrams that looking something like this</p>
<p><a href="http://www.saasblogs.com/images/uploads/2011/12/SaaSPaaSIaaS.gif"><img class="aligncenter size-medium wp-image-627" title="SaaSPaaSIaaS" src="http://www.saasblogs.com/images/uploads/2011/12/SaaSPaaSIaaS-300x141.gif" alt="The cloud stack of SaaS-PaaS-IaaS" width="300" height="141" /></a></p>
<p>I’ve even drawn this myself (and will continue to do so in the context of market education). The problem is that this diagram is intended to communicate a conceptual, “lay of the land” hierarchy that describes a cloud-only stack where all layers are dependent only on other cloud layers. Clearly, there are tons (dare I say even a majority) of SaaS vendors that <em>do not</em> fit this at all. Some have neither PaaS nor IaaS below them, and some have only IaaS below them. Some SaaS vendors didn’t have these options at their disposal when they built their SaaS offerings. If they were starting today, I would encourage them to use a PaaS layer for a number of reasons. PaaS is no different in that one could be built without depending on IaaS. The one difference between PaaS and SaaS, however, is that I <em>wouldn’t</em> encourage anyone to build a PaaS that explicitly depends on an IaaS layer.</p>
<p>PaaS is typically built in one of two ways:</p>
<ol class="cleanOL">
<li>With infrastructure multi-tenancy, where each guest application is isolated from other guest applications by using virtual machines. Each application gets its own dedicated OS instances, so the PaaS isn’t really multi-tenant, but instead, relies on multi-tenancy one layer down. In this case, the PaaS is a fancy packaging system and VM template manager with some load balancer bells and whistles.</li>
<li> With true PaaS multi-tenancy, where the PaaS manages pools of OS resources and co-habits applications on shard OS instances. This is typically achieved using something like process level isolation to safely segregate different guest applications from one another. In this model, there is no inherent functional dependency on virtualization (IaaS or otherwise) because the PaaS does some complex leg work to do its own higher density multi-tenancy.</li>
</ol>
<p>In architecture 1, there is an absolute dependency on either an IaaS or some hypervisor technology. For a variety of reasons, I do not consider this an optimal PaaS architecture. Architecture 2, which I do consider a real PaaS, is doing work inside of the OS rather than outside of the OS. It achieves multi-tenancy using a much different technique. This technique can be layered on any pool of OS resources, physical or virtual. Nothing about architecture 2 creates a hard dependency on virtualization or IaaS.</p>
<p>If a PaaS is built using architecture 2 (which is what we&#8217;ve done with the <a title="Download the PaaS and install anywhere" href="http://www.apprenda.com" target="_blank">Apprenda PaaS</a>), it should purposely avoid acknowledging the existing of a hypervisor technology. In fact, it should assume that everything is a standard OS instance. This does three things:</p>
<ul>
<li>It promotes implementation behavior that prevents the PaaS from being locked into underlying expectations</li>
<li>It ensures that the PaaS provider writes an appropriate systems architecture so that interaction with an IaaS/hypervisor layer can be bolted on as an optimization to ease management of the PaaS. For example, if I am operating the PaaS and I need to provision more capacity on the fly, it would be nice if the PaaS could detect it is running on EC2 and spawn new VMs to include as PaaS capacity, or do the same if it is running in a private cloud environment atop of virtual machines on &lt;insert your favorite hypervisor here&gt;.</li>
<li>Allows a PaaS to be deployed in a reduced complexity and lower cost environment where no virtualization exists. Let’s assume that 10 years from now, an enterprise or public PaaS provider achieves 100% penetration (all new apps going forward only on the PaaS), why keep virtualization around? The apps don’t care about virtualization, and certainly, the PaaS provides the elasticity and insulation from effects of the underlying hardware but at a new layer.</li>
</ul>
<p>The end result is a highly flexible PaaS environment that can be run on any environment (on-premises or in the cloud), and that can still provide integration tooling to optimize deployments on environments where the PaaS has the knowledge and ability to do so.</p>
<p>At CloudExpo 2011 in Santa Clara, there was an expert panel on PaaS that answered a question from the moderator that implied IaaS/virtualization had to exist in order for PaaS to exist. I decide to ask the question of whether the panelists felt PaaS requires the existence of virtualization, and one of my favorite Cloud evangelists, <a href="https://twitter.com/#!/wattersjames" target="_blank">James Watters</a> from CloudFoundry, had a good answer, which I will paraphrase here: “no, but the <a title="You can thank DD for QWERTY" href="http://en.wikipedia.org/wiki/Dominant_design" target="_blank">dominant design principle</a> applies and virtualization has enough inertia that it will be an intimate part of PaaS anyway”. This doesn’t mean that PaaS is dependent on IaaS/virtualization from an implementation point of view, and PaaS providers who have built that explicit dependency are either using virtualization for multi-tenancy, or unnecessarily knee-capping flexibility. For the customers’ sake, leave virtualization down a layer, and stop letting it become a leaky abstraction to what should be a cleaner systems architecture. If you build PaaS without a dependency on virtualization, you can then introduce integrations to IaaS layers as an optimization rather than a requirement. No one likes lock-in, particularly in the context of an operating layer.</p>

		<div class='author-shortcodes'>
			<div class='author-inner'>
				<div class='author-image'>
			<img src='http://www.saasblogs.com/images/uploads/2011/12/sschuller-57x57.jpg' alt='' />
			<div class='author-overlay'></div>
		</div> <!-- .author-image --> 
		<div class='author-info'>
			As a cloud fanatic and CEO of PaaS company Apprenda, Sinclair focuses his efforts on helping move both public and private PaaS into the mainstream of enterprise IT. Before co-founding Apprenda, Sinclair held positions at Morgan Stanley, Eden Communications, and the State University of New York (SUNY). Sinclair holds a dual Bachelor of Science in Computer Science &amp; Mathematics from Rensselaer Polytechnic Institute, where he graduated Summa Cum Laude.
		</div> <!-- .author-info -->
			</div> <!-- .author-inner -->
		</div> <!-- .author-shortcodes -->
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/general-technology/does-paas-depend-on-iaas-nope/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A Language a Day Keeps Value Away: Getting PaaS Right</title>
		<link>http://www.saasblogs.com/general-technology/a-language-a-day-keeps-value-away-getting-paas-right/</link>
		<comments>http://www.saasblogs.com/general-technology/a-language-a-day-keeps-value-away-getting-paas-right/#comments</comments>
		<pubDate>Mon, 05 Dec 2011 15:41:05 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[General Technology]]></category>
		<category><![CDATA[PaaS]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=600</guid>
		<description><![CDATA[One-man bands are impressive; typically able to play harmonica, guitar, drums, and a bunch of other instruments all at the same time with some meaningful composure but, unfortunately, with very little harmony. Despite this seemingly impressive feat, you never see a one-man band on the Billboard Top 100 – never (and John Popper doesn’t count). [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.saasblogs.com/images/uploads/2011/12/one-man-band03.jpg"><img class="alignleft size-medium wp-image-613" style="border-width: 5px; border-color: black; border-style: solid; margin: 5px;" title="one-man-band03" src="http://www.saasblogs.com/images/uploads/2011/12/one-man-band03-300x200.jpg" alt="" width="300" height="200" /></a>One-man bands are impressive; typically able to play harmonica, guitar, drums, and a bunch of other instruments all at the same time with some meaningful composure but, unfortunately, with very little harmony. Despite this seemingly impressive feat, you never see a one-man band on the Billboard Top 100 – never (and John Popper doesn’t count). The reason for this is simple: one-man bands are good at getting attention on the side of the street, but they simply don’t make good music, let alone music that can be compared to that of a band of specially trained musicians. Being an expert at say, the guitar, requires that you dedicate every ounce of training energy into being a master of that one instrument.  It also means that either as part of a band or solo, you can probably make the Billboard Top 100. This level of depth and dedication means that you won’t be relegated to a sideshow alongside the likes of <a title="How? I just don't understand..." href="http://www.youtube.com/watch?v=Q40v8qeUJZQ" target="_blank">that guy that pours molten lead into his mouth and spits out a cooled, solid lead slug</a>; you have the opportunity to become a music legend. Certainly, Eric Clapton put in much more effort in learning to play guitar than every one-man band guitarist out there, and probably more than a few of them combined.</p>
<p>Building a PaaS is no different than making music. You can one-man band the hell out of programming languages and stack runtimes, but you’re just going to be making noise that sounds OK and gets eyeballs on the street. What you&#8217;ve done doesn’t have durable, legendary potential. It seems that lately, every PaaS provider wants to add as many languages as possible as quickly as possible. A week doesn’t go by where there isn’t a press release that is written in the stock format “<em>&lt;Insert Favorite PaaS Here&gt; introduces game-changing, atom-smashing, world class support for &lt;Insert Whatever Language the Other PaaS Said They Support Here&gt;</em>” This is a recipe for disaster both for the market in general, as well as for customers. There is an easy framework for understanding why this is bad business, and it all starts with being a <a title="Get learned on real PaaS" href="http://www.saasblogs.com/saas/the-hijacking-of-paas/" target="_blank">real PaaS rather some heavily diluted manifestation of PaaS</a><strong>.</strong></p>
<p>Building a PaaS the <em>right way</em> means that you’ve either:</p>
<ul>
<li>Invented a brand new language and execution runtime, or</li>
<li>extended an existing runtime (JVM, CLR, etc.) into a new higher order runtime and systems architecture</li>
</ul>
<p>In either case, the PaaS is doing some intimate, lower level heavy lifting and likely building a host of “base services” that are highly dependent on the language and/or underlying runtime. Those base services are exposed as APIs and are part of provided frameworks, or are capabilities that are instrumented into guest applications of the PaaS. Building all of this is non-trivial and takes a long time to build, but provides extremely rich next generation value to customers.  This is the true meaning of “supporting” a language.</p>
<p>Much like the one-man band, when a PaaS starts laying claim to supporting its 37<sup>th</sup> language, they’re juggling too many things to properly be an expert at any one, and their version of “I’m good at the guitar” is not Eric Clapton’s version of the same statement. This statement redefinition and implied level of expertise is a good parlor trick, but can’t stand the test of time. The way PaaS providers achieve this is that they define “support” as deploying and loosely managing apps of that newfangled language or runtime type, but don’t provide any uniquely differentiated, high quality value. When a PaaS provider says they support a new language, they likely mean that they can move some pile of indistinguishable bits to a new underlying target application server and issue a “Website Start” command to whatever that target is (e.g. Tomcat, IIS, etc.) If that’s “next generation value”, then I’m in the wrong industry.</p>
<p>The huge downside to this multi-language craziness is that it creates a tremendous amount of market noise and distraction, and robs customers of time and value. Up front, a customer gets excited when they see “support” for so many languages. Some customers might not yet understand what the real potential and long term value of PaaS is. They’ll be satisfied with that PaaS, at least for a while. Once they starting building more complex cloud apps and realize that the PaaS does nothing to help them with this because it isn’t a runtime, then they walk away disenfranchised. For customers with more up-front sophistication, they see “support” as woefully inadequate out of the gate and began to get frustrated with PaaS as a concept in general.</p>
<p>A PaaS releasing support for language after language is a bad smell. It typically (I can’t claim always) means that they don’t have a sufficiently valuable piece of machinery under the hood, and they are likely not offering a runtime model.  If they did, supporting the N+1th language would be hard work, and I would hypothesize that each N+1th language would take more time to support than the Nth language (rationale is fodder for another post). Now, to temper my sentiment, I do believe it is possible to support multiple languages/runtimes, but it has to be done correctly. The result is likely being able to support a small number of languages, rather than all of them.</p>
<p>If you’re an observer, practitioner, or customer in the PaaS space, don’t get distracted by the one-man band on the side of the street while walking to the rock concert – that would be a terrible reason to reach the ticket counter and hear the words “Sorry, we’re sold out.” If you’re a PaaS vendor, please, <a title="The one and only" href="http://www.apprenda.com" target="_blank">do it the right way</a> and stop being distracted by shiny objects: support very few languages very well, rather than all languages very poorly. And remember, you might hire a one-man band to work your 8 year olds birthday party, but people pay lots of money and wear their finest clothes and jewelry for one night out at the symphony.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/general-technology/a-language-a-day-keeps-value-away-getting-paas-right/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Hijacking of PaaS: Cloud Runtimes are the Real McCoy</title>
		<link>http://www.saasblogs.com/saas/the-hijacking-of-paas/</link>
		<comments>http://www.saasblogs.com/saas/the-hijacking-of-paas/#comments</comments>
		<pubDate>Tue, 29 Nov 2011 15:20:04 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=583</guid>
		<description><![CDATA[Platform as a service (PaaS) has been hijacked. PaaS was supposed to be a critical bulwark in protecting cloud computing from the frail models of earlier computing eras, but to many, has become a category to dump anything that is tooling to help with some part of managing and deploying applications on cloud infrastructure. It [...]]]></description>
			<content:encoded><![CDATA[<p>Platform as a service (PaaS) has been hijacked. PaaS was supposed to be a critical bulwark in protecting cloud computing from the frail models of earlier computing eras, but to many, has become a category to dump anything that is tooling to help with some part of managing and deploying applications on cloud infrastructure. It will take some time to explain, hence the long post. I started thinking about this after reading posts by two cloud evangelists for whom I have tremendous respect and were venting their frustrations with the PaaS space &#8211; Krishnan Subramanian and Ben Kepes. Each published posts titled &#8220;<a href="http://www.cloudave.com/15606/appfog-announces-java-support-what-the-heck-is-happening-in-paas-space/" target="_blank">AppFog Announces Java Support – What The Heck Is Happening In PaaS Space?</a>&#8221; and &#8220;<a href="http://www.cloudave.com/15610/openlogic-announces-general-availability-of-cloudswing-paas/" target="_blank">OpenLogic Announces General Availability of CloudSwing PaaS</a>&#8220;, respectively, that delivered well-deserved jabs at the PaaS space. Why were the jabs &#8220;well deserved&#8221;? Because PaaS is littered with &#8220;me too&#8221; undifferentiated offerings that focus on &#8220;user experience&#8221; and &#8220;deploying apps&#8221;, that&#8217;s why. I&#8217;m less interested in understanding or claiming that a given vendor suffers from this, but more interested in the discussion of these issues in PaaS at broad. To understand this sentiment, we need to really spend some time to define what PaaS should be and what sort of trap the market is falling into.</p>
<p>To define PaaS, let&#8217;s first define an arbitrary collection of &#8220;traditional&#8221; Operating System (OS) instances on real or emulated hardware and any networking equipment associated with those OS instances as a resource pool. A PaaS&#8217; can be best thought of as a <a title="Thanks Wikipedia, you are the best" href="http://en.wikipedia.org/wiki/Computing_platform" target="_blank">computing platform</a> that acts as a host to &#8220;guest&#8221; applications and that is layered atop a resource pool such that the details of individual  members of that resource pool are abstracted away and presented as a single logical layer to those guest applications. Guest applications are not privy to, bound to, or dependent on the details of components that are beneath the PaaS layer, thereby creating a rigid boundary. This abstraction reduces the amount of direct control an application has over its host environment, and in exchange, is provided certain functional guarantees and systems services. Furthermore, it could be argued that this PaaS computing platform be accessible to the developers who write guest applications in a self-service or near self-service way.  Up until this point, I think nearly anyone who considers themselves a student of cloud computing would agree. After this point, things seem to fall apart since:</p>
<ul>
<li>No one agrees on what PaaS should provide</li>
<li>Those who do agree on what PaaS should provide tend cluster around certain functional capabilities, where the clustering <strong><em>*seems* </em></strong>(not certain of this yet)<strong> </strong>to not be motivated by ideology but by a market wide &#8220;easy win&#8221; mentality</li>
<li>Hampering of creativity due to other cloud models such as IaaS distracting focus from making revolutionary progress on the more promising end game that is PaaS</li>
</ul>
<p>The natural question anyone would have is <em>&#8220;Sinclair, so what are the feature and functions that define PaaS beyond the systems definition you gave earlier?&#8221;</em> I&#8217;ll do my best to provide some direction, and then circle back to the title of this post. As I described earlier, PaaS defines a layer that sits above a pool of OS/network resources, but below guest applications in such a way the details and control are abstracted away by the PaaS. As such, a corollary is that at a bare minimum, a PaaS <strong><em>*must*</em></strong> allow developers to deploy and manage applications <em>in-spite of  </em>the loss of control and being abstracted away from detail. This should not be looked at as a value of PaaS, but rather a requirement to achieve some level of fidelity with the pre-PaaS workflows that were part tooling, part developer manual labor, and part luck. No PaaS vendor should be proud of this achievement - it&#8217;s the scholarly equivalent of getting a &#8216;D&#8217; on a test and trying to spin the fact that you barely passed as &#8220;100% success at not failing.&#8221; Granted, it&#8217;s a bit better getting a &#8216;D&#8217; in that a minimally implemented PaaS at least takes the tedium of manual, time intensive, error prone application deploy and manage processes and automates them in a way that is generally flawless. Things like deploying apps and scaling apps become trivial button push operations on PaaS offerings, pushing application bits to servers and updating load balancers, among some other minor things. Nonetheless, this is not the revolutionary model that cloud computing has promised, at least that&#8217;s not what I consider &#8220;insanely great&#8221; and certainly wasn&#8217;t the model I envisioned to be world-changing when I co-founded <a title="I love this company, but I love the future it will deliver to the world even more" href="http://www.apprenda.com/" target="_blank">Apprenda</a>.</p>
<p>Going back to the title of this post, all PaaS&#8217; are NOT created equal. Most &#8220;PaaS&#8221; offerings&#8217; feature sets amount to the basics I described earlier. You see, PaaS vendors took the low friction approach of building &#8220;platforms&#8221; that merely stand up stack instances for apps being deployed <em>through</em> them (notice I didn&#8217;t say <em>to</em> them; <strong>these PaaS offerings do not act as containers to guest applications, but rather as fancy networked installers</strong>) and deal with some network component setup. In fact, some do as little as templating VMs with frameworks and stack components so that apps can be deployed with dependencies in place. This has short term sizzle, but in the long term does not provide any meaningful world changing value. What we have is a categorical skewing that sets up a market to conceptually think of something grander when they hear PaaS, only to find something less interesting.</p>
<p>The problem is that most generational shifts in computing were accompanied by new <a title="Does your PaaS support the execution of apps, or just sit alongside them?" href="http://en.wikipedia.org/wiki/Run-time_system" target="_blank">runtime</a> models where the runtime or meta-runtime acts as a host to guest applications. Think OS, or application server, or even a browser&#8217;s Javascript engine. Cloud computing is typically broken up into 3 layers: SaaS, PaaS, and IaaS. PaaS was <em>supposed</em> to be the layer where the generational runtime model became defined for cloud computing; the layer that provides higher order intrinsic value peculiar to the new computing paradigm of cloud and resource abstraction. Some of us PaaS vendors share this vision and have started down technical strategy trajectories that define new runtime models for PaaS-based apps, while others have not. Cloud computing changes the computing model enough that to be a &#8220;platform&#8221; but not build a new runtime is likely to provide trivial value, and as a result, little differentiation among similarly tooled competitors. The lack of differentiation comes from feature convergence that is natural when systems lack a new model that can act as a spring board for differentiated value &#8211; which is exactly what a runtime provides. Subramanian and Kepes were likely identifying with this feature convergence, hence their frustration.</p>
<p>So why does a runtime need to exist, anyway? First, let&#8217;s level set on one thing: one of the major goals of cloud is to abstract away details of underlying resources. Period. Cloud forces an <a title="Glad someone with a loud enough voice is making this statement" href="http://gigaom.com/cloud/what-cloud-boils-down-to-for-the-enterprise-2/" target="_blank">application-centric model</a> (Thanks goes to James Urquhart for articulating this), and as such, needs to remove distractions created by irrelevant, low-level details. Much like VM-based runtime paradigms such as the JVM and CLR got rid of the need to deal with what integers were stored in what CPU registers, cloud should get rid of the need to worry about <em>execution time</em> details about OS&#8217;, network routing, etc. Cloud has done two things: it has raised the ceiling for potential application architecture complexity AND opened the door to new types of previously unavailable value. Without going through a formal proof of sorts, it should be obvious that a PaaS that merely pushes bits onto servers and updates load balancers is incapable of supporting the execution needs of applications that need to deal with abstract resource concepts and new levels of architecture complexity due to the nature of network-distributed resources. It would be akin to thinking that a fancy C++ library could provide pari passu value to the JVM: it simply couldn&#8217;t. <strong>As a cloud application executes, it needs an underlying <em>active</em> system that is doing constant heavy lifting to make magic happen, and not just waiting on the sidelines for the next app or infrastructure management event. A great PaaS will:</strong></p>
<ul>
<li>Provide self-service access to developers</li>
<li>Provide application management tools and capabilities</li>
<li>Use a runtime model that sits underneath an application as it executes, but above the infrastructure with the intent of abstracting away non-strategic details</li>
<li>Provides frameworks and APIs to access higher order value</li>
<li>Manage the infrastructure in a way that shields the application from as much impact as possible</li>
</ul>
<p>The last piece of this book-of-a-post is helping identify what a PaaS runtime looks like. An anchoring theme for a PaaS runtime is <em>active participation </em>in the execution of guest application code. As such, you will typically see non-trivial PaaS offerings do some number of the following things:</p>
<ul>
<li>Implicit participation in application messaging at various tiers of typical application architectures. Additionally, the PaaS my provide declarative or imperative control to guest applications over application messaging.</li>
<li>Use &#8220;resident code&#8221; to instrument behavior into executing application code. Much like traditional runtimes forcibly load libraries into <em>your</em> memory space, PaaS runtimes may load code and data that co-habit your application memory space</li>
<li>May use code generation to augment guest applications in a way that is orthogonal to the guest applications functions, but in alignment with the PaaS runtimes execution needs. This might be tough to understand if an example is not provided, and the only example I know of is what our Apprenda PaaS does. To simplify the example, let&#8217;s consider web services deployed to the Apprenda PaaS. REST and SOAP web services go through a compile phase when they hit our hosting containers. This compile phases adds control end points for direct P2P style communications with any instance of that SOAP or REST service, allowing the &#8220;node&#8221; to participate in direct control calls from the runtime fabric. The end result is that each node is an independent peer entity on the distributed system that is Apprenda, but is also &#8220;stitched in&#8221; to fabric behavior.</li>
<li>Activate behavior autonomously based on what guest applications are doing. For example, on an application crash, detecting the actual error (where possible) and acting on it would be an example of this sort of autonomic management.</li>
<li>Provide APIs and frameworks to the guest applications that trivialize access to complex architecture value. Think publish/subscribe, map/reduce, and message brokering models.</li>
<li>Might influence or modify how requests and even threads behave in the application as the application executes.</li>
<li>Provide general purpose APIs  for runtime services from the platform.</li>
</ul>
<p>This list is definitely not exhaustive, but you get the picture. This the stuff that makes cloud runtimes real and interesting, and this is what differentiates some PaaS&#8217; as being &#8220;insanely great&#8221; versus others that, while not bad, don&#8217;t provide this level of value. This is the stuff that the future is made of, and hopefully the market evolves quickly enough where Subramanian and Kepes can both agree that innovation and value abound.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/saas/the-hijacking-of-paas/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Which Part of the Public vs. Private Cloud Elephant Are You Touching?</title>
		<link>http://www.saasblogs.com/saas/which-part-of-the-public-vs-private-cloud-elephant-are-you-touching/</link>
		<comments>http://www.saasblogs.com/saas/which-part-of-the-public-vs-private-cloud-elephant-are-you-touching/#comments</comments>
		<pubDate>Fri, 10 Jun 2011 15:40:29 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=501</guid>
		<description><![CDATA[The private/public cloud discussion is something that has been getting lots of attention. I think one of the big issues is that different perspectives are causing people to speak differently about the same thing, and confusion around what public vs. private really is (e.g., what is a Private PaaS running on public IaaS) adds fuel [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.saasblogs.com/images/uploads/2011/06/BlindMenElephant.jpg"><img class="size-medium wp-image-503 alignright" style="border: 2px solid black;" title="Cloud Has Gained Weight!" src="http://www.saasblogs.com/images/uploads/2011/06/BlindMenElephant-217x300.jpg" alt="" width="217" height="300" /></a>The private/public cloud discussion is something that has been getting lots of attention. I think one of the big issues is that different perspectives are causing people to speak differently about the same thing, and confusion around what public vs. private really is (e.g., what is a <a title="Private PaaS" href="http://www.privatepaas.com">Private PaaS</a> running on public IaaS) adds fuel to the fire. Maybe a parable can help. One of my favorite (albeit overused) parables is that of the <a title="Really? Bayer used this in a commercial?" href="http://en.wikipedia.org/wiki/Blind_men_and_an_elephant" target="_blank">Blind men and an elephant</a>. The story is as follows: four blind men discover an elephant for the first time. Since they have never encountered an elephant before, they each touch a part of the elephant that they are closest to, feeling about so that they can assess what it is they are touching. One man grabs the elephants trunk, and determines that he is clearly touching a snake. Another grabs the tail, and concludes that it is a rope. The third, wrapping his arms around the leg, announces that it is clearly a tree. Last but not least, the fourth blind man runs his hands along the elephants side and determines that they have discovered a wall.</p>
<p>Clearly, they&#8217;re each interacting with the elephant, but are also each describing the elephant (based on their individual perspectives) in drastically different ways.</p>
<p>This is extremely relevant to today&#8217;s cloud computing discussion. Essentially, the problem we have is that cloud computing is our elephant, and although we are each interacting with cloud computing, we are suffering from the same problem as the four men in the parable; our &#8220;perspective blindness&#8221; causes us to only base our understanding on what we are capable of assessing, thereby failing to see cloud computing as a whole. This was extremely apparent after I <a title="I had fun writing this one" href="http://gigaom.com/cloud/clouds-are-like-buses-public-isnt-always-better/" target="_blank">wrote a post for GigaOM</a>. Both in comments and in Twitter, I had people supporting and rejecting the notion of cloud technologies transplanted into private settings (such as deploying private IaaS or private PaaS). Some argued that public cloud provided X, and Y, and Z while private didn&#8217;t. At the end of the day, <em>both public and private cloud</em> can provide significant value to the various constituents in enterprise IT. To understand why private cloud might make sense to some and not others, we need to understand the relationships between the various parties in enterprise IT in the context of cloud computing:</p>
<p style="text-align: center;"><a href="http://www.saasblogs.com/images/uploads/2011/06/Cloud_Consumption_Hierarchy_Summarized.png"><img class="alignnone size-large wp-image-504" style="border: 2px solid black;" title="Cloud_Consumption_Hierarchy_Summarized" src="http://www.saasblogs.com/images/uploads/2011/06/Cloud_Consumption_Hierarchy_Summarized-1024x612.png" alt="" width="500" /></a></p>
<p style="text-align: center;">(<a title="Click here if you actually want to see it!" href="http://www.saasblogs.com/images/uploads/2011/06/Cloud_Consumption_Hierarchy_Summarized.png" target="_blank">bigger</a>)</p>
<p>Granted, the diagram doesn&#8217;t capture the finer grained details of the relationships, but it does define a framework to work off of. Each constituent in enterprise IT has a &#8220;primary&#8221; role when considering the application as the first class citizen of  the system:</p>
<ol>
<li>Consumption</li>
<li>Application Development</li>
<li>Infrastructure Management</li>
</ol>
<p>Each constituent is analogous to one of the blind men touching the elephant that is cloud computing. Let&#8217;s look at this more specifically. If you are a business end user that needs to source a certain application X, you can either a) use a solution that the developers within your organization have built on some private cloud or b) use an external SaaS provider (which apparently is  a <a title="IT says 'No', you say 'SaaS'" href="http://www.infoworld.com/d/cloud-computing/survey-confirms-users-will-adopt-the-cloud-even-if-it-doesnt-369" target="_blank">growing trend in IT</a>). From the business end users perspective, they don&#8217;t care if an app is running in a private cloud or public cloud, or is a custom solution coming from LOB developers within the enterprise or an external SaaS provider. They need an app for some specific business function to create value and solve problems. We can find lots of tangential reasoning as to why they should use public cloud only, but from a practical perspective, they just need to know that whatever app they are using fulfills all of their requirements (and constraints). If the app is provided by their own LOB developers and is deployed to the private cloud, that&#8217;s fine. If  they are using a public SaaS app, that&#8217;s fine too. Some apps might provide additional value in a public form factor, but it shouldn&#8217;t be the deciding factor.</p>
<p>Similarly, from the perspective of enterprise developers who build custom apps within the enterprise, they want to know if they can quickly and easily deploy their apps and get functionality from an underlying stack. The current IT model is broken: each dev team builds an app a different way, when it&#8217;s time to deploy, they contact IT and wait 30-60 days for a server to be provisioned, they manually configure the app, and manually deal with the app&#8217;s lifecycle using the same cumbersome approach that was used to get it up and running. Cloud (particularly PaaS)  presents a very agile model with blazing fast time to market, advanced architecture qualities, and little friction. Developers are simply looking to get past this antiquated approach; they might want to deploy to a public PaaS like Azure, but if central IT offered a private PaaS, they might prefer that because it&#8217;s less friction in terms of adoption and from their perspective, they get the same major benefits: upload and deploy apps at a button click, get scalability for free, and get other benefits like distributed caching as services. From the developer&#8217;s perspective, they&#8217;d get what they need, regardless of the form factor. <em>It gets even more difficult parse if you consider that central IT could deploy a private PaaS to either their own private cloud, or to a public IaaS provider like EC2. </em>Is that a public or private PaaS? Clearly, the IT team owns the Amazon account and is deploying their own PaaS layer to public infrastructure. From the developers perspective, it&#8217;s a private PaaS (as in owned by their organization), from central IT&#8217;s point of view, they are using public cloud. For me, this is a very real topological distinction since our customers can license <a title="Private PaaS for .NET. Who needs Azure?" href="http://www.apprenda.com" target="_blank">SaaSGrid </a>and deploy it to their own bare metal infrastructure and get a private PaaS, on their private virtualization cloud and get private PaaS, or on something like EC2 and expose a PaaS to their internal developers. We don&#8217;t necessarily care, but the lines are clearly blurry as to which is &#8220;more public&#8221;:</p>
<ol>
<li>Private PaaS on Private Cloud</li>
<li>Private PaaS on Public IaaS</li>
<li>Public PaaS</li>
</ol>
<p>Is number 2 more public or more private? This highlights the absurdity of the debate that continues to come up in nearly every public/private conversation. At the end of the day: who cares? If the end users in an organization want a specific offering provided in a SaaS fashion: great. If they use an offering built by their LOB developers and deployed to their private PaaS on their private cloud, or their <a title="Private PaaS" href="http://www.privatepaas.com">private PaaS</a> deployed on public IaaS, they&#8217;d be just as happy.</p>
<p>In some instance, public cloud makes the most sense, in others private cloud. Sometimes, real costs of adopting public cloud severely impact it&#8217;s ROI, so private cloud gives some of the benefits with less costs, causing private cloud ROI to be higher. In other cases, public cloud can be adopted using little friction and is the way to go. I think the sooner we recognize that the fierce debate of whether the elephant is a snake, a rope, a wall or a tree is silly, and that we should each be comfortable with the fact that our perspectives might influence or judgment, the sooner we can all focus on extracting value from cloud tech.</p>
<p><strong><em>Do you agree that both public and private cloud are relevant? Are you passionate that cloud is public only or nothing? If so, why?</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/saas/which-part-of-the-public-vs-private-cloud-elephant-are-you-touching/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Using a Bus to Frame an Understanding for Public Cloud vs. Private Cloud</title>
		<link>http://www.saasblogs.com/saas/using-a-bus-to-frame-an-understanding-for-public-cloud-vs-private-cloud/</link>
		<comments>http://www.saasblogs.com/saas/using-a-bus-to-frame-an-understanding-for-public-cloud-vs-private-cloud/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 15:13:31 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=491</guid>
		<description><![CDATA[I recently wrote a piece that was published on GigaOM that uses a bus (as in vehicle) analogy to try and establish a conceptual framework for the public vs. private cloud discussion. Check it out here!]]></description>
			<content:encoded><![CDATA[<p>I recently wrote a piece that was published on GigaOM that uses a bus (as in vehicle) analogy to try and establish a conceptual framework for the public vs. private cloud discussion. <a title="Enjoy!" href="http://gigaom.com/cloud/clouds-are-like-buses-public-isnt-always-better/" target="_blank">Check it out here</a>!</p>
<p><strong><em> </em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/saas/using-a-bus-to-frame-an-understanding-for-public-cloud-vs-private-cloud/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Throwing Around the Term &#8220;Multi-tenancy&#8221; Isn&#8217;t Helpful: Advice to App Developers in the Cloud</title>
		<link>http://www.saasblogs.com/saas/throwing-around-the-term-multi-tenancy-isnt-helpful-advice-to-app-developers-in-the-cloud/</link>
		<comments>http://www.saasblogs.com/saas/throwing-around-the-term-multi-tenancy-isnt-helpful-advice-to-app-developers-in-the-cloud/#comments</comments>
		<pubDate>Mon, 14 Mar 2011 19:50:25 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[SaaS]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[iaas]]></category>
		<category><![CDATA[multi-tenancy]]></category>
		<category><![CDATA[multi-tenant]]></category>
		<category><![CDATA[PaaS]]></category>
		<category><![CDATA[SaaSGrid]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=363</guid>
		<description><![CDATA[Understanding what multi-tenancy means in various contexts is critical to success in the cloud. Learn why the term, when used properly, is powerful and also why throwing it around is detrimental to the market as a whole.]]></description>
			<content:encoded><![CDATA[<p>Before I get started, this post IS NOT a post about why multi-tenancy is a good thing, why it’s better than virtualization, or anything of that nature. I had to get that out before starting – there are plenty of posts that deal with this topic (<a href="http://www.saasblogs.com/2010/11/04/lack-of-multi-tenancy-a-broken-business-architecture/" target="_blank">one</a>, <a href="http://www.saasblogs.com/2009/09/07/is-multi-tenancy-just-a-database-architecture/" target="_blank">two</a>, <a href="http://www.saasblogs.com/2009/04/24/is-multi-tenancy-more-important-than-just-cost-savings/" target="_blank">three</a>, <a href="http://www.zdnet.com/blog/saas/multi-tenancy-why-you-should-care/1131" target="_blank">etc.</a>). Instead, I want to tackle a different issue: the issue of what multi-tenancy means in a variety of contexts as well as how its positioning by vendors is leading to mass confusion.</p>
<p>No particular event has motivated this post; instead, this post is the result of a number of conversations and miscommunications. A while back, I started noticing some disturbing trends in the market, and more specifically, in vendor pitches. Let me use a real world example of what I mean. Frequently, the sales team at Apprenda ends up in the following type of conversation at some point in our sales cycle (clearly, this is distilled for brevity):</p>
<blockquote><p><strong>Prospect: </strong>“I saw that SaaSGrid offers multi-tenancy.”</p>
<p><strong>Apprenda: </strong>“That’s right; SaaSGrid gives your application access to various types of multi-tenancy using the same code base and application assets. It’s actually amazingly unique and takes significant effort out of your R&amp;D.”</p>
<p><strong>Prospect: </strong>“Yeah, but doesn’t &lt;insert your favorite PaaS/IaaS here&gt; offer multi-tenancy?”  or “Well, the folks over at &lt;insert your favorite PaaS/IaaS here&gt; said they offer multi-tenancy too.”</p>
<p><strong>Apprenda:</strong> “That’s different. Those technologies are themselves multi-tenant. SaaSGrid is a server technology that allows your single-tenant application to be multi-tenant at all application tiers without the huge effort typically associated with going multi-tenant.</p>
<p><strong>Prospect:</strong> “Wait, but that’s exactly what I heard &lt;insert your favorite PaaS/IaaS here&gt; say. You’re saying that they don’t do the same thing as you.”</p>
<p><strong>Apprenda:</strong> “Correct. Most, if not all, cloud platform vendors that refer to multi-tenancy are references to their own architectures, meaning they can efficiently pack their customers onto shared hardware/OS instances and offer you better service and a low price point. What you’re asking is how <em>you</em> can be multi-tenant and offer the same to <em>your</em> customers. Others in the cloud can’t help you with that.</p>
<p><strong>Prospect: </strong>“OK, so using their service doesn’t make sense then?”</p>
<p><strong>Apprenda:</strong> “That’s hard to answer, but it usually makes sense in conjunction with something like SaaSGrid. Clearly, being on something like EC2 (which is multi-tenant at the infrastructure tier) has advantages to you. Using SaaSGrid means you can really lower your internal cost of offering your service to your customers, and either put the savings to the bottom line or pass it along to your customers.”</p>
<p><strong>Prospect: </strong>“What SaaSGrid does seems pretty magical now that I’ve cut through the marketing BS, how do you do it?”</p>
<p><strong>Apprenda:</strong> “SaaSGrid is a runtime. When deployed to SaaSGrid, your application is transformed and new capabilities are instrumented into all tiers of your application. When running on SaaSGrid, these transformations and runtime instrumentations ‘inject’ SaaS architecture DNA into your non-SaaS web application.”</p></blockquote>
<p>As you can see, this sort of conversation is a distraction. Whether it’s a conversation with an analyst, industry pundit, or potential customer, I’ve found that the most important thing to do upfront is to level-set on what both sides mean/understand when they say “multi-tenant.” Why so much confusion? I think it’s due to two factors:</p>
<ol>
<li>The marketing pitch offered up by vendors and how those marketing sound-bites are contexualized</li>
<li>The general overloading of the term “multi-tenant”</li>
</ol>
<p>On the marketing side, vendors do a good job of highlighting multi-tenancy. The problem is that the lack of context around the “feature” of multi-tenancy causes significant miscommunication. From a marketing perspective, vendors are sucked into the <a href="http://smoothspan.wordpress.com/2008/06/20/degrees-of-multi-tenancy-degrees-of-green-crystals/" target="_blank">Green Crystals Marketing described by Bob Warfield</a> a couple of years ago. Most cloud vendors are touting that <em>they</em> are multi-tenant; they want you to understand that they have a cost-effective and safe mechanism to isolate their customers from one another. To understand this better, I&#8217;ve taken the liberty to copy and paste (with references, of course) some content related to multi-tenancy from various cloud vendors:</p>
<blockquote><p>The AppFabric Container provides base-level application infrastructure such as automatically ensuring scale out, availability, multi-tenancy and sandboxing of your application components.<em> </em>(<a href="http://www.microsoft.com/windowsazure/AppFabric/Overview/default.aspx" target="_blank">Microsoft, Windows Azure</a>)</p></blockquote>
<blockquote><p>Cloud-enabling infrastructure to allow secure multi-tenant deployments, including fully integrated management, monitoring, metering and billing infrastructure<em> </em>(<a href="http://cloudbees.com/platform-features.cb" target="_blank">CloudBees</a>)</p></blockquote>
<blockquote><p>If you are running numerous applications/application instances, XAP&#8217;s fine-grained multi-tenancy allows you to share them across all available machines, instead of running only one instance per machine. This allows you to support more users on each machine<em>. </em>(<a href="http://www.gigaspaces.com/oem3" target="_blank">GigaSpaces</a>)</p></blockquote>
<p>There a few others to use as examples, but this is fine for now. I&#8217;m not going to debate whether advertising that you are multi-tenant is an effective use of marketing real-estate. all of these snippets of text highlight multi-tenancy, but what is unclear is the context. For example, the first two indicate multi-tenancy at the platform tier; that is, multiple, unrelated code assets can share common OS instances. While this is powerful in its own right, it&#8217;s easy to understand how someone reading this text might walk away thinking <em>&#8220;Excellent. Our requirements for our new SaaS project call for multi-tenancy. I can check that off our list.&#8221;</em> The fact is, while ambiguous in terms of presentation, these technologies do not endow your application with multi-tenancy, they let you run in a multi-tenant environment. If you&#8217;re looking to build a multi-tenant app, you need to still architect multi-tenancy (&#8216;architect&#8217; is a verb according to the Oxford English Dictionary). In the gigaspaces case, although they refer to multi-tenancy in a way that lends itself to an &#8220;endowment&#8221; interpretation, it seems that they are focusing more on a grid approach of scaling the app to support more end users. While this is also valuable, it does not deal with segregation and isolation of logical groups of tenants (which is what multi-tenancy really is). At Apprenda, we even dealt with this definition in problem in our <a href="http://apprenda.com/saasgrid/faq/" target="_blank">FAQ</a>. This leads me to the next issue: term overloading.</p>
<p>Multi-tenancy is valid in 3 common computing contexts:</p>
<ol>
<li><strong>Infrastructure:</strong> This is multi-tenancy the way someone like Amazon might refer to multi-tenancy on EC2. In the IaaS context, multi-tenancy means that multiple OS instances can run on the same physical hardware through hypervisor technology.</li>
<li><strong>Platform:</strong> PaaS multi-tenancy means that, like a Heroku or a CloudBees, the platform can isolate code from different apps/vendors on the same OS instance (usually by commingling processes and databases on OS instances). This removes the need to allocate a whole VM per application stack component, improving efficiency.</li>
<li><strong>Application:</strong> SaaS multi-tenancy, at least at the highest level of isolation, means that single runtime stack component instances are shared across multiple customers. For example, a single database might commingle data rows for thousands of customers while preserving isolation and performance.</li>
</ol>
<p>Clearly, multi-tenancy means different things in all of these scenarios. There is nothing wrong with overloading, but it certainly doesn&#8217;t help the already high levels of confusion that exist around the word. If you&#8217;re an app developer in the Cloud looking to see what tech can help you, having a sense of clarity is most useful. Make sure you ask simple questions like:</p>
<ol>
<li>When you say &#8216;multi-tenant&#8217;, what do you mean?</li>
<li>If multi-tenancy is a feature of your IaaS/PaaS, does that mean my app automatically becomes multi-tenant and I get to reap efficiencies from it?</li>
<li>If I want my app to be multi-tenant on your IaaS/PaaS, will I have to still architect the app to be multi-tenant?</li>
</ol>
<p>If you get answers of &#8220;I don&#8217;t know&#8221; or &#8220;No&#8221;, then clearly, you&#8217;re on your own if you want to build a multi-tenant SaaS app from the ground up.</p>
<p><em>Do you feel multi-tenancy is thrown around too often by the wrong parties? Is multi-tenancy confusing to you?</em></p>
<p><em>
		<div class='author-shortcodes'>
			<div class='author-inner'>
				<div class='author-image'>
			<img src='http://www.saasblogs.com/images/uploads/2011/03/sschuller_headshot_0_0-57x57.jpg' alt='' />
			<div class='author-overlay'></div>
		</div> <!-- .author-image --> 
		<div class='author-info'>
			Before co-founding <a href="http://www.apprenda.com">Apprenda</a>, Sinclair held positions at Morgan Stanley, Eden Communications, and the State University of New York (SUNY). Sinclair holds a dual Bachelor of Science in Computer Science &amp; Mathematics from Rensselaer Polytechnic Institute, where he graduated Summa Cum Laude. Sinclair excels in understanding the economics of SaaS platforms and ecosystems, and is a frequent speaker and panelist at industry events
		</div> <!-- .author-info -->
			</div> <!-- .author-inner -->
		</div> <!-- .author-shortcodes --></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/saas/throwing-around-the-term-multi-tenancy-isnt-helpful-advice-to-app-developers-in-the-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Private SaaS: Understanding How Cloud will Evolve for Enterprise IT</title>
		<link>http://www.saasblogs.com/saas/private-saas-understanding-how-cloud-will-evolve-for-enterprise-it/</link>
		<comments>http://www.saasblogs.com/saas/private-saas-understanding-how-cloud-will-evolve-for-enterprise-it/#comments</comments>
		<pubDate>Fri, 04 Mar 2011 03:48:23 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[PaaS]]></category>
		<category><![CDATA[SaaS]]></category>
		<category><![CDATA[SaaS Platform]]></category>
		<category><![CDATA[Software Development]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=347</guid>
		<description><![CDATA[I recently spoke with Phil Wainewright of ZDNet and had a great conversation regarding private cloud/private SaaS. The focus of the conversation was to help Phil understand some work we&#8217;ve been doing at Apprenda with enterprise IT . For anyone that doesn&#8217;t know Apprenda and our platform SaaSGrid, I co-founded the company with the intent [...]]]></description>
			<content:encoded><![CDATA[<p>I recently spoke with <a title="One of my favorites" href="http://www.zdnet.com/blog/saas" target="_blank">Phil Wainewright</a> of ZDNet and had a great conversation regarding private cloud/private SaaS. The focus of the conversation was to help Phil understand some work we&#8217;ve been doing at <a href="http://www.apprenda.com" target="_blank">Apprenda</a> with enterprise IT . For anyone that doesn&#8217;t know Apprenda and our platform <a href="http://www.apprenda.com" target="_blank">SaaSGrid</a>, I co-founded the company with the intent of solving a major market problem: create a server technology to help  independent software vendors (ISVs) build amazing multi-tenant, fully web scalable and commercializable SaaS offerings. Basically, SaaSGrid is a layer that sits underneath an application as an &#8220;operating system&#8221; middleware that provides a modern distributed runtime solving all major SaaS architecture and operating requirements.</p>
<p>As Apprenda evolved, we started realizing that ISVs weren&#8217;t the only entities trying to deliver their software  to thousands (or even millions) of customers via a services model instead of a shipped bits model. We found that huge numbers of home built enterprise IT apps were essentially being written as SaaS offerings because of the simplified delivery and consumption model.Enterprise IT could write an application, deploy it as a their own <a title="Our commercial description" href="http://apprenda.com/saasgrid/for-enterprise-it/" target="_blank">&#8220;private&#8221; SaaS offerings</a>, and have internal end users, partners, vendors, and even external customers, use those applications. For example, imagine a custom supply chain management application used by the employees of a large, global logistics company, or an HR app deployed to multiple lines of business within the enterprise. We also found that a cloud application architecture is not something that solves problems unique to ISVs, but that we could give the same or more value to enterprise IT. Furthermore, we started noticing that enterprises are building private clouds, essentially IaaS offerings within the enterprise, allowing for flexible access to massive pools of resources. This solves a number of IT problems, but now developers are aching for access to higher order value: essentially, a platform like SaaSGrid that could be deployed ontop of that IaaS to rapidly build complex cloud architectures and deploy those architectures to their private clouds. My conversation with Wainewright really honed in on understanding how and why enterprise architects are adopting cloud architectures for internally built custom applications.</p>
<p>Wainewright wrote up a great post entitled &#8220;<a title="I always enjoy reading Phils articles" href="http://www.zdnet.com/blog/saas/the-oeming-of-saas-build-or-buy/1278?tag=mantle_skin;content" target="_blank">The OEMing of SaaS: build or buy?</a>&#8221; that describes private SaaS in good detail. At the end of his post, he posits that <em>&#8220;&#8230;the case [is] against ‘private’ SaaS and in favor of having the provider run the platform&#8221;</em> I don&#8217;t think this is necessarily a good position, at least in terms of a coherent taxonomy. First, we need to make sure we don&#8217;t confound Cloud topic areas. Where an application lives and it&#8217;s &#8220;visibility&#8221; are two different things. A Cloud application has a few attributes associated with it:</p>
<ol>
<li>Where it&#8217;s hosted (yes, I&#8217;m using the word hosted. Cloud does not mean apps still aren&#8217;t hosted, they&#8217;re just virtually hosted)</li>
<li>It&#8217;s visibility, or in other words, who is allowed to use it (anyone who pays, anyone who pays but restricted to a defined group, no payment required but not for general consumption). Think of <a href="http://www.salesforce.com">Salesforce.com</a> as &#8216;public&#8217; while something like an app written by my former employer Morgan Stanley for their own investment bankers as &#8216;private.&#8217; Public and private need not have the same meaning in the SaaS context as they do in the infrastructure context.</li>
<li>What architecture dependencies (if any) the application has</li>
</ol>
<p>Being &#8216;against&#8217; private SaaS, at least by how we define it (where again, &#8216;private&#8217; is a visibility construct that helps determine who is allowed to consume the app) has nothing to do with where it runs (the provider running the platform). For example, if an enterprise chooses to use a Cloud platform like SaaSGrid, they are choosing to use it because it solves some very tricky architecture and operations problems. Morgan Stanley, for example, might choose to build a multi-tenant app for it&#8217;s thousands of retail banking branches on something like SaaSGrid to solve distribution, scale, provisioning, and entitlements problems through multi-tenancy and infrastructure abstraction, but still run it on something like EC2. Running the app on EC2 doesn&#8217;t make the application &#8216;public&#8217;; it&#8217;s still only privately accessible but running on a &#8216;public&#8217; cloud. That said, there is also nothing wrong with someone like Morgan Stanley deploying a their private SaaS app on their own infrastructure, or with building a private Cloud stack with something like SaaSGrid running atop their internal IaaS offering. There are huge advantages to this as well.</p>
<p>This leads me to a brief discussion of the evolution of Cloud in the context of enterprise IT (and maybe even the broader market in general). First, I think we&#8217;ll always have two distinct stack layers: IaaS and PaaS. The state of PaaS as a Cloud layer is important to understand. To date, most PaaS offerings have not focused on the changed software consumption paradigm where thousands or millions of people plan on consuming a centralized service. That&#8217;s still an architecture that most developers have to deal with.</p>
<p>Offerings like <a href="http://www.heroku.com" target="_blank">Heroku</a>, which was referenced by Wainewright, abstract away the infrastructure and provide a package, deploy and run model for arbitrary applications. These platforms do <em>little to nothing</em> for the applications&#8217; fundamental architecture qualities and runtime behavior, and merely simply part of the build, configuration and release process, and remove the need to deal with IT staff. In this case, forklifting an application off of a PaaS to another PaaS, or even to IaaS, is easy and requires no code changes. Unfortunately, these types of PaaS offerings are uninteresting from an advanced application architecture and engineering point of view (don&#8217;t misinterpret this as uninteresting in general. I find PaaS offerings to be amazingly valuable, just not in terms of solving challenging architecture and engineering problems like multi-tenancy, which are still dealt with &#8220;by hand&#8221;) If someone chooses a platform (PaaS or cloud-focused architecture platform) that provides a modern, advanced Cloud architecture out of the box and that provides your application with significant runtime value, you won&#8217;t think about  forklifting the same codebase from the platform to something like IaaS or some deploy-focused PaaS offering because you will lose all the architectural value you were after in the first place. This means that the Cloud  runtime, to prevent operational lock-in, <em>must be decoupled from the provider.</em> If it is not, you are in grave danger of being operationally beholden to the provider for fundamental architecture needs. This is extremely risky.</p>
<p>Enterprise IT faces extremely complex engineering challenges; they don&#8217;t build &#8220;websites&#8221;, they build sophisticated web applications that need to deal with challenging problems. The Cloud will evolve to acknowledge Cloud architectures as a topic separate from Cloud &#8220;hosting&#8221;, and that the two layers should be decoupled as a rationale step to ensuring freedom and openness. What I expect to see is that enterprise will adopt Cloud runtimes to solve their engineering challenges, and whether an app built on that runtime is deployed in their private cloud or  in the public cloud will be dictated by an entirely different set of parameters. Any external providers that think they can have people write code that will run in their Cloud and only their Cloud will not succeed in the long run.</p>
<p><em>Have you worked on private SaaS projects built by your enterprise IT organization? Do you think the Cloud will evolve into a runtime and hosting tier, or will you be forced to choose a runtime that is locked in to a single provider? I&#8217;d love to hear your thoughts!</em></p>
<p><em>
		<div class='author-shortcodes'>
			<div class='author-inner'>
				<div class='author-image'>
			<img src='http://www.saasblogs.com/images/uploads/2011/03/sschuller_headshot_0_0-57x57.jpg' alt='' />
			<div class='author-overlay'></div>
		</div> <!-- .author-image --> 
		<div class='author-info'>
			Before co-founding <a href="http://www.apprenda.com">Apprenda</a>, Sinclair held positions at Morgan Stanley, Eden Communications, and the State University of New York (SUNY). Sinclair holds a dual Bachelor of Science in Computer Science &amp; Mathematics from Rensselaer Polytechnic Institute, where he graduated Summa Cum Laude. Sinclair excels in understanding the economics of SaaS platforms and ecosystems, and is a frequent speaker and panelist at industry events
		</div> <!-- .author-info -->
			</div> <!-- .author-inner -->
		</div> <!-- .author-shortcodes --> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/saas/private-saas-understanding-how-cloud-will-evolve-for-enterprise-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cloud Middleware: The Language Shared by Network Engineers and Developers</title>
		<link>http://www.saasblogs.com/business/cloud-middleware-the-language-shared-by-network-engineers-and-developers/</link>
		<comments>http://www.saasblogs.com/business/cloud-middleware-the-language-shared-by-network-engineers-and-developers/#comments</comments>
		<pubDate>Fri, 28 Jan 2011 15:32:13 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[General Technology]]></category>
		<category><![CDATA[PaaS]]></category>
		<category><![CDATA[SaaS Platform]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[Cloud Middleware]]></category>
		<category><![CDATA[kaplan]]></category>
		<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=303</guid>
		<description><![CDATA[Jeff Kaplan posted an article on Internet Evolution this morning entitled &#8220;Bridging the Great Divide in Cloud Computing&#8220;. It&#8217;s a nice little piece that focuses on a burning problem: the Cloud has been very infrastructure focused, to the point that if you attend industry events you&#8217;ll find that, as Kaplan identified, &#8220;Those events that promise [...]]]></description>
			<content:encoded><![CDATA[<p>Jeff Kaplan posted an article on Internet Evolution this morning entitled &#8220;<a href="http://www.internetevolution.com/author.asp?section_id=983&amp;doc_id=203548" target="_blank">Bridging the Great Divide in Cloud Computing</a>&#8220;. It&#8217;s a nice little piece that focuses on a burning problem: the Cloud has been very infrastructure focused, to the point that if you attend industry events you&#8217;ll find that, as Kaplan identified, &#8220;Those events that promise the latest information and insight about the nuts and bolts of the leading IaaS offerings will likely be overrun by network engineers or storage and security specialists. &#8221;</p>
<p>My experiences have been the same: for the most part, cloud has provided tremendous value in creating a highly flexible datacenter abstraction, democratizing access to high end infrastructure offerings, and trivializing a number of deployment and management issues (think PaaS). Most of this is something that network engineers love (I don&#8217;t believe it&#8217;s a pari passu displacement of IT staff &#8211; Cloud has created a set of more interesting, higher value challenges that modern IT operators need to tackle) Additionally, the Cloud has provide some basic value to software engineers through some highly available and scalable nuts and bolts services (like blob storage solutions, etc.), but the problem domain of building Cloud/SaaS offerings has not been directly addressed by most Cloud providers since the focus has been entrenched at this network and virtualization tier. Cloud at the infrastructure tier is absolutely necessary, but the development community needs more Cloud value that solves modern software architecture problems. The Cloud, with its vast elasticity and democratization of software access to end users, has created challenging software delivery problems like cost efficiency delivery, scalability, and the need for codification of critical operating workflows. These are things that Cloud tech to date has predominantly shied away from.</p>
<p>Historically, middleware/infrastructure software has provided a common layer that acts as a single point of interest shared by IT network level operators and software developers. Think IIS, WebSphere, database servers, etc. These infrastructure software products typically provide a wealth of tooling to network folks <em>in support of</em> applications written by developers that use the pattern and practice productization value captured by these &#8220;application servers&#8221; to ease use case specific software engineering burdens. When the developers finish building something, the network ops teams can communicate in a familiar way with the same product, but through a different lens.</p>
<p>Looking at the state of the Cloud, it seems pretty obvious to me that we are at an inflection point. The &#8220;great divide in cloud computing&#8221; is something that can, should, and will be filled by modern middleware purpose-built for the Cloud. This middleware is what can act as the intermediary between the new architecture pressures that software developers must face and the Cloud management requirements of the IT staff. Without middleware handling this, we fundamentally have a better way to host software, which is hardly a catalyst for continued innovation.</p>
<p><strong><em>If you’d like to mingle with others in the SaaS space, <a href="http://www.linkedin.com/e/gis/78899/53081E04A091" target="_blank">the SaaSBlogs group on LinkedIn</a> now has 3600+ members and is growing every day; make sure you’ re not missing out and join today!</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/business/cloud-middleware-the-language-shared-by-network-engineers-and-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Real World Cloud Architecture: Build or Buy a SaaS Platform?</title>
		<link>http://www.saasblogs.com/business/real-world-cloud-architecture-build-or-buy-a-saas-platform/</link>
		<comments>http://www.saasblogs.com/business/real-world-cloud-architecture-build-or-buy-a-saas-platform/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 18:38:23 +0000</pubDate>
		<dc:creator>Sinclair Schuller</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[SaaS]]></category>
		<category><![CDATA[SaaS Platform]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[frontrange]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[roi]]></category>
		<category><![CDATA[tmcnet]]></category>

		<guid isPermaLink="false">http://www.saasblogs.com/?p=302</guid>
		<description><![CDATA[Yesterday, an article by Brendan Read over at TMCnet really caught my attention because it captured the spirit of what I think about every single day. The article announces the introduction of an IT service management SaaS offering by FrontRange Solutions, a relatively well known mid-market applications company with 2007 revenues at $135 million (as per their [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, an <a title="24 months equals lots of money" href="http://outbound-call-center.tmcnet.com/topics/hosted-call-center/articles/137961-frontrange-solutions-new-saas-it-line-does-hosting.htm" target="_blank">article by Brendan Read over at TMCnet really caught my attention</a> because it captured the spirit of what I think about every single day. The article announces the introduction of an IT service management SaaS offering by <a href="http://www.frontrange.com" target="_blank">FrontRange Solutions</a>, a relatively well known mid-market applications company with 2007 revenues at $135 million (as per their <a href="http://en.wikipedia.org/wiki/FrontRange_Solutions" target="_blank">company Wikipedia entry</a>) and apps like HEAT and GoldMine in its application portfolio. Brendan Read starts off by accurately stating that &#8220;&#8230;successfully hosting&#8230;complex applications such as IT support tools is much more than installing software onto a server and connecting it to a network that is linked to clients and their users. It requires carefully architecting the solutions for the hosted environment.&#8221; Read&#8217;s introduction set the stage for how FrontRange did SaaS the right way.</p>
<p>Read hit the nail on the head. Throwing an app onto some servers, whether on-premises or in the Cloud on something like Amazon&#8217;s EC2, is not SaaS. I&#8217;ve written many times about what it means to truly offer a business offering in the Cloud, but this article captures a real world example of the effort required to move to SaaS.</p>
<p>Read goes on to highlight data volunteered by Michael McCloskey, FrontRange&#8217;s CEO that provides an interesting data point: FrontRange &#8220;&#8230;spent <strong><em>two years</em></strong> re-architecting from scratch a new platform for the SaaS environment&#8221; <em><strong>Two years! </strong>(Notice the emphasis &#8211; I clearly care about this number)</em> I don&#8217;t know the hard dollar investments made by FrontRange, but one must imagine that their SaaS platform project had a good number of developers working on it, and that the investment was, with a high probability, in the seven figure category (probably a few developers and architects, as these projects go, with a fully loaded average cost of somewhere in the $90K to $150K range per year working for two years). So a proper product to SaaS transition is a combination of 24 months of SaaS specific effort, seven figures in hard dollar costs (probably), resulting opportunity costs, and ongoing R&amp;D maintenance costs (someone needs to fix the SaaS specific bugs and evolve the platform) &#8211; Holy smokes!</p>
<p>I seem surprised, but I&#8217;m really not. I&#8217;ve been in the thick of this very scenario, and responded by channeling all my effort into <a href="http://www.apprenda.com" target="_blank">Apprenda</a>. <a href="http://www.apprenda.com" target="_blank">Apprenda </a>was built on the premise that a high end SaaS architecture and operating tool-set could be productized into an application server. We built <a title="24 months and seven figures back into your wallet" href="http://www.apprenda.com" target="_blank">SaaSGrid</a> to do just that &#8211; productize a world class SaaS platform so that applications running on it could inherit and give a company a sustainable short and long term solution with tremendous ROI. SaaSGrid was kicked-off as a product knowing full well the costs of a real SaaS architecture with things like multi-tenancy, provisioning, billing etc.</p>
<p>The scenario highlighted in this FrontRange scenario is in fact very much like the ROI analysis we go through with prospects and customers. Someone like McCloskey, faced with a SaaS decision (regardless of whether its a new application or a migration) needs to compare those build figures to investing in technology that they can buy that solves these problems out of the box. Fundamentally, you start to ask yourself:</p>
<ol>
<li>Does a 12 or 24 month time to market loss result in significant competitive disadvantage? (i.e. Am I liable to lose significant market share or position by letting competitors beat me to the punch?)</li>
<li>What opportunity costs is associated with a competency distraction of this magnitude on the R&amp;D side?</li>
<li>We haven&#8217;t built this sort of architecture before, what risk level am I willing to absorb?</li>
<li>Could an additional 12-24 month investment in the product functionality and not the SaaS platform give me access to new markets and revenue streams?</li>
<li>If a home-grown SaaS platform is going to cost $1-$3 million to materialize, what investments am I giving up to make this happen?</li>
<li>Are we going to be able to lend resources to the SaaS platform over time and evolve it despite it being orthogonal to the product, and if not, what untapped value are we leaving on the table?</li>
</ol>
<p>If you add up the hard dollar costs of the above questions, you start to realize that millions of dollars are required, and the soft dollar costs add many more millions. SaaS is a strategic advantage, but the cost of that advantage is whats in question. Clearly, I do not think that building is a sustainable or strategic overall approach &#8211; it&#8217;s expensive and distracting. Thats not to say a company can&#8217;t be successful (just ask Salesforce.com), but the probability of success goes down while risk goes up when you build. We&#8217;ve seen this before &#8211; most companies don&#8217;t go out and build relational database servers because its not their core competency. Instead they download or license an RDBMS. A SaaS stack is of the same complexity level and same level of orthogonality, so why build? Our goal with <a href="http://www.apprenda.com" target="_blank">SaaSGrid </a>was to let people focus all of their energy on their offering &#8211; the stuff that your customers care about &#8211; and not on SaaS. My bet is that Cloud build vs buy cases like this will one day define a Harvard Business Review case study or two;-)</p>
<p><em>How do you feel about this  - does building make sense, or is the ROI not there?  Do circumstances exist where building is warranted, and if so, what are they? What other costs can you think of that should be factored in the SaaS platform build vs. buy?</em></p>
<p><strong><em>If you’d like to mingle with others in the SaaS space, <a href="http://www.linkedin.com/e/gis/78899/53081E04A091" target="_blank">the SaaSBlogs group on LinkedIn</a> now has 3600+ members and is growing every day; make sure you’ re not missing out and join today!</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.saasblogs.com/business/real-world-cloud-architecture-build-or-buy-a-saas-platform/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

