<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Eric Jarvi</title><subtitle type="html" /><id>http://blogs.msdn.com/ejarvi/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/ejarvi/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2007-04-30T17:31:00Z</updated><entry><title>Password Complexity</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2009/10/16/password-complexity.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2009/10/16/password-complexity.aspx</id><published>2009-10-16T19:46:00Z</published><updated>2009-10-16T19:46:00Z</updated><content type="html">&lt;P&gt;Alan Myrvold has a new post on the Office 2010 engineering blog covering password complexity and related functionality in Office:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.technet.com/office2010/archive/2009/10/16/enabling-password-rules-for-office-2010.aspx"&gt;http://blogs.technet.com/office2010/archive/2009/10/16/enabling-password-rules-for-office-2010.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 349px; HEIGHT: 287px" src="http://blogs.technet.com/blogfiles/office2010/WindowsLiveWriter/EnablingpasswordrulesforOffice2010_F993/image_thumb_1.png" width=349 height=287 mce_src="http://blogs.technet.com/blogfiles/office2010/WindowsLiveWriter/EnablingpasswordrulesforOffice2010_F993/image_thumb_1.png"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9908352" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="security" scheme="http://blogs.msdn.com/ejarvi/archive/tags/security/default.aspx" /></entry><entry><title>Data Driven Engineering</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2009/08/19/data-driven-engineering.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2009/08/19/data-driven-engineering.aspx</id><published>2009-08-20T02:24:00Z</published><updated>2009-08-20T02:24:00Z</updated><content type="html">&lt;P&gt;&lt;IFRAME height=225 src="http://www.office2010themovie.com/embedded.aspx?videoId=f7f62772-7b6d-4a40-832c-9ba4e153c5c8" frameBorder=0 width=400 scrolling=no mce_src="http://www.office2010themovie.com/embedded.aspx?videoId=f7f62772-7b6d-4a40-832c-9ba4e153c5c8"&gt;&lt;/IFRAME&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;See also:&amp;nbsp;&lt;A href="http://blogs.technet.com/office2010/"&gt;http://blogs.technet.com/office2010/&lt;/A&gt; &amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9876089" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="office" scheme="http://blogs.msdn.com/ejarvi/archive/tags/office/default.aspx" /></entry><entry><title>Test Patterns</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2009/08/07/test-patterns.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2009/08/07/test-patterns.aspx</id><published>2009-08-07T22:24:00Z</published><updated>2009-08-07T22:24:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;A href="http://blogs.msdn.com/ejarvi/pages/attribution.aspx" mce_href="http://blogs.msdn.com/ejarvi/pages/attribution.aspx"&gt;&lt;IMG style="WIDTH: 100px; HEIGHT: 100px" title="test pattern" border=0 alt="test pattern" align=textTop src="http://zk8xjw.blu.livefilestore.com/y1pMinxln5kobPYBsLpr7LE36iaGT9CcCIww1QlOw0v6RHX2BVD3dx_grS_W74ZwGhauIapqRst8iJ4deRLSKS7kg/testpattern.jpg" width=100 height=100 mce_src="http://zk8xjw.blu.livefilestore.com/y1pMinxln5kobPYBsLpr7LE36iaGT9CcCIww1QlOw0v6RHX2BVD3dx_grS_W74ZwGhauIapqRst8iJ4deRLSKS7kg/testpattern.jpg"&gt;&lt;/A&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Encouraging to see more thought and effort being put into software test patterns.&amp;nbsp; Alan Page recently posted on this topic over at the &lt;A href="http://blogs.msdn.com/microsoft_press/archive/2009/08/03/patterns-for-testing.aspx" mce_href="http://blogs.msdn.com/microsoft_press/archive/2009/08/03/patterns-for-testing.aspx"&gt;&lt;STRONG&gt;MS Press&amp;nbsp;Blog&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;.&lt;/STRONG&gt; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9860557" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /></entry><entry><title>Iterative XML Tree Traversal</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2009/06/03/iterative-tree-traversal-with-xpathnavigator.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2009/06/03/iterative-tree-traversal-with-xpathnavigator.aspx</id><published>2009-06-03T21:12:00Z</published><updated>2009-06-03T21:12:00Z</updated><content type="html">&lt;P&gt;Here's a C# code snippet for iterative tree traversal of elements in an XML document using XPathNavigator that takes advantage of parent pointers.&amp;nbsp; &lt;/P&gt;[ &lt;A href="http://zk8xjw.blu.livefilestore.com/y1pl5m8L4YR-atQoMWigBDc4TUwZCF1y1qVhgOk0Ttv-pMMLJvIxDpIRE9Ek2YATuEUanbCtuyTJF62rU_dehATpxMXBvh8YSKK/XPathNavigatorIterativeTreeTraversal.zip?download" mce_href="http://zk8xjw.blu.livefilestore.com/y1pl5m8L4YR-atQoMWigBDc4TUwZCF1y1qVhgOk0Ttv-pMMLJvIxDpIRE9Ek2YATuEUanbCtuyTJF62rU_dehATpxMXBvh8YSKK/XPathNavigatorIterativeTreeTraversal.zip?download"&gt;download source&lt;/A&gt; ] 
&lt;P&gt;&lt;B&gt;test.xml&lt;/B&gt;&lt;/P&gt;
&lt;DIV style="FONT-FAMILY: Courier New; BACKGROUND: white; COLOR: black; FONT-SIZE: 10pt"&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;?&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;xml&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;version&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;1.0&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;encoding&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;UTF-8&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;standalone&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;=&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt;no&lt;/SPAN&gt;"&lt;SPAN style="COLOR: blue"&gt; ?&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;test&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;a&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;b&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c1&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;7&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c2&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;8&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c2i&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;9&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c2ii&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp; &amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c2&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;11&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;c&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;12&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;test&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;B&gt;test.cs&lt;/B&gt;&lt;/P&gt;
&lt;DIV style="FONT-FAMILY: Courier New; BACKGROUND: white; COLOR: black; FONT-SIZE: 10pt"&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;using&lt;/SPAN&gt; System;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;using&lt;/SPAN&gt; System.Xml.XPath;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;IterativeTraversal&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5&lt;/SPAN&gt;&amp;nbsp;{&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;7&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;static&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; Main()&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;8&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;9&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;10&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; XPathDocument doc = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; XPathDocument(&lt;SPAN style="COLOR: #a31515"&gt;"test.xml"&lt;/SPAN&gt;);&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;11&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; XPathNavigator nav = doc.CreateNavigator();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;12&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToFollowing(XPathNodeType.Element); &lt;SPAN style="COLOR: green"&gt;/* skip xml decl */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;13&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; XPathNavigator startPosition = nav.Clone();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;14&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;15&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; leaf = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;16&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt; searching = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;17&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;18&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;do&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;19&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;20&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; leaf = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;21&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (nav.HasChildren)&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;22&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;23&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToFirstChild();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;24&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (nav.NodeType == XPathNodeType.Element)&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;25&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;26&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; leaf = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;27&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToParent();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;28&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;29&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* begin processing interior node */&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;30&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: #2b91af"&gt;Console&lt;/SPAN&gt;.WriteLine(nav.Name);&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;31&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* end processing interior node */&lt;/SPAN&gt; &lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;32&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;33&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToFirstChild();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;34&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;35&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;else&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;36&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;37&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* parent was a leaf element, this child was not*/&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;38&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToParent();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;39&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;40&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;41&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;42&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (leaf)&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;43&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;44&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* begin processing leaf node */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;45&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: #2b91af"&gt;Console&lt;/SPAN&gt;.WriteLine(nav.Name);&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;46&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* end processing leaf node */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;47&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;48&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (!nav.MoveToNext(XPathNodeType.Element))&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;49&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;50&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;do&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;51&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;52&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; searching = &lt;SPAN style="COLOR: blue"&gt;false&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;53&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; nav.MoveToParent();&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;54&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; ((!nav.IsSamePosition(startPosition)) &amp;amp;&amp;amp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;55&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (!nav.NodeType.Equals(XPathNodeType.Root)))&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;56&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;57&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: blue"&gt;if&lt;/SPAN&gt; (!nav.MoveToNext(XPathNodeType.Element))&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;58&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;59&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="COLOR: green"&gt;/* no next sibling, search for parent's next sibling */&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;60&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; searching = &lt;SPAN style="COLOR: blue"&gt;true&lt;/SPAN&gt;;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;61&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;62&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;63&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;SPAN style="COLOR: blue"&gt;while&lt;/SPAN&gt; (searching &amp;amp;&amp;amp; !nav.IsSamePosition(startPosition) &amp;amp;&amp;amp; !nav.NodeType.Equals(XPathNodeType.Root));&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;64&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;65&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;66&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;SPAN style="COLOR: blue"&gt;while&lt;/SPAN&gt; (!nav.IsSamePosition(startPosition) &amp;amp;&amp;amp; !nav.NodeType.Equals(XPathNodeType.Root));&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;67&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;68&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P style="MARGIN: 0px"&gt;&lt;SPAN style="COLOR: #2b91af"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;69&lt;/SPAN&gt;&amp;nbsp;}&lt;/P&gt;&lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9692188" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="development" scheme="http://blogs.msdn.com/ejarvi/archive/tags/development/default.aspx" /><category term="xml" scheme="http://blogs.msdn.com/ejarvi/archive/tags/xml/default.aspx" /></entry><entry><title>Risk Management</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2009/03/13/risk-management.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2009/03/13/risk-management.aspx</id><published>2009-03-13T20:38:00Z</published><updated>2009-03-13T20:38:00Z</updated><content type="html">My first article on the topic of security testing and risk management&amp;nbsp;is now published in the March 2009 issue of Testing Experience magazine, pages 28-30. &lt;BR&gt;&lt;BR&gt;&lt;A href="http://www.testingexperience.com/subscribe.php" mce_href="http://www.testingexperience.com/subscribe.php"&gt;http://www.testingexperience.com/subscribe.php&lt;/A&gt; &lt;BR&gt;(free online subscription takes you to PDF download) &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9473487" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="security" scheme="http://blogs.msdn.com/ejarvi/archive/tags/security/default.aspx" /></entry><entry><title>Office Security Team</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2008/07/18/office-security.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2008/07/18/office-security.aspx</id><published>2008-07-18T22:13:00Z</published><updated>2008-07-18T22:13:00Z</updated><content type="html">&lt;P&gt;&lt;EM&gt;The Office security team typically targets memory-corruption bugs in the software like buffer overruns, integer overruns, and format strings...&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.darkreading.com/document.asp?doc_id=159305" mce_href="http://www.darkreading.com/document.asp?doc_id=159305"&gt;http://www.darkreading.com/document.asp?doc_id=159305&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8751979" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="security" scheme="http://blogs.msdn.com/ejarvi/archive/tags/security/default.aspx" /></entry><entry><title>Binary File Formats</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2008/07/01/binary-file-formats.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2008/07/01/binary-file-formats.aspx</id><published>2008-07-01T21:11:00Z</published><updated>2008-07-01T21:11:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Segoe UI','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;"posting nearly 5,000 pages of new technical documentation for the Microsoft Office binary file formats for Word, Excel and PowerPoint" &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Segoe UI','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Press release:&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Segoe UI','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;A href="http://www.microsoft.com/presspass/press/2008/jun08/06-30InteropUpdatePR.mspx" mce_href="http://www.microsoft.com/presspass/press/2008/jun08/06-30InteropUpdatePR.mspx"&gt;http://www.microsoft.com/presspass/press/2008/jun08/06-30InteropUpdatePR.mspx&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Segoe UI','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Technical specs:&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Segoe UI','sans-serif'; FONT-SIZE: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;A href="http://go.microsoft.com/fwlink/?LinkId=122062" mce_href="http://go.microsoft.com/fwlink/?LinkId=122062"&gt;http://go.microsoft.com/fwlink/?LinkId=122062&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8678109" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author></entry><entry><title>Umpiring Quality</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2008/01/02/umpiring-quality.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2008/01/02/umpiring-quality.aspx</id><published>2008-01-03T03:24:00Z</published><updated>2008-01-03T03:24:00Z</updated><content type="html">&lt;P&gt;Great article on testing by James Rodriguez that I just came across, you can learn a lot in Little League!&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/bb968981.aspx" mce_href="http://msdn2.microsoft.com/en-us/library/bb968981.aspx"&gt;http://msdn2.microsoft.com/en-us/library/bb968981.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;This reminds me of a funny thing that happened last year.&amp;nbsp; At the start of baseball season they have parents come together and help prep the neighborhood field.&amp;nbsp; There were about 100 people all out there en masse doing grunt work with shovels and wheelbarrows.&amp;nbsp; I was covered in mud trying to fix a drainage problem near the batting cages.&amp;nbsp; Anyway, a guy comes through asking if there was anybody with carpentry expertise.&amp;nbsp; Silence.&amp;nbsp; Not that there was a shortage of folks ready for some other task.&amp;nbsp; Suddenly another guy pipes up "need any software engineers?" to break the tension and a big knowing laugh went down the line. :) &lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6961257" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /></entry><entry><title>Traction </title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/12/17/traction.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/12/17/traction.aspx</id><published>2007-12-18T02:56:00Z</published><updated>2007-12-18T02:56:00Z</updated><content type="html">&lt;P&gt;Some ideas on how to "get traction" as a software tester (especially at Microsoft):&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/dustin_andrews/archive/2007/12/15/learn-to-get-traction-in-your-team.aspx" mce_href="http://blogs.msdn.com/dustin_andrews/archive/2007/12/15/learn-to-get-traction-in-your-team.aspx"&gt;http://blogs.msdn.com/dustin_andrews/archive/2007/12/15/learn-to-get-traction-in-your-team.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6793297" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /></entry><entry><title>VSTS Web Access Power Tool</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/11/30/vsts-2008-web-access.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/11/30/vsts-2008-web-access.aspx</id><published>2007-12-01T04:16:00Z</published><updated>2007-12-01T04:16:00Z</updated><content type="html">&lt;P&gt;Now with linkable web pages! &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-web-access-power-tool-for-team-system-2008-released.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-web-access-power-tool-for-team-system-2008-released.aspx"&gt;http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-web-access-power-tool-for-team-system-2008-released.aspx&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6621903" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="development" scheme="http://blogs.msdn.com/ejarvi/archive/tags/development/default.aspx" /><category term="VSTS Tips" scheme="http://blogs.msdn.com/ejarvi/archive/tags/VSTS+Tips/default.aspx" /></entry><entry><title>Security &amp; Perf Videos</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/11/26/security-perf-videos.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/11/26/security-perf-videos.aspx</id><published>2007-11-26T23:32:00Z</published><updated>2007-11-26T23:32:00Z</updated><content type="html">&lt;P&gt;J.D. Meier has posted a decent index of videos covering performance testing, ASP.NET 2.0, and VSTS: &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/jmeier/archive/2007/11/22/videos-security-performance-testing-and-visual-studio-team-system.aspx" mce_href="http://blogs.msdn.com/jmeier/archive/2007/11/22/videos-security-performance-testing-and-visual-studio-team-system.aspx"&gt;http://blogs.msdn.com/jmeier/archive/2007/11/22/videos-security-performance-testing-and-visual-studio-team-system.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6534445" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="security" scheme="http://blogs.msdn.com/ejarvi/archive/tags/security/default.aspx" /><category term="development" scheme="http://blogs.msdn.com/ejarvi/archive/tags/development/default.aspx" /><category term="performance" scheme="http://blogs.msdn.com/ejarvi/archive/tags/performance/default.aspx" /><category term="VSTS Tips" scheme="http://blogs.msdn.com/ejarvi/archive/tags/VSTS+Tips/default.aspx" /></entry><entry><title>Information Assurance</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/10/27/information-assurance.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/10/27/information-assurance.aspx</id><published>2007-10-28T06:47:00Z</published><updated>2007-10-28T06:47:00Z</updated><content type="html">&lt;P&gt;&lt;STRONG&gt;The Unintended Consequences of the Information Age Lecture Series: Our Infrastructures: Online and Vulnerable?&lt;/STRONG&gt; &lt;/P&gt;
&lt;P&gt;Jointly sponsored by The Center for Information Assurance and Cybersecurity, UW-INSER, the MS Program in Strategic Planning for Critical Infrastucture, Pacific Northwest National Laboratory and the Information School, this series provides a compelling case for increased research in cybersecurity as related to critical infrastructure.&lt;/P&gt;
&lt;P&gt;Part 1 will air on UWTV at the following times:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Monday October 29 at 6pm&lt;/LI&gt;
&lt;LI&gt;Wed Oct 31 at 11pm&lt;/LI&gt;
&lt;LI&gt;Thurs November 1 at 10:30am and 7pm&lt;/LI&gt;
&lt;LI&gt;Friday Nov 2 at 4pm&lt;/LI&gt;
&lt;LI&gt;Sunday Nov 4 at 3pm&amp;nbsp;&amp;nbsp;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Future airdates will be posted later on the UWTV website:&lt;BR&gt;&lt;A href="http://www.uwtv.org/programs/displayevent.aspx?rID=20354&amp;amp;fID=2095" target=_blank mce_href="http://www.uwtv.org/programs/displayevent.aspx?rID=20354&amp;amp;fID=2095"&gt;http://www.uwtv.org/programs/displayevent.aspx?rID=20354&amp;amp;fID=2095&lt;/A&gt;&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=5728450" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="security" scheme="http://blogs.msdn.com/ejarvi/archive/tags/security/default.aspx" /><category term="noise" scheme="http://blogs.msdn.com/ejarvi/archive/tags/noise/default.aspx" /></entry><entry><title>Silverlight on Linux</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/09/06/silverlight-on-linux.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/09/06/silverlight-on-linux.aspx</id><published>2007-09-07T00:41:00Z</published><updated>2007-09-07T00:41:00Z</updated><content type="html">&lt;P&gt;Something I will definitely be keeping my eyes on.&amp;nbsp; Stuff like this tells me we've come a LONG way since the 1990's&amp;nbsp;...&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&amp;nbsp;"After a great deal of work between the Moonlight and .NET teams, we’re ready to formally announce that we (Microsoft and Novell) will be bringing Silverlight to Linux, fully supported and including application and media codec compatibility."&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://port25.technet.com/archive/2007/09/05/silverlight-on-linux.aspx" mce_href="http://port25.technet.com/archive/2007/09/05/silverlight-on-linux.aspx"&gt;http://port25.technet.com/archive/2007/09/05/silverlight-on-linux.aspx&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4795005" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="noise" scheme="http://blogs.msdn.com/ejarvi/archive/tags/noise/default.aspx" /></entry><entry><title>Team System Web Access Power Tool</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/07/30/team-system-web-access-power-tool.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/07/30/team-system-web-access-power-tool.aspx</id><published>2007-07-31T02:03:00Z</published><updated>2007-07-31T02:03:00Z</updated><content type="html">&lt;P&gt;Details on Brian Harry's blog:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/bharry/archive/2007/07/30/team-system-web-access-power-tool-available.aspx"&gt;http://blogs.msdn.com/bharry/archive/2007/07/30/team-system-web-access-power-tool-available.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4137816" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="testing" scheme="http://blogs.msdn.com/ejarvi/archive/tags/testing/default.aspx" /><category term="development" scheme="http://blogs.msdn.com/ejarvi/archive/tags/development/default.aspx" /><category term="VSTS Tips" scheme="http://blogs.msdn.com/ejarvi/archive/tags/VSTS+Tips/default.aspx" /></entry><entry><title>Dynamic [Language Runtime | Type System]</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/ejarvi/archive/2007/04/30/dynamic-language-runtime-type-system.aspx" /><id>http://blogs.msdn.com/ejarvi/archive/2007/04/30/dynamic-language-runtime-type-system.aspx</id><published>2007-05-01T00:31:00Z</published><updated>2007-05-01T00:31:00Z</updated><content type="html">&lt;P&gt;Port 25 is running video on what they're calling "dynamic language runtime" with some innovative type system implementations at the core.&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;"big trick is deferred compilation ... looks a lot like linq expression trees ... backend can decide on different optimizations ... we can take the code and specialize it for the different types ... "&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;[1/2] &lt;A href="http://port25.technet.com/archive/2007/04/30/python-java-ruby-oh-my-cross-platform-net-framework.aspx" mce_href="http://port25.technet.com/archive/2007/04/30/python-java-ruby-oh-my-cross-platform-net-framework.aspx"&gt;http://port25.technet.com/archive/2007/04/30/python-java-ruby-oh-my-cross-platform-net-framework.aspx&lt;/A&gt;&lt;BR&gt;[2/2] &lt;A href="http://port25.technet.com/archive/2007/04/30/ironruby.aspx"&gt;http://port25.technet.com/archive/2007/04/30/ironruby.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;other links:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.codeplex.com/IronPython/" mce_href="http://www.codeplex.com/IronPython/"&gt;http://www.codeplex.com/IronPython/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.zdnet.com/microsoft/?p=404" mce_href="http://blogs.zdnet.com/microsoft/?p=404"&gt;http://blogs.zdnet.com/microsoft/?p=404&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2344754" width="1" height="1"&gt;</content><author><name>ejarvi</name><uri>http://blogs.msdn.com/members/ejarvi.aspx</uri></author><category term="development" scheme="http://blogs.msdn.com/ejarvi/archive/tags/development/default.aspx" /></entry></feed>