<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7106283192586026799</id><updated>2011-05-06T17:11:14.430-05:00</updated><category term='off topic'/><category term='communication'/><category term='programming'/><title type='text'>The BrainStorm</title><subtitle type='html'>Participate in the development of &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;, the sexiest chess engine on the planet.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>28</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3450153155202465982</id><published>2008-05-08T00:56:00.003-05:00</published><updated>2008-05-08T01:00:38.825-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Primer</title><content type='html'>&lt;p&gt;I haven&amp;rsquo;t been &lt;a href="http://primermovie.com/"&gt;this excited&lt;/a&gt; about anything in a long time.  Thanks, &lt;a href="http://www.imaginaryplanet.net/weblogs/idiotprogrammer/"&gt;Robert&lt;/a&gt;, for the recommendation.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3450153155202465982?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3450153155202465982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3450153155202465982' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3450153155202465982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3450153155202465982'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2008/05/primer.html' title='Primer'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-4391893470777639957</id><published>2008-05-05T00:02:00.005-05:00</published><updated>2008-05-05T00:15:09.684-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>A Long Overdue Update</title><content type='html'>&lt;p&gt;A few days ago, I compiled and ran &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; for the first time in months if not years.  Thanks to Jonne, it compiled with only two warnings (unused variables) and soundly defeated me at a few quick games.  On my plate for this week: fix those two warnings, then make the transposition table a singleton.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-4391893470777639957?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/4391893470777639957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=4391893470777639957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/4391893470777639957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/4391893470777639957'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2008/05/long-overdue-update.html' title='A Long Overdue Update'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-2322074457599529994</id><published>2008-04-18T00:11:00.003-05:00</published><updated>2008-04-18T00:18:13.056-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Python</title><content type='html'>&lt;p&gt;
A little girl walks into a pet shop and asks for a rabbit.
&lt;/p&gt;

&lt;p&gt;
The shopkeeper looks down at her, smiles, and asks, &amp;ldquo;Would you like a lovely-fluffy little white rabbit?  Or a cutesy-wootsy little brown rabbit?&amp;rdquo;
&lt;/p&gt;

&lt;p&gt;
&amp;ldquo;Actually,&amp;rdquo; the little girl replies, &amp;ldquo;I don't think my python would notice.&amp;rdquo;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-2322074457599529994?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/2322074457599529994/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=2322074457599529994' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2322074457599529994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2322074457599529994'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2008/04/python.html' title='Python'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3520021609807301499</id><published>2008-03-06T13:21:00.001-06:00</published><updated>2008-03-06T13:23:52.876-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Italian Proverb</title><content type='html'>After the game, the king and the pawn go in the same box.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3520021609807301499?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3520021609807301499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3520021609807301499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3520021609807301499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3520021609807301499'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2008/03/italian-proverb.html' title='Italian Proverb'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-6851698215483034565</id><published>2008-02-15T23:06:00.002-06:00</published><updated>2008-02-15T23:09:43.775-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Resurrection</title><content type='html'>&lt;p&gt;After too long of a break, I&amp;rsquo;m trying to get back into &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;.  Yesterday, I improved the rook heuristics.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-6851698215483034565?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/6851698215483034565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=6851698215483034565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6851698215483034565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6851698215483034565'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2008/02/resurrection.html' title='Resurrection'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-1484704908949381069</id><published>2007-11-25T04:26:00.000-06:00</published><updated>2007-11-25T04:37:13.754-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Jonne</title><content type='html'>&lt;p&gt;A few days ago, a stranger filed an &lt;a href="http://code.google.com/p/gray-matter/issues/detail?id=13&amp;can=1"&gt;issue report&lt;/a&gt;.  A few minutes later, he uploaded a patch that fixed the bug.  I immediately added him as a team member.&lt;/p&gt;

&lt;p&gt;The next day, he flooded my inbox with all kinds of &lt;a href="http://groups.google.com/group/gray-matter-chess-engine/search?group=gray-matter-chess-engine&amp;q=jonne.zutt&amp;qt_g=Search+this+group"&gt;commits&lt;/a&gt;: fixed this, improved that.  He seems to enjoy fixing code even more than I enjoy breaking it.  ;-)&lt;/p&gt;

