<?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 for pko.ch</title>
	<atom:link href="http://pko.ch/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://pko.ch</link>
	<description>Reflections about reflection</description>
	<lastBuildDate>Tue, 01 Sep 2009 23:39:20 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Comment on Selective access to mail.google.com by pkoch</title>
		<link>http://pko.ch/2008/05/09/selective-access-to-mailgooglecom/comment-page-1/#comment-82</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Tue, 01 Sep 2009 23:39:20 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=10#comment-82</guid>
		<description>This was long ago. The current crash has nothing to do with my problems.</description>
		<content:encoded><![CDATA[<p>This was long ago. The current crash has nothing to do with my problems.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Selective access to mail.google.com by Ian Samson</title>
		<link>http://pko.ch/2008/05/09/selective-access-to-mailgooglecom/comment-page-1/#comment-81</link>
		<dc:creator>Ian Samson</dc:creator>
		<pubDate>Tue, 01 Sep 2009 20:17:24 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=10#comment-81</guid>
		<description>It appears Google&#039;s GMail server has crashed. While I can traceroute and ping, any browser access to mail.google.com has vanished. This is utterly ridiculous! What happend??</description>
		<content:encoded><![CDATA[<p>It appears Google&#8217;s GMail server has crashed. While I can traceroute and ping, any browser access to mail.google.com has vanished. This is utterly ridiculous! What happend??</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on For those who don&#8217;t use SQL too much, just like me. by pkoch</title>
		<link>http://pko.ch/2008/06/17/for-those-who-dont-use-sql-too-much-just-like-me/comment-page-1/#comment-76</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Thu, 19 Feb 2009 00:07:23 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=12#comment-76</guid>
		<description>Hmm. I&#039;ll run some benchmarks and post them.

About the style, it varies. NOT IN is sometimes more legible, sometimes it&#039;s NOT EXISTS.</description>
		<content:encoded><![CDATA[<p>Hmm. I&#8217;ll run some benchmarks and post them.</p>
<p>About the style, it varies. NOT IN is sometimes more legible, sometimes it&#8217;s NOT EXISTS.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on For those who don&#8217;t use SQL too much, just like me. by André Restivo</title>
		<link>http://pko.ch/2008/06/17/for-those-who-dont-use-sql-too-much-just-like-me/comment-page-1/#comment-75</link>
		<dc:creator>André Restivo</dc:creator>
		<pubDate>Wed, 18 Feb 2009 00:56:12 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=12#comment-75</guid>
		<description>Imagine this query from the link you gave above:

SELECT DISTINCT store_type FROM stores
  WHERE NOT EXISTS (SELECT * FROM cities_stores
                    WHERE cities_stores.store_type = stores.store_type);

For each line of the outer query the inner query has to be computed again because stores.store_type changes. Of course MySQL can have an intelligent caching mechanism, but if the number of stores is very big it won&#039;t be enough. If MySQL is really intelligent it will transform the query into something similar to what I proposed. I know for a fact that PostgreSQL doesn&#039;t like this type of queries very much.

In the example I wrote before. The inner query has to be performed only once and then it&#039;s just a matter of using the index wisely.

Have you tried both approaches with some big chunks of data? You won&#039;t notice the difference with small tables.

IMHO I think that the NOT IN clause is easier to understand than the NOT EXISTS clause and also more elegant. But it&#039;s a matter of taste really ...</description>
		<content:encoded><![CDATA[<p>Imagine this query from the link you gave above:</p>
<p>SELECT DISTINCT store_type FROM stores<br />
  WHERE NOT EXISTS (SELECT * FROM cities_stores<br />
                    WHERE cities_stores.store_type = stores.store_type);</p>
<p>For each line of the outer query the inner query has to be computed again because stores.store_type changes. Of course MySQL can have an intelligent caching mechanism, but if the number of stores is very big it won&#8217;t be enough. If MySQL is really intelligent it will transform the query into something similar to what I proposed. I know for a fact that PostgreSQL doesn&#8217;t like this type of queries very much.</p>
<p>In the example I wrote before. The inner query has to be performed only once and then it&#8217;s just a matter of using the index wisely.</p>
<p>Have you tried both approaches with some big chunks of data? You won&#8217;t notice the difference with small tables.</p>
<p>IMHO I think that the NOT IN clause is easier to understand than the NOT EXISTS clause and also more elegant. But it&#8217;s a matter of taste really &#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on For those who don&#8217;t use SQL too much, just like me. by pkoch</title>
		<link>http://pko.ch/2008/06/17/for-those-who-dont-use-sql-too-much-just-like-me/comment-page-1/#comment-74</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Wed, 18 Feb 2009 00:24:33 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=12#comment-74</guid>
		<description>Hmm, that&#039;s contradictory to my MySQL experience. How/where did you observe that behaviour?</description>
		<content:encoded><![CDATA[<p>Hmm, that&#8217;s contradictory to my MySQL experience. How/where did you observe that behaviour?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on For those who don&#8217;t use SQL too much, just like me. by André Restivo</title>
		<link>http://pko.ch/2008/06/17/for-those-who-dont-use-sql-too-much-just-like-me/comment-page-1/#comment-73</link>
		<dc:creator>André Restivo</dc:creator>
		<pubDate>Tue, 17 Feb 2009 23:24:10 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=12#comment-73</guid>
		<description>select * from category
where category.id not in (select cat_id from cat_post where post_id = $the_post_id)

This way seems easier and it&#039;s probably faster as DB usually don&#039;t cope well with &#039;exists&#039; clauses.</description>
		<content:encoded><![CDATA[<p>select * from category<br />
where category.id not in (select cat_id from cat_post where post_id = $the_post_id)</p>
<p>This way seems easier and it&#8217;s probably faster as DB usually don&#8217;t cope well with &#8216;exists&#8217; clauses.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on 02:30:00&#124;pkoch@Kochs-PowerBook:~$ history &#124; awk &#8216;{print $2}&#8217; &#124; sort &#124; uniq -c &#124; sort -rn &#124; head by Manuel Parente</title>
		<link>http://pko.ch/2008/04/13/023000pkochkochs-powerbook-history-awk-print-2-sort-uniq-c-sort-rn-head/comment-page-1/#comment-71</link>
		<dc:creator>Manuel Parente</dc:creator>
		<pubDate>Wed, 29 Oct 2008 18:26:33 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=8#comment-71</guid>
		<description>Hello,

 157 say
  90 cd
  76 ls
  32 chmod
   9 sudo
   9 rm
   9 ping
   9 man
   8 ipconfig
   7 php



That&#039;s what i use Terminal for.... :P</description>
		<content:encoded><![CDATA[<p>Hello,</p>
<p> 157 say<br />
  90 cd<br />
  76 ls<br />
  32 chmod<br />
   9 sudo<br />
   9 rm<br />
   9 ping<br />
   9 man<br />
   8 ipconfig<br />
   7 php</p>
<p>That&#8217;s what i use Terminal for&#8230;. <img src='http://pko.ch/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Memoization in Python: easier than what it should be by pkoch</title>
		<link>http://pko.ch/2008/08/22/memoization-in-python-easier-than-what-it-should-be/comment-page-1/#comment-45</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Mon, 25 Aug 2008 01:16:50 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=15#comment-45</guid>
		<description>Illustrative example:
&lt;code&gt;&lt;pre&gt;
@memoize
def prt(*args,**kwargs):
    print &quot;Calculated!&quot;
    return (args,kwargs)

a = [1,2,3]
print prt(a,one=10, c=&#039;cee&#039;, d2=&#039;two&#039;)

a.append(1)
print prt(a, one=10, c=&#039;cee&#039;, d2=&#039;two&#039;)
print prt(a, one=10, d2=&#039;two&#039;, c=&#039;cee&#039;)

a.pop()
print prt(a, c=&#039;cee&#039;,one=10, d2=&#039;two&#039;)
&lt;/pre&gt;
&lt;/code&gt;
</description>
		<content:encoded><![CDATA[<p>Illustrative example:<br />
<code>
<pre>
@memoize
def prt(*args,**kwargs):
    print "Calculated!"
    return (args,kwargs)

a = [1,2,3]
print prt(a,one=10, c='cee', d2='two')

a.append(1)
print prt(a, one=10, c='cee', d2='two')
print prt(a, one=10, d2='two', c='cee')

a.pop()
print prt(a, c='cee',one=10, d2='two')
</pre>
<p></code></p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Memoization in Python: easier than what it should be by pkoch</title>
		<link>http://pko.ch/2008/08/22/memoization-in-python-easier-than-what-it-should-be/comment-page-1/#comment-44</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Mon, 25 Aug 2008 00:05:31 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=15#comment-44</guid>
		<description>I&#039;ve updated my post to reflect many of the improvements presented on reddit comments.

Thank you, all! =)</description>
		<content:encoded><![CDATA[<p>I&#8217;ve updated my post to reflect many of the improvements presented on reddit comments.</p>
<p>Thank you, all! =)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on There&#8217;s no silver bullet, but there&#8217;s a silver DSCM. And it&#8217;s quick. by pkoch</title>
		<link>http://pko.ch/2008/08/23/theres-no-silver-bullet-but-theres-a-silver-dscm-and-its-quick/comment-page-1/#comment-43</link>
		<dc:creator>pkoch</dc:creator>
		<pubDate>Sun, 24 Aug 2008 23:56:38 +0000</pubDate>
		<guid isPermaLink="false">http://pko.ch/?p=5#comment-43</guid>
		<description>Jakub Narębski:

Maybe the video I referred has some mention to it, can&#039;t really recall where i stumbled into that. I remember that someone said Mercurial started as a conceptual branch from Git exactly on that point. But that&#039;s just what I remember. Your right, I should have backed up my claims.

Mercurial has just the amount of complexity I&#039;ve ever wanted. I&#039;ve bettered my understanding of Git since I first wrote that post, and didn&#039;t find any of its added functionality over Mercurial to ease my life. The less complexity I have to deal with, the better. Mercurial is more than enough for me.</description>
		<content:encoded><![CDATA[<p>Jakub Narębski:</p>
<p>Maybe the video I referred has some mention to it, can&#8217;t really recall where i stumbled into that. I remember that someone said Mercurial started as a conceptual branch from Git exactly on that point. But that&#8217;s just what I remember. Your right, I should have backed up my claims.</p>
<p>Mercurial has just the amount of complexity I&#8217;ve ever wanted. I&#8217;ve bettered my understanding of Git since I first wrote that post, and didn&#8217;t find any of its added functionality over Mercurial to ease my life. The less complexity I have to deal with, the better. Mercurial is more than enough for me.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
