<?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"
	>
<channel>
	<title>Comments on: Thoughts on how to evaluate code</title>
	<atom:link href="http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/</link>
	<description></description>
	<pubDate>Thu, 20 Nov 2008 13:37:17 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: patrick</title>
		<link>http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/#comment-8595</link>
		<dc:creator>patrick</dc:creator>
		<pubDate>Fri, 12 Oct 2007 08:46:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/#comment-8595</guid>
		<description>Hi Renat,

You are correct that not every website needs to be able to handle the load that amazon handles. And it is important for there to be reasonable expectations as to the needs. So when doing performance testing the simulated load needs to be inline with expected traffic. 

However, consider these issues:
&lt;ol&gt;
&lt;li&gt;The website may be highly successful, or be slashdotted/digged/etc. Being able to handle the 'success' of a favorable review is critical. Otherwise, a positive review (and uptick in traffic) is lost.&lt;/li&gt;
&lt;li&gt;The person reviewing/specing the product is non-technical. This means they need fairly simple metrics by which to measure the capabilities of the delivered code.&lt;/li&gt;
&lt;li&gt;Throughput, load numbers, etc are easily quantified in legal terms. Thus a simple, unequivocal, enforceable contract can be written between developer and employer&lt;/li&gt;
&lt;li&gt;Lastly, it is very hard to produce lousy code that still performs well.&lt;/li&gt;
&lt;/ol&gt; 

The issue of premature optimization is an internal concern for a developer, but it is never a concern that you will hear from a business owner. They just want to know if the code will met their needs.</description>
		<content:encoded><![CDATA[<p>Hi Renat,</p>
<p>You are correct that not every website needs to be able to handle the load that amazon handles. And it is important for there to be reasonable expectations as to the needs. So when doing performance testing the simulated load needs to be inline with expected traffic. </p>
<p>However, consider these issues:</p>
<ol>
<li>The website may be highly successful, or be slashdotted/digged/etc. Being able to handle the &#8217;success&#8217; of a favorable review is critical. Otherwise, a positive review (and uptick in traffic) is lost.</li>
<li>The person reviewing/specing the product is non-technical. This means they need fairly simple metrics by which to measure the capabilities of the delivered code.</li>
<li>Throughput, load numbers, etc are easily quantified in legal terms. Thus a simple, unequivocal, enforceable contract can be written between developer and employer</li>
<li>Lastly, it is very hard to produce lousy code that still performs well.</li>
</ol>
<p>The issue of premature optimization is an internal concern for a developer, but it is never a concern that you will hear from a business owner. They just want to know if the code will met their needs.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Renat Zubairov</title>
		<link>http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/#comment-8418</link>
		<dc:creator>Renat Zubairov</dc:creator>
		<pubDate>Sun, 07 Oct 2007 22:54:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.sworddance.com/blog/2007/05/29/thoughts-on-how-to-evaluate-code/#comment-8418</guid>
		<description>I wouldn't consider performance a critical acceptance criteria because you could get to the much painfull resuilts such as _PREMATURE OPTIMIZATION_ which is a bigger evil that badly designed SQL statements, or Vectors inside single-threaded environment.
What I would consider most important is unit code coverage, if you don't have that you can't evolve, you can't put new developers on the source code without regressions. You wouldn't be possible to optimize the performance when it will be needed because of lack of unit tests.
Also if we consider performance issues we should think about the fact, that actually big number of users is _very_hard to get in the first place :)</description>
		<content:encoded><![CDATA[<p>I wouldn&#8217;t consider performance a critical acceptance criteria because you could get to the much painfull resuilts such as _PREMATURE OPTIMIZATION_ which is a bigger evil that badly designed SQL statements, or Vectors inside single-threaded environment.<br />
What I would consider most important is unit code coverage, if you don&#8217;t have that you can&#8217;t evolve, you can&#8217;t put new developers on the source code without regressions. You wouldn&#8217;t be possible to optimize the performance when it will be needed because of lack of unit tests.<br />
Also if we consider performance issues we should think about the fact, that actually big number of users is _very_hard to get in the first place <img src='http://www.sworddance.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
</channel>
</rss>