&lt;p&gt;And he&amp;rsquo;s no longer a stranger; he&amp;rsquo;s a friend.  Let&amp;rsquo;s all welcome Jonne to The Gray Matter Team.  :-)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-1484704908949381069?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/1484704908949381069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=1484704908949381069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/1484704908949381069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/1484704908949381069'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/11/jonne.html' title='Jonne'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-6884795169929494081</id><published>2007-10-24T04:06:00.000-05:00</published><updated>2007-10-24T04:28:03.801-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Nil's Party Mix</title><content type='html'>&lt;p&gt;I&amp;rsquo;m making a mix CD for my sister.  Here&amp;rsquo;s what I have so far:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The F***ing Champs &amp;mdash; V &amp;mdash; Air on a G-String&lt;/li&gt;
&lt;li&gt;Yoshihiro Kusano, Tetsuya Ohuchi &amp;mdash; Guilty Gear Isuka OST &amp;mdash; The Irony of Chaste&lt;/li&gt;
&lt;li&gt;Self &amp;mdash; Gizmodgery &amp;mdash; What a Fool Believes&lt;/li&gt;
&lt;li&gt;Royksopp &amp;mdash; Remind Me &amp;mdash; Remind Me&lt;/li&gt;
&lt;li&gt;Judy and Mary &amp;mdash; Rurouni Kenshin OST &amp;mdash; Sobakasu&lt;/li&gt;
&lt;li&gt;Stereolab &amp;mdash; Lo Boob Oscillator &amp;mdash; Lo Boob Oscillator&lt;/li&gt;
&lt;li&gt;Regina Spektor &amp;mdash; Begin to Hope &amp;mdash; Better&lt;/li&gt;
&lt;li&gt;Portal &amp;mdash; Portal OST &amp;mdash; Still Alive&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Do you get the general feel of the mix CD?  Should I add, reorder, or remove any songs?  I&amp;rsquo;d appreciate any feedback, thanks!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-6884795169929494081?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/6884795169929494081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=6884795169929494081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6884795169929494081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6884795169929494081'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/10/nils-party-mix.html' title='Nil&apos;s Party Mix'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-418488594352264290</id><published>2007-09-23T06:29:00.002-05:00</published><updated>2008-03-18T06:03:20.460-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Java?</title><content type='html'>&lt;p&gt;After spending some time writing Ruby and Java code, I had a hard time crossing my eyes again to make heads or tails of &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&amp;rsquo;s&lt;/b&gt; &lt;small&gt;C++&lt;/small&gt; code.  That got me thinking &amp;mdash; is it time to migrate to a more modern programming language?&lt;/p&gt;

&lt;p&gt;Ruby&amp;rsquo;s syntax is beautiful, but it can&amp;rsquo;t deliver the performance that a chess engine needs.  But what about Java?  I did some research, and a couple of things scare me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java doesn&amp;rsquo;t have an unsigned 64-bit integer type.  We&amp;rsquo;d have to use signed 64-bit integers as BitBoards.  Also, the farther we move up from the bare metal, the less we can rely on our low-level bit-twiddling hacks.  Who knows what kind of bizarre problems may result.&lt;/li&gt;
&lt;li&gt;The Java crowd seems a little bit &lt;i&gt;too&lt;/i&gt; enthusiastic about Java&amp;rsquo;s performance, especially when compared to &lt;small&gt;C++&lt;/small&gt;.  I don&amp;rsquo;t trust the Java echo chamber.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I guess we&amp;rsquo;re sticking with &lt;small&gt;C++&lt;/small&gt;.  I&amp;rsquo;m discussing this with Doug, and he agrees that we should stay as close to the bare metal as possible.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-418488594352264290?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/418488594352264290/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=418488594352264290' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/418488594352264290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/418488594352264290'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/09/java.html' title='Java?'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-1332845357396637749</id><published>2007-08-19T00:42:00.000-05:00</published><updated>2007-12-29T03:36:38.881-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Opening Book</title><content type='html'>&lt;p&gt;&lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; now uses an opening book.  This improvement accounts for the greatest increase in strength since we moved from naive MiniMax to AlphaBeta.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-1332845357396637749?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/1332845357396637749/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=1332845357396637749' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/1332845357396637749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/1332845357396637749'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/08/opening-book.html' title='Opening Book'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-7673356342390753118</id><published>2007-08-04T07:05:00.000-05:00</published><updated>2007-08-04T07:34:36.550-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>With a Little Help from My Friends</title><content type='html'>&lt;p&gt;It must be chess programming season again.  We&amp;rsquo;ve been progressing by leaps and bounds.&lt;/p&gt;

&lt;p&gt;Doug schooled me, yet again, in object oriented programming.  He split the search class into a base class and an MTD(&lt;i&gt;f&lt;/i&gt;) sub-class.  This makes for a much cleaner design (by separating the search framework from the actual search engine) and also gives us a nice way to add more implementations of different search engines (and even switch between them at runtime!).  Following Doug&amp;rsquo;s lead, I split the board class into a base class (which includes board representation and move generation) and a heuristic sub-class (which includes current state evaluation).&lt;/p&gt;

