<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Avoid Versioning &#8211; Please</title>
	<atom:link href="http://www.subbu.org/blog/2008/05/avoid-versioning-please/feed" rel="self" type="application/rss+xml" />
	<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please</link>
	<description></description>
	<lastBuildDate>Wed, 08 Feb 2012 05:16:45 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Mike Amundsen</title>
		<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please/comment-page-1#comment-268</link>
		<dc:creator>Mike Amundsen</dc:creator>
		<pubDate>Tue, 20 May 2008 14:13:00 +0000</pubDate>
		<guid isPermaLink="false">http://wp.subbu.org/2008/05/avoid-versioning-please/#comment-268</guid>
		<description>Good point. In most cases, versioning is a way to partition features for our clients. Often this is a business-driven item (&#039;hey, you should upgrade to the new mauve edition of super-app #123!&#039;).  In some cases, our clients have competing interests and features need to be segmented in a way that prevents incompatibilities, but these are in the minority.



</description>
		<content:encoded><![CDATA[<p>Good point. In most cases, versioning is a way to partition features for our clients. Often this is a business-driven item (&#8216;hey, you should upgrade to the new mauve edition of super-app #123!&#8217;).  In some cases, our clients have competing interests and features need to be segmented in a way that prevents incompatibilities, but these are in the minority.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Subbu Allamaraju</title>
		<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please/comment-page-1#comment-267</link>
		<dc:creator>Subbu Allamaraju</dc:creator>
		<pubDate>Tue, 20 May 2008 13:42:44 +0000</pubDate>
		<guid isPermaLink="false">http://wp.subbu.org/2008/05/avoid-versioning-please/#comment-267</guid>
		<description>Mike - in your experience, did you have to consider versioning since compat could not be maintained? Or is it for some other business reasons? If it is the latter, I completely agree. My intent is to address the former situation.
</description>
		<content:encoded><![CDATA[<p>Mike &#8211; in your experience, did you have to consider versioning since compat could not be maintained? Or is it for some other business reasons? If it is the latter, I completely agree. My intent is to address the former situation.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike Amundsen</title>
		<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please/comment-page-1#comment-266</link>
		<dc:creator>Mike Amundsen</dc:creator>
		<pubDate>Tue, 20 May 2008 13:30:26 +0000</pubDate>
		<guid isPermaLink="false">http://wp.subbu.org/2008/05/avoid-versioning-please/#comment-266</guid>
		<description>I understand the need to limit &#039;drift&#039; in code and data. I think it can be a sign of shoddy work if the application is constantly changing without clear direction, etc. But I also have another view, based on my current projects.

I work in an environment where not all of our B2B customers are subscribed to the same version of our Web-based apps. For us, versioning (of both data and workflow) is not an &#039;emergency eject button.&#039; It&#039;s a fundamental part of our work.

</description>
		<content:encoded><![CDATA[<p>I understand the need to limit &#8216;drift&#8217; in code and data. I think it can be a sign of shoddy work if the application is constantly changing without clear direction, etc. But I also have another view, based on my current projects.</p>
<p>I work in an environment where not all of our B2B customers are subscribed to the same version of our Web-based apps. For us, versioning (of both data and workflow) is not an &#8216;emergency eject button.&#8217; It&#8217;s a fundamental part of our work.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Subbu Allamaraju</title>
		<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please/comment-page-1#comment-265</link>
		<dc:creator>Subbu Allamaraju</dc:creator>
		<pubDate>Tue, 20 May 2008 08:47:42 +0000</pubDate>
		<guid isPermaLink="false">http://wp.subbu.org/2008/05/avoid-versioning-please/#comment-265</guid>
		<description>I don&#039;t disagree. That&#039;s why the compat problem is extremely challenging and it takes some iterations early on to get the contract amenable to compatible changes. I think we should treat versioning as an emergency eject button - i.e. to be used only when all other attempts failed.
</description>
		<content:encoded><![CDATA[<p>I don&#8217;t disagree. That&#8217;s why the compat problem is extremely challenging and it takes some iterations early on to get the contract amenable to compatible changes. I think we should treat versioning as an emergency eject button &#8211; i.e. to be used only when all other attempts failed.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Williams</title>
		<link>http://www.subbu.org/blog/2008/05/avoid-versioning-please/comment-page-1#comment-264</link>
		<dc:creator>Peter Williams</dc:creator>
		<pubDate>Tue, 20 May 2008 06:56:45 +0000</pubDate>
		<guid isPermaLink="false">http://wp.subbu.org/2008/05/avoid-versioning-please/#comment-264</guid>
		<description>I agree that in a perfect world we would not need versioning.  But we don&#039;t live in that world.  I have *never* written a program in which I fully understood the problem until well after I had released the first version.  As humans we are doomed to producing useful things based on incomplete understanding and information.

Versioning is a fact of API development and mantenaince.  It may be unpleasant but it does not get easier or less likely just because you ignore it.

Oh and a good versioning mechanism should allow you to continue to support your existing contracts and support new ones at the same time.  It should not break any existing contracts.
</description>
		<content:encoded><![CDATA[<p>I agree that in a perfect world we would not need versioning.  But we don&#8217;t live in that world.  I have *never* written a program in which I fully understood the problem until well after I had released the first version.  As humans we are doomed to producing useful things based on incomplete understanding and information.</p>
<p>Versioning is a fact of API development and mantenaince.  It may be unpleasant but it does not get easier or less likely just because you ignore it.</p>
<p>Oh and a good versioning mechanism should allow you to continue to support your existing contracts and support new ones at the same time.  It should not break any existing contracts.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

