<?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-27163180</id><updated>2012-02-16T04:02:26.884-08:00</updated><category term='java maven'/><category term='gwt'/><category term='dojo'/><category term='phylogentic tree'/><category term='genetics'/><category term='philosophy'/><category term='biology'/><category term='phylogeny'/><title type='text'>Unscramblings</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>16</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-27163180.post-7430397548004275532</id><published>2011-08-13T09:53:00.001-07:00</published><updated>2011-08-13T09:53:42.416-07:00</updated><title type='text'>Everything you always wanted to know about Maven but were afraid to ask</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Read the article at &lt;a href="http://goo.gl/0VHeH"&gt;http://goo.gl/0VHeH&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-7430397548004275532?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/7430397548004275532/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=7430397548004275532' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/7430397548004275532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/7430397548004275532'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2011/08/everything-you-always-wanted-to-know.html' title='Everything you always wanted to know about Maven but were afraid to ask'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-3346206580290762325</id><published>2011-01-15T09:32:00.001-08:00</published><updated>2011-01-16T06:46:48.987-08:00</updated><title type='text'>10.6.6 on a Dell mini 10V</title><content type='html'>Here's what worked for me:&lt;br /&gt;&lt;br /&gt;- Create USB boot stick following the instructions on http://lifehacker.com/5672051/how-to-build-a-hackintosh-mac-and-install-os-x-in-eight-easy-steps&lt;br /&gt;&lt;br /&gt;- Follow same instructions to install 10.6&lt;br /&gt;&lt;br /&gt;- Download combo update for 10.6.5 from apple.com onto the Dell hard drive&lt;br /&gt;- Download the latest netbook installer onto the hard drive too&lt;br /&gt;- (1) boot from the hard drive, (2) install the 10.6.5 update, but don't click Restart when you get that dialog, (3) run the netbook installer (I used 8.4 RC2) and install to hard drive with default settings, (4) restart&lt;br /&gt;&lt;br /&gt;That works.&lt;br /&gt;&lt;br /&gt;Doing it with 10.6.6 doesn't:&lt;br /&gt;&lt;br /&gt;- You'll get the black screen after doing this with 10.6.6.&lt;br /&gt;- Turn mini off.&lt;br /&gt;- Insert USB stick with 10.6 install.&lt;br /&gt;- Turn mini on.&lt;br /&gt;- When you get the screen to choose whether to boot from the USB stick or the hard drive, use arrow keys to select hard drive&lt;br /&gt;- type:&lt;br /&gt;&lt;br /&gt;recovery=y&lt;br /&gt;&lt;br /&gt;(What you type will appear at the bottom of the screen)&lt;br /&gt;&lt;br /&gt;and press enter&lt;br /&gt;&lt;br /&gt;- After this does its thing, the mini will automatically reboot, and you'll be at the screen to choose what to boot from again&lt;br /&gt;&lt;br /&gt;- Arrow over to the hard drive again, and press enter&lt;br /&gt;&lt;br /&gt;Your hard drive will now boot with 10.6.6.&lt;br /&gt;&lt;br /&gt;The problem, it won't reboot without going through the same rigmarole every time. Something ain't right with 10.6.6.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-3346206580290762325?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/3346206580290762325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=3346206580290762325' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3346206580290762325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3346206580290762325'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2011/01/1066-on-dell-mini-10v.html' title='10.6.6 on a Dell mini 10V'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-4489837828427395628</id><published>2009-09-08T14:54:00.000-07:00</published><updated>2011-01-16T07:15:44.392-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java maven'/><title type='text'>mvn -Dtest= not working for you?</title><content type='html'>&lt;code&gt;mvn -Dtest=FooTest test&lt;/code&gt; is, you would think, supposed to only run the test FooTest.java.&lt;br /&gt;&lt;br /&gt;But it doesn't unless you have all the dependent modules in the repo.&lt;br /&gt;&lt;br /&gt;If you don't want that, you can do it with mvn package:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;mvn -Dtest=FoTest package -DfailIfNoTests=false&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;You always want to add -DfailIfNoTests=false so that if a test fails in any maven project, the other projects' tests still get run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-4489837828427395628?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/4489837828427395628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=4489837828427395628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4489837828427395628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4489837828427395628'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2009/09/mvn-dtest-not-working-for-you.html' title='mvn -Dtest= not working for you?'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-4958517831360907487</id><published>2009-06-02T14:59:00.000-07:00</published><updated>2009-06-02T15:03:36.244-07:00</updated><title type='text'>maven war plugin warSourceIncludes meaning</title><content type='html'>Arrgg!!! Bloody #@$%^ &lt;a href="http://maven.apache.org/plugins/maven-war-plugin/"&gt;documentation&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;You use &lt;code&gt;warSourceIncludes&lt;/code&gt; &lt;b&gt;without&lt;/b&gt; &lt;code&gt;warSourceExcludes&lt;/code&gt;. Then anything not listed in &lt;code&gt;warSourceIncludes&lt;/code&gt; will be excluded. &lt;br /&gt;&lt;br /&gt;Kind of totally not like how &lt;a href="http://ant.apache.org/manual/CoreTypes/patternset.html"&gt;pattern sets&lt;/a&gt; work, which the documentation refers you to.&lt;br /&gt;&lt;br /&gt;There's also no wiki page where I could have put this.&lt;br /&gt;&lt;br /&gt;/rb&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-4958517831360907487?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/4958517831360907487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=4958517831360907487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4958517831360907487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4958517831360907487'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2009/06/maven-war-plugin-warsourceincludes.html' title='maven war plugin warSourceIncludes meaning'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-4933049838267712858</id><published>2008-05-01T16:38:00.001-07:00</published><updated>2008-05-02T05:51:52.414-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gwt'/><title type='text'>Passing Events instead of Widgets to Listeners in the Google Web Toolkit (GWT)</title><content type='html'>&lt;div id="ilx40" style="margin-left: 40px;"&gt;            Level: Advanced&lt;br /&gt;            Date: Originally published 10/07&lt;br /&gt;&lt;/div&gt;    &lt;blockquote&gt;&lt;br /&gt;In GWT, a listener object A may attach itself to many other widgets. These widgets will call A's onChange (or similar) method, and pass themselves as onChange's only parameter. Inside onChange, A must then decide which widget called it. At this point a programmer unfamiliar with the code faces a problem: there is no easy way for her to tell which of the widget's many methods and properties are intended to be used by A. The solution given here is to create an interface, named [widget's name]Event, that has only methods to be used inside of onChange. This makes for clean and understandable code.&lt;br /&gt;&lt;br /&gt;The full text of this post is available at &lt;a href="http://docs.google.com/Doc?id=dw2zgx2_331ns4qh527"&gt;http://docs.google.com/Doc?id=dw2zgx2_331ns4qh527&lt;/a&gt;.&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-4933049838267712858?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/4933049838267712858/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=4933049838267712858' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4933049838267712858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4933049838267712858'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/05/passing-events-instead-of-widgets-to.html' title='Passing Events instead of Widgets to Listeners in the Google Web Toolkit (GWT)'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-4341468438430944362</id><published>2008-05-01T16:37:00.001-07:00</published><updated>2008-08-25T19:06:15.358-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gwt'/><title type='text'>How to Integrate Spring 2.x with the Google Web Toolkit (GWT)</title><content type='html'>&lt;div id="rycz0" style="margin-left: 40px;"&gt;            Level: Intermediate&lt;br /&gt;&lt;br /&gt;      &lt;/div&gt;                                        &lt;p style="margin-left: 40px;" id="zlln10"&gt; This post explains how to manage your GWT server-side services with Spring and Spring MVC, and to inject Spring beans into them.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The complete post is available at &lt;a href="http://docs.google.com/Doc?docid=dw2zgx2_25492p5qxfq&amp;amp;hl=en"&gt;http://docs.google.com/Doc?docid=dw2zgx2_25492p5qxfq&amp;amp;hl=en&lt;/a&gt;.&lt;/p&gt;&lt;p style="margin-left: 40px;" id="zlln10"&gt;Date: Originally &lt;a title="published 10/07" target="_blank" href="http://code.google.com/p/google-web-toolkit-incubator/wiki/IntegratingWithSpring" id="zdxw"&gt;published by Google 10/07&lt;/a&gt;, updated 4/08. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-4341468438430944362?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/4341468438430944362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=4341468438430944362' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4341468438430944362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/4341468438430944362'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/05/how-to-integrate-spring-2x-with-google.html' title='How to Integrate Spring 2.x with the Google Web Toolkit (GWT)'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-1605339021006215013</id><published>2008-05-01T16:36:00.000-07:00</published><updated>2008-08-25T19:07:12.228-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='gwt'/><title type='text'>Stubbing RPC calls in Google Web Toolkit's Hosted Mode</title><content type='html'>&lt;div id="ilx40" style="margin-left: 40px;"&gt;            Level: Intermediate&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;p style="margin-left: 40px;" id="d8yb10"&gt;In this post I describe a way to "fake" or "stub" your RPC calls in GWT's hosted mode. It allows you to deploy to web mode without having to change any code, change any configurations, and without any stub or development-only code being deployed. It's very clean, and will work with any web application setup (for example, Spring is optional).&lt;/p&gt;&lt;p style="margin-left: 40px;" id="d8yb10"&gt;The full post is available at &lt;a href="http://docs.google.com/Doc?docid=dw2zgx2_106fd4mtt&amp;amp;hl=en"&gt;http://docs.google.com/Doc?docid=dw2zgx2_106fd4mtt&amp;amp;hl=en&lt;/a&gt;.&lt;/p&gt;&lt;p style="margin-left: 40px;" id="d8yb10"&gt;Date: Originally &lt;a title="published 10/07" target="_blank" href="http://code.google.com/p/google-web-toolkit-incubator/wiki/StubbingRPC" id="zdxw"&gt;published by Google 10/07&lt;/a&gt;, updated 4/08.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-1605339021006215013?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/1605339021006215013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=1605339021006215013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/1605339021006215013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/1605339021006215013'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/05/stubbing-rpc-calls-in-google-web.html' title='Stubbing RPC calls in Google Web Toolkit&apos;s Hosted Mode'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-2184176992254762149</id><published>2008-04-27T13:40:00.000-07:00</published><updated>2008-10-02T05:14:56.193-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dojo'/><title type='text'>Dojo modules explained</title><content type='html'>Level: Intermediate&lt;br /&gt;Date: Originally posted 3/12/08, updated 4/08.&lt;br /&gt;&lt;br /&gt;There is a catch-22 in Dojo for what convention to use when naming a module and its classes. Before I can explain it, I need to describe what dojo.require(), dojo.provide(), and dojo.declare() actually do. Then I'll return to the convention problems surrounding what arguments -- namespaces, actually -- to pass them. That way, you'll be able to make an informed decision on how to handle the convention problem yourself.&lt;br /&gt;&lt;br /&gt;The full post is available here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com/Doc?id=dw2zgx2_328ck7m86dk"&gt;http://docs.google.com/Doc?id=dw2zgx2_328ck7m86dk&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-2184176992254762149?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/2184176992254762149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=2184176992254762149' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/2184176992254762149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/2184176992254762149'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/04/dojos-broken-module-naming-convention.html' title='Dojo modules explained'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-3938025526977936506</id><published>2008-04-27T13:02:00.000-07:00</published><updated>2009-03-02T06:21:28.307-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dojo'/><title type='text'>dojoAttachEvent: what it's for and how to use it</title><content type='html'>Level: Intermediate&lt;br /&gt;Date: Originally posted 3/08, updated 4/08.&lt;br /&gt;&lt;br /&gt;You've written a widget, and you want other programmers to be able to change how it responds to events without forcing them to have to edit your existing event code. (In other words, you want your widget's event handling to be extensible without being modifiable.)&lt;br /&gt;&lt;br /&gt;The full post is located here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com/Doc?docid=dw2zgx2_325c42tg8dx&amp;amp;hl=en"&gt;http://docs.google.com/Doc?docid=dw2zgx2_325c42tg8dx&amp;amp;hl=en&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-3938025526977936506?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/3938025526977936506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=3938025526977936506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3938025526977936506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3938025526977936506'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/04/dojoattachevent-what-its-for-and-how-to.html' title='dojoAttachEvent: what it&apos;s for and how to use it'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-1736349538596793</id><published>2008-04-27T12:59:00.000-07:00</published><updated>2008-05-02T05:56:40.507-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dojo'/><title type='text'>Dojo's cross-browser css solution and how to use it</title><content type='html'>Level: Introductory&lt;br /&gt;Date: Originally posted 3/08, updated 4/08.&lt;br /&gt;&lt;br /&gt;It's old news that browsers interpret css differently, and that there is no one way best way to deal with this exasperating problem, but Dojo has a clever solution. The following steps explain how to use it, and how it works.&lt;br /&gt;&lt;br /&gt;The full post is located here:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com/Doc?docid=dw2zgx2_327d8q5r7gk&amp;amp;hl=en"&gt;http://docs.google.com/Doc?docid=dw2zgx2_327d8q5r7gk&amp;amp;hl=en&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-1736349538596793?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/1736349538596793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=1736349538596793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/1736349538596793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/1736349538596793'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/04/dojos-cross-browser-css-solution-and.html' title='Dojo&apos;s cross-browser css solution and how to use it'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-3317424145298888089</id><published>2008-03-19T11:39:00.000-07:00</published><updated>2009-03-02T06:20:59.720-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dojo'/><title type='text'>dojoAttachPoint: what it's for and how to use it</title><content type='html'>Level: Intermediate&lt;br /&gt;Date: Originally posted 3/08, updated 4/08.&lt;br /&gt;&lt;br /&gt;In the Javascript of a widget, you often might wish to refer to some of its html template's dom nodes directly. For example in the dijit.layout.AccordionPane widget, the js might want to access the nodes for the title, the title's text, the container or accordion pane, and so on.&lt;br /&gt;&lt;br /&gt;You might think the widget author could just use ids in the html template, and then dojo.byId() in the widget's js. But if she does, then if two or more widget instances are created, they'll all have the same ids! Obviously the Javascript code will blow up then -- your DOM will have non-unique ids in it.&lt;br /&gt;&lt;br /&gt;Instead, you the widget author must do the following:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com/Doc?docid=dw2zgx2_326c39283gq&amp;hl=en"&gt;http://docs.google.com/Doc?docid=dw2zgx2_326c39283gq&amp;hl=en&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-3317424145298888089?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/3317424145298888089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=3317424145298888089' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3317424145298888089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/3317424145298888089'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2008/03/dojoattachpoint.html' title='dojoAttachPoint: what it&apos;s for and how to use it'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-7359172180355437568</id><published>2007-02-24T13:42:00.000-08:00</published><updated>2008-05-02T05:58:29.317-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='genetics'/><category scheme='http://www.blogger.com/atom/ns#' term='biology'/><category scheme='http://www.blogger.com/atom/ns#' term='phylogeny'/><category scheme='http://www.blogger.com/atom/ns#' term='phylogentic tree'/><title type='text'>The Dirichlet Process</title><content type='html'>&lt;h1&gt;   The Problem &lt;/h1&gt; Assume you wish to build a phylogenetic tree of S species using the same gene in each species. This would produce phylogenetic tree T1. (Note that with most methods including this one, you may well get more than one equally likely tree.)&lt;br /&gt;&lt;br /&gt;If you were to repeat this process with a single second gene, you would get tree T2. For many reasons, including the randomness of molecular variation, the trees T1 and T2 would not be equal.&lt;br /&gt;&lt;br /&gt;In short, n genes will produce n different trees.&lt;br /&gt;&lt;br /&gt;The problem is: from this data, how can we derive a tree that most accurately represents the the actual evolutionary relationships between the S species?&lt;br /&gt;&lt;br /&gt;The topology of the tree -- how many branches it has -- shows this information (as in a cladogram?), whereas the length of the branches gives us the additional information of either how far apart in time the branches are, or what the rate of evolution is (if you can pinpoint actual times using e.g. the fossil and geological record). We're only interested in the problem of the topology: how many branches are there, and where do they branch from?&lt;br /&gt;&lt;br /&gt;There are two general ways to attempt to derive topology, each of which is at either end of a spectrum. The third -- the one we're after -- lies somewhere in the middle. They are:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;     Assume the genes' evolution is completely independent of each other, at     rates that are independent of each other. In that case, for n genes, you are likely to end up with at least n topologies. The assumption is unrealistic. It should be obvious that genes can influence each other's evolution. To use a crude example that puts the point into stark relief: if an allele arises that permits night vision in an environment when a nocturnal niche is available, and so becomes selected for, other alleles somewhat conducive to nocturnal living will become selected for as well.&lt;br /&gt;&lt;br /&gt; &lt;/li&gt;   &lt;li&gt;     Assume that all the genes evolve at exactly the same rate. You'll likely end up with just one topology. A straightforward way to derive a single tree, on this assumption, is to concatenate all n genes into one sequence, and pretend that they are all one gene. That way a single tree can easily be calculated. This approach is suspiciously simplistic.&lt;br /&gt;&lt;br /&gt;(There is a separate argument against simple concatenation. It may even be the case that we get a different single tree depending on what order the genes are concatenated, so that we don't end up with one tree after all. Potentially up to n factorial trees might result, instead of one. That's a problem with concatenation of the genes, though, not necessarily with assuming all genes evolve at the same rate. Concatenation is just one way to try to capture this assumption mathematically; no doubt there other, better ways that avoid the above problems.)&lt;br /&gt;&lt;br /&gt; &lt;/li&gt;   &lt;li&gt;     Assume that the genes influence each others' evolution, and so their rates     of evolution. This assumption lies somewhere in between total independence of the genes' rates of evolution, and the rates being identical. The problem is to find a method of measurement that captures this assumption mathematically, so we can actually measure using it. This is the problem that the Dirichlet method is supposed to solve.   &lt;/li&gt; &lt;/ol&gt;&lt;br /&gt;&lt;h1&gt;&lt;span style="font-weight: bold;"&gt;The Solution&lt;/span&gt; &lt;/h1&gt; When we calculate n trees for n genes, the n trees all approximate some ideal tree which reflects the temporal and genetic relatedness of each species' genome. In other words, there is a "true" phylogenetic tree that we will never actually know, which each gene's tree is an approximation of.&lt;br /&gt;&lt;br /&gt;There are different ways to measure how closely related a tree is to another tree. On any reasonable measure, we can expect more genes to "cluster" around the "true" tree than not to. So one approach is to measure how the n trees cluster together, on the assumption that the "true" tree lies somewhere inside the tightest cluster.&lt;br /&gt;&lt;br /&gt;We now present a method for clustering the trees which takes into account that their underlying genes' do influence each others' evolution. What we don't describe is (1) why this clustering method is realistic or more accurate than, say, throwing trees at a dartboard while drunk and standing on one foot (because we don't understand why), and (2) once the best cluster has been identified, how the best consensus tree is derived from it (because we didn't understand that either).&lt;br /&gt;&lt;h2&gt;   The Chinese Restaurant Process &lt;/h2&gt; Assume a Chinese restaurant with an infinite number of tables and an infinite number of dishes. Whenever a guest comes in, he will either be seated at a table at which other guests are already sitting, or he will be seated an an empty table.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;     If he is to be seated at a table with other guests, then (i) the probability     that he ends up at a table is proportional to the number of guests at a     table; and (ii) whatever dish  the other guests are having, he must     have too (so every table serves only one dish).   &lt;/li&gt;   &lt;li&gt;     If he is to be seated at an empty table, then his dish will be randomly     determined by the chef.   &lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;If you think of the guests as genes, and the dishes any particular gene's phylogenetic tree, you can see how this process would lead to clustering. Genes that walk in the door would tend to end up at, or cluster at, the table with most genes. Unfortunately, of course, the clustering has nothing to do with any measure of how related trees are. It's a mixture of pure chance and whichever table the first gene was seated at: that table is the most likely to end up with the most genes.&lt;br /&gt;&lt;br /&gt;I know what you're thinking, but stick with me, my story gets better.&lt;br /&gt;&lt;h2&gt;   The Polya Urn &lt;/h2&gt; Remember that when the guest walks into the restaurant, a decision must be made: either he will be seated at an empty table, or at a table with guests. How is that decision made? With the Polya urn, of course.&lt;br /&gt;&lt;br /&gt;Imagine a deck of cards. And an urn. And a mathematician with an irritatingly silly imagination. Forget the mathematician, stick with the cards and the urn. And try to concentrate. Please.&lt;br /&gt;&lt;br /&gt;The deck has one unique card for each gene, and a joker. We begin by putting the joker into the urn.&lt;br /&gt;&lt;br /&gt;When the first guest G1 walks in, we pull a card out of the urn; in this case, the joker. To pull the joker always means that you get seated at an empty table AND your card and the joker get put back into the urn. Done.&lt;br /&gt;&lt;br /&gt;The second guest G2 walks in. There are two cards in the urn now, G1's and the joker. If G1's card is pulled, G2 is seated at G1's table, *and* both G1's and G2's card is put into the urn. The urn now has three cards.&lt;br /&gt;&lt;br /&gt;You should be able to see now how using the urn ensures that, if you are going to be seated at a table with other guests, you are more likely to end up at a table with the most guests.&lt;br /&gt;&lt;br /&gt;So how does this make the story better? It doesn't. We make the story better with the joker.&lt;br /&gt;&lt;h2&gt;   Joker Edge Cases &lt;/h2&gt; First, imagine that instead of just one joker in the urn, there are an infinite number of jokers in it. In that case, every time you pull a card from the urn, it is guaranteed to be a joker. That means every guest will end up alone at a table.&lt;br /&gt;&lt;br /&gt;Second, imagine the urn with no jokers. In that case, all the guests will end up at the same table. After all, the only way you can end up at a new table is by pulling a joker -- and we've removed it.&lt;br /&gt;&lt;br /&gt;What these two edge cases reveal is this. Having no joker is like concatenating all the genes in order to end up with one (simplistic and unrealistic) phylogenetic tree. It's like saying that all the genes are so closely "related" that they are just one gene. Having an infinite number of jokers is like saying the opposite, that no gene influences any other gene,  and their trees are no more similar to each other than chance.&lt;br /&gt;&lt;br /&gt;The truth, of course, lies somewhere in between, but where? Which (integer or real) number of jokers is correct? Whatever it is, it is a factor, a parameter, a number, and it is called alpha.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;   Alpha &lt;/h2&gt; If we can get alpha right, then our genes would cluster around the tree closest to the "true" tree. Or (roughly) equal numbers of them would cluster around those trees closest to the "true" tree.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;   Remaining Questions&lt;br /&gt;&lt;/h2&gt;&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;     Even with the right alpha, repeating this process is surely not always going     to yield the same tree: which tree gets the biggest cluster is (I think?) somewhat     favored by which table was seated first. So which clustering is the right one?   &lt;/li&gt;   &lt;li&gt;     Surely clustering should be a function of     &lt;span style="font-weight: bold;"&gt;some&lt;/span&gt; measure of how similar or related     trees are to each other. It does not. Chance and alpha alone determine     clustering, and not even uniquely (previous quation). This algorithm can model clustering in as much as the entities have &lt;span style="font-weight: bold;"&gt;some&lt;/span&gt; relationship to each other, rather than being independent. But the nature of that similarity (y = x*x, or y = ln(x), or whatever) is not captured.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The answer to "How do we calculate alpha?" appears to be "Go this website,     fill out a form, and press Submit," which is not wholly satisfactory.   &lt;/li&gt;   &lt;li&gt;     Which part of all this was the Dirichlet process??&lt;br /&gt; &lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;/r:b:, 2/11/07&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-7359172180355437568?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/7359172180355437568/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=7359172180355437568' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/7359172180355437568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/7359172180355437568'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2007/02/problem-assume-you-wish-to-build.html' title='The Dirichlet Process'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-115003102601873389</id><published>2006-06-11T05:53:00.000-07:00</published><updated>2008-05-01T19:10:54.104-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='philosophy'/><title type='text'>The Introduction to the Critique of Pure Reason I never had</title><content type='html'>&lt;blockquote&gt;&lt;i&gt;This essay was written for fellow students to help prepare for an exam on the Kritik der Reinen Vernunft. Many of its  insights are Robert Paul Wolff's, but I think the observation about the nature of the words Wissen and Erkenntnis is mine.&lt;/i&gt;&lt;/blockquote&gt; &lt;p&gt;The Kritik is structured like a wagon wheel. At its center, the hub around which all else revolves, is the defense of a theory of discursive knowledge (a central term I shall define shortly), and branching out from it are the spokes of the theory's consequences so large that they dwarf the hub and make us forget that it is at the center. Once the reader has grasped this structure of the book, all the seemingly disconnected themes and strange pronouncements begin to make sense. For what obscures our understanding more than anything is our Humean view of knowledge that makes Kant's discursive view sound like nonsense - until we realize his discursive model is not assumed, but what he has set out to prove.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The Humean view of how knowledge is acquired is roughly encyclopedic: as entries are added to a book, so facts, insights, smells, melodies, and other data are added to that store of the mind which we call knowledge. Thus acquiring knowledge is, apart from still unknown empirical archival processes, a passive activity. Immediately perceived simple ideas or impressions, once stored, are combined into complex ideas and insights by the imagination, reason, and so forth. To end with an example, if you feel a pin-prick, you know and &lt;b&gt;know of&lt;/b&gt; that feeling directly.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;For Kant, this is at a great remove from knowledge. It is like saying that a heat-seeking rocket "knows" the heat it senses. A seemingly inseparable characteristic of knowledge lacking from the Humean picture is that of &lt;b&gt;consciously&lt;/b&gt; knowing something. Kant adds this element by positing knowledge of something not to be simply passive knowledge &lt;b&gt;of&lt;/b&gt; that thing, but a realization of what &lt;b&gt;kind&lt;/b&gt; of a thing it is. The sharp pain from the pin is not an item of knowledge, it is a piece of sense data, which Kant calls an intuition. Only when it dawns on your mind: "Aha! That sense datum was of the &lt;b&gt;type&lt;/b&gt; pin-prick! &lt;b&gt;That&lt;/b&gt; was a pin-prick!", then only has Kantian knowledge come into being and been acquired. For Kant, to know a thing is only to know what kind of a thing it is. Thus all knowledge takes the form of a judgment, specifically of matching a particular intuition (or concept) with the concept it falls under. To know that Secretariat is a horse is to have knowledge, but neither the empirical experience of Secretariat nor the empirical concept of a horse alone constitute knowledge: for knowledge, the two must be combined, and Kant argues that they are combined by making a judgment.  For Hume, the sense datum alone would have constituted something &lt;b&gt;known&lt;/b&gt;, rather than merely felt, and have constituted an item of knowledge. The alternative theory of knowledge defended by Kant is called &lt;b&gt;discursive&lt;/b&gt;, and from now on we must realize that when Kant speaks of knowledge, he is speaking of discursive knowledge. Humean knowledge is passive, Kantian is active.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This difference between two rival views of knowledge stands out starkly in Kant's German, but not in English. If you look up "knowledge" in an English-German dictionary, you will find "Wissen," an exact translation of the Humean view. Yet the word "Wissen" hardly ever occurs in Kant's huge treatise on knowledge: the index has only two references! The word Kant uses for knowledge is "Erkenntnis," which my dictionary doesn't even list under "knowledge"! For an Erkenntnis is not something you know or passively possess, like "Wissen," but something you actively acquire. It is a literary insight, a scientific discovery, a sudden illumination, an "aha" experience. The English word "insight" comes much closer to Erkenntnis than "knowledge." &lt;/p&gt;&lt;br /&gt;&lt;p&gt;The German verb corresponding to Wissen, wissen, is a highly passive verb, while that corresponding to Erkenntnis, erkennen, is active. To "wissen" something connotes as much activity as the English (and the German, for that matter) "to have" something. To "wissen" something is to have it, to be sitting on it, without anything being conveyed about how it was obtained. To "erkennen" is completely different. To say that one has "erkannt" something is to convey not only that one now possesses it somehow, but that the act of obtaining or coming to know it was a realization, an insight, a vivid experience. "Wissen" is couch-potato knowledge, "erkennen" is both knowledge and the active process of discovery of knowledge.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;So in German we can see immediately that Kant has a completely different view from our 20th century American view of what it is to know, and until we realize this, we will be adding yet another layer of incomprehensibility to the already thick one of his sibylline prose.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;If we now step back and ask ourselves how anyone would naturally proceed to prove that a discursive theory of knowledge is correct, we soon find that Kant has indeed taken predictable steps, and that the overall organization of the Kritik can in part be easily picked out. Thus short reflection reveals that our project should consist of at least three parts. First, since this is a philosophical theory, we cannot prove it by investigating the physiology or psychology of the mind. We must instead seek to show that various true results follow from assuming the theory to be true. These various consequences are the great spokes of the wagon wheel that is the Kritik, such as the refutation of idealism, the analysis of the arguments for the existence of God, and many other large themes that at first sight have no connection with a mere theory of knowledge. In addition to the consequences, however, and in order to derive them later, we will first have to spell out and develop our discursive theory in more detail than just "all knowledge is a judgment." And if we reflect for a moment on how to proceed with this task, we quickly notice that since the knowledge-engendering judgment is divided into a sensory intuition and forming an intellectual concept, we might do well to develop our theory by elaborating its sensory and then its intellectual forks, which when united in a judgment produce knowledge. And this is in fact exactly what Kant himself does. The Transcendental Aesthetic develops the intuitive component, and the various deductions develop both the intellectual component and the details of how the two are fused, in that order.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;The Transcendental Aesthetic: The Intuitive Fork&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;When Hume set out to investigate immediate sense impressions (which he called impressions or ideas and Kant called intuitions), he introspected diligently and had much to say about how they combined and associated with each other to form more complex, secondary ideas. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;Not so Kant. If you think about it, the basic split between idealism and realism occurs right after this point of perception. The realists go on to argue that there really is something out there triggering our feelings, and the idealists go on to argue that there is nothing, or at least that we can always doubt there to be something out there, and that the world is simply our impressions and ideas - hence they are called &lt;b&gt;idea&lt;/b&gt;lists. Kant, in yet another sweeping spoke, found both these positions to be fundamentally flawed, beginning right at this first step of how they viewed immediate perception. Kant's move is to seize on the fact that all these philosophies assume the "spatialness" and temporality of objects, and to propose, as a realist, that although there are really objects "out there," spatiality and temporality are not intrinsic properties of these entities. Instead these properties are merely how humans can become aware of them at all. As Kant puts it, space and time are &lt;b&gt;conditions&lt;/b&gt; of experience. In other words, a crucial mistake of idealists and realists is to argue over whether there are spatio-temporal objects, without realizing that spatio-temporality may be in doubt without the existence of external objects being in doubt. An example should make this clearer.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Imagine a log of driftwood bobbing in the ocean. Nearby is a primitive sea-creature whose only sense is that of smell. It knows many different kinds of smells, in some sense or other of "know" that allows it to recall and re-identify smells. Thus everything in the world for it is a smell, as is the driftwood with its distinctive smell. Kant might say that the &lt;b&gt;form&lt;/b&gt; of this creature's experiences is odorific (especially since he loved to invent contorted labels). It is also quite likely that the creature does not "know" about space, about near or far, up or down; if things exist or &lt;b&gt;are&lt;/b&gt;, for it they just smell, but they are not anywhere or perhaps even at any time. It perceives only smells, and conceives of things that way as well (as in the concept of the &lt;b&gt;driftwood&lt;/b&gt; smell). Mutatis mutandis, we can imagine a near-by creature that can only hear. A person, however, has, amongst other things, a spatial and temporal notion of the driftwood, and indeed of all objects external to him or herself. In this sense, then, space and time are conditions of a person's experience - just as smell or hearing are conditions of the above sea creatures' experience. The way we experience material objects is such that we conceive of them as being somewhere in space and time. There may well be other ways of conceiving of objects that are impossible for humans. No one conception (or perception) is the correct one: space and time are just possible ways of conceiving of objects of experience, and there may be others. Thus we - and Kant - can speak of the object in itself as that object which can possibly be conceived of in a number of different ways, of which no one particular way is the real or correct conception of the object.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Thus just as the only way to see and so to perceive H.G. Wells' invisible man would be to throw paint on him, so we must throw the paint of space and time on material objects; other creatures have perhaps only the paint of smell, or sound, or tactility, or something we donÕt know of. In short, idealism and realism take the properties of space and time for granted, and Kant believes that by not doing so, he can resolve the difficulties of these philosophies.&lt;/p&gt;&lt;br /&gt;&lt;h3&gt;Synthetic and Analytic&lt;/h3&gt;&lt;br /&gt;&lt;p&gt;We are almost done now with the intuitive fork; if anything, we have said too much. There is only one more, notorious issue to point out. We can see now why it makes sense to speak of space and time as forms of intuition or experience: everything we experience is either in time or in both space and time, and never outside of these, it is always in temporal or spatial and temporal form. But where do these forms come from? &lt;i&gt;We cannot have learned them inductively from experience, at however young an age, for experience itself is impossible without them!!&lt;/i&gt;&lt;span style="font-style: normal;"&gt; Every thing we intuit is a temporal thing, or a spatiotemporal thing, so we may tentatively call space and time concepts.&lt;/span&gt;&lt;a style="" href="http://www.blogger.com/post-edit.g?blogID=27163180&amp;amp;postID=115003102601873389#_ftn1" name="_ftnref1"&gt;[1]&lt;/a&gt; Since they are prior to experience, they are &lt;b&gt;a priori&lt;/b&gt;. Since they therefore cannot be derived from any object of experience, but add something intrinsic and inseparable to it, they are &lt;b&gt;synthetic&lt;/b&gt;, rather than &lt;b&gt;analytic&lt;/b&gt;, as well as a priori concepts. Swathes of the Kritik are devoted to showing that such entities can exist, and indeed, Kant cannot avoid this issue. For in the intellectual fork he will again have to posit such things.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;The Metaphysical and Transcendental Deduction: The Intellectual Fork&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Now if indeed we do gain knowledge through acts of judgment which are conceptualizations ("This intuition is &lt;b&gt;that&lt;/b&gt; kind of a thing"), an idea suggests itself: there may be some basic forms of judgment. After all, in formal logic, the statement "p is C" has a certain number of different yet basic forms: p is not C, all p are C, all p are not C, some p are C, possibly p is C, and so on. Here, p is the grammatical subject, and C is a predicate of p. These rules are general because they tell us nothing about conditions for a C to be correctly applied to a p. In other words, this set of forms of judgment tells us nothing about how to determine the truth-value of any one form. All they tell us is how to combine various forms IF they are true, or IF they are false. Discursive knowledge judgments, on the other hand, do have truth-values. Thus, of an intuited event, we could correctly or incorrectly judge that it was a causal event, i.e. a causal &lt;b&gt;type&lt;/b&gt; of event. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;What Kant believes is that some forms of discursive judgments are basic because they contain basic concepts, one of which he thinks is, say, the concept of a causal event. These basic forms he terms &lt;b&gt;categories&lt;/b&gt;. Mysteriously, he thinks that the category of causality can be inferred from the general form of the hypothetical relation between judgments: "if (p is C) then (q is D)." Similarly that of existence from the assertoric modal form; and so on for all the other twelve forms of general logic he identifies. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;It matters little whether he can or not. First, he has a quite separate derivation of his treasured categories later, in the Analytic. Secondly, important arguments later are merely for the possible existence of categories in general, and thus independent of whether the ones he has derived are the true ones.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Well, if nothing else, the above Metaphysical Deduction gives us the idea that perhaps there are basic concepts that underlie all others, and which subsume an intuition in a discursive judgment. It also suggests what these basic concepts or categories might look like. We are now ready for the final push, the unavoidable core of Kant's discursive theory of knowledge: how concepts must fuse with intuitions, and the nature of the resulting knowledge. In short, the nature of judging, and the nature of judgments. Until he has spelled out his theory in detail, he cannot move on to derive consequences that may show it to be true. This description of the act of coming to know lies in the Transcendental Deduction. Once again, we can best follow it by first musing about how we ourselves might undertake it.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Discursive knowledge of a single intuition really presents no difficulties. It is brought under a concept, i.e. what kind of intuition it is is recognized, and that's that: it is known. But what of a multitude of intuitions? Perceiving a particular horse will involve varied immediate sights, smells, sounds, and so on. How to bring so many intuitions under one concept of "horse"? Kant's reasonable if ultimately empirical guess is that this cannot happen. Instead, each individual intuition must be conceptualized, producing judgments that he in the Transcendental Deduction calls &lt;b&gt;representations&lt;/b&gt;. Then the representations are somehow spontaneously fused into one entity in an act of synthesis, which can then be brought under a concept. Thus is a horse known.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;But all this is conjecture - any science fiction writer can produce similar or disparate models of knowing. Kant moves it towards a proof, with an argument that need not convince us but that we should at least understand. Look, he says, it must be logically possible to preface every representation with "I think," for if it were not true to state that I thought my own representation, how could it be mine. (Here, "to think" means nothing other than bringing under a concept.) So much logic demands. Furthermore, the only way I could ever become self-conscious, that is, aware of myself as one more entity in the world, would be to notice that all these "I think"s refer to the same I. Yet the only time I can have more than one "I think" present to mind is during synthesis. Hence the fact that I am self-conscious is sufficient evidence that synthesis does occur in the mind, or at least that it occurred once, namely when I achieved self-consciousness.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;But there must be more to be said, for while this describes discursive knowledge, such knowledge has not been fully described without mention of how it relates to what it is knowledge &lt;b&gt;of&lt;/b&gt;! The synthesized manifold must refer to a determinate object, like the horse Secretariat, and the concept synthesizing the manifold - for a concept is what must synthesize it - will be the concept of Secretariat. Since a manifold can only be unified or fused inside one mind or consciousness, this unity of consciousness is a necessary condition of synthesis, and of the synthesized manifold having (i.e. referring to) an object. For Kant, it is arguably even a sufficient condition.&lt;a href="http://www.blogger.com/post-edit.g?blogID=27163180&amp;amp;postID=115003102601873389#_ftn2" name="_ftnref2"&gt;[2]&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;In sum, that I have only one mind and that I am self-conscious is argued to be a necessary and sufficient condition for discursive knowledge. It is almost left as obvious that the concepts that carry out synthesis of the manifold are the categories, and so are also conditions of knowledge.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;I now leave it to the reader to show how the Schematism and Analogies contain both the central theme or "hub" of discursive knowledge, and the supporting spokes (like the refutation of idealism). Good luck to us all on the exam!&lt;/p&gt;&lt;br /&gt;&lt;p&gt;/r:b:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;hr align="left" size="1" width="33%"&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=27163180&amp;amp;postID=115003102601873389#_ftnref1" name="_ftn1"&gt;[1]&lt;/a&gt;Over Kant's protests in the Aesthetic, which he later violates himself. Just for the record, his argument there is essentially that since he can allegedly show that space is not a concept, and knowledge of  the world can only consist of concepts and intuitions, it must be an intuition.Ditto for time.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=27163180&amp;amp;postID=115003102601873389#_ftnref2" name="_ftn2"&gt;[2]&lt;/a&gt;&lt;i&gt;Kant's Transcendental Idealism&lt;/i&gt;&lt;span style="font-style: normal;"&gt;, Henry Allison, pp. 147-8.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-115003102601873389?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/115003102601873389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=115003102601873389' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/115003102601873389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/115003102601873389'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2006/06/introduction-to-critique-of-pure.html' title='The Introduction to the &lt;I&gt;Critique of Pure Reason&lt;/i&gt; I never had'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-114713298018616166</id><published>2006-05-08T16:56:00.000-07:00</published><updated>2006-05-08T18:28:51.506-07:00</updated><title type='text'>FA: Intelligence, Policy, and the War in Iraq</title><content type='html'>Link:&lt;a href="http://www.foreignaffairs.org/20060301faessay85202/paul-r-pillar/intelligence-policy-and-the-war-in-iraq.html"&gt; Intelligence, Policy, and the War in Iraq&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The most interesting and novel part of the article is the section titled "Varieties of Politicization," which describes a number of subtle but powerful ways that intelligence, and the intelligence community, can be politicized. The article is a warning against them, and ends with some not very hopeful suggestions to prevent them. (The rest is some fairly light detailing of how the Administration misled the country into war, and hid the intelligence community's differing opinions.)&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;Attention from the Administration is a measure of success for an intelligence anaylyst. If no one reads your reports, you're in an ivory tower. But if they are being read at the highest levels, well... This creates subtle pressure to write what the Administration wants to hear, so that you'll get read.&lt;br /&gt;&lt;br /&gt;Especialy when there is meagre intelligence, as with WMD, it is easier to lean that way without feeling that you're compromising the truth. There isn't much truth to begin with.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;Peer review problem: the reviewers don't like to deliver unwelcome reports. The Silberman-Robb commission noted inconsistencies in what reports passed review, but ascribed this to poor management instead of this factor. The subtle pressure on the reviewers, and those who submit reports to them, is obvious.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;Sugar coating occurs with both of the above problems. The writer throws the reader some bones, as sugar, before -- and in addition to -- unwelcome analysis. This allows the politicians to seize on the sugar and ignore the rest. Presented to the public, or leaked darkly, this sugar has both an air of authority because it comes from intelligence reports, as well as hinting at unrevealed and even more convincing intelligence underlying it which cannot be revealed.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;br /&gt;The principal way intel was politicized was to keep asking the same specific questions over and over again, no matter how many times the answers came back empty.&lt;br /&gt;&lt;br /&gt;If the question "What WMDs does Iraq have?" or "What are the links to Iraq does al-Queda have?" is asked over and over and over again, the mere prevalence of the questions gives them legitimacy. It doesn't matter that the answer to both is "none." The questions are in the press, in the halls of power, in the very air, and therefore to say that there is nothing to them makes any sceptic look like a cook.&lt;br /&gt;&lt;br /&gt;Secondly, if the Administration keeps asking intel people to look under the same rocks again and again and again, unsatisfied that nothing has been found under them so far, the process becomes biased. The only intel reports coming out are always about those same rocks, making them look important by dint of repetition at the highest levels. The problems found under them begin to look far larger than they really are.&lt;br /&gt;&lt;br /&gt;It's also worth noting that if all the intel communities' efforts are focused on the same rocks, they stop looking under other rocks they ought to be looking under. They have finite resources, and politicization through repitition will distract them from other, more important work.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Finally,  when any intelligence reports go against what the Administration wants to hear, or even critique its position, the Administration can charge the authors with seeking to undermine Administration policy -- of acting in an ultimate irony, from political motives. When this happens, the intelligence community atmosphere is  fatally poisoned. The relationship between the community and the Administration becomes impossible. [This is analogous to the Administration's  policy of accusing civilian critiques of  being unpatriotic when they criticized Administration  policies after 9/11, helped in no small measure by Fox News.] In the case of policy leading up to the Iraq war, "This poisonous atmosphere reinforced the disinclination within the intelligence community to challenge the consensus view about Iraqi WMD programs; any such challenge would have served merely to reaffirm the presumption of the accusers.&lt;/li&gt;&lt;/ol&gt;Here are some measures Pillar proposes to avoid this in the future.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Congress should pass a non-binding resolution against Administrations pulling the intel community into intelligence advocacy.&lt;/li&gt;&lt;/ol&gt;Seems toothless to me unless the resolution includes the ways of politicization he lists.&lt;br /&gt;&lt;ol start=2&gt;&lt;li&gt;An independent Congressional office, along the lines of the GAO and CBO, that would monitor such politicization.&lt;/li&gt;&lt;/ol&gt;Most of the time they'd have nothing to do, though.&lt;br /&gt;&lt;ol start=3&gt;&lt;li&gt;Leaders of intelligence community serve at the President's pleasure, so if they displease him...&lt;/li&gt;&lt;/ol&gt;What's the alternative though? We've seen what can when Congress and the Administration belong to the same party, so putting them under Congressional control would be no fix. This is a very undeveloped point by Pillar -- until he comes to his next points.&lt;br /&gt;&lt;ol start=4&gt;&lt;li&gt;Intel leaders need to stop striving to get as close to the President as possible for influence: we've seen what that does now. Instead, they should seek influence by other means: being trusted by Congress and the public. And a way to achieve this is:&lt;/li&gt;&lt;li&gt;Govern the intel community through an organization like the Federal Reserve, which has precisely this kind of influence. It serves under a board of governors. [That also seems to be a concrete, plausible alternative to leaders serving at the President's pleasure.]&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-114713298018616166?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/114713298018616166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=114713298018616166' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114713298018616166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114713298018616166'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2006/05/fa-intelligence-policy-and-war-in-iraq.html' title='FA: Intelligence, Policy, and the War in Iraq'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-114713076714413907</id><published>2006-05-08T16:12:00.000-07:00</published><updated>2006-05-08T17:53:36.826-07:00</updated><title type='text'>FA: Seeing Baghdad, Thinking Saigon</title><content type='html'>&lt;style type=text/css&gt;&lt;br /&gt;ol li {list-style:decimal;}&lt;br /&gt;&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;A response to two previous FA articles:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.foreignaffairs.org/20051101faessay84604/melvin-r-laird/iraq-learning-the-lessons-of-vietnam.html"&gt;Iraq: Learning the Lessons of Vietnam&lt;/a&gt; Briefly: Vietnamization was working, and would have worked if Washington had kept on footing the bill for it -- Russia kept footing it on their end.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.foreignaffairs.org/20050901faessay84508/andrew-f-krepinevich-jr/how-to-win-in-iraq.html"&gt;How to Win the War in Iraq&lt;/a&gt; Briefly: an "oil spot" approach: focus US forces on a few towns and make them crime free, insurgent free, and democracy and civil society will take hold in them. Iraqi armed forces will be able to train and become strong in them. Then let the radius of these spots increase slowly until they engulf enough of Iraq for a majority to prefer them to the insurgents.&lt;/li&gt;&lt;/ul&gt;Vietnamization means letting the Vietnamese take over the fighting of their insurgents, and of fighting crime and ensuring security in the country -- instead of having the Americans do all that work. It also means ceding all this work gradually to the Vietnamese. Iraqization is the same thing for Iraq.&lt;br /&gt;&lt;br /&gt;There are two main points:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;*ization only makes sense in a nation in which insurgents and entrenched government fight each other for the allegiance of the people, who are caught in the middle. Three poles. Vietnam had that structure, but Iraq does not. Iraq society is composed instead of the three ethnic factions in mortal fear of each other.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Iraqization can only increase instability and the potential for violence here. On the one hand, if the inchoate Iraqi army mostly leaves out one or two of the three factions, it will antagonize the one(s) left out into civil war: they will fear oppression and death at the army's hands. On the other hand, if all factions are included equally, the army will be hobbled by the infiltration of insurgents from each faction.&lt;br /&gt;&lt;br /&gt;Another principle of *ization, that stabilizing the country's economy and solving the problem of rampant violence will lead the citizens to turn their back on the insurgents and win their loyalty for some sort of government (and/or the occupying forces), is also counterproductive in a country of ethnic factions like Iraq: "Economic aid or reconstruction assistance cannot fix the problem: Would Sunnis really get over their fear of Shiite domination if only the sewers were fixed and the electricity fixed?"&lt;br /&gt;&lt;br /&gt;Rapid democratization would also be counter-productive. It simply allows the winner to exacerbate the problem, given no tradition of compromise and a commitment, driven by fear as much as anything else, to a "winner takes all" view of democracy.&lt;br /&gt;&lt;br /&gt;&lt;ol start="2"&gt;&lt;li&gt;The correct way to stabilize the country is to have a government comprising all factions, in which they have made political compromises. And the best way to bring about political compromise is to threaten each faction with withholding American military support for their side, to use this stick to get them to compromise with each other.&lt;/li&gt;&lt;/ol&gt;By way of example, a point worth highlighting is that with the current policy of Iraqization, of an ethnically mixed army, the Sunnis have no motivation for compromising. If it succeeds, the Sunnis have nothing to fear -- and they don't have to compromise in order for the plan to go forwards. They just wait and watch, and infiltrate and hold back to cover their bases. If it fails, well, there's nothing they can really do to prevent that.  In particular, there's no compromise they have to make, or are being asked to make, to prevent it. So the Americans have no influence on them. Nor do they with the Shiites and Kurds, because the plan requires the Americans to stay on and on and on to make it work.&lt;br /&gt;&lt;br /&gt;What is needed is the threat of withdrawing American military support, not a plan that requires it no matter what each faction does. The threat of withdrawal applied to each faction will force them to compromise.&lt;br /&gt;&lt;br /&gt;That's it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-114713076714413907?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/114713076714413907/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=114713076714413907' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114713076714413907'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114713076714413907'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2006/05/fa-seeing-baghdad-thinking-saigon.html' title='FA: Seeing Baghdad, Thinking Saigon'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-27163180.post-114619218746026656</id><published>2006-04-27T18:23:00.000-07:00</published><updated>2006-05-08T16:55:57.323-07:00</updated><title type='text'>General David Petraeus</title><content type='html'>P gave a talk today at the Kennedy School of Government on "14 Observations from Soldiering in Iraq."&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;1. TE Lawrence's Lesson&lt;br /&gt;&lt;/span&gt;&lt;iframe src="http://rcm.amazon.com/e/cm?t=richarbondishome&amp;o=1&amp;amp;p=8&amp;l=as1&amp;amp;asins=1930918569&amp;fc1=000000&amp;amp;IS2=1&amp;lt1=_blank&amp;amp;amp;amp;lc1=0000ff&amp;bc1=000000&amp;amp;bg1=ffffff&amp;f=ifr" style="width: 120px; height: 240px;" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;br /&gt;"It is their war, and you are to help them, not win it for them." His point: don't fall into the trap of the US doing all the insurgent fighting while planning to let the Iraqis take over later and gradually. Instead, start that transition immediately. The longer you wait, the harder it gets.&lt;br /&gt;&lt;br /&gt;How he went about that in the region he was in charge of (diamter Boston to DC):&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Identify the best (=respected by locals, able adminstrators) leaders and help them, right away&lt;/li&gt;&lt;li&gt;Long before the PCA (Provisional Coaltion Authority) had gotten around to promulgating/deciding how local &amp; federal governments would be elected, he organized caucuses to elect "temporary" counciles. Temporary, to make clear that once the PCA had acted, they would be annulled.&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:130%;"&gt;2. An army of liberation has a very short half life&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;After which it becomes (is seen to be by the liberated population) an army of occupation.&lt;br /&gt;&lt;br /&gt;What this means is that an army has a very short time to accomplish whatever it needs to, in this case rebuilding of infrastructure and politics, economy, military. It's a race against the clock. Furthermore, you must do what you can to increase that half life, and avoid doing things that will shorten it.&lt;br /&gt;&lt;br /&gt;In Iraq particularly, there was the "man in the moon" problem. Iraqis would say: you put a man on the moon, you have the greatest army in the world -- and you can't get us clean running water? Can't get me a job?&lt;br /&gt;&lt;br /&gt;It meant that being too aggressive -- big sweeps smashing down doors and rounding tons of people up -- would shorten that half life, but having very targeted operations -- picking up only a few people at night using good intel when you had it -- would lengthen the half life.&lt;br /&gt;&lt;br /&gt;So that's what &lt;span style="font-weight: bold;"&gt;he&lt;/span&gt; did in his region.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;3. Money is ammunition&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;As quickly as possible, find organization which have the capability and capacity to inject it, and address emergency needs.&lt;br /&gt;&lt;br /&gt;Anecdote. When Bremer asked him what he needed, P said following. During the invasion, he could call up Central Command and order up a missile costing $500,000, and he would get it (fired) immediately, no questions asked. But when he asked for cash now, he was met with insurmountable, slow red tape. Made no sense. Furtheremore, the 101st (which he commanded) had tons of resources: 25,000 soldiers, 6,000 vehicles, hundreds of helicopters, two engineer corps, etc. But what he couldn't get, and desperately needed to get his region back on its feet (see scale of destruction of same below), was money.&lt;br /&gt;&lt;br /&gt;Bremer got the message, and got the money, and it was dispensed through the CERP (Command Emergency Reconstruction Program). (See more below.) With $153 million, they were able to do 6,000 projects, including 100s of schools. While the half-life clock was ticking.&lt;br /&gt;&lt;br /&gt;4. Stakeholders are the bottom line.&lt;br /&gt;&lt;br /&gt;Counter-insurgency is about hearts and minds they say. That's to win the hearts and minds over for the army. But what the country needs is for the people to be won over towards their own government. That's so that the army can leave.&lt;br /&gt;&lt;br /&gt;That means getting jobs, home loans (which they did, and had not existed before in Iraq), launching of institutions (eg fed gov depts? local?).&lt;br /&gt;&lt;br /&gt;5. Find the optimum cost/benefit ratio in military actions.&lt;br /&gt;&lt;br /&gt;What this meant in practice was that for every mil. action, always asked the question: will we create more enemies than we capture/kill with this op?&lt;br /&gt;&lt;br /&gt;Hence targeted ops against few people favored over big sweeps. Favorite example: in Mosul, in one night, they launched 35 small raids and captured about 25 people.&lt;br /&gt;&lt;br /&gt;However, when they cornered Saddam's two sons, and were taking wounded during the siege, decided to throw heavy artillery at it.&lt;br /&gt;&lt;br /&gt;More on this below.&lt;br /&gt;&lt;br /&gt;6. Intelligence is key. (Duh.)&lt;br /&gt;&lt;br /&gt;Details on this obvious one:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;He was lucky enough to have, in his own intelligence unit, people with experience in this kind of thing from Bosnia and elsewhere. Because not something the army trained anyone for.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;He forced all agencies -- CIA, special ops, coalition agencies, and many more -- to share all intel (in his region only could he do that).&lt;/li&gt;&lt;li&gt;All ops could be vetoed by P. So if CIA wanted to do something, but P felt it wasn't worth the cost/benefit, he could and would force them not to.&lt;/li&gt;&lt;li&gt;Furthermore: after every one of these night-time raids, his forces would go back the next day and explain to people exactly what they had been after, why P/US felt it would make them safer in the long run. For some strange reason, Iraqis loved Beanie Babies. Doling these out smoother a lot of troubled waters. He had a guy on staff who ordered them all over the Web from the US, kept a big inventory of them.&lt;/li&gt;&lt;/ul&gt;7. Civil Affairs is not enough.&lt;br /&gt;&lt;br /&gt;(I'm not sure what he means by civil affairs. Sounds like a gov org.) They're great, he's loved them wherever he's worked for them. Nothing wrong with what they do. Just not enough in Iraq.&lt;br /&gt;&lt;br /&gt;Anecdote. Right after invasion complete, was up in Mosul, met with local admin. The governor said top priority was to rebuild the university so that students could take their exams, not lose a year of school.&lt;br /&gt;&lt;br /&gt;Here's how important univ. is to Kurds: 35,000 students, 100 buildings, 4,000 faculty/staff. P thinks rebuilding a great idea, goes over to take a tour.&lt;br /&gt;&lt;br /&gt;Every single building gutted: no windows, no wires, no a/c, no fans (this is Iraq, remember, hot), no furniture, absolutely nada. Looted.&lt;br /&gt;&lt;br /&gt;Goes to civil affairs about rebuilding. They say, No Problem, we've got educational specialists, equipment, the works. Then they discover how huge the university is, how there is nothing left. No way they can do it.&lt;br /&gt;&lt;br /&gt;P found a colonel whose (brigade?) was not so engaged, and ordered him to do help do it. Not exactly what a fighting unit is trained to do. P gave him as much as could (money, equip, people), which was about half what he needed. Together with civil affairs they did it in 3 weeks.&lt;br /&gt;&lt;br /&gt;The students did get back to class and took their exams, albeit in 120 degree heat. They were one of only two universities in Iraq that pulled this off.&lt;br /&gt;&lt;br /&gt;But civil affairs could not do it alone, at all.&lt;br /&gt;&lt;br /&gt;Further lesson: when using mil units for this stuff, align their often surprise expertise with the task. One unit for example turned out to have a lot of folks who were electricians, comms people in civilian life, so they later given task of rebuilding communications ministry building.&lt;br /&gt;&lt;br /&gt;8. Build institutions, not just units.&lt;br /&gt;&lt;br /&gt;Don't just train Iraqi army, build an army (buildings, ministry, infra). The only way to build and install and, if nec., a culture. (More below.)&lt;br /&gt;&lt;br /&gt;9. Successful counter-insurgency = more than military operation&lt;br /&gt;&lt;br /&gt;The old saw: 10-20% of a ci is military. The rest is: political environment, infrastructure, economy.&lt;br /&gt;&lt;br /&gt;Anecdote. After Samara (destruction of the dome), journalists asked P: did he think the Iraqi military would hold together after this? His answer: yes, but that's the wrong question. Question should be, will gov hold together. That's what's going to decide whether civil war or not, not whether Iraqi units there to fight insurgency.&lt;br /&gt;&lt;br /&gt;10. Cultural awareness is a force multiplier&lt;br /&gt;&lt;br /&gt;During invastion, mil. worried about all the old war stuff: enemy in range of artillery, dust affecting choppers, etc.&lt;br /&gt;&lt;br /&gt;Immed. after, none of that anymore, and not part of mil. training. Instead needed knowledge of: tribes, relations between them, existing gov structures, local and national leaders, local and regional history.&lt;br /&gt;&lt;br /&gt;So now P focuses on training all that at Fort Leavenworth.&lt;br /&gt;&lt;br /&gt;11. Success depends on local (in case of Iraq, Iraqi) leaders&lt;br /&gt;&lt;br /&gt;Success in ci, that is. There are four levels of leadership: 1) national, 2) ministerial, 3) provincial, 4) the military.&lt;br /&gt;&lt;br /&gt;Today, we've only just gotten 1).&lt;br /&gt;&lt;br /&gt;Have to realize difficulties in nurturing, helping with this. There are no banks in Iraqi: total cash economy. So for example, huge problems paying Iraqi soldiers. They have to go home every six weeks -- intolerable not to in their culture -- and if they go home without money, their families starve. And they can only be paid in cash. This used to be favorite target or insurgents, now solved (he didn't say how).&lt;br /&gt;&lt;br /&gt;On 3) the provincial level, the big problem is inculcating and preventing a "winner takes all" mentality. So elections are held, and a party wins. Immediately they staff all gov positions with family and tribal people, completely cutting out the opposition.&lt;br /&gt;&lt;br /&gt;On 4), the military, big problem is changing old culture in which: initiative was rewarded by having you shot, officers felt that because they were better the soldiers didn't need to be cared for and just had to do fighting and be beneath contempt. New culture seeks to reward initiative, get officers to care about their troops instead of oneself. (I remember long article on this in WashPost. RB.)&lt;br /&gt;&lt;br /&gt;12. Remember the young strategic corporals and lieutenants&lt;br /&gt;&lt;br /&gt;Problem is, their actions can have *strategic* consequences, and really severe ones. For example, shooting a bunch of innocents at a road block can destabilize the whole country.&lt;br /&gt;&lt;br /&gt;So commanders have two obligations to them:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Train them for the situations they are likely to encounter&lt;/li&gt;&lt;li&gt;Help shape these situations to minimize the tough calls [I think this means paying attention to the minutea of how to do a road block? WashPost, others had articles about standard operating procedure had guy holding bright light also be the guy to shoot if car doesn't stop, so that he is fumbling for weapon -- or won't bother with the light, and just shoot. Maybe P meant this? Dunno.]&lt;/li&gt;&lt;/ul&gt;So P now has training in Leavenworth with 1,800 role players, 300 of them Iraqis, with fake villages, towns, in the Mojave desert. There are two more centers like this in the US. Very realistic: *continuous* CI, not just intermediate battles with tanks like in the old days.&lt;br /&gt;&lt;br /&gt;13. There is no substitute for flexibile, adaptable leaders.&lt;br /&gt;&lt;br /&gt;So the US mil didn't train anyone for this stuff, but lots of officers and soldiers adapted and rose to the task. Therefore: how do we get even more like them?&lt;br /&gt;&lt;br /&gt;Note: there are two just like them in this room. P looked around, got them to stand up. They were a guy and a woman, late twenties or early thirties, in civvies (there were about a dozen officers and ROTC present in the crows of about 300). They looked a little self-conscious; they looked quite unremarkable. The woman had dispensed more cash in 6 months than P's entire 101st had in the time he was there. They went around figuring out who to give it to, and they reported directly to a 3 star general (P?), which drove all the officers on the ground crazy, but cut through the red tape. Impressive.&lt;br /&gt;&lt;br /&gt;And neither had ever been trained for this.&lt;br /&gt;&lt;br /&gt;So how can the army get more like them?&lt;br /&gt;&lt;br /&gt;Two ways.&lt;br /&gt;&lt;br /&gt;One, get officers out of their "intellectual comfort zone." Send them to universities. P's anecdote: when he was sent to Princeton to get his PhD, he had come from an environment in which blood-feuds between generals over whether to build 100 or 200 MX missiles. Princeton was first place where he heard any arguments even that they should build none. And was intellectually rigorous. Formative experience that could disagree with all these people *only* on substance, not personality, despite subject matter.&lt;br /&gt;&lt;br /&gt;Two, get them jobs with very senior officers, like Chiefs of Staff. That way they get to see up close how people cope with enormous pressures, especially in private when no one else around.&lt;br /&gt;&lt;br /&gt;14. Set the right tone and communicate it to subordinate leaders and troopers.&lt;br /&gt;&lt;br /&gt;Right ethical tone: detainee treatment. Early one there was a case of abuse in 101st. Person responsible relieved of duty, and made sure everyone knew about it. Furthermore, after long discussions with (28 staff) lawyers, finally decided that policy would simply be Geneva Conventions. And made sure everyone knew it. Furthermore, every week the Red Cross, local imams, leaders got to visit P's detention centers. (Which, he said, was especially nice, because it meant that sometimes he didn't have to.)&lt;br /&gt;&lt;br /&gt;Kinetic vs non-kinetic mix. [This is US mil speak for: breaking down doors and blasting them open, versus operations in which you don't.] Decide what the mix will be (see cost/benefit point above), and communicate it to everyone below you. Don't just decide it.&lt;br /&gt;&lt;br /&gt;Did this with slogans, eg: "Leave the compound always with a rifle and wrench." "If someone stretches a hand out to, grab the damn thing and shake it for all your worth."&lt;br /&gt;&lt;br /&gt;This mix is important for a number of reasons. If you are always kinetic/bad guy, you can never show people when you are really unhappy. If nice, you can. This made a big difference. For example, one time went on TV and expressed forcefully how unhappy with the populace, leaders, etc, told them. Result was the intel which led to the targeted 35 raids.&lt;br /&gt;&lt;br /&gt;Need right blend of patience, and knowing when/how to show that you've run out. So being able to stand up and say: I've had enough, we are not going to renegotiate everything every morning that we agreed on last night, and walk out (and hope they stop you). (They did.)&lt;br /&gt;&lt;br /&gt;Can't do this if always kinetic. Also, be able to do erupt and not leave a "non-biodegradable" atmosphere afterwards. If you don't have a non-kinetic baseline, you can't return to it.&lt;br /&gt;&lt;br /&gt;That was the talk.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/27163180-114619218746026656?l=unscramblings.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://unscramblings.blogspot.com/feeds/114619218746026656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=27163180&amp;postID=114619218746026656' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114619218746026656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/27163180/posts/default/114619218746026656'/><link rel='alternate' type='text/html' href='http://unscramblings.blogspot.com/2006/04/general-david-petraeus.html' title='General David Petraeus'/><author><name>/r:b:</name><uri>http://www.blogger.com/profile/15632168143178144657</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