&lt;p&gt;A couple of days later, Dillon schooled me, yet again, in chess strategy.  He explained the concept of tempo.  That, combined with Sam&amp;rsquo;s dirty trick of hard-coding values into arrays, allowed me to quickly implement tempo evaluation as a method of the heuristic sub-class.  And &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; no longer does the Happy King Shuffle Dance&amp;trade;.&lt;/p&gt;

&lt;p&gt;In other news, we&amp;rsquo;ve just committed our 1000th revision.  Thanks for everything, guys.  A celebration is in order.  You&amp;rsquo;ve earned it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-7673356342390753118?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/7673356342390753118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=7673356342390753118' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/7673356342390753118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/7673356342390753118'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/08/with-little-help-from-my-friends.html' title='With a Little Help from My Friends'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-9149113348695956119</id><published>2007-08-01T10:44:00.000-05:00</published><updated>2007-11-16T01:28:35.031-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Stiff Asks, Raj Answers</title><content type='html'>&lt;p&gt;While reading Wikipedia&amp;rsquo;s &lt;a href="http://en.wikipedia.org/wiki/Editor_war"&gt;Vim vs. &lt;small&gt;EMACS&lt;/small&gt; flamewar&lt;/a&gt; page, I came across a link to a &lt;a href="http://www.stifflog.com/2006/10/16/stiff-asks-great-programmers-answer/"&gt;questionnaire&lt;/a&gt; for great programmers.  I shot the link over to my buddy &lt;a href="http://jdtaylor.org/"&gt;Doug&lt;/a&gt;.  He told me that he&amp;rsquo;s interested in my answers, and I&amp;rsquo;m interested in his.  Here you go, Doug.  :-)&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;How did you learn programming? Were any schools of any use? Or maybe you didn’t even bother with ending any schools :) ?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&amp;ldquo;I have never let my schooling interfere with my education.&amp;rdquo; &amp;mdash; Mark Twain&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What do you think is the most important skill every programmer should posses?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;A good sense of humor.  Because if you can&amp;rsquo;t laugh at yourself, programming will make you cry.&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;Do you think mathematics and/or physics are an important skill for a programmer? Why?&lt;/b&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What do you think will be the next big thing in computer programming? X-oriented programming, y language, quantum computers, what?&lt;/b&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;If you had three months to learn one relativly new technology, which one would You choose?&lt;/b&gt;&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What do you think makes some programmers 10 or 100 times more productive than others?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;I don&amp;rsquo;t know, and maybe that&amp;rsquo;s why some programmers are 10 or 100 times more productive than me.  But I hope it has something to do with Red Bull energy drink.  *taking another swig*&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What are your favourite tools (operating system, programming/scripting language, text editor, version control system, shell, database engine, other tools you can’t live without) and why do you like them more than others?&lt;/b&gt;&lt;/p&gt;

