<?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: Moving from software production to software publishing</title>
	<atom:link href="http://gojko.net/2006/11/08/software-publishing/feed/" rel="self" type="application/rss+xml" />
	<link>http://gojko.net/2006/11/08/software-publishing/</link>
	<description>The Quest for Software++</description>
	<pubDate>Wed, 07 Jan 2009 04:01:46 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Johan Tibell</title>
		<link>http://gojko.net/2006/11/08/software-publishing/comment-page-1/#comment-155</link>
		<dc:creator>Johan Tibell</dc:creator>
		<pubDate>Fri, 10 Nov 2006 09:20:27 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2006/11/08/software-publishing/#comment-155</guid>
		<description>I don't know if this is true or not but I believe that a important difference between publishing and software development might be that the complexity of the software product increases over time. Although you might have a long running article series or an article that takes longer to produce publishing still seems a bit more like starting with a clean sheet each month. A piece of software is more difficult to manage after a year in development even with agile methods and what not.</description>
		<content:encoded><![CDATA[<p>I don&#8217;t know if this is true or not but I believe that a important difference between publishing and software development might be that the complexity of the software product increases over time. Although you might have a long running article series or an article that takes longer to produce publishing still seems a bit more like starting with a clean sheet each month. A piece of software is more difficult to manage after a year in development even with agile methods and what not.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Drew</title>
		<link>http://gojko.net/2006/11/08/software-publishing/comment-page-1/#comment-152</link>
		<dc:creator>Drew</dc:creator>
		<pubDate>Thu, 09 Nov 2006 16:31:07 +0000</pubDate>
		<guid isPermaLink="false">http://gojko.net/2006/11/08/software-publishing/#comment-152</guid>
		<description>I've done something very similar to this, but coming from the other side of the problem.  You described the hard deadline as something probably more frequent than a typical software company might have.  I worked in internal IT, where the expectation was that anything could be rolled into production as soon as it was completed, so I was trying to &lt;i&gt;reduce&lt;/i&gt; the number of releases.  I had it down to two releases a month, and was pushing for one per month before I left.

While I didn't promise a set scope for each release, I did publish release notes a week in advance so everyone knew what was coming.  And you are absolutely right that it was easier to tell someone that their pet feature wasn't ready for the current release, once they trusted that there was another release guaranteed to happen in a couple of weeks.

One thing you touched on but didn't explain the usefulness of was the first-aid kit.  I typically had a large list of small fixes that developers had completed while they were waiting for their major features to be tested.  They typically expected everything to be released in the first release after it was completed.  While you recommend keeping some of these on hand to fill future releases, thus matching users' expectations, I had a different reason to hold them: no matter how small a change, it took time and resources to get through QA.

One issue you didn't address was the feature freeze.  Some time in advance of your publishing deadline, you have to lock the contents of the release.  Don't try to have this deadline in the middle of the day, as someone will always have something "almost ready".

The easiest way to enforce the freeze is by publishing the release notes.  Once it goes out that's the list, no exceptions.  End of the day Monday is perfect to send it out: anyone who &lt;i&gt;really needs&lt;/i&gt; their feature in this release has the weekend to get it ready.  If it's not worth their overtime to get it ready, it's not worth your overtime to get it integrated.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve done something very similar to this, but coming from the other side of the problem.  You described the hard deadline as something probably more frequent than a typical software company might have.  I worked in internal IT, where the expectation was that anything could be rolled into production as soon as it was completed, so I was trying to <i>reduce</i> the number of releases.  I had it down to two releases a month, and was pushing for one per month before I left.</p>
<p>While I didn&#8217;t promise a set scope for each release, I did publish release notes a week in advance so everyone knew what was coming.  And you are absolutely right that it was easier to tell someone that their pet feature wasn&#8217;t ready for the current release, once they trusted that there was another release guaranteed to happen in a couple of weeks.</p>
<p>One thing you touched on but didn&#8217;t explain the usefulness of was the first-aid kit.  I typically had a large list of small fixes that developers had completed while they were waiting for their major features to be tested.  They typically expected everything to be released in the first release after it was completed.  While you recommend keeping some of these on hand to fill future releases, thus matching users&#8217; expectations, I had a different reason to hold them: no matter how small a change, it took time and resources to get through QA.</p>
<p>One issue you didn&#8217;t address was the feature freeze.  Some time in advance of your publishing deadline, you have to lock the contents of the release.  Don&#8217;t try to have this deadline in the middle of the day, as someone will always have something &#8220;almost ready&#8221;.</p>
<p>The easiest way to enforce the freeze is by publishing the release notes.  Once it goes out that&#8217;s the list, no exceptions.  End of the day Monday is perfect to send it out: anyone who <i>really needs</i> their feature in this release has the weekend to get it ready.  If it&#8217;s not worth their overtime to get it ready, it&#8217;s not worth your overtime to get it integrated.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
