<?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>Wizards of Smart &#187; CollectiveIntelligence</title>
	<atom:link href="http://wizardsofsmart.net/tag/collectiveintelligence/feed/" rel="self" type="application/rss+xml" />
	<link>http://wizardsofsmart.net</link>
	<description>.NET Design Patterns</description>
	<lastBuildDate>Thu, 29 Jul 2010 16:40:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0-beta2-14896</generator>
		<item>
		<title>CQS &#8211; A Literary Perspective</title>
		<link>http://wizardsofsmart.net/patterns/cqs-a-literary-perspective/</link>
		<comments>http://wizardsofsmart.net/patterns/cqs-a-literary-perspective/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 01:19:40 +0000</pubDate>
		<dc:creator>panesofglass</dc:creator>
				<category><![CDATA[Patterns]]></category>
		<category><![CDATA[CollectiveIntelligence]]></category>
		<category><![CDATA[DDDD]]></category>
		<category><![CDATA[Domain Driven Design]]></category>
		<category><![CDATA[Reading]]></category>
		<category><![CDATA[Reading comprehension]]></category>

		<guid isPermaLink="false">http://wizardsofsmart.net/?p=180</guid>
		<description><![CDATA[If you have been following the DDD and DDDD waves, you&#8217;re sure to have come across the CQS pattern. When I first heard of this, I immediately liked it but thought it was surely a pattern for very, very large systems. Most systems probably don&#8217;t need CQS, but this morning over breakfast, a discussion with [...]]]></description>
			<content:encoded><![CDATA[<p>If you have been following the <acronym title="Domain Driven Design"><span class="zem_slink">DDD</span></acronym> and <acronym title="Distributed Domain Driven Design">DDDD</acronym> waves, you&#8217;re sure to have come across the <acronym title="Command Query Separation"><a class="zem_slink" title="Command-query separation" rel="wikipedia" href="http://en.wikipedia.org/wiki/Command-query_separation" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Command-query_separation?referer=');">CQS</a></acronym> pattern. When I first heard of this, I immediately liked it but thought it was surely a pattern for very, very large systems. Most systems probably don&#8217;t need CQS, but this morning over breakfast, a discussion with my wife on child learning patterns made me rethink this.</p>
<p>We have a friend whose children have grown at very different rates of <a class="zem_slink" title="Reading comprehension" rel="wikipedia" href="http://en.wikipedia.org/wiki/Reading_comprehension" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Reading_comprehension?referer=');">reading comprehension</a> and writing skill. The interesting part is that the rates are nearly opposite from one another. The one with excellent reading comprehension does not excel at writing while the other is and excellent writer but has trouble reading. I found this somewhat strange. After all, logically, I would think that the one who reads should be able to write better. But that&#8217;s not the case. No one can do everything best. The same is true of databases.</p>
<p>This is such a true statement that in the <a class="zem_slink" title="Collective intelligence" rel="wikipedia" href="http://en.wikipedia.org/wiki/Collective_intelligence" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Collective_intelligence?referer=');">Collective Intelligence</a> <a href="http://houstonaltnet.pbwiki.com/Data-Mining%C2%A0" onclick="urchinTracker('/outgoing/houstonaltnet.pbwiki.com/Data-Mining_C2_A0?referer=');">session </a>at the <a class="zem_slink" title="Houston" rel="geolocation" href="http://maps.google.com/maps?ll=29.7627777778,-95.3830555556&amp;spn=0.1,0.1&amp;q=29.7627777778,-95.3830555556%20%28Houston%29&amp;t=h" onclick="urchinTracker('/outgoing/maps.google.com/maps?ll=29.7627777778_-95.3830555556_amp_spn=0.1_0.1_amp_q=29.7627777778_-95.3830555556_20_28Houston_29_amp_t=h&amp;referer=');">Houston</a> <a href="http://houstonaltnet.pbwiki.com/Houston-ALTDOTNET-Sessions" onclick="urchinTracker('/outgoing/houstonaltnet.pbwiki.com/Houston-ALTDOTNET-Sessions?referer=');">ALT.NET Open Spaces</a>, four distinct database tiers were promoted for proper <a class="zem_slink" title="Separation of concerns" rel="wikipedia" href="http://en.wikipedia.org/wiki/Separation_of_concerns" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Separation_of_concerns?referer=');">separation of concerns</a> to allow each tier to most effectively perform its task. Is this necessary for every application? Probably not, but as we move toward a more virtualized server world, the cost is really swinging in the favor of using multiple databases for reading and writing concerns. This may break the <a class="zem_slink" title="You Ain't Gonna Need It" rel="wikipedia" href="http://en.wikipedia.org/wiki/You_Ain%27t_Gonna_Need_It" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/You_Ain_27t_Gonna_Need_It?referer=');">YAGNI</a> principle, but I think we may often find that simplest may really be the best, simplest, smallest part that can fit the bill. (I&#8217;m sure that last statement will really ruffle feathers, but that&#8217;s where I am atm.)</p>
<div class="zemanta-pixie" style="margin-top: 10px; height: 15px;"><img class="zemanta-pixie-img" style="border: medium none; float: right;" src="http://img.zemanta.com/pixy.gif?x-id=7c23e934-febd-49a5-bf45-36c93f6d4936" alt="" /><span class="zem-script more-related pretty-attribution"><script src="http://static.zemanta.com/readside/loader.js" type="text/javascript"></script></span></div>
]]></content:encoded>
			<wfw:commentRss>http://wizardsofsmart.net/patterns/cqs-a-literary-perspective/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