&lt;table border="1"&gt;
&lt;tr&gt;&lt;td&gt;Operating System&lt;/td&gt;&lt;td&gt;&lt;small&gt;OS X&lt;/small&gt; because it&amp;rsquo;s pretty.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Programming Language&lt;/td&gt;&lt;td&gt;&lt;small&gt;C/C++&lt;/small&gt; (&lt;small&gt;GCC&lt;/small&gt;) because I know it.  Oh, and interpreted and scripting languages are for weenies.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Text Editor&lt;/td&gt;&lt;td&gt;Vim because it saves me from &lt;small&gt;RSI.&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Revision Control System&lt;/td&gt;&lt;td&gt;Subversion.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Shell&lt;/td&gt;&lt;td&gt;&lt;small&gt;BASH.&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Database&lt;/td&gt;&lt;td&gt;I hate all databases equally.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Laptop&lt;/td&gt;&lt;td&gt;Apple MacBook because it&amp;rsquo;s pretty.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Guitar&lt;/td&gt;&lt;td&gt;Gibson &lt;small&gt;SG&lt;/small&gt; because it rocks my face off.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Piano&lt;/td&gt;&lt;td&gt;Kawai baby grand because it&amp;rsquo;s beautiful.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;Writing Implement&lt;/td&gt;&lt;td&gt;&lt;a href="http://www.leadholder.com/"&gt;Leadholder&lt;/a&gt;.&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What is your favourite book related to computer programming?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&amp;ldquo;The best book on programming for the layman is &lt;i&gt;Alice in Wonderland;&lt;/i&gt; but that&amp;rsquo;s because it&amp;rsquo;s the best book on anything for the layman.&amp;rdquo; &amp;mdash; &lt;a href="http://en.wikipedia.org/wiki/Alan_Perlis"&gt;Alan Jay Perlis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My current library of programming books consists only of &lt;a href="http://cm.bell-labs.com/cm/cs/cbook/"&gt;&lt;i&gt;The C Programming Language&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://minix1.woodhull.com/osdi2/"&gt;&lt;i&gt;Operating Systems: Design and Implementation&lt;/i&gt;&lt;/a&gt;.  I&amp;rsquo;d like a copy of &lt;a href="http://aima.cs.berkeley.edu/"&gt;&lt;i&gt;Artificial Intelligence: A Modern Approach&lt;/i&gt;&lt;/a&gt; and &lt;a href="http://www-cs-faculty.stanford.edu/~knuth/taocp.html"&gt;&lt;i&gt;The Art of Computer Programming&lt;/i&gt;&lt;/a&gt;, but these days, just about everything that I need to know is available online.&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What is Your favourite book NOT related to computer programming?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;&lt;i&gt;The Bhagavad Gita&lt;/i&gt;.  This book calms me when I&amp;rsquo;m too angry and rouses me when I&amp;rsquo;m too apathetic.  I also love &lt;i&gt;The Cartoon History of the Universe&lt;/i&gt; and &lt;i&gt;The Complete Calvin and Hobbes&lt;/i&gt;.&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;&lt;b&gt;What are your favourite music bands/performers/compositors?&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;Bach, Mozart, Beethoven, Radiohead, John Williams (the classical guitarist, not the composer), Asian Dub Foundation, Blur, The Clash, Dr. Dre, Fountains of Wayne, The F***ing Champs, Judy and Mary, Led Zeppelin, Neutral Milk Hotel, The Slackers, Stereolab, Weird Al, and too many others to name.&lt;/p&gt;

&lt;hr&gt;

&lt;p&gt;And here are &lt;a href="http://jdtaylor.org/stiff-answers.html"&gt;Doug&amp;rsquo;s&lt;/a&gt;, &lt;a href="http://angryphysicist.wordpress.com/2007/08/01/programming-questionaire/"&gt;Alex&amp;rsquo;s&lt;/a&gt;, and &lt;a href="http://gigolo.homelinux.net/~sam/stiff-answers.html"&gt;Sam&amp;rsquo;s&lt;/a&gt; answers.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-9149113348695956119?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/9149113348695956119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=9149113348695956119' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/9149113348695956119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/9149113348695956119'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/08/stiff-asks-raj-answers.html' title='Stiff Asks, Raj Answers'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-6804005147540097435</id><published>2007-06-28T15:43:00.000-05:00</published><updated>2007-06-30T17:23:49.802-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Downtime</title><content type='html'>&lt;p&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/514662415/"&gt;&lt;img src="http://farm1.static.flickr.com/219/514662415_a95889ddf1.jpg?v=0" width="200" align="right" alt=""/&gt;&lt;/a&gt;

My buddy Sam had kindly given me an account on his Linux box to test &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;.  Sadly, yesterday, someone started pounding away at his bandwidth; he had to take his box offline.  He&amp;rsquo;s still trying to diagnose and solve the problem.
&lt;/p&gt;

&lt;p&gt;In the meantime, I have no way to test &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; (&lt;a href="http://chess-engine.blogspot.com/2007/05/remote-testing.html"&gt;without scorching my testicles&lt;/a&gt;).  If someone has a Linux box and wouldn&amp;rsquo;t mind giving me an account to test &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;, I&amp;rsquo;d be most grateful.&lt;/p&gt;

&lt;p&gt;Update 1: No one was pounding away at Sam&amp;rsquo;s bandwidth.  Runaway &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; processes were pounding away at his &lt;small&gt;CPU&lt;/small&gt; and &lt;small&gt;RAM&lt;/small&gt;.  It was my own dumb fault.  He discovered the problem and got his server back online.  I&amp;rsquo;m sorry for the trouble, and thanks, Sam!&lt;/p&gt;

