<?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>ActiveCampaign Email Marketing Blog &#187; Programming</title>
	<atom:link href="http://www.activecampaign.com/blog/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.activecampaign.com/blog</link>
	<description>Email marketing blog discussing email marketing features, deliverability, new marketing ideas, and more.</description>
	<lastBuildDate>Mon, 16 Jan 2012 19:12:51 +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 urge to rewrite software</title>
		<link>http://www.activecampaign.com/blog/the-urge-to-rewrite-software/</link>
		<comments>http://www.activecampaign.com/blog/the-urge-to-rewrite-software/#comments</comments>
		<pubDate>Fri, 28 Mar 2008 21:08:34 +0000</pubDate>
		<dc:creator>David</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[kb software]]></category>
		<category><![CDATA[knowledge management]]></category>
		<category><![CDATA[knowledge management software]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[web based software]]></category>
		<category><![CDATA[web software]]></category>

		<guid isPermaLink="false">http://www.activecampaign.com/blog/2008/03/28/the-urge-to-rewrite-software/</guid>
		<description><![CDATA[Having previously been a programmer myself, I can attest to very real and maddening phenomenon that affects nearly everyone in this line of work: the urge to rewrite. It comes on hard and fast, usually immediately after finishing a piece of software. Sometimes it even comes on smack in the middle of your efforts. The [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Having previously been a programmer myself, I can attest to very real and maddening phenomenon that affects nearly everyone in this line of work: the urge to rewrite. It comes on hard and fast, usually immediately after finishing a piece of software. Sometimes it even comes on smack in the middle of your efforts.</p>
<p>The reason is simple: as you go through the process of writing the code, you gain new perspectives on the shortcomings of your original approach to the problem. It&#8217;s the same thing that happens when we look back on the events of our past and think &#8220;if I only knew then what I know now&#8230;&#8221; In a way, the better the software that you&#8217;ve written turned out, the better your perspective becomes, and therefore the more pernicious the urge to rewrite it becomes.</p>
<p><img src="http://support.activecampaign.com/bin/image_2516750.jpeg" alt="Maybe no one would notice if I started over..." width="640" height="480" /></p>
<p><span id="more-200"></span>A great example of this is our own <a href="http://www.activecampaign.com/knowledge-management/">Knowledge Management</a> software. It&#8217;s a great piece of software that&#8217;s very highly regarded in the industry, and an awful lot of people tell us how much they enjoy using it. We could very easily add on to the existing code base, adding new features and improving existing ones, and release a new version and make a ton of money. But it wouldn&#8217;t be as good as we know that we <em>could</em> make it. Because now we&#8217;ve been working with the product for years, supporting it, using it on our own site; we know too much about it now; we know what its <em>potential</em> is.</p>
<p>So what are we doing now? Rewriting the whole damn thing from scratch. And it&#8217;s going to be <em>great</em>. It&#8217;ll be a lot faster, more flexible, and have lots of little touches that would&#8217;ve been too difficult to work into the old framework.</p>
<p>Of course, like anything, there has to be balance. You can&#8217;t rewrite a product every day or even every year and still remain profitable. At some point you have to recognize that no matter how much potential you see, only a certain amount of that potential is realizable in the immediate future. No matter how good a piece of <a href="http://www.activecampaign.com/">web software</a> becomes, there will always be room for improvement. The better a piece of software gets, in fact, the more strongly it advocates for the shifting of its own paradigm. You&#8217;re always climbing into view of the next incredible set of previously unthinkable goals.</p>
<p>The art of software development is in recognizing when you&#8217;ve found a nice plateau, and then allowing yourself to rest there for a while. That way you have room for some horizontal growth&#8211;feature enhancements, optimizations&#8211;and this give you and your clients time to enjoy all the hard work and creativity that&#8217;s gone into the software&#8217;s current iteration.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.activecampaign.com/blog/the-urge-to-rewrite-software/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

