<?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>TopSecretProject &#187; performance</title>
	<atom:link href="http://topsecretproject.finitestatemachine.com/tag/performance/feed/" rel="self" type="application/rss+xml" />
	<link>http://topsecretproject.finitestatemachine.com</link>
	<description>Toby Hede on Technology</description>
	<lastBuildDate>Fri, 07 May 2010 08:37:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>MySQL Procedure Analyse &#8211; optimising data types</title>
		<link>http://topsecretproject.finitestatemachine.com/2009/03/mysql-procedure-analyse-optimising-data-types/</link>
		<comments>http://topsecretproject.finitestatemachine.com/2009/03/mysql-procedure-analyse-optimising-data-types/#comments</comments>
		<pubDate>Tue, 24 Mar 2009 10:32:13 +0000</pubDate>
		<dc:creator>tobyhede</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://topsecretproject.finitestatemachine.com/?p=50</guid>
		<description><![CDATA[The MySQL Performance Blog has another gem in the form of MySQL&#8217;s Procedure Analyse function.
Procedure Analyse helps you find the optimal data type for the column values in a table.
Usage is very simple:
SELECT &#8230; FROM &#8230; WHERE &#8230; PROCEDURE ANALYSE([max_elements,[max_memory]])
A range of statistics and recommended data types and are returned for each column in your [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.mysqlperformanceblog.com/">MySQL Performance Blog</a> has another gem in the form of <a href=" http://www.mysqlperformanceblog.com/2009/03/23/procedure-analyse/">MySQL&#8217;s Procedure Analyse</a> function.</p>
<p>Procedure Analyse helps you find the optimal data type for the column values in a table.</p>
<p>Usage is very simple:</p>
<blockquote><p>SELECT &#8230; FROM &#8230; WHERE &#8230; PROCEDURE ANALYSE([max_elements,[max_memory]])</p></blockquote>
<p>A range of statistics and recommended data types and are returned for each column in your table.</p>
<p>For more information see the <a href="http://dev.mysql.com/doc/refman/5.0/en/procedure-analyse.html">MySQL Docs on using Procedure Analyse</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://topsecretproject.finitestatemachine.com/2009/03/mysql-procedure-analyse-optimising-data-types/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Collecting performance metrics in Rails</title>
		<link>http://topsecretproject.finitestatemachine.com/2009/03/collecting-performance-metrics-in-rails/</link>
		<comments>http://topsecretproject.finitestatemachine.com/2009/03/collecting-performance-metrics-in-rails/#comments</comments>
		<pubDate>Sat, 14 Mar 2009 00:18:08 +0000</pubDate>
		<dc:creator>tobyhede</dc:creator>
				<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[metrics]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[scaling]]></category>

		<guid isPermaLink="false">http://topsecretproject.finitestatemachine.com/?p=38</guid>
		<description><![CDATA[Further to my earlier comment that:
When discussing performance no opinion should be accepted without a metric
One of the great things about Rails is there is a plugin for just about everything and collecting performance metrics is no exception. Most of this is because of Ruby and it&#8217;s incredible meta-programming flexibility (but that&#8217;s another story). Rails [...]]]></description>
			<content:encoded><![CDATA[<p>Further to my earlier comment that:</p>
<blockquote><p><strong><a href="http://topsecretproject.finitestatemachine.com/2009/03/on-performance-you-have-no-right-to-an-opinion/">When discussing performance no opinion should be accepted without a metric</a></strong></p></blockquote>
<p>One of the great things about Rails is there is a plugin for just about everything and collecting performance metrics is no exception. Most of this is because of Ruby and it&#8217;s incredible meta-programming flexibility (but that&#8217;s another story). Rails has built-in support for some basic performance monitoring on the request stack (although in recent versions this has been extracted into a plugin), but there are some excellent alternatives.</p>
<p><a href="http://newrelic.com/">RPM by NewRelic</a>:</p>
<blockquote><p>New Relic RPM is a Ruby on Rails performance monitoring application that lets you see and understand application performance metrics in real time so you can fix Rails problems fast. RPM is intuitive. It&#8217;s granular. And, it&#8217;s a 10-second Rails plug-in install.</p></blockquote>
<p><a href="http://github.com/p8/metric_fu/tree/master">metric_fu on GitHub</a>:</p>
<blockquote><p>metric_fu is a set of rake tasks that make it easy to generate metrics reports.  It uses Saikuro, Flog, Rcov, and Rails&#8217; built-in stats task to create a series of reports.  It&#8217;s designed to integrate easily with CruiseControl.rb by placing files in the Custom Build Artifacts folder.</p></blockquote>
<p>There are some great screencasts on <strong>Scaling Rails</strong> available from New Relic&#8217;s <a href="http://railslab.newrelic.com/">Rails Lab</a>. And yes, scale is orthogonal to performance, but some of the discovery techniques are the same.</p>
<p><strong>Updated</strong>:</p>
<p>A commenter has correctly pointed out that <strong>metric_fu </strong>is not a performance anaysis tool as such. I guess the subtext of what I am saying is that tools like these help track complexity &#8211; and complexity is often one of the underlying causes of performance issues.</p>
]]></content:encoded>
			<wfw:commentRss>http://topsecretproject.finitestatemachine.com/2009/03/collecting-performance-metrics-in-rails/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>You have no right to your opinion on performance</title>
		<link>http://topsecretproject.finitestatemachine.com/2009/03/on-performance-you-have-no-right-to-an-opinion/</link>
		<comments>http://topsecretproject.finitestatemachine.com/2009/03/on-performance-you-have-no-right-to-an-opinion/#comments</comments>
		<pubDate>Thu, 12 Mar 2009 08:54:08 +0000</pubDate>
		<dc:creator>tobyhede</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[voodoo]]></category>

		<guid isPermaLink="false">http://topsecretproject.finitestatemachine.com/?p=34</guid>
		<description><![CDATA[I was discussing with a friend about how to approach some performance issues in the application he works on (for a quite large company you have probably heard of).
As is typical in any contact with performance issues, the problem isn&#8217;t particularly with the code (as in, it can probably be fixed), but with the ongoing [...]]]></description>
			<content:encoded><![CDATA[<p>I was discussing with a friend about how to approach some performance issues in the application he works on (for a quite large company you have probably heard of).</p>
<p>As is typical in any contact with performance issues, the problem isn&#8217;t particularly with the code (as in, it can probably be fixed), but with the ongoing discussions with the team.</p>
<p>So much of performance is really voodoo and superstition, and everyone has their own beliefs. Some are valid, of course, but in my experience there is always someone going on about using single (&#8216;) instead of double (&#8220;) quotes or something similar.*</p>
<p>This leads me to the only rule you really need in these situations:</p>
<blockquote><p><strong>When discussing performance no opinion should be accepted without a metric</strong></p></blockquote>
<p>If you don&#8217;t have any metrics you both don&#8217;t know what your performance issue actually is, and without knowing what your problem is you can&#8217;t possibly have a solution.</p>
<h6>* In PHP, a string defined &#8217;string&#8217; is faster than &#8220;string&#8221; because the latter will interpolate and render variables. However, this level of &#8220;faster&#8221; (or &#8216;faster&#8217;) is so small as to be irrelevant and any discussion is a distraction.</h6>
]]></content:encoded>
			<wfw:commentRss>http://topsecretproject.finitestatemachine.com/2009/03/on-performance-you-have-no-right-to-an-opinion/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