&lt;p&gt;Update 2: &lt;a href="http://songwei.blogsome.com"&gt;Song&lt;/a&gt; has given me an account on his FreeBSD box as well.  Thanks, Song!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-6804005147540097435?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/6804005147540097435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=6804005147540097435' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6804005147540097435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6804005147540097435'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/downtime.html' title='Downtime'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-8266014846830204561</id><published>2007-06-19T07:38:00.000-05:00</published><updated>2007-06-19T07:43:33.647-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Next Steps</title><content type='html'>&lt;p&gt;&lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; finally plays a decent game, but she&amp;rsquo;s not quite ready to enter a tournament.  To be tournament-worthy, she must:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;avoid stalemate and pursue checkmate,&lt;/li&gt;
&lt;li&gt;more intelligently allocate thinking time, and&lt;/li&gt;
&lt;li&gt;use an opening book.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-8266014846830204561?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/8266014846830204561/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=8266014846830204561' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8266014846830204561'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8266014846830204561'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/next-steps.html' title='Next Steps'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-2357223575784609292</id><published>2007-06-15T16:36:00.000-05:00</published><updated>2007-06-19T07:35:54.326-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Mailing List</title><content type='html'>I&amp;rsquo;ve created a &lt;a href="http://groups.google.com/group/gray-matter-chess-engine"&gt;&lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; NewsGroup&lt;/a&gt;.  It allows you to follow changes to the code online or through email.  It also allows you to post questions, comments, flames, and pornography.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-2357223575784609292?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/2357223575784609292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=2357223575784609292' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2357223575784609292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2357223575784609292'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/mailing-list.html' title='Mailing List'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-5478814391004791459</id><published>2007-06-05T00:27:00.000-05:00</published><updated>2007-06-05T00:28:33.541-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>History Heuristic</title><content type='html'>&lt;p&gt;I&amp;rsquo;ve re-implemented the history heuristic.  It shouldn&amp;rsquo;t interfere with MTD(&lt;i&gt;f&lt;/i&gt;).&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-5478814391004791459?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/5478814391004791459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=5478814391004791459' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5478814391004791459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5478814391004791459'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/history-heuristic.html' title='History Heuristic'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-5019646076063639584</id><published>2007-06-02T17:10:00.000-05:00</published><updated>2007-06-19T03:19:55.925-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Automata</title><content type='html'>&lt;p&gt;I haven&amp;rsquo;t had much time to work on &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;.  I&amp;rsquo;ve been working on this instead:&lt;/p&gt;

&lt;p&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/526757538/"&gt;&lt;img src="http://farm1.static.flickr.com/196/526757538_8e01e3ce2f.jpg?v=0" width="100" alt="Union" /&gt;&lt;/a&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/526757576/"&gt;&lt;img src="http://farm2.static.flickr.com/1182/526757576_90cc493a7a.jpg?v=0" width="100" alt="Concatenation" /&gt;&lt;/a&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/526757594/"&gt;&lt;img src="http://farm1.static.flickr.com/246/526757594_22b21b0575.jpg?v=0" width="100" alt="Star" /&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;I&amp;rsquo;ve also codified what I humbly call Raj&amp;rsquo;s Law.  For two sets, A and B:&lt;/p&gt;

&lt;p&gt;A &amp;ndash; B = A ∧ &lt;span style="text-decoration:overline"&gt;A ∧ B&lt;/span&gt;&lt;/p&gt;

&lt;p&gt;I&amp;rsquo;ll get back to &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; soon.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-5019646076063639584?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/5019646076063639584/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=5019646076063639584' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5019646076063639584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5019646076063639584'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/automata.html' title='Automata'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3433448711274316985</id><published>2007-06-02T13:19:00.000-05:00</published><updated>2007-06-03T07:33:14.561-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Dwandy</title><content type='html'>&lt;p&gt;&amp;ldquo;It continues to amaze me.  The same people who accept that their computers crash for no reason also accept that anything that their computers print is pure truth.&amp;rdquo;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3433448711274316985?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3433448711274316985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3433448711274316985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3433448711274316985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3433448711274316985'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/06/dwandy.html' title='Dwandy'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3210709977982871113</id><published>2007-05-31T17:55:00.000-05:00</published><updated>2007-05-31T18:07:25.230-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Illegal Moves</title><content type='html'>&lt;p&gt;When &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; knew she&amp;rsquo;d lost, she used to sometimes make illegal moves and leave herself in check.  No longer!  Now, in &lt;a href="http://gray-matter.googlecode.com/svn/trunk/src/search.cpp"&gt;&lt;tt&gt;search::minimax()&lt;/tt&gt;&lt;/a&gt;, at the move tree&amp;rsquo;s root node, she generates only legal moves.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3210709977982871113?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3210709977982871113/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3210709977982871113' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3210709977982871113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3210709977982871113'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/illegal-moves.html' title='Illegal Moves'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-8840987249745989661</id><published>2007-05-27T19:58:00.001-05:00</published><updated>2008-07-22T21:53:54.232-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Remote Testing</title><content type='html'>&lt;p&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/517610767/"&gt;&lt;img src="http://farm1.static.flickr.com/227/517610767_6ee75629f9.jpg?v=0" width="200" align="right" alt=""/&gt;&lt;/a&gt;

I have a MacBook, and I don&amp;rsquo;t enjoy burning my &lt;small&gt;CPU&lt;/small&gt; at 100% and scorching my testicles every time I test &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;.  I&amp;rsquo;ve discovered a cool (pun intended) way to run &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; on my desktop remotely and XBoard on my laptop locally:
&lt;/p&gt;

&lt;p&gt;For this to work, you need &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; and an &lt;small&gt;SSH&lt;/small&gt; server installed on your desktop, and an &lt;small&gt;SSH&lt;/small&gt; client and XBoard installed on your laptop.  On your laptop, launch a terminal emulator and issue the following command:&lt;/p&gt;

&lt;p&gt;&lt;tt&gt;xboard -rsh ssh -fh &lt;i&gt;domain.com&lt;/i&gt; -ruser &lt;i&gt;username&lt;/i&gt; -fcp &lt;i&gt;gray-matter/bin/gray&lt;/i&gt;&lt;/tt&gt;&lt;/p&gt;

&lt;p&gt;But replace &lt;tt&gt;&lt;i&gt;domain.com&lt;/i&gt;&lt;/tt&gt; with your desktop&amp;rsquo;s domain name or &lt;small&gt;IP&lt;/small&gt; address, &lt;tt&gt;&lt;i&gt;username&lt;/i&gt;&lt;/tt&gt; with your username, and &lt;tt&gt;&lt;i&gt;gray-matter/bin/gray&lt;/i&gt;&lt;/tt&gt; with the path (either absolute or relative to your home directory) to your &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; executable.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-8840987249745989661?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/8840987249745989661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=8840987249745989661' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8840987249745989661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8840987249745989661'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/remote-testing.html' title='Remote Testing'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3583472783350281091</id><published>2007-05-26T20:06:00.000-05:00</published><updated>2007-12-29T03:41:47.085-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Etymology of Checkmate</title><content type='html'>&lt;p&gt;Just when you thought that it wasn&amp;rsquo;t possible, I became even more interesting.  You see, the word &lt;i&gt;checkmate&lt;/i&gt; is etymologically related to my last name, Shah.  The word &lt;i&gt;checkmate&lt;/i&gt; is derived from the phrase &lt;i&gt;shah mat&lt;/i&gt; which translates to, &amp;ldquo;The king is defeated.&amp;rdquo;  &lt;a href="http://www.goddesschess.com/chessays/shahmatjan.html"&gt;Read more.&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3583472783350281091?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3583472783350281091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3583472783350281091' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3583472783350281091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3583472783350281091'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/etymology-of-checkmate.html' title='Etymology of Checkmate'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-6762591257696270653</id><published>2007-05-26T08:50:00.000-05:00</published><updated>2007-06-19T07:36:10.926-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Pondering, Terminology</title><content type='html'>&lt;p&gt;I&amp;rsquo;ve added two new technical documents about &lt;a href="http://code.google.com/p/gray-matter/wiki/Pondering"&gt;pondering&lt;/a&gt; and &lt;a href="http://code.google.com/p/gray-matter/wiki/Terminology"&gt;terminology&lt;/a&gt;.  These are works in progress.  Hit me with your questions, comments, and flames.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-6762591257696270653?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/6762591257696270653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=6762591257696270653' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6762591257696270653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/6762591257696270653'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/pondering-terminology.html' title='Pondering, Terminology'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-5892177357420359255</id><published>2007-05-23T03:04:00.000-05:00</published><updated>2007-05-23T03:17:16.687-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>Library Quotes</title><content type='html'>&lt;p&gt;The public library is the most dangerous place in town. &amp;mdash; John Ciardi&lt;/p&gt;

&lt;p&gt;A truly great library contains something in it to offend everyone. &amp;mdash; Jo Godwin&lt;/p&gt;

&lt;p&gt;I pray that no child of mine would ever descend into such a place as a library.  They are indeed most dangerous places and unfortunate is she or he who is lured into such a hellhole of enjoyment, stimulus, facts, passion and fun. &amp;mdash; Willy Russell&lt;/p&gt;

&lt;p&gt;Forget about the Senior Prom and go to the library and educate yourself if you&amp;rsquo;ve got any guts.  Some of you like pep rallies and plastic robots who tell you what to read.  Forget I mentioned it&amp;hellip;  Rise for the flag, salute. &amp;mdash; Frank Zappa&lt;/p&gt;

&lt;p&gt;Existing libraries, in their very being, seem to question the authority of those in power. &amp;mdash; Alberto Manguel&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-5892177357420359255?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/5892177357420359255/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=5892177357420359255' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5892177357420359255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5892177357420359255'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/library-quotes.html' title='Library Quotes'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-2588763703781121180</id><published>2007-05-18T22:51:00.000-05:00</published><updated>2007-06-19T07:36:24.977-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Technical Documents</title><content type='html'>&lt;p&gt;I&amp;rsquo;d started writing a series of technical documents as posts on this blog.  I&amp;rsquo;d written about &lt;a href="http://code.google.com/p/gray-matter/wiki/perft"&gt;&lt;tt&gt;perft()&lt;/tt&gt;&lt;/a&gt; and &lt;a href="http://code.google.com/p/gray-matter/wiki/AlphaBeta"&gt;alpha-beta pruning&lt;/a&gt; when I realized that the posts were growing too large and unwieldy.  I think that these documents have a better home in the &lt;a href="http://code.google.com/p/gray-matter/w/list"&gt;wiki&lt;/a&gt;.  If you&amp;rsquo;d like access to change anything about the wiki (or source code), comment on this blog, &lt;a href="mailto:brainix@gmail.com"&gt;email&lt;/a&gt; me, or &lt;a href="aim:goim?screenname=Brainix"&gt;&lt;small&gt;IM&lt;/small&gt;&lt;/a&gt; me.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-2588763703781121180?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/2588763703781121180/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=2588763703781121180' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2588763703781121180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2588763703781121180'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/technical-documents.html' title='Technical Documents'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-8595179719095159539</id><published>2007-05-12T19:36:00.000-05:00</published><updated>2007-05-18T22:15:19.508-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='off topic'/><title type='text'>William S. Burroughs</title><content type='html'>&lt;p&gt;&lt;a href="http://www.everything2.com/index.pl?node=language%20is%20a%20virus%20from%20outer%20space"&gt;&amp;ldquo;Language is a virus from outer space.&amp;rdquo;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-8595179719095159539?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/8595179719095159539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=8595179719095159539' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8595179719095159539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/8595179719095159539'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/william-s-burroughs.html' title='William S. Burroughs'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-5019426958862061723</id><published>2007-05-11T17:15:00.000-05:00</published><updated>2007-05-20T09:39:43.581-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>One Negative Sign</title><content type='html'>&lt;p&gt;I&amp;rsquo;d forgotten one negative sign, which caused &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; to pursue draws instead of checkmates!  One negative sign!  I hate myself.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-5019426958862061723?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/5019426958862061723/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=5019426958862061723' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5019426958862061723'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/5019426958862061723'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/one-negative-sign.html' title='One Negative Sign'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-388334997478803634</id><published>2007-05-10T03:40:00.000-05:00</published><updated>2007-11-16T01:31:56.319-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Simpler Code</title><content type='html'>&lt;p&gt;
&lt;a href="http://flickr.com/photos/15917199@N00/511415768/"&gt;&lt;img src="http://farm1.static.flickr.com/220/511415768_4ff1a01051.jpg?v=0" width="200" align="right" alt=""/&gt;&lt;/a&gt;

In the &lt;a href="http://gray-matter.googlecode.com/svn/trunk/src/search.cpp"&gt;move search&lt;/a&gt;, I&amp;rsquo;ve abandoned NegaScout for &lt;a href="http://www.cs.vu.nl/~aske/mtdf.html"&gt;MTD(&lt;i&gt;f&lt;/i&gt;)&lt;/a&gt;.  This has forced several other changes in the code.  I&amp;rsquo;ve discarded the null-move and history heuristics in favor of straight FailSoft AlphaBeta.
&lt;/p&gt;

&lt;p&gt;The increase in search depth is spectacular, but even better is how much simpler the code has become.  Sadly, I don&amp;rsquo;t think that everything works properly just yet.  I&amp;rsquo;ll keep hacking at it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-388334997478803634?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/388334997478803634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=388334997478803634' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/388334997478803634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/388334997478803634'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/simpler-code.html' title='Simpler Code'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-3899675646683438491</id><published>2007-05-05T06:46:00.000-05:00</published><updated>2007-05-27T20:24:59.200-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Friends Needed</title><content type='html'>&lt;p&gt;One of the reasons that we&amp;rsquo;ve embarked on this project is to meet interesting people.  We're looking to extend our &lt;a href="http://gray-matter.googlecode.com/svn/trunk/doc/credits"&gt;circle of friends&lt;/a&gt;.  These are the roles that we still need filled:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Release Coordinator&lt;/b&gt;:  Upon every major change to the &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; source code (that affects its playing strength), this person will compile and upload a Windows executable.  &lt;a href="http://code.google.com/p/gray-matter/wiki/Xcompile"&gt;Here&lt;/a&gt; are the simple instructions to do this manually, but this entire process could be automated.  Ideally, this person will have a box running Linux with Subversion, the &lt;small&gt;GNU&lt;/small&gt; toolchain, and MinGW.&lt;/li&gt;
&lt;br&gt;
&lt;li&gt;&lt;b&gt;Chess Player&lt;/b&gt;:  This person will play chess against &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; (or perhaps test &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; on an Internet Chess Server) and provide &lt;a href="http://code.google.com/p/gray-matter/issues/list"&gt;feedback&lt;/a&gt; regarding its performance to its developers.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We also need developers who will contribute ideas or source code.  If you&amp;rsquo;re interested in playing any of these parts, comment on this blog, &lt;a href="mailto:brainix@gmail.com"&gt;email&lt;/a&gt; me, or &lt;a href="aim:goim?screenname=Brainix"&gt;&lt;small&gt;IM&lt;/small&gt;&lt;/a&gt; me.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-3899675646683438491?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/3899675646683438491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=3899675646683438491' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3899675646683438491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/3899675646683438491'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/friends-needed.html' title='Friends Needed'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7106283192586026799.post-2021865171763645866</id><published>2007-05-04T09:07:00.000-05:00</published><updated>2007-11-05T03:13:13.047-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='communication'/><title type='text'>Hello, World</title><content type='html'>&lt;p&gt;My name is Raj, and I&amp;rsquo;m the lead (pronounced &lt;i&gt;l33t&lt;/i&gt;) hacker of a &lt;a href="http://gray-matter.googlecode.com/svn/trunk/doc/credits"&gt;team&lt;/a&gt; that&amp;rsquo;s interested in chess.  Our &lt;a href="http://code.google.com/p/gray-matter/wiki/Mission"&gt;mission&lt;/a&gt; is to develop a competitive, pedagogical chess engine.  And, most importantly, to have fun while doing it.  On this blog, we&amp;rsquo;ll chronicle the development of our chess engine, &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt;, from girlhood, through adolescence, and into womanhood.&lt;/p&gt;

&lt;p&gt;From &lt;a href="http://code.google.com/p/gray-matter/"&gt;the &lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; project page&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;&lt;p&gt;&lt;b&gt;G&lt;small&gt;RAY&lt;/small&gt; M&lt;small&gt;ATTER&lt;/small&gt;&lt;/b&gt; is a chess engine; it can play a game of chess.  It isn&amp;rsquo;t very strong but is a good learning and teaching tool.  Its authors aim to write readable, understandable, and hackable code.  It&amp;rsquo;s written in &lt;small&gt;C++&lt;/small&gt; and employs good object-oriented practices.  It uses some state-of-the-art techniques such as an &lt;a href="http://www.cs.vu.nl/~aske/mtdf.html"&gt;MTD(&lt;i&gt;f&lt;/i&gt;)&lt;/a&gt; move search and &lt;a href="http://www.cis.uab.edu/hyatt/bitmaps.html"&gt;rotated BitBoards&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;If you&amp;rsquo;d like to know more, comment on this blog, &lt;a href="mailto:brainix@gmail.com"&gt;email&lt;/a&gt; me, or &lt;a href="aim:goim?screenname=Brainix"&gt;&lt;small&gt;IM&lt;/small&gt;&lt;/a&gt; me.&lt;/p&gt;

&lt;p&gt;P.S.  &lt;a href="http://en.wikipedia.org/wiki/First_post"&gt;First post!&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7106283192586026799-2021865171763645866?l=chess-engine.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://chess-engine.blogspot.com/feeds/2021865171763645866/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7106283192586026799&amp;postID=2021865171763645866' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2021865171763645866'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7106283192586026799/posts/default/2021865171763645866'/><link rel='alternate' type='text/html' href='http://chess-engine.blogspot.com/2007/05/hello-world.html' title='Hello, World'/><author><name>Rajiv Bakulesh Shah</name><uri>http://www.blogger.com/profile/12554257546034504650</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://farm1.static.flickr.com/219/490953652_81c00f7e5c.jpg?v=0'/></author><thr:total>0</thr:total></entry></feed>
